@spawnite/engine 0.1.0-beta.15
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/LICENSE.md +169 -0
- package/README.md +92 -0
- package/dist/-MLBVTaO.js +1 -0
- package/dist/28wIPE7L.js +1 -0
- package/dist/3rj0AvB6.js +1 -0
- package/dist/5L-NcwKR.js +1 -0
- package/dist/B-qLcgSf.js +1 -0
- package/dist/B0WN1jqX.js +41 -0
- package/dist/B1OUgdbN.js +1 -0
- package/dist/BEL83Bb6.js +1 -0
- package/dist/BGDOC3Q-.js +1 -0
- package/dist/BGM1SnEr.js +1 -0
- package/dist/BH6Ftfg9.js +1 -0
- package/dist/BJIJuxaE.js +1 -0
- package/dist/BJclgjKG.js +1 -0
- package/dist/BKc2k2s6.js +1 -0
- package/dist/BLB4-b4b.js +2 -0
- package/dist/BQnBIIt8.js +1 -0
- package/dist/BR3nbYwS.js +7 -0
- package/dist/BV9hGHeu.js +623 -0
- package/dist/BWOKsReG.js +1 -0
- package/dist/BWlq9jqw.js +1 -0
- package/dist/BXmxKBbF.js +3 -0
- package/dist/BYXhtwWy.js +1 -0
- package/dist/B_HFa2lJ.js +1 -0
- package/dist/BciVglt5.js +1 -0
- package/dist/Bfg1Y9_2.js +1 -0
- package/dist/Bh-CVkQx.js +1 -0
- package/dist/BiH9xCBB.js +1 -0
- package/dist/BobsCMiL.js +9 -0
- package/dist/Bp238wbZ.js +1 -0
- package/dist/Bpe0g5hX.js +1 -0
- package/dist/BrfUaL46.js +2 -0
- package/dist/Bw06YsIc.js +1 -0
- package/dist/Bydoy8wO.js +1 -0
- package/dist/BzaiZux2.js +1 -0
- package/dist/C25qqozO.js +1 -0
- package/dist/C6Ja5Z7G.js +1 -0
- package/dist/CCh4CnV9.js +1 -0
- package/dist/CEuuijY1.js +1 -0
- package/dist/CHntUxHl.js +1 -0
- package/dist/CIq9KviM.js +1 -0
- package/dist/CQPA3y5T.js +1 -0
- package/dist/CRfoqBKG.js +1 -0
- package/dist/CSXcU95U.js +1 -0
- package/dist/CU0epHFG.js +3 -0
- package/dist/CVgRrBP4.js +1 -0
- package/dist/CZV99t6a.js +7 -0
- package/dist/Cg33N9Ej.js +1 -0
- package/dist/Chcm92bZ.js +1 -0
- package/dist/CjiCdqiE.js +2 -0
- package/dist/Cp5beIll.js +1 -0
- package/dist/Cq6VqPHb.js +2 -0
- package/dist/CwZDkslT.js +1 -0
- package/dist/D3Y2LHFe.js +1 -0
- package/dist/D3wyrZ2_.js +1 -0
- package/dist/D8jIS84n.js +1 -0
- package/dist/DCIejHqp.js +1 -0
- package/dist/DHsBnfoU.js +1 -0
- package/dist/DJSpRhXB.js +1 -0
- package/dist/DOeUeeKs.js +1 -0
- package/dist/DR9bHgf0.js +1 -0
- package/dist/DRnuSAbu.js +1 -0
- package/dist/DSb1ApLU.js +1 -0
- package/dist/DXtppcZ7.js +1 -0
- package/dist/DZIhHLUn.js +1 -0
- package/dist/DgMhVbMU.js +1 -0
- package/dist/Dh5kh1nX.js +1 -0
- package/dist/DiGFL8kd.js +1 -0
- package/dist/DkKmurqu.js +1 -0
- package/dist/DlkDsMQd.js +1 -0
- package/dist/DnNEzpz-.js +1 -0
- package/dist/Dqx9hHBK.js +1 -0
- package/dist/DsgWLyZo.js +1 -0
- package/dist/DucRBEvN.js +1 -0
- package/dist/Dwcms3jX.js +1 -0
- package/dist/Dwfie-ev.js +1 -0
- package/dist/DyHjwN2H.js +1 -0
- package/dist/SMby3e6M.js +4 -0
- package/dist/THIRD-PARTY-NOTICES +329 -0
- package/dist/UJDr3Nrd.js +1 -0
- package/dist/V70ADx0g.js +2 -0
- package/dist/abilities.d.ts +1 -0
- package/dist/abilities.js +1 -0
- package/dist/core.d.ts +1 -0
- package/dist/core.js +1 -0
- package/dist/devtools.d.ts +1 -0
- package/dist/devtools.js +1 -0
- package/dist/dragAndDrop.d.ts +1 -0
- package/dist/dragAndDrop.js +1 -0
- package/dist/eYC1fQo5.js +1 -0
- package/dist/eslint.js +1 -0
- package/dist/hQBGE7c4.js +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +297 -0
- package/dist/internal/cli.js +1 -0
- package/dist/internal/devServer.js +2 -0
- package/dist/internal/devtools.js +1 -0
- package/dist/internal/room.js +1 -0
- package/dist/inventory.d.ts +1 -0
- package/dist/inventory.js +1 -0
- package/dist/jMKXPXIH.js +33 -0
- package/dist/looks/dusk.d.ts +1 -0
- package/dist/looks/dusk.js +1 -0
- package/dist/looks/morning.d.ts +1 -0
- package/dist/looks/morning.js +1 -0
- package/dist/looks/night.d.ts +1 -0
- package/dist/looks/night.js +1 -0
- package/dist/looks/noon.d.ts +1 -0
- package/dist/looks/noon.js +1 -0
- package/dist/looks/overcast.d.ts +1 -0
- package/dist/looks/overcast.js +1 -0
- package/dist/npcs.d.ts +1 -0
- package/dist/npcs.js +1 -0
- package/dist/public.d.ts +18818 -0
- package/dist/replay.d.ts +1 -0
- package/dist/replay.js +1 -0
- package/dist/testing.d.ts +542 -0
- package/dist/testing.js +1 -0
- package/dist/three.d.ts +1 -0
- package/dist/three.js +1 -0
- package/dist/tracks.d.ts +1 -0
- package/dist/tracks.js +1 -0
- package/dist/vite.d.ts +123 -0
- package/dist/vite.js +1 -0
- package/dist/weapons.d.ts +1 -0
- package/dist/weapons.js +1 -0
- package/dist/wiki/engine/ai/metadata.md +143 -0
- package/dist/wiki/engine/audio/sound.md +72 -0
- package/dist/wiki/engine/audio/voice.md +153 -0
- package/dist/wiki/engine/behaviours/abilities.md +328 -0
- package/dist/wiki/engine/behaviours/bob.md +37 -0
- package/dist/wiki/engine/behaviours/chase.md +158 -0
- package/dist/wiki/engine/behaviours/cooldowns.md +83 -0
- package/dist/wiki/engine/behaviours/dialog.md +172 -0
- package/dist/wiki/engine/behaviours/health.md +330 -0
- package/dist/wiki/engine/behaviours/interact.md +41 -0
- package/dist/wiki/engine/behaviours/inventory.md +266 -0
- package/dist/wiki/engine/behaviours/loot.md +90 -0
- package/dist/wiki/engine/behaviours/pickup.md +149 -0
- package/dist/wiki/engine/behaviours/resources.md +274 -0
- package/dist/wiki/engine/behaviours/routines.md +99 -0
- package/dist/wiki/engine/behaviours/spin.md +36 -0
- package/dist/wiki/engine/behaviours/stats.md +220 -0
- package/dist/wiki/engine/behaviours/targeting.md +155 -0
- package/dist/wiki/engine/behaviours/track-mover.md +121 -0
- package/dist/wiki/engine/behaviours/track-trigger.md +117 -0
- package/dist/wiki/engine/behaviours/trigger.md +158 -0
- package/dist/wiki/engine/behaviours/weapon.md +462 -0
- package/dist/wiki/engine/entities/camera.md +326 -0
- package/dist/wiki/engine/entities/entity.mdx +1063 -0
- package/dist/wiki/engine/entities/npc.md +64 -0
- package/dist/wiki/engine/entities/player.md +435 -0
- package/dist/wiki/engine/errors/SP0001.md +20 -0
- package/dist/wiki/engine/errors/SP0002.md +20 -0
- package/dist/wiki/engine/errors/SP0003.md +20 -0
- package/dist/wiki/engine/errors/SP0008.md +20 -0
- package/dist/wiki/engine/errors/SP0009.md +20 -0
- package/dist/wiki/engine/errors/SP0010.md +20 -0
- package/dist/wiki/engine/errors/SP0011.md +20 -0
- package/dist/wiki/engine/errors/SP0014.md +20 -0
- package/dist/wiki/engine/errors/SP0015.md +20 -0
- package/dist/wiki/engine/errors/SP0016.md +20 -0
- package/dist/wiki/engine/errors/SP0017.md +20 -0
- package/dist/wiki/engine/errors/SP0018.md +20 -0
- package/dist/wiki/engine/errors/SP0019.md +20 -0
- package/dist/wiki/engine/errors/SP0020.md +20 -0
- package/dist/wiki/engine/errors/SP0021.md +20 -0
- package/dist/wiki/engine/errors/SP0022.md +20 -0
- package/dist/wiki/engine/errors/SP0023.md +20 -0
- package/dist/wiki/engine/errors/SP0024.md +20 -0
- package/dist/wiki/engine/errors/SP0025.md +20 -0
- package/dist/wiki/engine/errors/SP0026.md +22 -0
- package/dist/wiki/engine/errors/SP0027.md +20 -0
- package/dist/wiki/engine/errors/SP0028.md +20 -0
- package/dist/wiki/engine/errors/SP0029.md +20 -0
- package/dist/wiki/engine/errors/SP0030.md +20 -0
- package/dist/wiki/engine/errors/SP0031.md +20 -0
- package/dist/wiki/engine/errors/SP0034.md +20 -0
- package/dist/wiki/engine/errors/SP0035.md +20 -0
- package/dist/wiki/engine/errors/SP0036.md +20 -0
- package/dist/wiki/engine/errors/SP0037.md +20 -0
- package/dist/wiki/engine/errors/SP0038.md +20 -0
- package/dist/wiki/engine/errors/SP0039.md +20 -0
- package/dist/wiki/engine/errors/SP0040.md +20 -0
- package/dist/wiki/engine/errors/SP0041.md +20 -0
- package/dist/wiki/engine/errors/SP0042.md +20 -0
- package/dist/wiki/engine/errors/SP0043.md +20 -0
- package/dist/wiki/engine/errors/SP0045.md +20 -0
- package/dist/wiki/engine/errors/SP0046.md +20 -0
- package/dist/wiki/engine/errors/SP0047.md +20 -0
- package/dist/wiki/engine/errors/SP0048.md +20 -0
- package/dist/wiki/engine/errors/SP0049.md +20 -0
- package/dist/wiki/engine/errors/SP0050.md +20 -0
- package/dist/wiki/engine/errors/SP0051.md +20 -0
- package/dist/wiki/engine/errors/SP0052.md +20 -0
- package/dist/wiki/engine/errors/SP0053.md +20 -0
- package/dist/wiki/engine/errors/SP0054.md +20 -0
- package/dist/wiki/engine/errors/SP0055.md +20 -0
- package/dist/wiki/engine/errors/SP0056.md +20 -0
- package/dist/wiki/engine/errors/SP0057.md +20 -0
- package/dist/wiki/engine/errors/SP0058.md +20 -0
- package/dist/wiki/engine/errors/SP0059.md +20 -0
- package/dist/wiki/engine/errors/SP0060.md +20 -0
- package/dist/wiki/engine/errors/SP0061.md +20 -0
- package/dist/wiki/engine/errors/SP0064.md +20 -0
- package/dist/wiki/engine/errors/SP0065.md +20 -0
- package/dist/wiki/engine/errors/SP0066.md +20 -0
- package/dist/wiki/engine/errors/SP0067.md +20 -0
- package/dist/wiki/engine/errors/SP0070.md +20 -0
- package/dist/wiki/engine/errors/SP0071.md +20 -0
- package/dist/wiki/engine/errors/SP0072.md +20 -0
- package/dist/wiki/engine/errors/SP0073.md +20 -0
- package/dist/wiki/engine/errors/SP0074.md +20 -0
- package/dist/wiki/engine/errors/SP0075.md +20 -0
- package/dist/wiki/engine/errors/SP0076.md +20 -0
- package/dist/wiki/engine/errors/SP0077.md +20 -0
- package/dist/wiki/engine/errors/SP0078.md +20 -0
- package/dist/wiki/engine/errors/SP0079.md +20 -0
- package/dist/wiki/engine/errors/SP0080.md +20 -0
- package/dist/wiki/engine/errors/SP0081.md +20 -0
- package/dist/wiki/engine/errors/SP0082.md +20 -0
- package/dist/wiki/engine/errors/SP0083.md +20 -0
- package/dist/wiki/engine/errors/SP0084.md +20 -0
- package/dist/wiki/engine/errors/SP0085.md +20 -0
- package/dist/wiki/engine/errors/SP0086.md +20 -0
- package/dist/wiki/engine/errors/SP0087.md +20 -0
- package/dist/wiki/engine/errors/SP0089.md +20 -0
- package/dist/wiki/engine/errors/SP0090.md +20 -0
- package/dist/wiki/engine/errors/SP0091.md +20 -0
- package/dist/wiki/engine/errors/SP0092.md +20 -0
- package/dist/wiki/engine/errors/SP0093.md +20 -0
- package/dist/wiki/engine/errors/SP0094.md +20 -0
- package/dist/wiki/engine/errors/SP0095.md +20 -0
- package/dist/wiki/engine/errors/SP0096.md +20 -0
- package/dist/wiki/engine/errors/SP0097.md +20 -0
- package/dist/wiki/engine/errors/SP0098.md +20 -0
- package/dist/wiki/engine/errors/SP0099.md +20 -0
- package/dist/wiki/engine/errors/SP0100.md +20 -0
- package/dist/wiki/engine/errors/SP0101.md +20 -0
- package/dist/wiki/engine/errors/SP0102.md +20 -0
- package/dist/wiki/engine/errors/SP0103.md +20 -0
- package/dist/wiki/engine/errors/SP0104.md +20 -0
- package/dist/wiki/engine/errors/SP0105.md +20 -0
- package/dist/wiki/engine/errors/SP0106.md +20 -0
- package/dist/wiki/engine/errors/SP0107.md +20 -0
- package/dist/wiki/engine/errors/SP0108.md +20 -0
- package/dist/wiki/engine/errors/SP0109.md +20 -0
- package/dist/wiki/engine/errors/SP0110.md +20 -0
- package/dist/wiki/engine/errors/SP0111.md +20 -0
- package/dist/wiki/engine/errors/SP0112.md +20 -0
- package/dist/wiki/engine/errors/SP0113.md +20 -0
- package/dist/wiki/engine/errors/SP0114.md +20 -0
- package/dist/wiki/engine/errors/SP0115.md +20 -0
- package/dist/wiki/engine/errors/SP0116.md +20 -0
- package/dist/wiki/engine/errors/SP0117.md +20 -0
- package/dist/wiki/engine/errors/SP0118.md +20 -0
- package/dist/wiki/engine/errors/SP0119.md +20 -0
- package/dist/wiki/engine/errors/SP0120.md +20 -0
- package/dist/wiki/engine/errors/SP0121.md +20 -0
- package/dist/wiki/engine/errors/SP0122.md +20 -0
- package/dist/wiki/engine/errors/SP0125.md +20 -0
- package/dist/wiki/engine/errors/SP0126.md +20 -0
- package/dist/wiki/engine/errors/SP0132.md +20 -0
- package/dist/wiki/engine/errors/SP0133.md +20 -0
- package/dist/wiki/engine/errors/SP0134.md +20 -0
- package/dist/wiki/engine/errors/SP0137.md +20 -0
- package/dist/wiki/engine/errors/SP0138.md +20 -0
- package/dist/wiki/engine/errors/SP0139.md +20 -0
- package/dist/wiki/engine/errors/SP0143.md +20 -0
- package/dist/wiki/engine/errors/SP0145.md +20 -0
- package/dist/wiki/engine/errors/SP0146.md +20 -0
- package/dist/wiki/engine/errors/SP0147.md +20 -0
- package/dist/wiki/engine/errors/SP0148.md +20 -0
- package/dist/wiki/engine/errors/SP0149.md +20 -0
- package/dist/wiki/engine/errors/SP0150.md +20 -0
- package/dist/wiki/engine/errors/SP0151.md +20 -0
- package/dist/wiki/engine/errors/SP0152.md +20 -0
- package/dist/wiki/engine/errors/SP0154.md +20 -0
- package/dist/wiki/engine/errors/SP0157.md +20 -0
- package/dist/wiki/engine/errors/SP0158.md +20 -0
- package/dist/wiki/engine/errors/SP0159.md +20 -0
- package/dist/wiki/engine/errors/SP0160.md +20 -0
- package/dist/wiki/engine/errors/SP0161.md +20 -0
- package/dist/wiki/engine/errors/SP0162.md +20 -0
- package/dist/wiki/engine/errors/SP0163.md +20 -0
- package/dist/wiki/engine/errors/SP0164.md +20 -0
- package/dist/wiki/engine/errors/SP0165.md +20 -0
- package/dist/wiki/engine/errors/SP0166.md +20 -0
- package/dist/wiki/engine/errors/SP0167.md +20 -0
- package/dist/wiki/engine/errors/SP0169.md +20 -0
- package/dist/wiki/engine/errors/SP0175.md +20 -0
- package/dist/wiki/engine/errors/SP0176.md +20 -0
- package/dist/wiki/engine/errors/SP0177.md +20 -0
- package/dist/wiki/engine/errors/SP0178.md +20 -0
- package/dist/wiki/engine/errors/SP0179.md +20 -0
- package/dist/wiki/engine/errors/SP0180.md +20 -0
- package/dist/wiki/engine/errors/SP0181.md +20 -0
- package/dist/wiki/engine/errors/SP0182.md +20 -0
- package/dist/wiki/engine/errors/SP0183.md +20 -0
- package/dist/wiki/engine/errors/SP0184.md +20 -0
- package/dist/wiki/engine/errors/SP0185.md +20 -0
- package/dist/wiki/engine/errors/SP0186.md +20 -0
- package/dist/wiki/engine/errors/SP0187.md +20 -0
- package/dist/wiki/engine/errors/SP0188.md +20 -0
- package/dist/wiki/engine/errors/SP0189.md +20 -0
- package/dist/wiki/engine/errors/SP0190.md +20 -0
- package/dist/wiki/engine/errors/SP0191.md +20 -0
- package/dist/wiki/engine/errors/SP0192.md +20 -0
- package/dist/wiki/engine/errors/SP0193.md +20 -0
- package/dist/wiki/engine/errors/SP0194.md +20 -0
- package/dist/wiki/engine/errors/SP0195.md +20 -0
- package/dist/wiki/engine/errors/SP0196.md +20 -0
- package/dist/wiki/engine/errors/SP0197.md +20 -0
- package/dist/wiki/engine/errors/SP0198.md +20 -0
- package/dist/wiki/engine/errors/SP0199.md +20 -0
- package/dist/wiki/engine/errors/SP0200.md +20 -0
- package/dist/wiki/engine/errors/SP0202.md +20 -0
- package/dist/wiki/engine/errors/SP0203.md +20 -0
- package/dist/wiki/engine/errors/SP0204.md +20 -0
- package/dist/wiki/engine/errors/SP0205.md +20 -0
- package/dist/wiki/engine/errors/SP0206.md +20 -0
- package/dist/wiki/engine/errors/SP0207.md +20 -0
- package/dist/wiki/engine/errors/SP0208.md +20 -0
- package/dist/wiki/engine/errors/SP0210.md +20 -0
- package/dist/wiki/engine/errors/SP0211.md +20 -0
- package/dist/wiki/engine/errors/SP0212.md +20 -0
- package/dist/wiki/engine/errors/SP0213.md +20 -0
- package/dist/wiki/engine/errors/SP0214.md +20 -0
- package/dist/wiki/engine/errors/SP0215.md +20 -0
- package/dist/wiki/engine/errors/SP0216.md +20 -0
- package/dist/wiki/engine/errors/SP0219.md +20 -0
- package/dist/wiki/engine/errors/SP0220.md +20 -0
- package/dist/wiki/engine/errors/SP0221.md +20 -0
- package/dist/wiki/engine/errors/SP0225.md +20 -0
- package/dist/wiki/engine/errors/SP0228.md +20 -0
- package/dist/wiki/engine/errors/SP0229.md +20 -0
- package/dist/wiki/engine/errors/SP0230.md +20 -0
- package/dist/wiki/engine/errors/SP0231.md +20 -0
- package/dist/wiki/engine/errors/SP0232.md +20 -0
- package/dist/wiki/engine/errors/SP0233.md +20 -0
- package/dist/wiki/engine/errors/SP0234.md +20 -0
- package/dist/wiki/engine/errors/SP0235.md +20 -0
- package/dist/wiki/engine/errors/SP0236.md +20 -0
- package/dist/wiki/engine/errors/SP0237.md +20 -0
- package/dist/wiki/engine/errors/SP0238.md +20 -0
- package/dist/wiki/engine/errors/SP0239.md +20 -0
- package/dist/wiki/engine/errors/SP0240.md +20 -0
- package/dist/wiki/engine/errors/SP0241.md +20 -0
- package/dist/wiki/engine/errors/SP0242.md +20 -0
- package/dist/wiki/engine/errors/SP0243.md +20 -0
- package/dist/wiki/engine/errors/SP0244.md +20 -0
- package/dist/wiki/engine/errors/SP0245.md +20 -0
- package/dist/wiki/engine/errors/SP0247.md +20 -0
- package/dist/wiki/engine/errors/SP0249.md +20 -0
- package/dist/wiki/engine/errors/SP0250.md +20 -0
- package/dist/wiki/engine/errors/SP0251.md +20 -0
- package/dist/wiki/engine/errors/SP0252.md +20 -0
- package/dist/wiki/engine/errors/SP0253.md +20 -0
- package/dist/wiki/engine/errors/SP0254.md +20 -0
- package/dist/wiki/engine/errors/SP0255.md +20 -0
- package/dist/wiki/engine/errors/SP0256.md +20 -0
- package/dist/wiki/engine/errors/SP0257.md +20 -0
- package/dist/wiki/engine/errors/SP0258.md +20 -0
- package/dist/wiki/engine/errors/SP0259.md +20 -0
- package/dist/wiki/engine/errors/SP0260.md +20 -0
- package/dist/wiki/engine/errors/SP0270.md +20 -0
- package/dist/wiki/engine/errors/SP0271.md +20 -0
- package/dist/wiki/engine/errors/SP0272.md +20 -0
- package/dist/wiki/engine/errors/SP0273.md +20 -0
- package/dist/wiki/engine/errors/SP0274.md +20 -0
- package/dist/wiki/engine/errors/SP0275.md +20 -0
- package/dist/wiki/engine/errors/SP0276.md +20 -0
- package/dist/wiki/engine/errors/SP0277.md +20 -0
- package/dist/wiki/engine/errors/SP0278.md +20 -0
- package/dist/wiki/engine/errors/SP0279.md +20 -0
- package/dist/wiki/engine/errors/SP0280.md +20 -0
- package/dist/wiki/engine/errors/SP0281.md +20 -0
- package/dist/wiki/engine/errors/SP0282.md +20 -0
- package/dist/wiki/engine/errors/SP0283.md +20 -0
- package/dist/wiki/engine/errors/SP0284.md +20 -0
- package/dist/wiki/engine/errors/SP0285.md +20 -0
- package/dist/wiki/engine/errors/SP0286.md +20 -0
- package/dist/wiki/engine/errors/SP0287.md +20 -0
- package/dist/wiki/engine/errors/SP0288.md +20 -0
- package/dist/wiki/engine/errors/SP0289.md +20 -0
- package/dist/wiki/engine/errors/SP0290.md +20 -0
- package/dist/wiki/engine/errors/SP0291.md +20 -0
- package/dist/wiki/engine/errors/SP0292.md +20 -0
- package/dist/wiki/engine/errors/SP0293.md +20 -0
- package/dist/wiki/engine/errors/SP0294.md +20 -0
- package/dist/wiki/engine/errors/SP0295.md +20 -0
- package/dist/wiki/engine/errors/SP0296.md +20 -0
- package/dist/wiki/engine/errors/SP0297.md +20 -0
- package/dist/wiki/engine/errors/SP0298.md +20 -0
- package/dist/wiki/engine/errors/SP0299.md +20 -0
- package/dist/wiki/engine/errors/SP0300.md +20 -0
- package/dist/wiki/engine/errors/SP0301.md +20 -0
- package/dist/wiki/engine/errors/SP0302.md +20 -0
- package/dist/wiki/engine/errors/SP0303.md +20 -0
- package/dist/wiki/engine/errors/SP0304.md +20 -0
- package/dist/wiki/engine/errors/SP0305.md +20 -0
- package/dist/wiki/engine/errors/SP0306.md +20 -0
- package/dist/wiki/engine/errors/SP0307.md +20 -0
- package/dist/wiki/engine/errors/SP0308.md +20 -0
- package/dist/wiki/engine/errors/SP0309.md +20 -0
- package/dist/wiki/engine/errors/SP0310.md +20 -0
- package/dist/wiki/engine/errors/SP0311.md +20 -0
- package/dist/wiki/engine/errors/SP0312.md +20 -0
- package/dist/wiki/engine/errors/SP0313.md +20 -0
- package/dist/wiki/engine/errors/SP0314.md +20 -0
- package/dist/wiki/engine/errors/SP0315.md +20 -0
- package/dist/wiki/engine/errors/SP0316.md +20 -0
- package/dist/wiki/engine/errors/SP0317.md +20 -0
- package/dist/wiki/engine/errors/SP0318.md +20 -0
- package/dist/wiki/engine/errors/SP0319.md +20 -0
- package/dist/wiki/engine/errors/SP0320.md +20 -0
- package/dist/wiki/engine/errors/SP0321.md +20 -0
- package/dist/wiki/engine/errors/SP0322.md +20 -0
- package/dist/wiki/engine/errors/SP0323.md +20 -0
- package/dist/wiki/engine/errors/SP0324.md +20 -0
- package/dist/wiki/engine/errors/SP0325.md +20 -0
- package/dist/wiki/engine/errors/SP0326.md +20 -0
- package/dist/wiki/engine/errors/SP0327.md +20 -0
- package/dist/wiki/engine/errors/SP0328.md +20 -0
- package/dist/wiki/engine/errors/SP0329.md +20 -0
- package/dist/wiki/engine/errors/SP0330.md +20 -0
- package/dist/wiki/engine/errors/SP0331.md +20 -0
- package/dist/wiki/engine/errors/SP0332.md +20 -0
- package/dist/wiki/engine/errors/SP0333.md +20 -0
- package/dist/wiki/engine/errors/SP0334.md +20 -0
- package/dist/wiki/engine/errors/SP0335.md +20 -0
- package/dist/wiki/engine/errors/SP0336.md +20 -0
- package/dist/wiki/engine/errors/SP0337.md +20 -0
- package/dist/wiki/engine/errors/SP0338.md +20 -0
- package/dist/wiki/engine/errors/SP0339.md +20 -0
- package/dist/wiki/engine/errors/SP0340.md +20 -0
- package/dist/wiki/engine/errors/SP0341.md +20 -0
- package/dist/wiki/engine/errors/SP0342.md +20 -0
- package/dist/wiki/engine/errors/SP0343.md +20 -0
- package/dist/wiki/engine/errors/SP0344.md +20 -0
- package/dist/wiki/engine/errors/SP0346.md +20 -0
- package/dist/wiki/engine/errors/SP0347.md +20 -0
- package/dist/wiki/engine/errors/SP0348.md +20 -0
- package/dist/wiki/engine/errors/SP0349.md +20 -0
- package/dist/wiki/engine/errors/SP0350.md +20 -0
- package/dist/wiki/engine/errors/SP0351.md +20 -0
- package/dist/wiki/engine/errors/SP0352.md +20 -0
- package/dist/wiki/engine/errors/SP0353.md +20 -0
- package/dist/wiki/engine/errors/SP0354.md +20 -0
- package/dist/wiki/engine/errors/SP0355.md +20 -0
- package/dist/wiki/engine/errors/SP0356.md +20 -0
- package/dist/wiki/engine/errors/SP0357.md +20 -0
- package/dist/wiki/engine/errors/SP0358.md +20 -0
- package/dist/wiki/engine/errors/SP0359.md +20 -0
- package/dist/wiki/engine/errors/SP0360.md +20 -0
- package/dist/wiki/engine/errors/SP0361.md +20 -0
- package/dist/wiki/engine/errors/SP0362.md +20 -0
- package/dist/wiki/engine/errors/SP0363.md +20 -0
- package/dist/wiki/engine/errors/SP0364.md +20 -0
- package/dist/wiki/engine/errors/SP0365.md +20 -0
- package/dist/wiki/engine/errors/SP0366.md +20 -0
- package/dist/wiki/engine/errors/SP0367.md +20 -0
- package/dist/wiki/engine/errors/SP0368.md +20 -0
- package/dist/wiki/engine/errors/SP0369.md +20 -0
- package/dist/wiki/engine/errors/SP0370.md +20 -0
- package/dist/wiki/engine/errors/SP0371.md +20 -0
- package/dist/wiki/engine/errors/SP0372.md +20 -0
- package/dist/wiki/engine/errors/SP0373.md +20 -0
- package/dist/wiki/engine/errors/SP0374.md +20 -0
- package/dist/wiki/engine/errors/SP0375.md +20 -0
- package/dist/wiki/engine/errors/SP0376.md +20 -0
- package/dist/wiki/engine/errors/SP0377.md +20 -0
- package/dist/wiki/engine/errors/SP0378.md +20 -0
- package/dist/wiki/engine/errors/SP0379.md +20 -0
- package/dist/wiki/engine/errors/SP0380.md +20 -0
- package/dist/wiki/engine/errors/SP0381.md +20 -0
- package/dist/wiki/engine/errors/SP0382.md +20 -0
- package/dist/wiki/engine/errors/SP0383.md +20 -0
- package/dist/wiki/engine/errors/SP0384.md +20 -0
- package/dist/wiki/engine/errors/SP0385.md +20 -0
- package/dist/wiki/engine/errors/SP0386.md +20 -0
- package/dist/wiki/engine/errors/SP0387.md +21 -0
- package/dist/wiki/engine/errors/SP0388.md +20 -0
- package/dist/wiki/engine/errors/SP0389.md +20 -0
- package/dist/wiki/engine/errors/SP0390.md +20 -0
- package/dist/wiki/engine/errors/SP0391.md +20 -0
- package/dist/wiki/engine/errors/SP0392.md +20 -0
- package/dist/wiki/engine/errors/SP0393.md +20 -0
- package/dist/wiki/engine/errors/SP0394.md +20 -0
- package/dist/wiki/engine/errors/SP0395.md +20 -0
- package/dist/wiki/engine/errors/SP0396.md +20 -0
- package/dist/wiki/engine/errors/SP0397.md +20 -0
- package/dist/wiki/engine/errors/SP0398.md +20 -0
- package/dist/wiki/engine/errors/SP0399.md +20 -0
- package/dist/wiki/engine/errors/SP0400.md +20 -0
- package/dist/wiki/engine/errors/SP0401.md +20 -0
- package/dist/wiki/engine/errors/SP0402.md +20 -0
- package/dist/wiki/engine/errors/SP0403.md +20 -0
- package/dist/wiki/engine/errors/SP0404.md +20 -0
- package/dist/wiki/engine/errors/SP0405.md +20 -0
- package/dist/wiki/engine/errors/SP0406.md +20 -0
- package/dist/wiki/engine/errors/SP0407.md +20 -0
- package/dist/wiki/engine/errors/SP0408.md +20 -0
- package/dist/wiki/engine/errors/SP0409.md +20 -0
- package/dist/wiki/engine/errors/SP0410.md +20 -0
- package/dist/wiki/engine/errors/SP0411.md +20 -0
- package/dist/wiki/engine/errors/SP0412.md +20 -0
- package/dist/wiki/engine/errors/SP0413.md +20 -0
- package/dist/wiki/engine/errors/SP0414.md +20 -0
- package/dist/wiki/engine/errors/SP0415.md +20 -0
- package/dist/wiki/engine/errors/SP0416.md +20 -0
- package/dist/wiki/engine/errors/SP0417.md +20 -0
- package/dist/wiki/engine/errors/SP0418.md +20 -0
- package/dist/wiki/engine/errors/SP0419.md +20 -0
- package/dist/wiki/engine/errors/SP0420.md +20 -0
- package/dist/wiki/engine/errors/SP0421.md +20 -0
- package/dist/wiki/engine/errors/SP0422.md +20 -0
- package/dist/wiki/engine/errors/SP0423.md +20 -0
- package/dist/wiki/engine/errors/SP0427.md +20 -0
- package/dist/wiki/engine/errors/SP0428.md +20 -0
- package/dist/wiki/engine/errors/SP0429.md +20 -0
- package/dist/wiki/engine/errors/SP0430.md +20 -0
- package/dist/wiki/engine/errors/SP0431.md +20 -0
- package/dist/wiki/engine/errors/SP0432.md +20 -0
- package/dist/wiki/engine/errors/SP0433.md +20 -0
- package/dist/wiki/engine/errors/SP0434.md +20 -0
- package/dist/wiki/engine/errors/SP0435.md +20 -0
- package/dist/wiki/engine/errors/SP0436.md +20 -0
- package/dist/wiki/engine/errors/SP0437.md +20 -0
- package/dist/wiki/engine/errors/SP0438.md +20 -0
- package/dist/wiki/engine/errors/SP0439.md +20 -0
- package/dist/wiki/engine/errors/SP0440.md +20 -0
- package/dist/wiki/engine/errors/SP0442.md +20 -0
- package/dist/wiki/engine/errors/SP0443.md +20 -0
- package/dist/wiki/engine/errors/SP0444.md +20 -0
- package/dist/wiki/engine/errors/SP0445.md +20 -0
- package/dist/wiki/engine/errors/SP0446.md +20 -0
- package/dist/wiki/engine/errors/SP0447.md +20 -0
- package/dist/wiki/engine/errors/SP0448.md +20 -0
- package/dist/wiki/engine/errors/SP0449.md +20 -0
- package/dist/wiki/engine/errors/SP0450.md +20 -0
- package/dist/wiki/engine/errors/SP0451.md +20 -0
- package/dist/wiki/engine/errors/SP0452.md +20 -0
- package/dist/wiki/engine/errors/SP0453.md +20 -0
- package/dist/wiki/engine/errors/SP0454.md +20 -0
- package/dist/wiki/engine/errors/SP0455.md +20 -0
- package/dist/wiki/engine/errors/SP0456.md +20 -0
- package/dist/wiki/engine/errors/SP0457.md +20 -0
- package/dist/wiki/engine/errors/SP0458.md +20 -0
- package/dist/wiki/engine/errors/SP0459.md +20 -0
- package/dist/wiki/engine/errors/SP0460.md +20 -0
- package/dist/wiki/engine/errors/SP0461.md +20 -0
- package/dist/wiki/engine/errors/SP0462.md +20 -0
- package/dist/wiki/engine/errors/SP0463.md +20 -0
- package/dist/wiki/engine/errors/SP0464.md +20 -0
- package/dist/wiki/engine/errors/SP0465.md +20 -0
- package/dist/wiki/engine/errors/SP0466.md +20 -0
- package/dist/wiki/engine/errors/SP0467.md +20 -0
- package/dist/wiki/engine/errors/SP0468.md +20 -0
- package/dist/wiki/engine/errors/SP0469.md +20 -0
- package/dist/wiki/engine/errors/SP0470.md +20 -0
- package/dist/wiki/engine/errors/SP0471.md +20 -0
- package/dist/wiki/engine/errors/SP0472.md +20 -0
- package/dist/wiki/engine/errors/SP0473.md +20 -0
- package/dist/wiki/engine/errors/SP0474.md +20 -0
- package/dist/wiki/engine/errors/SP0475.md +20 -0
- package/dist/wiki/engine/errors/SP0476.md +20 -0
- package/dist/wiki/engine/errors/SP0477.md +20 -0
- package/dist/wiki/engine/errors/SP0478.md +20 -0
- package/dist/wiki/engine/errors/SP0479.md +20 -0
- package/dist/wiki/engine/errors/SP0480.md +20 -0
- package/dist/wiki/engine/errors/SP0481.md +20 -0
- package/dist/wiki/engine/errors/SP0482.md +20 -0
- package/dist/wiki/engine/errors/SP0483.md +20 -0
- package/dist/wiki/engine/errors/SP0484.md +20 -0
- package/dist/wiki/engine/errors/SP0497.md +20 -0
- package/dist/wiki/engine/errors/SP0498.md +20 -0
- package/dist/wiki/engine/errors/SP0500.md +20 -0
- package/dist/wiki/engine/errors/SP0501.md +20 -0
- package/dist/wiki/engine/errors/SP0502.md +20 -0
- package/dist/wiki/engine/errors/SP0503.md +20 -0
- package/dist/wiki/engine/errors/SP0504.md +20 -0
- package/dist/wiki/engine/errors/SP0505.md +20 -0
- package/dist/wiki/engine/errors/SP0506.md +20 -0
- package/dist/wiki/engine/errors/SP0507.md +20 -0
- package/dist/wiki/engine/errors/SP0508.md +20 -0
- package/dist/wiki/engine/errors/SP0509.md +20 -0
- package/dist/wiki/engine/errors/SP0510.md +20 -0
- package/dist/wiki/engine/errors/SP0511.md +20 -0
- package/dist/wiki/engine/errors/SP0512.md +20 -0
- package/dist/wiki/engine/errors/SP0513.md +20 -0
- package/dist/wiki/engine/errors/SP0514.md +20 -0
- package/dist/wiki/engine/errors/SP0515.md +20 -0
- package/dist/wiki/engine/errors/SP0516.md +20 -0
- package/dist/wiki/engine/errors/SP0517.md +20 -0
- package/dist/wiki/engine/errors/SP0518.md +20 -0
- package/dist/wiki/engine/errors/SP0519.md +20 -0
- package/dist/wiki/engine/errors/SP0520.md +20 -0
- package/dist/wiki/engine/errors/SP0521.md +20 -0
- package/dist/wiki/engine/errors/SP0522.md +20 -0
- package/dist/wiki/engine/errors/SP0523.md +20 -0
- package/dist/wiki/engine/errors/SP0524.md +20 -0
- package/dist/wiki/engine/errors/SP0525.md +20 -0
- package/dist/wiki/engine/errors/SP0526.md +20 -0
- package/dist/wiki/engine/errors/SP0527.md +20 -0
- package/dist/wiki/engine/errors/SP0528.md +20 -0
- package/dist/wiki/engine/errors/SP0529.md +20 -0
- package/dist/wiki/engine/errors/SP0530.md +20 -0
- package/dist/wiki/engine/errors/SP0531.md +20 -0
- package/dist/wiki/engine/errors/SP0532.md +20 -0
- package/dist/wiki/engine/errors/SP0533.md +20 -0
- package/dist/wiki/engine/errors/SP0534.md +20 -0
- package/dist/wiki/engine/errors/SP0535.md +20 -0
- package/dist/wiki/engine/errors/SP0536.md +20 -0
- package/dist/wiki/engine/errors/SP0537.md +20 -0
- package/dist/wiki/engine/errors/SP0538.md +20 -0
- package/dist/wiki/engine/errors/SP0539.md +20 -0
- package/dist/wiki/engine/errors/SP0540.md +20 -0
- package/dist/wiki/engine/errors/SP0541.md +20 -0
- package/dist/wiki/engine/errors/SP0542.md +20 -0
- package/dist/wiki/engine/errors/SP0543.md +20 -0
- package/dist/wiki/engine/errors/SP0545.md +20 -0
- package/dist/wiki/engine/errors/SP0546.md +20 -0
- package/dist/wiki/engine/errors/SP0547.md +20 -0
- package/dist/wiki/engine/errors/SP0548.md +20 -0
- package/dist/wiki/engine/errors/SP0549.md +20 -0
- package/dist/wiki/engine/errors/SP0550.md +20 -0
- package/dist/wiki/engine/errors/SP0551.md +20 -0
- package/dist/wiki/engine/errors/SP0552.md +20 -0
- package/dist/wiki/engine/errors/SP0553.md +20 -0
- package/dist/wiki/engine/errors/SP0554.md +20 -0
- package/dist/wiki/engine/errors/SP0555.md +20 -0
- package/dist/wiki/engine/errors/SP0556.md +20 -0
- package/dist/wiki/engine/errors/SP0557.md +20 -0
- package/dist/wiki/engine/errors/SP0558.md +20 -0
- package/dist/wiki/engine/errors/SP0559.md +20 -0
- package/dist/wiki/engine/errors/SP0560.md +20 -0
- package/dist/wiki/engine/errors/SP0561.md +20 -0
- package/dist/wiki/engine/errors/SP0562.md +20 -0
- package/dist/wiki/engine/errors/SP0563.md +20 -0
- package/dist/wiki/engine/errors/SP0564.md +20 -0
- package/dist/wiki/engine/errors/SP0565.md +20 -0
- package/dist/wiki/engine/errors/SP0566.md +20 -0
- package/dist/wiki/engine/errors/SP0567.md +20 -0
- package/dist/wiki/engine/errors/SP0568.md +20 -0
- package/dist/wiki/engine/errors/SP0569.md +20 -0
- package/dist/wiki/engine/errors/SP0570.md +20 -0
- package/dist/wiki/engine/errors/index.md +504 -0
- package/dist/wiki/engine/graphics/crt-material.md +64 -0
- package/dist/wiki/engine/graphics/energy-orb-material.md +52 -0
- package/dist/wiki/engine/graphics/instanced-model.md +89 -0
- package/dist/wiki/engine/graphics/looks.md +196 -0
- package/dist/wiki/engine/graphics/particles.md +185 -0
- package/dist/wiki/engine/graphics/portal-material.md +49 -0
- package/dist/wiki/engine/graphics/post-processing.md +130 -0
- package/dist/wiki/engine/graphics/renderer.md +103 -0
- package/dist/wiki/engine/graphics/shader.md +331 -0
- package/dist/wiki/engine/graphics/skinned-batch.md +115 -0
- package/dist/wiki/engine/graphics/track-scatter.md +124 -0
- package/dist/wiki/engine/graphics/track-surface.md +107 -0
- package/dist/wiki/engine/graphics/water-material.md +60 -0
- package/dist/wiki/engine/graphics/webgpu.md +87 -0
- package/dist/wiki/engine/structure/game.md +301 -0
- package/dist/wiki/engine/structure/levels.md +239 -0
- package/dist/wiki/engine/structure/plugins.md +423 -0
- package/dist/wiki/engine/structure/round.md +229 -0
- package/dist/wiki/engine/structure/saves.md +251 -0
- package/dist/wiki/engine/structure/scene.md +69 -0
- package/dist/wiki/engine/structure/states.md +202 -0
- package/dist/wiki/engine/structure/systems.md +242 -0
- package/dist/wiki/engine/structure/track-level.md +73 -0
- package/dist/wiki/engine/structure/world.md +371 -0
- package/dist/wiki/engine/testing/agent-state.md +131 -0
- package/dist/wiki/engine/testing/dev-server.md +101 -0
- package/dist/wiki/engine/testing/devtools-wiki.md +80 -0
- package/dist/wiki/engine/testing/devtools.md +143 -0
- package/dist/wiki/engine/testing/directing.md +125 -0
- package/dist/wiki/engine/testing/director.md +285 -0
- package/dist/wiki/engine/testing/editing.md +71 -0
- package/dist/wiki/engine/testing/errors.md +146 -0
- package/dist/wiki/engine/testing/frame.md +175 -0
- package/dist/wiki/engine/testing/headless.md +133 -0
- package/dist/wiki/engine/testing/hitches.md +140 -0
- package/dist/wiki/engine/testing/joins.md +129 -0
- package/dist/wiki/engine/testing/measuring.md +97 -0
- package/dist/wiki/engine/testing/performance.md +48 -0
- package/dist/wiki/engine/testing/processes.md +87 -0
- package/dist/wiki/engine/testing/replay-storage.md +156 -0
- package/dist/wiki/engine/testing/replay.md +230 -0
- package/dist/wiki/engine/testing/runs.md +162 -0
- package/dist/wiki/engine/testing/which-tool.md +155 -0
- package/dist/wiki/engine/ui/action-bar.md +121 -0
- package/dist/wiki/engine/ui/bar.md +54 -0
- package/dist/wiki/engine/ui/billboard.md +64 -0
- package/dist/wiki/engine/ui/button.md +69 -0
- package/dist/wiki/engine/ui/controls.md +131 -0
- package/dist/wiki/engine/ui/counter.md +40 -0
- package/dist/wiki/engine/ui/devtools-panel.md +69 -0
- package/dist/wiki/engine/ui/drag-and-drop.md +134 -0
- package/dist/wiki/engine/ui/floating-text.md +129 -0
- package/dist/wiki/engine/ui/graphics-quality.md +254 -0
- package/dist/wiki/engine/ui/heading.md +43 -0
- package/dist/wiki/engine/ui/hud.md +100 -0
- package/dist/wiki/engine/ui/icon.md +34 -0
- package/dist/wiki/engine/ui/image.md +38 -0
- package/dist/wiki/engine/ui/index.md +59 -0
- package/dist/wiki/engine/ui/joystick.md +32 -0
- package/dist/wiki/engine/ui/modal.md +95 -0
- package/dist/wiki/engine/ui/panel.md +100 -0
- package/dist/wiki/engine/ui/settings.md +303 -0
- package/dist/wiki/engine/ui/tap.md +33 -0
- package/dist/wiki/engine/ui/text.md +56 -0
- package/dist/wiki/engine/ui/theme.md +119 -0
- package/dist/wiki/engine/ui/window.md +68 -0
- package/dist/wmIDrLkF.js +1 -0
- package/dist/yhuZzG90.js +1 -0
- package/dist/z3YXvfLT.js +1 -0
- package/dist-browser/@pixiv/three-vrm/nodes.js +1 -0
- package/dist-browser/@pixiv/three-vrm.js +1 -0
- package/dist-browser/@react-three/drei/exports/-accumulative-shadows.js +1 -0
- package/dist-browser/@react-three/drei/exports/-adaptive-dpr.js +1 -0
- package/dist-browser/@react-three/drei/exports/-adaptive-events.js +1 -0
- package/dist-browser/@react-three/drei/exports/-arcball-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-ascii-renderer.js +1 -0
- package/dist-browser/@react-three/drei/exports/-b-b-anchor.js +1 -0
- package/dist-browser/@react-three/drei/exports/-backdrop.js +1 -0
- package/dist-browser/@react-three/drei/exports/-bake-shadows.js +1 -0
- package/dist-browser/@react-three/drei/exports/-billboard.js +1 -0
- package/dist-browser/@react-three/drei/exports/-bounds.js +1 -0
- package/dist-browser/@react-three/drei/exports/-box.js +1 -0
- package/dist-browser/@react-three/drei/exports/-bvh.js +1 -0
- package/dist-browser/@react-three/drei/exports/-camera-controls-impl.js +1 -0
- package/dist-browser/@react-three/drei/exports/-camera-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-camera-shake.js +1 -0
- package/dist-browser/@react-three/drei/exports/-capsule.js +1 -0
- package/dist-browser/@react-three/drei/exports/-catmull-rom-line.js +1 -0
- package/dist-browser/@react-three/drei/exports/-caustics.js +1 -0
- package/dist-browser/@react-three/drei/exports/-center.js +1 -0
- package/dist-browser/@react-three/drei/exports/-circle.js +1 -0
- package/dist-browser/@react-three/drei/exports/-clone.js +1 -0
- package/dist-browser/@react-three/drei/exports/-cloud-instance.js +1 -0
- package/dist-browser/@react-three/drei/exports/-cloud.js +1 -0
- package/dist-browser/@react-three/drei/exports/-clouds.js +1 -0
- package/dist-browser/@react-three/drei/exports/-computed-attribute.js +1 -0
- package/dist-browser/@react-three/drei/exports/-cone.js +1 -0
- package/dist-browser/@react-three/drei/exports/-contact-shadows.js +1 -0
- package/dist-browser/@react-three/drei/exports/-cube-camera.js +1 -0
- package/dist-browser/@react-three/drei/exports/-cube-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/-cubic-bezier-line.js +1 -0
- package/dist-browser/@react-three/drei/exports/-curve-modifier.js +1 -0
- package/dist-browser/@react-three/drei/exports/-cycle-raycast.js +1 -0
- package/dist-browser/@react-three/drei/exports/-cylinder.js +1 -0
- package/dist-browser/@react-three/drei/exports/-decal.js +1 -0
- package/dist-browser/@react-three/drei/exports/-detailed.js +1 -0
- package/dist-browser/@react-three/drei/exports/-detect-g-p-u.js +1 -0
- package/dist-browser/@react-three/drei/exports/-device-orientation-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-dodecahedron.js +1 -0
- package/dist-browser/@react-three/drei/exports/-drag-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-edges.js +1 -0
- package/dist-browser/@react-three/drei/exports/-effects.js +1 -0
- package/dist-browser/@react-three/drei/exports/-environment-cube.js +1 -0
- package/dist-browser/@react-three/drei/exports/-environment-map.js +1 -0
- package/dist-browser/@react-three/drei/exports/-environment-portal.js +1 -0
- package/dist-browser/@react-three/drei/exports/-environment.js +1 -0
- package/dist-browser/@react-three/drei/exports/-example.js +1 -0
- package/dist-browser/@react-three/drei/exports/-extrude.js +1 -0
- package/dist-browser/@react-three/drei/exports/-face-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-face-landmarker-defaults.js +1 -0
- package/dist-browser/@react-three/drei/exports/-face-landmarker.js +1 -0
- package/dist-browser/@react-three/drei/exports/-facemesh-datas.js +1 -0
- package/dist-browser/@react-three/drei/exports/-facemesh-eye-defaults.js +1 -0
- package/dist-browser/@react-three/drei/exports/-facemesh-eye.js +1 -0
- package/dist-browser/@react-three/drei/exports/-facemesh.js +1 -0
- package/dist-browser/@react-three/drei/exports/-fbo.js +1 -0
- package/dist-browser/@react-three/drei/exports/-fbx.js +1 -0
- package/dist-browser/@react-three/drei/exports/-first-person-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-fisheye.js +1 -0
- package/dist-browser/@react-three/drei/exports/-float.js +1 -0
- package/dist-browser/@react-three/drei/exports/-fly-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-gizmo-helper.js +1 -0
- package/dist-browser/@react-three/drei/exports/-gizmo-viewcube.js +1 -0
- package/dist-browser/@react-three/drei/exports/-gizmo-viewport.js +1 -0
- package/dist-browser/@react-three/drei/exports/-gltf.js +1 -0
- package/dist-browser/@react-three/drei/exports/-gradient-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/-gradient-type.js +1 -0
- package/dist-browser/@react-three/drei/exports/-grid.js +1 -0
- package/dist-browser/@react-three/drei/exports/-helper.js +1 -0
- package/dist-browser/@react-three/drei/exports/-html.js +1 -0
- package/dist-browser/@react-three/drei/exports/-hud.js +1 -0
- package/dist-browser/@react-three/drei/exports/-icosahedron.js +1 -0
- package/dist-browser/@react-three/drei/exports/-image.js +1 -0
- package/dist-browser/@react-three/drei/exports/-instance.js +1 -0
- package/dist-browser/@react-three/drei/exports/-instanced-attribute.js +1 -0
- package/dist-browser/@react-three/drei/exports/-instances.js +1 -0
- package/dist-browser/@react-three/drei/exports/-is-object.js +1 -0
- package/dist-browser/@react-three/drei/exports/-keyboard-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-ktx2.js +1 -0
- package/dist-browser/@react-three/drei/exports/-lathe.js +1 -0
- package/dist-browser/@react-three/drei/exports/-lightformer.js +1 -0
- package/dist-browser/@react-three/drei/exports/-line.js +1 -0
- package/dist-browser/@react-three/drei/exports/-loader.js +1 -0
- package/dist-browser/@react-three/drei/exports/-map-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-marching-cube.js +1 -0
- package/dist-browser/@react-three/drei/exports/-marching-cubes.js +1 -0
- package/dist-browser/@react-three/drei/exports/-marching-plane.js +1 -0
- package/dist-browser/@react-three/drei/exports/-mask.js +1 -0
- package/dist-browser/@react-three/drei/exports/-matcap-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/-merged.js +1 -0
- package/dist-browser/@react-three/drei/exports/-mesh-discard-material.js +1 -0
- package/dist-browser/@react-three/drei/exports/-mesh-distort-material.js +1 -0
- package/dist-browser/@react-three/drei/exports/-mesh-portal-material.js +1 -0
- package/dist-browser/@react-three/drei/exports/-mesh-reflector-material.js +1 -0
- package/dist-browser/@react-three/drei/exports/-mesh-refraction-material.js +1 -0
- package/dist-browser/@react-three/drei/exports/-mesh-transmission-material.js +1 -0
- package/dist-browser/@react-three/drei/exports/-mesh-wobble-material.js +1 -0
- package/dist-browser/@react-three/drei/exports/-motion-path-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-multi-material.js +1 -0
- package/dist-browser/@react-three/drei/exports/-normal-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/-octahedron.js +1 -0
- package/dist-browser/@react-three/drei/exports/-orbit-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-orthographic-camera.js +1 -0
- package/dist-browser/@react-three/drei/exports/-outlines.js +1 -0
- package/dist-browser/@react-three/drei/exports/-performance-monitor.js +1 -0
- package/dist-browser/@react-three/drei/exports/-perspective-camera.js +1 -0
- package/dist-browser/@react-three/drei/exports/-pivot-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-plane.js +1 -0
- package/dist-browser/@react-three/drei/exports/-point-material-impl.js +1 -0
- package/dist-browser/@react-three/drei/exports/-point-material.js +1 -0
- package/dist-browser/@react-three/drei/exports/-point.js +1 -0
- package/dist-browser/@react-three/drei/exports/-pointer-lock-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-points-buffer.js +1 -0
- package/dist-browser/@react-three/drei/exports/-points.js +1 -0
- package/dist-browser/@react-three/drei/exports/-polyhedron.js +1 -0
- package/dist-browser/@react-three/drei/exports/-position-mesh.js +1 -0
- package/dist-browser/@react-three/drei/exports/-position-point.js +1 -0
- package/dist-browser/@react-three/drei/exports/-positional-audio.js +1 -0
- package/dist-browser/@react-three/drei/exports/-preload.js +1 -0
- package/dist-browser/@react-three/drei/exports/-presentation-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-progress.js +1 -0
- package/dist-browser/@react-three/drei/exports/-quadratic-bezier-line.js +1 -0
- package/dist-browser/@react-three/drei/exports/-randomized-light.js +1 -0
- package/dist-browser/@react-three/drei/exports/-render-cube-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/-render-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/-resize.js +1 -0
- package/dist-browser/@react-three/drei/exports/-ring.js +1 -0
- package/dist-browser/@react-three/drei/exports/-rounded-box-geometry.js +1 -0
- package/dist-browser/@react-three/drei/exports/-rounded-box.js +1 -0
- package/dist-browser/@react-three/drei/exports/-sampler.js +1 -0
- package/dist-browser/@react-three/drei/exports/-screen-quad.js +1 -0
- package/dist-browser/@react-three/drei/exports/-screen-sizer.js +1 -0
- package/dist-browser/@react-three/drei/exports/-screen-space.js +1 -0
- package/dist-browser/@react-three/drei/exports/-screen-video-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/-scroll-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-scroll.js +1 -0
- package/dist-browser/@react-three/drei/exports/-segment-object.js +1 -0
- package/dist-browser/@react-three/drei/exports/-segment.js +1 -0
- package/dist-browser/@react-three/drei/exports/-segments.js +1 -0
- package/dist-browser/@react-three/drei/exports/-select.js +1 -0
- package/dist-browser/@react-three/drei/exports/-shadow-alpha.js +1 -0
- package/dist-browser/@react-three/drei/exports/-shadow.js +1 -0
- package/dist-browser/@react-three/drei/exports/-shape.js +1 -0
- package/dist-browser/@react-three/drei/exports/-sky.js +1 -0
- package/dist-browser/@react-three/drei/exports/-soft-shadows.js +1 -0
- package/dist-browser/@react-three/drei/exports/-sparkles.js +1 -0
- package/dist-browser/@react-three/drei/exports/-sphere.js +1 -0
- package/dist-browser/@react-three/drei/exports/-splat.js +1 -0
- package/dist-browser/@react-three/drei/exports/-spot-light-shadow.js +1 -0
- package/dist-browser/@react-three/drei/exports/-spot-light.js +1 -0
- package/dist-browser/@react-three/drei/exports/-sprite-animator.js +1 -0
- package/dist-browser/@react-three/drei/exports/-stage.js +1 -0
- package/dist-browser/@react-three/drei/exports/-stars.js +1 -0
- package/dist-browser/@react-three/drei/exports/-stats-gl.js +1 -0
- package/dist-browser/@react-three/drei/exports/-stats.js +1 -0
- package/dist-browser/@react-three/drei/exports/-svg.js +1 -0
- package/dist-browser/@react-three/drei/exports/-tetrahedron.js +1 -0
- package/dist-browser/@react-three/drei/exports/-text.js +1 -0
- package/dist-browser/@react-three/drei/exports/-text3-d.js +1 -0
- package/dist-browser/@react-three/drei/exports/-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/-torus-knot.js +1 -0
- package/dist-browser/@react-three/drei/exports/-torus.js +1 -0
- package/dist-browser/@react-three/drei/exports/-trackball-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-trail-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/-trail.js +1 -0
- package/dist-browser/@react-three/drei/exports/-transform-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/-tube.js +1 -0
- package/dist-browser/@react-three/drei/exports/-video-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/-view.js +1 -0
- package/dist-browser/@react-three/drei/exports/-webcam-video-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/-wireframe.js +1 -0
- package/dist-browser/@react-three/drei/exports/accumulative-context.js +1 -0
- package/dist-browser/@react-three/drei/exports/calc-pos-from-angles.js +1 -0
- package/dist-browser/@react-three/drei/exports/calculate-scale-factor.js +1 -0
- package/dist-browser/@react-three/drei/exports/check-if-frame-is-empty.js +1 -0
- package/dist-browser/@react-three/drei/exports/create-instances.js +1 -0
- package/dist-browser/@react-three/drei/exports/get-first-frame.js +1 -0
- package/dist-browser/@react-three/drei/exports/is-web-g-l2-available.js +1 -0
- package/dist-browser/@react-three/drei/exports/mesh-bounds.js +1 -0
- package/dist-browser/@react-three/drei/exports/shader-material.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-animations.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-aspect.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-b-v-h.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-bounds.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-box-projected-env.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-camera.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-context-bridge.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-cube-camera.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-cube-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-cursor.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-depth-buffer.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-detect-g-p-u.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-environment.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-f-b-o.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-f-b-x.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-face-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-face-landmarker.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-font.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-g-l-t-f.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-gizmo-context.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-helper.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-intersect.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-k-t-x2.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-keyboard-controls.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-mask.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-matcap-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-motion.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-normal-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-performance-monitor.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-progress.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-scroll.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-select.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-sprite-animator.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-sprite-loader.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-surface-sampler.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-trail-texture.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-trail.js +1 -0
- package/dist-browser/@react-three/drei/exports/use-video-texture.js +1 -0
- package/dist-browser/@react-three/drei.js +1 -0
- package/dist-browser/@react-three/fiber.js +1 -0
- package/dist-browser/@react-three/postprocessing.js +1 -0
- package/dist-browser/@spawnite/engine/abilities.js +1 -0
- package/dist-browser/@spawnite/engine/core.js +1 -0
- package/dist-browser/@spawnite/engine/dragAndDrop.js +1 -0
- package/dist-browser/@spawnite/engine/inventory.js +1 -0
- package/dist-browser/@spawnite/engine/looks/dusk.js +1 -0
- package/dist-browser/@spawnite/engine/looks/morning.js +1 -0
- package/dist-browser/@spawnite/engine/looks/night.js +1 -0
- package/dist-browser/@spawnite/engine/looks/noon.js +1 -0
- package/dist-browser/@spawnite/engine/looks/overcast.js +1 -0
- package/dist-browser/@spawnite/engine/npcs.js +1 -0
- package/dist-browser/@spawnite/engine/rounds.js +1 -0
- package/dist-browser/@spawnite/engine/three.js +1 -0
- package/dist-browser/@spawnite/engine/tracks.js +1 -0
- package/dist-browser/@spawnite/engine/weapons.js +1 -0
- package/dist-browser/@spawnite/engine.js +376 -0
- package/dist-browser/@spawnite/schema/exports/-agent-state.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-app-message-type.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-channel-handshake.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-clip-clock.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-clip-record-action.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-clip-shape.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-collision-shape.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-cover-kind.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-credential-kind.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-device-class.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-engine-save-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-favorite-kind.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-model-style.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-page-connection-status.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-page-message-type.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-performance-stats-mode.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-prop-shape.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-quality-group.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-quality-level.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-room-mode.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-save-owner-change.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-save-section.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-scatter-family.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-scatter-kind.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-shot-angle.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-voice-mode.js +1 -0
- package/dist-browser/@spawnite/schema/exports/-wiki-scope.js +1 -0
- package/dist-browser/@spawnite/schema/exports/add-asset-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/add-behaviour-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/add-dialog-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/add-entity-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/add-hud-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/add-item-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/add-map-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/add-npc-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/add-panel-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/add-scene-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/add-shader-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/agent-activity-event.js +1 -0
- package/dist-browser/@spawnite/schema/exports/agent-heartbeat-milliseconds.js +1 -0
- package/dist-browser/@spawnite/schema/exports/app-channel-version.js +1 -0
- package/dist-browser/@spawnite/schema/exports/app-credential.js +1 -0
- package/dist-browser/@spawnite/schema/exports/app-inset-edges.js +1 -0
- package/dist-browser/@spawnite/schema/exports/app-insets.js +1 -0
- package/dist-browser/@spawnite/schema/exports/app-message-versions.js +1 -0
- package/dist-browser/@spawnite/schema/exports/app-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/app-player.js +1 -0
- package/dist-browser/@spawnite/schema/exports/app-settings-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/asset-catalog.js +1 -0
- package/dist-browser/@spawnite/schema/exports/asset-category.js +1 -0
- package/dist-browser/@spawnite/schema/exports/asset-declaration.js +1 -0
- package/dist-browser/@spawnite/schema/exports/asset-entry.js +1 -0
- package/dist-browser/@spawnite/schema/exports/asset-filters.js +1 -0
- package/dist-browser/@spawnite/schema/exports/asset-key.js +1 -0
- package/dist-browser/@spawnite/schema/exports/asset-kind.js +1 -0
- package/dist-browser/@spawnite/schema/exports/asset-licence.js +1 -0
- package/dist-browser/@spawnite/schema/exports/asset-manifest.js +1 -0
- package/dist-browser/@spawnite/schema/exports/asset-source.js +1 -0
- package/dist-browser/@spawnite/schema/exports/asset-style.js +1 -0
- package/dist-browser/@spawnite/schema/exports/asset-url.js +1 -0
- package/dist-browser/@spawnite/schema/exports/assets-site.js +1 -0
- package/dist-browser/@spawnite/schema/exports/brush-shapes.js +1 -0
- package/dist-browser/@spawnite/schema/exports/build-save-manifest-entry.js +1 -0
- package/dist-browser/@spawnite/schema/exports/bundle-file.js +1 -0
- package/dist-browser/@spawnite/schema/exports/bundle-limits.js +1 -0
- package/dist-browser/@spawnite/schema/exports/bundle-manifest-file.js +1 -0
- package/dist-browser/@spawnite/schema/exports/bundle-manifest.js +1 -0
- package/dist-browser/@spawnite/schema/exports/bundle-page-folder.js +1 -0
- package/dist-browser/@spawnite/schema/exports/bundle-server-folder.js +1 -0
- package/dist-browser/@spawnite/schema/exports/carried-setting-key-list.js +1 -0
- package/dist-browser/@spawnite/schema/exports/carried-setting-keys.js +1 -0
- package/dist-browser/@spawnite/schema/exports/carried-settings.js +1 -0
- package/dist-browser/@spawnite/schema/exports/catalog-row.js +1 -0
- package/dist-browser/@spawnite/schema/exports/cell-paint.js +1 -0
- package/dist-browser/@spawnite/schema/exports/channel-connect.js +1 -0
- package/dist-browser/@spawnite/schema/exports/channel-hello.js +1 -0
- package/dist-browser/@spawnite/schema/exports/chat-folder-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/chat-path.js +1 -0
- package/dist-browser/@spawnite/schema/exports/chat-post.js +1 -0
- package/dist-browser/@spawnite/schema/exports/chat-read-folder-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/check-game-slug.js +1 -0
- package/dist-browser/@spawnite/schema/exports/check-model-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/check-save-migrations.js +1 -0
- package/dist-browser/@spawnite/schema/exports/check-save-publish.js +1 -0
- package/dist-browser/@spawnite/schema/exports/check-sound-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/clip-finish.js +1 -0
- package/dist-browser/@spawnite/schema/exports/clip-meta.js +1 -0
- package/dist-browser/@spawnite/schema/exports/clip-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/clips-folder-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/clips-path.js +1 -0
- package/dist-browser/@spawnite/schema/exports/compare-save-manifest-entries.js +1 -0
- package/dist-browser/@spawnite/schema/exports/compare-shots-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/component-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/condition-seconds.js +1 -0
- package/dist-browser/@spawnite/schema/exports/connection-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/create-quality-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/create-site.js +1 -0
- package/dist-browser/@spawnite/schema/exports/create-tagged-save-value-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/credential-versions.js +1 -0
- package/dist-browser/@spawnite/schema/exports/day-hour.js +1 -0
- package/dist-browser/@spawnite/schema/exports/day-length.js +1 -0
- package/dist-browser/@spawnite/schema/exports/default-player-settings.js +1 -0
- package/dist-browser/@spawnite/schema/exports/default-room-players.js +1 -0
- package/dist-browser/@spawnite/schema/exports/default-room-send-rate.js +1 -0
- package/dist-browser/@spawnite/schema/exports/describe-entity-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/describe-map-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/describe-save-publish-refusal.js +1 -0
- package/dist-browser/@spawnite/schema/exports/dev-saves-cleared-file.js +1 -0
- package/dist-browser/@spawnite/schema/exports/dev-saves-cleared-meta-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/dev-saves-folder.js +1 -0
- package/dist-browser/@spawnite/schema/exports/dev-server-file.js +1 -0
- package/dist-browser/@spawnite/schema/exports/dev-server-prefix.js +1 -0
- package/dist-browser/@spawnite/schema/exports/devtools-favorites.js +1 -0
- package/dist-browser/@spawnite/schema/exports/devtools-presets.js +1 -0
- package/dist-browser/@spawnite/schema/exports/direct-link.js +1 -0
- package/dist-browser/@spawnite/schema/exports/edit-material-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/edit-terrain-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/engine-build-meta-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/engine-build-path.js +1 -0
- package/dist-browser/@spawnite/schema/exports/engine-label.js +1 -0
- package/dist-browser/@spawnite/schema/exports/engine-origin.js +1 -0
- package/dist-browser/@spawnite/schema/exports/engine-save-readers.js +1 -0
- package/dist-browser/@spawnite/schema/exports/engine-save-schemas.js +1 -0
- package/dist-browser/@spawnite/schema/exports/error-reports-config.js +1 -0
- package/dist-browser/@spawnite/schema/exports/error-reports-meta-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/error-reports-path.js +1 -0
- package/dist-browser/@spawnite/schema/exports/favorite-field.js +1 -0
- package/dist-browser/@spawnite/schema/exports/filter-assets.js +1 -0
- package/dist-browser/@spawnite/schema/exports/find-particle-effect-excess.js +1 -0
- package/dist-browser/@spawnite/schema/exports/find-room-settings-problems.js +1 -0
- package/dist-browser/@spawnite/schema/exports/find-terrain-cell.js +1 -0
- package/dist-browser/@spawnite/schema/exports/fingerprint-save-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/format-clip-length.js +1 -0
- package/dist-browser/@spawnite/schema/exports/format-clip-size.js +1 -0
- package/dist-browser/@spawnite/schema/exports/format-link-conditions.js +1 -0
- package/dist-browser/@spawnite/schema/exports/framed-shot-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/fullscreen-answer-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/fullscreen-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/game-materials-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/game-materials-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/game-origin.js +1 -0
- package/dist-browser/@spawnite/schema/exports/game-page-path.js +1 -0
- package/dist-browser/@spawnite/schema/exports/game-save-key.js +1 -0
- package/dist-browser/@spawnite/schema/exports/grid-map.js +1 -0
- package/dist-browser/@spawnite/schema/exports/ground-rule-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/ground-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/hud-slot.js +1 -0
- package/dist-browser/@spawnite/schema/exports/init-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/init-save.js +1 -0
- package/dist-browser/@spawnite/schema/exports/insets-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/is-additive-schema-change.js +1 -0
- package/dist-browser/@spawnite/schema/exports/is-game-id.js +1 -0
- package/dist-browser/@spawnite/schema/exports/is-game-slug.js +1 -0
- package/dist-browser/@spawnite/schema/exports/is-kept-label.js +1 -0
- package/dist-browser/@spawnite/schema/exports/is-link-direct.js +1 -0
- package/dist-browser/@spawnite/schema/exports/is-older-reader.js +1 -0
- package/dist-browser/@spawnite/schema/exports/is-particle-effect-looping.js +1 -0
- package/dist-browser/@spawnite/schema/exports/is-room-players.js +1 -0
- package/dist-browser/@spawnite/schema/exports/is-room-send-rate.js +1 -0
- package/dist-browser/@spawnite/schema/exports/item-definition.js +1 -0
- package/dist-browser/@spawnite/schema/exports/join-room-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/leave-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/left-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/list-assets-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/list-clips-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/list-templates-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/list-wiki-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/long-call-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/longest-timeout-seconds.js +1 -0
- package/dist-browser/@spawnite/schema/exports/make-model-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/map-base-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/map-path.js +1 -0
- package/dist-browser/@spawnite/schema/exports/map-point.js +1 -0
- package/dist-browser/@spawnite/schema/exports/map-post.js +1 -0
- package/dist-browser/@spawnite/schema/exports/map-prop-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/map-props-patch.js +1 -0
- package/dist-browser/@spawnite/schema/exports/map-props-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/map-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/map-sea-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/map-terrain-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/material-cover-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/material-look-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/material-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/material-sets.js +1 -0
- package/dist-browser/@spawnite/schema/exports/materials-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/max-error-report-bytes.js +1 -0
- package/dist-browser/@spawnite/schema/exports/max-save-body-bytes.js +1 -0
- package/dist-browser/@spawnite/schema/exports/max-save-body-ceiling-bytes.js +1 -0
- package/dist-browser/@spawnite/schema/exports/max-save-unpacked-bytes.js +1 -0
- package/dist-browser/@spawnite/schema/exports/max-save-unpacked-ceiling-bytes.js +1 -0
- package/dist-browser/@spawnite/schema/exports/menu-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/merge-carried-settings.js +1 -0
- package/dist-browser/@spawnite/schema/exports/merge-save-highest.js +1 -0
- package/dist-browser/@spawnite/schema/exports/model-reference-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/model-triangle-budget.js +1 -0
- package/dist-browser/@spawnite/schema/exports/most-rejoin-hold-seconds.js +1 -0
- package/dist-browser/@spawnite/schema/exports/most-room-players.js +1 -0
- package/dist-browser/@spawnite/schema/exports/name-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/new-game-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/package-room-hint.js +1 -0
- package/dist-browser/@spawnite/schema/exports/package-room.js +1 -0
- package/dist-browser/@spawnite/schema/exports/page-message-versions.js +1 -0
- package/dist-browser/@spawnite/schema/exports/page-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/page-settings-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/parse-link-conditions.js +1 -0
- package/dist-browser/@spawnite/schema/exports/particle-effect-limits.js +1 -0
- package/dist-browser/@spawnite/schema/exports/particle-sprite-max-side.js +1 -0
- package/dist-browser/@spawnite/schema/exports/place-loot-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/place-props-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/play-domain.js +1 -0
- package/dist-browser/@spawnite/schema/exports/profile-game-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/project-folder.js +1 -0
- package/dist-browser/@spawnite/schema/exports/publish-assets-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/publish-version-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/query-map-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-ai-tree-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-chat-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-clip-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-clip-start-time.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-game-id.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-game-wiki-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-package-room.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-paint-grid.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-particle-effect.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-room-mode.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-run-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-save-mark.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-save-record.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-terrain-grid.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-track-level.js +1 -0
- package/dist-browser/@spawnite/schema/exports/read-wiki-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/ready-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/record-clip-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/registry-entry.js +1 -0
- package/dist-browser/@spawnite/schema/exports/registry-file.js +1 -0
- package/dist-browser/@spawnite/schema/exports/registry-item-schema-url.js +1 -0
- package/dist-browser/@spawnite/schema/exports/registry-item.js +1 -0
- package/dist-browser/@spawnite/schema/exports/registry-schema-url.js +1 -0
- package/dist-browser/@spawnite/schema/exports/registry.js +1 -0
- package/dist-browser/@spawnite/schema/exports/resolve-room-settings.js +1 -0
- package/dist-browser/@spawnite/schema/exports/reverse-wiki-relation.js +1 -0
- package/dist-browser/@spawnite/schema/exports/room-send-rates.js +1 -0
- package/dist-browser/@spawnite/schema/exports/save-codec-mark.js +1 -0
- package/dist-browser/@spawnite/schema/exports/save-failed-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/save-fingerprint-format.js +1 -0
- package/dist-browser/@spawnite/schema/exports/save-limit-warning-share.js +1 -0
- package/dist-browser/@spawnite/schema/exports/save-load-failed-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/save-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/save-now-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/save-record-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/saved-health-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/saved-level-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/saved-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/saved-stack-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/saved-stat-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/saved-vector-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/scatter-kinds.js +1 -0
- package/dist-browser/@spawnite/schema/exports/scene-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/screenshot-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/search-wiki-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/seat-credential.js +1 -0
- package/dist-browser/@spawnite/schema/exports/seat-message.js +1 -0
- package/dist-browser/@spawnite/schema/exports/send-input-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/servers-folder-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/set-nickname-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/set-trait-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/set-visibility-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/settings-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/shot-angle-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/shot-camera-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/shot-post.js +1 -0
- package/dist-browser/@spawnite/schema/exports/shots-folder-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/shots-path.js +1 -0
- package/dist-browser/@spawnite/schema/exports/simulate-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/slug-limits.js +1 -0
- package/dist-browser/@spawnite/schema/exports/slugify-game-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/snapshot-save-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/space-point-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/spawnite-folder-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/start-playtest-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/start-save-key.js +1 -0
- package/dist-browser/@spawnite/schema/exports/steps-per-second.js +1 -0
- package/dist-browser/@spawnite/schema/exports/store-age-bands.js +1 -0
- package/dist-browser/@spawnite/schema/exports/store-page-limits.js +1 -0
- package/dist-browser/@spawnite/schema/exports/store-page.js +1 -0
- package/dist-browser/@spawnite/schema/exports/store-picture-rules.js +1 -0
- package/dist-browser/@spawnite/schema/exports/store-picture.js +1 -0
- package/dist-browser/@spawnite/schema/exports/tab-info.js +1 -0
- package/dist-browser/@spawnite/schema/exports/tab-path.js +1 -0
- package/dist-browser/@spawnite/schema/exports/tab-post.js +1 -0
- package/dist-browser/@spawnite/schema/exports/tab-token-header.js +1 -0
- package/dist-browser/@spawnite/schema/exports/tagged-save-value-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/terrain-brush.js +1 -0
- package/dist-browser/@spawnite/schema/exports/terrain-fill.js +1 -0
- package/dist-browser/@spawnite/schema/exports/terrain-map.js +1 -0
- package/dist-browser/@spawnite/schema/exports/terrain-restore.js +1 -0
- package/dist-browser/@spawnite/schema/exports/terrain-settlings.js +1 -0
- package/dist-browser/@spawnite/schema/exports/terrain-stroke-shape.js +1 -0
- package/dist-browser/@spawnite/schema/exports/terrain-stroke.js +1 -0
- package/dist-browser/@spawnite/schema/exports/terrain-tools.js +1 -0
- package/dist-browser/@spawnite/schema/exports/timeline-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/to-display-name.js +1 -0
- package/dist-browser/@spawnite/schema/exports/to-wiki-anchor.js +1 -0
- package/dist-browser/@spawnite/schema/exports/track-level-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/untouched.js +1 -0
- package/dist-browser/@spawnite/schema/exports/upload-store-page-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/upload-version-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/versions-of-save-manifest-entry.js +1 -0
- package/dist-browser/@spawnite/schema/exports/versions-of.js +1 -0
- package/dist-browser/@spawnite/schema/exports/view-schema.js +1 -0
- package/dist-browser/@spawnite/schema/exports/voice-settings.js +1 -0
- package/dist-browser/@spawnite/schema/exports/whoami-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/wiki-overview-path.js +1 -0
- package/dist-browser/@spawnite/schema/exports/wiki-page-path.js +1 -0
- package/dist-browser/@spawnite/schema/exports/wiki-page-ref.js +1 -0
- package/dist-browser/@spawnite/schema/exports/wiki-path-part.js +1 -0
- package/dist-browser/@spawnite/schema/exports/wiki-site.js +1 -0
- package/dist-browser/@spawnite/schema/exports/write-link-settings.js +1 -0
- package/dist-browser/@spawnite/schema/exports/write-paint-grid.js +1 -0
- package/dist-browser/@spawnite/schema/exports/write-save-record.js +1 -0
- package/dist-browser/@spawnite/schema/exports/write-terrain-grid.js +1 -0
- package/dist-browser/@spawnite/schema/exports/write-wiki-page-input.js +1 -0
- package/dist-browser/@spawnite/schema/exports/z.js +1 -0
- package/dist-browser/@spawnite/schema.js +1 -0
- package/dist-browser/@spawnite/ui/motion.js +1 -0
- package/dist-browser/@spawnite/ui.js +1 -0
- package/dist-browser/THIRD-PARTY-NOTICES +2949 -0
- package/dist-browser/assets/basis_transcoder-VXdx5NbI.wasm +0 -0
- package/dist-browser/assets/basis_transcoder-o4Hde_L7.js +19 -0
- package/dist-browser/assets/draco_decoder-C32yEggz.wasm +0 -0
- package/dist-browser/assets/draco_decoder-Z1_iN-Ht.wasm +0 -0
- package/dist-browser/assets/draco_decoder-fzg4nYZr.js +34 -0
- package/dist-browser/assets/draco_wasm_wrapper-DxJM36Ib.js +117 -0
- package/dist-browser/assets/draco_wasm_wrapper-fZCQGLGb.js +116 -0
- package/dist-browser/assets/rapier_wasm3d_bg-CcJdV3OS.wasm +0 -0
- package/dist-browser/chunks/-8xKUVc-.js +1 -0
- package/dist-browser/chunks/0Bppyo06.js +1 -0
- package/dist-browser/chunks/0XBYBf4e.js +1 -0
- package/dist-browser/chunks/1Pk4GW-o.js +1 -0
- package/dist-browser/chunks/1TfeBVY_.js +1 -0
- package/dist-browser/chunks/2GzBwp8F.js +1 -0
- package/dist-browser/chunks/37dBpPRN.js +1 -0
- package/dist-browser/chunks/3GDQ_l39.js +1 -0
- package/dist-browser/chunks/4r3wlCT-.js +56 -0
- package/dist-browser/chunks/51muForc.js +2 -0
- package/dist-browser/chunks/5l3Kj8OA.js +25 -0
- package/dist-browser/chunks/5v0sm-la.js +1 -0
- package/dist-browser/chunks/6RSie8Zr.js +1 -0
- package/dist-browser/chunks/6VxScSBj.js +1 -0
- package/dist-browser/chunks/6r1L_s87.js +1 -0
- package/dist-browser/chunks/703AF8IC.js +2 -0
- package/dist-browser/chunks/7kk1UrXM.js +54 -0
- package/dist-browser/chunks/7v-xFmSc.js +1 -0
- package/dist-browser/chunks/8CwB1oG9.js +1 -0
- package/dist-browser/chunks/8GjxAP3h.js +1 -0
- package/dist-browser/chunks/8Pep1QKH.js +1 -0
- package/dist-browser/chunks/8eSx71cM.js +1 -0
- package/dist-browser/chunks/8qLBuj0B.js +1 -0
- package/dist-browser/chunks/8uMFNz4F.js +48 -0
- package/dist-browser/chunks/9BUmmiDi.js +64 -0
- package/dist-browser/chunks/AEQH3xKs.js +1 -0
- package/dist-browser/chunks/B04SdTxo.js +1 -0
- package/dist-browser/chunks/B0d1OhsT.js +1 -0
- package/dist-browser/chunks/B0d94ulh.js +1 -0
- package/dist-browser/chunks/B0dIJJnS.js +104 -0
- package/dist-browser/chunks/B0sEcOA4.js +1 -0
- package/dist-browser/chunks/B17MsfBW.js +2 -0
- package/dist-browser/chunks/B1Q2EYQa.js +409 -0
- package/dist-browser/chunks/B1VGbFnq.js +1 -0
- package/dist-browser/chunks/B1ZLDwkb.js +1 -0
- package/dist-browser/chunks/B1gZ4XNT.js +1 -0
- package/dist-browser/chunks/B2P8OKx4.js +114 -0
- package/dist-browser/chunks/B2lwHY_A.js +1 -0
- package/dist-browser/chunks/B2rfjAu3.js +1 -0
- package/dist-browser/chunks/B3cpZ7qW.js +1 -0
- package/dist-browser/chunks/B3zyuqQe.js +1 -0
- package/dist-browser/chunks/B4HH7vxm.js +1 -0
- package/dist-browser/chunks/B4L72GuI.js +1 -0
- package/dist-browser/chunks/B4PXM93E.js +1 -0
- package/dist-browser/chunks/B4dyXOK4.js +2 -0
- package/dist-browser/chunks/B4f83JmW.js +1 -0
- package/dist-browser/chunks/B4rtOA11.js +1 -0
- package/dist-browser/chunks/B53Q2-Fw.js +42 -0
- package/dist-browser/chunks/B5YG9Ima.js +35 -0
- package/dist-browser/chunks/B5npwEiE.js +1 -0
- package/dist-browser/chunks/B6TyyPfn.js +2280 -0
- package/dist-browser/chunks/B6YPgX9B.js +1 -0
- package/dist-browser/chunks/B7K2KMcP.js +289 -0
- package/dist-browser/chunks/B8GCRzu-.js +1 -0
- package/dist-browser/chunks/B8f3enUO.js +42 -0
- package/dist-browser/chunks/B9dPPcmc.js +239 -0
- package/dist-browser/chunks/B9n7U8x8.js +24 -0
- package/dist-browser/chunks/BAcEoh4A.js +1 -0
- package/dist-browser/chunks/BBTy17gV.js +23 -0
- package/dist-browser/chunks/BBoWq_28.js +1 -0
- package/dist-browser/chunks/BCEkROxA.js +1 -0
- package/dist-browser/chunks/BCSDojKA.js +2 -0
- package/dist-browser/chunks/BCnGjanZ.js +1 -0
- package/dist-browser/chunks/BCy2Imwl.js +1 -0
- package/dist-browser/chunks/BD93nK4k.js +1 -0
- package/dist-browser/chunks/BDYWv4Pt.js +1 -0
- package/dist-browser/chunks/BDntRBeD.js +1 -0
- package/dist-browser/chunks/BE0sHH_C.js +1 -0
- package/dist-browser/chunks/BE7yKwOS.js +1 -0
- package/dist-browser/chunks/BFDqfrDx.js +61 -0
- package/dist-browser/chunks/BFnCgym5.js +1 -0
- package/dist-browser/chunks/BFpenkAR.js +1 -0
- package/dist-browser/chunks/BFvqTjM2.js +1 -0
- package/dist-browser/chunks/BG8QaCAl.js +1 -0
- package/dist-browser/chunks/BGsrJU1n.js +219 -0
- package/dist-browser/chunks/BGze3w87.js +1 -0
- package/dist-browser/chunks/BHYG5big.js +1 -0
- package/dist-browser/chunks/BHZuFsZC.js +26 -0
- package/dist-browser/chunks/BHePouWp.js +1 -0
- package/dist-browser/chunks/BIGc2B5x.js +106 -0
- package/dist-browser/chunks/BIgbJOA7.js +1 -0
- package/dist-browser/chunks/BIlEJ_uM.js +1 -0
- package/dist-browser/chunks/BIrJsLCp.js +1 -0
- package/dist-browser/chunks/BJCTIWwI.js +97 -0
- package/dist-browser/chunks/BJWwGEft.js +22 -0
- package/dist-browser/chunks/BJbnvkQD.js +33 -0
- package/dist-browser/chunks/BJj_P5qy.js +40 -0
- package/dist-browser/chunks/BKMmwIjP.js +1 -0
- package/dist-browser/chunks/BL2b-bga.js +1 -0
- package/dist-browser/chunks/BL3GFPpX.js +1 -0
- package/dist-browser/chunks/BL3JqalM.js +1 -0
- package/dist-browser/chunks/BLQoPgRQ.js +17 -0
- package/dist-browser/chunks/BLdTHuK5.js +38 -0
- package/dist-browser/chunks/BLxVM0Bx.js +1 -0
- package/dist-browser/chunks/BMOXLfbG.js +1 -0
- package/dist-browser/chunks/BMyF16Pb.js +1 -0
- package/dist-browser/chunks/BN0JituG.js +1 -0
- package/dist-browser/chunks/BNiTh9Zb.js +1 -0
- package/dist-browser/chunks/BNm7BDEl.js +1 -0
- package/dist-browser/chunks/BNucCtAC.js +1 -0
- package/dist-browser/chunks/BOAa4bZ5.js +80 -0
- package/dist-browser/chunks/BOIXSUZ_.js +1 -0
- package/dist-browser/chunks/BOY2osHs.js +1 -0
- package/dist-browser/chunks/BP9HooTj.js +1 -0
- package/dist-browser/chunks/BPsQn259.js +1 -0
- package/dist-browser/chunks/BPyPftW0.js +1 -0
- package/dist-browser/chunks/BQl3ddsW.js +1 -0
- package/dist-browser/chunks/BSaFdJJr.js +1 -0
- package/dist-browser/chunks/BSb5Y-Am.js +1 -0
- package/dist-browser/chunks/BSoHyLeW.js +1 -0
- package/dist-browser/chunks/BUJHJVUo.js +1 -0
- package/dist-browser/chunks/BV45MfzJ.js +206 -0
- package/dist-browser/chunks/BWLobtMG.js +1 -0
- package/dist-browser/chunks/BWX2omqC.js +1 -0
- package/dist-browser/chunks/BX-IJ6Jw.js +1 -0
- package/dist-browser/chunks/BZ67u85L.js +1 -0
- package/dist-browser/chunks/BZL3DkMo.js +1 -0
- package/dist-browser/chunks/BZkTFuN8.js +32 -0
- package/dist-browser/chunks/B_olo1g0.js +1 -0
- package/dist-browser/chunks/B_xcv6lP.js +1 -0
- package/dist-browser/chunks/BadDFgpu.js +3 -0
- package/dist-browser/chunks/BbIllpJG.js +1 -0
- package/dist-browser/chunks/Bc7uTOHd.js +1 -0
- package/dist-browser/chunks/BcH7_nnK.js +1 -0
- package/dist-browser/chunks/Bdd_iq-Z.js +1 -0
- package/dist-browser/chunks/BdkaRoRG.js +3 -0
- package/dist-browser/chunks/BeUM0nnI.js +1 -0
- package/dist-browser/chunks/BfkxY7do.js +13 -0
- package/dist-browser/chunks/BfzfmpKY.js +1 -0
- package/dist-browser/chunks/BgNGXLZH.js +1 -0
- package/dist-browser/chunks/Bgmtnmc9.js +1 -0
- package/dist-browser/chunks/BgtS-68o.js +1 -0
- package/dist-browser/chunks/BhE7ED0P.js +1 -0
- package/dist-browser/chunks/BhG-aLlJ.js +17 -0
- package/dist-browser/chunks/BhtgOF9y.js +1 -0
- package/dist-browser/chunks/BhvPhm_f.js +12 -0
- package/dist-browser/chunks/Bhvb25xz.js +1 -0
- package/dist-browser/chunks/Bi2imP0-.js +1 -0
- package/dist-browser/chunks/Bi4f74NJ.js +1 -0
- package/dist-browser/chunks/BiCMFIxo.js +1 -0
- package/dist-browser/chunks/BiSn0Dtc.js +1 -0
- package/dist-browser/chunks/BiU0PYSX.js +1 -0
- package/dist-browser/chunks/BipZQXT8.js +1 -0
- package/dist-browser/chunks/BiqCT0be.js +1 -0
- package/dist-browser/chunks/BjVVweLJ.js +1 -0
- package/dist-browser/chunks/BjeL5CV8.js +1 -0
- package/dist-browser/chunks/BjikXbkr.js +1 -0
- package/dist-browser/chunks/BkNRpWJF.js +1 -0
- package/dist-browser/chunks/BkWdvCr2.js +1 -0
- package/dist-browser/chunks/BkfYP8sS.js +1 -0
- package/dist-browser/chunks/BkoAp3nt.js +17 -0
- package/dist-browser/chunks/BkuNzUds.js +5 -0
- package/dist-browser/chunks/BlDBqfnQ.js +1 -0
- package/dist-browser/chunks/Blob4piG.js +1 -0
- package/dist-browser/chunks/Bm-NgCJv.js +290 -0
- package/dist-browser/chunks/BmwnZMHR.js +1 -0
- package/dist-browser/chunks/Bn-oguIM.js +1 -0
- package/dist-browser/chunks/Bn8JxKQd.js +947 -0
- package/dist-browser/chunks/Bn8l74kN.js +1 -0
- package/dist-browser/chunks/Bo2vvsC6.js +1 -0
- package/dist-browser/chunks/BoJD7UsQ.js +5 -0
- package/dist-browser/chunks/BoRPdfTd.js +1 -0
- package/dist-browser/chunks/BoTmVVAp.js +1 -0
- package/dist-browser/chunks/BoiOnH_p.js +1 -0
- package/dist-browser/chunks/Bpe2I0GB.js +1 -0
- package/dist-browser/chunks/BqD0o821.js +25 -0
- package/dist-browser/chunks/BqXaJXLb.js +1 -0
- package/dist-browser/chunks/BqsB_Ag5.js +1 -0
- package/dist-browser/chunks/Br-JA8rZ.js +1 -0
- package/dist-browser/chunks/Br2nhNMH.js +1 -0
- package/dist-browser/chunks/BrezGx31.js +3 -0
- package/dist-browser/chunks/BsZMTFvx.js +1 -0
- package/dist-browser/chunks/Bt2nCTua.js +51 -0
- package/dist-browser/chunks/BtM7kQaS.js +1 -0
- package/dist-browser/chunks/BtZNIAhj.js +1 -0
- package/dist-browser/chunks/Btgu8kW9.js +3 -0
- package/dist-browser/chunks/Btjboa9G.js +248 -0
- package/dist-browser/chunks/Btn1Hp7-.js +1 -0
- package/dist-browser/chunks/Bu1cOMsK.js +1 -0
- package/dist-browser/chunks/Bv2bGJo9.js +1 -0
- package/dist-browser/chunks/BvK95JoS.js +1 -0
- package/dist-browser/chunks/BvrPFs0h.js +1 -0
- package/dist-browser/chunks/BvsNGgEj.js +1 -0
- package/dist-browser/chunks/ByyEEkYz.js +1 -0
- package/dist-browser/chunks/BzAJiB5u.js +1 -0
- package/dist-browser/chunks/BzCmY2x1.js +68 -0
- package/dist-browser/chunks/BzKtjbg2.js +1 -0
- package/dist-browser/chunks/BzZ2lwsC.js +134 -0
- package/dist-browser/chunks/BzcZWs3f.js +1 -0
- package/dist-browser/chunks/BzuN4nW7.js +33 -0
- package/dist-browser/chunks/BzwHJPea.js +1 -0
- package/dist-browser/chunks/Bzy44bV2.js +4216 -0
- package/dist-browser/chunks/C-O8NhHK.js +1 -0
- package/dist-browser/chunks/C-_LmeNn.js +934 -0
- package/dist-browser/chunks/C-ztiLpW.js +1 -0
- package/dist-browser/chunks/C0Iji4Qk.js +1 -0
- package/dist-browser/chunks/C12xlM79.js +1 -0
- package/dist-browser/chunks/C1BDCorD.js +99 -0
- package/dist-browser/chunks/C2Dm6eUt.js +1 -0
- package/dist-browser/chunks/C2RePWen.js +1 -0
- package/dist-browser/chunks/C2suuPFw.js +1 -0
- package/dist-browser/chunks/C33aG9gN.js +1 -0
- package/dist-browser/chunks/C3Y15gp1.js +1 -0
- package/dist-browser/chunks/C3gvA1lh.js +1 -0
- package/dist-browser/chunks/C3pLayiC.js +143 -0
- package/dist-browser/chunks/C3wBsE11.js +1 -0
- package/dist-browser/chunks/C4E_bIDB.js +1 -0
- package/dist-browser/chunks/C4OFzvAP.js +1 -0
- package/dist-browser/chunks/C4fzyzUE.js +1 -0
- package/dist-browser/chunks/C5P0RHNI.js +1 -0
- package/dist-browser/chunks/C6XZSTSj.js +39 -0
- package/dist-browser/chunks/C784v2VA.js +1 -0
- package/dist-browser/chunks/C7CUzsYJ.js +1 -0
- package/dist-browser/chunks/C7FykdRJ.js +1 -0
- package/dist-browser/chunks/C7RSxM0z.js +1 -0
- package/dist-browser/chunks/C9J2i9In.js +2 -0
- package/dist-browser/chunks/C9Kd-Lrf.js +1 -0
- package/dist-browser/chunks/C9OKiK4z.js +15 -0
- package/dist-browser/chunks/C9bAX0wX.js +1 -0
- package/dist-browser/chunks/C9duFT9_.js +9 -0
- package/dist-browser/chunks/CA52Vkpa.js +3 -0
- package/dist-browser/chunks/CAB0sdkM.js +8 -0
- package/dist-browser/chunks/CBcRTsvX.js +1 -0
- package/dist-browser/chunks/CC8kNj4O.js +1 -0
- package/dist-browser/chunks/CC_taxfs.js +1 -0
- package/dist-browser/chunks/CCnjeop3.js +1 -0
- package/dist-browser/chunks/CD1Phcj7.js +1 -0
- package/dist-browser/chunks/CDBmfTua.js +1 -0
- package/dist-browser/chunks/CDFKagMr.js +1 -0
- package/dist-browser/chunks/CDZegpP1.js +1 -0
- package/dist-browser/chunks/CD_-ZdOx.js +1 -0
- package/dist-browser/chunks/CDmSfsbx.js +1 -0
- package/dist-browser/chunks/CDy5CkBb.js +1 -0
- package/dist-browser/chunks/CDyybrEA.js +1 -0
- package/dist-browser/chunks/CENY_jwA.js +5 -0
- package/dist-browser/chunks/CEfq3wMj.js +1 -0
- package/dist-browser/chunks/CEtY4HlI.js +1 -0
- package/dist-browser/chunks/CEtbZ-Ou.js +51 -0
- package/dist-browser/chunks/CFVbNh1J.js +1 -0
- package/dist-browser/chunks/CG5A_mHR.js +1 -0
- package/dist-browser/chunks/CGFRQ0IS.js +3 -0
- package/dist-browser/chunks/CGPPrudP.js +1 -0
- package/dist-browser/chunks/CGZdRHCz.js +1 -0
- package/dist-browser/chunks/CG_ggIC3.js +230 -0
- package/dist-browser/chunks/CHD7Siks.js +61 -0
- package/dist-browser/chunks/CHGAmNbz.js +24 -0
- package/dist-browser/chunks/CH_3weAk.js +136 -0
- package/dist-browser/chunks/CHnMaz0U.js +1 -0
- package/dist-browser/chunks/CHx28aAq.js +1 -0
- package/dist-browser/chunks/CIPEdQZg.js +1 -0
- package/dist-browser/chunks/CIU50MA1.js +1 -0
- package/dist-browser/chunks/CIXqygz5.js +42 -0
- package/dist-browser/chunks/CIz-HH07.js +1585 -0
- package/dist-browser/chunks/CJ4zQQhO.js +1 -0
- package/dist-browser/chunks/CJD9mRmQ.js +1 -0
- package/dist-browser/chunks/CJgknJ-O.js +12 -0
- package/dist-browser/chunks/CL1lltpM.js +1 -0
- package/dist-browser/chunks/CLxcu-z_.js +73 -0
- package/dist-browser/chunks/CM3pB59z.js +1 -0
- package/dist-browser/chunks/CM7fr6V2.js +1 -0
- package/dist-browser/chunks/CMCldyjy.js +1 -0
- package/dist-browser/chunks/CMhbdUh_.js +1 -0
- package/dist-browser/chunks/CMj-G0tG.js +1 -0
- package/dist-browser/chunks/CMy5JYMZ.js +1 -0
- package/dist-browser/chunks/CNS048lI.js +1 -0
- package/dist-browser/chunks/CO0SZ1hy.js +1 -0
- package/dist-browser/chunks/COnv2PBF.js +2 -0
- package/dist-browser/chunks/CP27PMpS.js +1 -0
- package/dist-browser/chunks/CQRcPihd.js +6 -0
- package/dist-browser/chunks/CRDIjF8C.js +2 -0
- package/dist-browser/chunks/CRFCYrrv.js +1 -0
- package/dist-browser/chunks/CRL527zA.js +1 -0
- package/dist-browser/chunks/CRuuK4qI.js +1 -0
- package/dist-browser/chunks/CSrliGR5.js +1 -0
- package/dist-browser/chunks/CT24MROG.js +36 -0
- package/dist-browser/chunks/CTKsfpS6.js +1 -0
- package/dist-browser/chunks/CTovL-9G.js +1 -0
- package/dist-browser/chunks/CU2_4WYp.js +1 -0
- package/dist-browser/chunks/CVn3AkL4.js +3 -0
- package/dist-browser/chunks/CW47wlpJ.js +1 -0
- package/dist-browser/chunks/CWtE2FH4.js +6 -0
- package/dist-browser/chunks/CWtqwiJb.js +1 -0
- package/dist-browser/chunks/CX2yvOMR.js +32 -0
- package/dist-browser/chunks/CXYvZiC5.js +1 -0
- package/dist-browser/chunks/CY2_o-A_.js +1 -0
- package/dist-browser/chunks/CYD5IpHG.js +1 -0
- package/dist-browser/chunks/CYFmo-2d.js +1 -0
- package/dist-browser/chunks/CYzJaZmG.js +1 -0
- package/dist-browser/chunks/CZng9q4s.js +1 -0
- package/dist-browser/chunks/C_3LSlp_.js +1 -0
- package/dist-browser/chunks/C_popvm5.js +1 -0
- package/dist-browser/chunks/Ca2qCbBO.js +227 -0
- package/dist-browser/chunks/CaayFmFc.js +68 -0
- package/dist-browser/chunks/CagC9ufD.js +6 -0
- package/dist-browser/chunks/CamHr2sm.js +9 -0
- package/dist-browser/chunks/Caw9wDgF.js +1 -0
- package/dist-browser/chunks/CbRyzWz3.js +1 -0
- package/dist-browser/chunks/CcQz6dxG.js +68 -0
- package/dist-browser/chunks/CcUHIKVc.js +1 -0
- package/dist-browser/chunks/Cd20lYkt.js +23 -0
- package/dist-browser/chunks/Cdj8C4sv.js +1 -0
- package/dist-browser/chunks/CeWzMWwP.js +1 -0
- package/dist-browser/chunks/Ceeo2sCz.js +1 -0
- package/dist-browser/chunks/CerF2aP5.js +1 -0
- package/dist-browser/chunks/Cew-kv76.js +1 -0
- package/dist-browser/chunks/Cf1F89pD.js +1 -0
- package/dist-browser/chunks/Cff8_5zr.js +1 -0
- package/dist-browser/chunks/Cgy6G_V-.js +1 -0
- package/dist-browser/chunks/ChAqhjhd.js +243 -0
- package/dist-browser/chunks/Chg_Q8x6.js +1 -0
- package/dist-browser/chunks/Chx9z6ee.js +3 -0
- package/dist-browser/chunks/Ci0DiZOM.js +1 -0
- package/dist-browser/chunks/CiD_XHlg.js +1 -0
- package/dist-browser/chunks/CjL-uP84.js +1 -0
- package/dist-browser/chunks/CjPBNVRF.js +2 -0
- package/dist-browser/chunks/CjTILWD4.js +3 -0
- package/dist-browser/chunks/CkmGh-87.js +1 -0
- package/dist-browser/chunks/ClZqxSEX.js +1 -0
- package/dist-browser/chunks/CluBrQDl.js +1 -0
- package/dist-browser/chunks/Clzbw8hC.js +104 -0
- package/dist-browser/chunks/CmEJbuVc.js +1 -0
- package/dist-browser/chunks/CmlWyQpr.js +1 -0
- package/dist-browser/chunks/Cnh5-qw-.js +10 -0
- package/dist-browser/chunks/CnwbVRym.js +1 -0
- package/dist-browser/chunks/Co55Z6b-.js +34 -0
- package/dist-browser/chunks/CoqDcyee.js +1 -0
- package/dist-browser/chunks/CorZBnkZ.js +71 -0
- package/dist-browser/chunks/CpKf07f9.js +72 -0
- package/dist-browser/chunks/CqXobSJH.js +82 -0
- package/dist-browser/chunks/CqwcKTEN.js +1 -0
- package/dist-browser/chunks/Cs23D-lk.js +18 -0
- package/dist-browser/chunks/CsT20qOq.js +1 -0
- package/dist-browser/chunks/CsTuUPUb.js +1 -0
- package/dist-browser/chunks/CtCvKs-8.js +1 -0
- package/dist-browser/chunks/CtpF73Mi.js +1 -0
- package/dist-browser/chunks/CuHid4qh.js +1 -0
- package/dist-browser/chunks/CuhwmTWw.js +2 -0
- package/dist-browser/chunks/Cv31r4NA.js +1 -0
- package/dist-browser/chunks/CvVTau-c.js +1 -0
- package/dist-browser/chunks/Cvdyeg_0.js +1 -0
- package/dist-browser/chunks/CvgsNxMb.js +1 -0
- package/dist-browser/chunks/Cvk3fWJd.js +31 -0
- package/dist-browser/chunks/Cvq_OonK.js +1 -0
- package/dist-browser/chunks/Cvzg7xRz.js +1039 -0
- package/dist-browser/chunks/CwPUhsCN.js +111 -0
- package/dist-browser/chunks/CwTYnDSQ.js +1 -0
- package/dist-browser/chunks/CwVb7sDh.js +1 -0
- package/dist-browser/chunks/CwkwVzf9.js +1 -0
- package/dist-browser/chunks/Cwsm87qt.js +1 -0
- package/dist-browser/chunks/CwtYJaZ0.js +1 -0
- package/dist-browser/chunks/CxBgnQIE.js +1 -0
- package/dist-browser/chunks/CxRCGV_D.js +1 -0
- package/dist-browser/chunks/CxW3h7EP.js +1 -0
- package/dist-browser/chunks/CxdFFqFC.js +1 -0
- package/dist-browser/chunks/Cxl6U4QM.js +1 -0
- package/dist-browser/chunks/CxqqJceE.js +262 -0
- package/dist-browser/chunks/CyUjhzls.js +1 -0
- package/dist-browser/chunks/CzHZycAX.js +1 -0
- package/dist-browser/chunks/CzVBHx3T.js +1 -0
- package/dist-browser/chunks/D-J5r5vm.js +502 -0
- package/dist-browser/chunks/D-ZRVGDk.js +1 -0
- package/dist-browser/chunks/D10MTZ8f.js +1 -0
- package/dist-browser/chunks/D1dFmEHc.js +82 -0
- package/dist-browser/chunks/D2SJBO5U.js +1 -0
- package/dist-browser/chunks/D2bDAUlP.js +1 -0
- package/dist-browser/chunks/D2qpNyTi.js +1 -0
- package/dist-browser/chunks/D3Fr6yvq.js +1 -0
- package/dist-browser/chunks/D3_eaTYS.js +1 -0
- package/dist-browser/chunks/D3lBoMMr.js +29 -0
- package/dist-browser/chunks/D5CFWMVX.js +1 -0
- package/dist-browser/chunks/D5Cj4ub7.js +1 -0
- package/dist-browser/chunks/D5EJDMZ-.js +2 -0
- package/dist-browser/chunks/D6E_gImS.js +1 -0
- package/dist-browser/chunks/D6XXX9Ue.js +1 -0
- package/dist-browser/chunks/D6fd1dZA.js +1 -0
- package/dist-browser/chunks/D852BHwA.js +40 -0
- package/dist-browser/chunks/D8inQ_yL.js +1 -0
- package/dist-browser/chunks/D9XZ_4Ga.js +145 -0
- package/dist-browser/chunks/D9dlo-Ln.js +1 -0
- package/dist-browser/chunks/DAB0WqX0.js +1 -0
- package/dist-browser/chunks/DAH2JXIW.js +1 -0
- package/dist-browser/chunks/DAPFhXVb.js +22 -0
- package/dist-browser/chunks/DAxE8pMD.js +45 -0
- package/dist-browser/chunks/DBj6QGQs.js +1 -0
- package/dist-browser/chunks/DC3L5U86.js +1 -0
- package/dist-browser/chunks/DC9vc-0L.js +1 -0
- package/dist-browser/chunks/DCJlJ3lv.js +1 -0
- package/dist-browser/chunks/DCaQLeIq.js +1 -0
- package/dist-browser/chunks/DCc-gTDg.js +1 -0
- package/dist-browser/chunks/DD2V7Wxl.js +1 -0
- package/dist-browser/chunks/DD6onItE.js +1 -0
- package/dist-browser/chunks/DDLmvpjg.js +1 -0
- package/dist-browser/chunks/DDRCiC_a.js +1 -0
- package/dist-browser/chunks/DEW70SgN.js +1 -0
- package/dist-browser/chunks/DEucxoKb.js +1 -0
- package/dist-browser/chunks/DF6Qh6eu.js +1 -0
- package/dist-browser/chunks/DFtj_qQf.js +63 -0
- package/dist-browser/chunks/DG4h2xXm.js +45 -0
- package/dist-browser/chunks/DGYxR7PN.js +26 -0
- package/dist-browser/chunks/DGlba0EV.js +1 -0
- package/dist-browser/chunks/DHOehIg0.js +30 -0
- package/dist-browser/chunks/DHiTLWtz.js +1 -0
- package/dist-browser/chunks/DIHxCXEJ.js +1 -0
- package/dist-browser/chunks/DII2y8tL.js +546 -0
- package/dist-browser/chunks/DIcTMzLD.js +31 -0
- package/dist-browser/chunks/DImXrYb5.js +1 -0
- package/dist-browser/chunks/DIvOsQJS.js +393 -0
- package/dist-browser/chunks/DJCfJlBy.js +1 -0
- package/dist-browser/chunks/DKnN7RH0.js +1 -0
- package/dist-browser/chunks/DKrOx_1M.js +1 -0
- package/dist-browser/chunks/DMcWzziy.js +1 -0
- package/dist-browser/chunks/DMk6G0lv.js +1 -0
- package/dist-browser/chunks/DMyNEYzI.js +1 -0
- package/dist-browser/chunks/DN0xP1fa.js +1 -0
- package/dist-browser/chunks/DNef-bWt.js +1 -0
- package/dist-browser/chunks/DNhTxxCh.js +1 -0
- package/dist-browser/chunks/DNoIqPE7.js +1 -0
- package/dist-browser/chunks/DNsR67l1.js +3 -0
- package/dist-browser/chunks/DOEmZHjx.js +1 -0
- package/dist-browser/chunks/DOFYt5cj.js +1 -0
- package/dist-browser/chunks/DOWMFTFl.js +38 -0
- package/dist-browser/chunks/DOYycP3M.js +1 -0
- package/dist-browser/chunks/DOidSPk5.js +1 -0
- package/dist-browser/chunks/DOvE9vCY.js +97 -0
- package/dist-browser/chunks/DOyIRes1.js +1 -0
- package/dist-browser/chunks/DPIksCnG.js +41 -0
- package/dist-browser/chunks/DPNgRv8u.js +1 -0
- package/dist-browser/chunks/DPXctdFS.js +27 -0
- package/dist-browser/chunks/DPnn0uIO.js +1 -0
- package/dist-browser/chunks/DQ0A9BJI.js +1 -0
- package/dist-browser/chunks/DQbqNpgw.js +1 -0
- package/dist-browser/chunks/DQea7zxR.js +1 -0
- package/dist-browser/chunks/DSMSQCrr.js +36 -0
- package/dist-browser/chunks/DSp9shD_.js +1 -0
- package/dist-browser/chunks/DT0rWxA4.js +1176 -0
- package/dist-browser/chunks/DTtjHrtM.js +1 -0
- package/dist-browser/chunks/DV53iZve.js +64 -0
- package/dist-browser/chunks/DVAMQgZs.js +1 -0
- package/dist-browser/chunks/DVcRBsZ0.js +69 -0
- package/dist-browser/chunks/DVrViq4W.js +1 -0
- package/dist-browser/chunks/DWe0PJKb.js +1 -0
- package/dist-browser/chunks/DWgUahRJ.js +1 -0
- package/dist-browser/chunks/DXJRs_pC.js +1 -0
- package/dist-browser/chunks/DXq97sWO.js +1 -0
- package/dist-browser/chunks/DXzwsPHQ.js +8 -0
- package/dist-browser/chunks/DYoIHzIt.js +2 -0
- package/dist-browser/chunks/DZJGj1NY.js +1 -0
- package/dist-browser/chunks/DZYUBtK-.js +10 -0
- package/dist-browser/chunks/DZmRZ_iP.js +1 -0
- package/dist-browser/chunks/D_MQ9Xc9.js +1 -0
- package/dist-browser/chunks/D_V_oqfi.js +1 -0
- package/dist-browser/chunks/D_fJrOcA.js +1 -0
- package/dist-browser/chunks/DaE8j1Mj.js +1 -0
- package/dist-browser/chunks/DaNJDW05.js +120 -0
- package/dist-browser/chunks/DaqOKjgV.js +2 -0
- package/dist-browser/chunks/DbM1VGG0.js +1 -0
- package/dist-browser/chunks/DbVolxbX.js +1 -0
- package/dist-browser/chunks/Dd3Azzh1.js +102 -0
- package/dist-browser/chunks/Dd_HZKyk.js +1 -0
- package/dist-browser/chunks/DePrIwoT.js +1 -0
- package/dist-browser/chunks/Df-3V4RI.js +1 -0
- package/dist-browser/chunks/DfPCBWZC.js +35 -0
- package/dist-browser/chunks/DfTjtDZE.js +1 -0
- package/dist-browser/chunks/Dfdpy3ar.js +1 -0
- package/dist-browser/chunks/DhQi6uM8.js +1 -0
- package/dist-browser/chunks/Dhq0zrZC.js +131 -0
- package/dist-browser/chunks/DhrQ_H4H.js +1 -0
- package/dist-browser/chunks/Di27GzYt.js +1 -0
- package/dist-browser/chunks/Di8-zyqt.js +1 -0
- package/dist-browser/chunks/DifZdnzu.js +1 -0
- package/dist-browser/chunks/DikvOXI-.js +1 -0
- package/dist-browser/chunks/Dj3lr7h3.js +33 -0
- package/dist-browser/chunks/Dj8ovMlo.js +1 -0
- package/dist-browser/chunks/DjcMDPrm.js +67 -0
- package/dist-browser/chunks/DkVVho_1.js +1 -0
- package/dist-browser/chunks/Dkh1AfX5.js +1 -0
- package/dist-browser/chunks/DkwGHqUD.js +1 -0
- package/dist-browser/chunks/Dl96d5U7.js +1 -0
- package/dist-browser/chunks/DlW29B4u.js +3 -0
- package/dist-browser/chunks/DmSNe3jl.js +387 -0
- package/dist-browser/chunks/DmxSxKXn.js +1 -0
- package/dist-browser/chunks/DnFdLC2j.js +1 -0
- package/dist-browser/chunks/DnUyDgmE.js +1 -0
- package/dist-browser/chunks/DnvK0nWc.js +1 -0
- package/dist-browser/chunks/DoEd4p-l.js +1 -0
- package/dist-browser/chunks/DoX7pGYd.js +140 -0
- package/dist-browser/chunks/Dp6fzsZG.js +1 -0
- package/dist-browser/chunks/DpM23pTz.js +33 -0
- package/dist-browser/chunks/DpZZtTTL.js +2 -0
- package/dist-browser/chunks/DqAbaJTn.js +1 -0
- package/dist-browser/chunks/DqMSA0q-.js +1 -0
- package/dist-browser/chunks/DqNrCZSo.js +1 -0
- package/dist-browser/chunks/DqP3aSvp.js +43 -0
- package/dist-browser/chunks/Dqi6K18W.js +1 -0
- package/dist-browser/chunks/DqqKpYoS.js +2 -0
- package/dist-browser/chunks/Dqqmos-r.js +1 -0
- package/dist-browser/chunks/Dr26QZ_C.js +1 -0
- package/dist-browser/chunks/DrRp_OBG.js +1 -0
- package/dist-browser/chunks/Ds0gQyON.js +1 -0
- package/dist-browser/chunks/DsNI9SjT.js +1 -0
- package/dist-browser/chunks/DskxWO57.js +1 -0
- package/dist-browser/chunks/DspI2fym.js +33 -0
- package/dist-browser/chunks/DtbRpC-a.js +2 -0
- package/dist-browser/chunks/Dtc9u0hV.js +1 -0
- package/dist-browser/chunks/DtdxxwYW.js +1 -0
- package/dist-browser/chunks/Du2r_IDC.js +1 -0
- package/dist-browser/chunks/DuiL5B5s.js +1 -0
- package/dist-browser/chunks/DvMRww-v.js +1 -0
- package/dist-browser/chunks/Dvzw_jou.js +1 -0
- package/dist-browser/chunks/DwsXVYGF.js +1 -0
- package/dist-browser/chunks/DxVZve2V.js +89 -0
- package/dist-browser/chunks/Dy4Ev-pT.js +1 -0
- package/dist-browser/chunks/DyGuOmo0.js +1 -0
- package/dist-browser/chunks/DyXA-iwx.js +1 -0
- package/dist-browser/chunks/Dypqlsev.js +1 -0
- package/dist-browser/chunks/Dyqt3CuN.js +1 -0
- package/dist-browser/chunks/DyxvzuFy.js +284 -0
- package/dist-browser/chunks/DzMSiy_7.js +1 -0
- package/dist-browser/chunks/DzaY1F1G.js +1 -0
- package/dist-browser/chunks/EtRHumNJ.js +1 -0
- package/dist-browser/chunks/FASUCRk-.js +3 -0
- package/dist-browser/chunks/FeUl7sn8.js +1 -0
- package/dist-browser/chunks/FjuaFAN8.js +25 -0
- package/dist-browser/chunks/FsV9kMlK.js +1 -0
- package/dist-browser/chunks/GB4zXBMC.js +1 -0
- package/dist-browser/chunks/Guirowam.js +8 -0
- package/dist-browser/chunks/HJHNBZzR.js +1 -0
- package/dist-browser/chunks/HOXwa5Zi.js +1 -0
- package/dist-browser/chunks/HhGGA2q1.js +1 -0
- package/dist-browser/chunks/HjLsj9Wb.js +1 -0
- package/dist-browser/chunks/ILniMPMQ.js +1 -0
- package/dist-browser/chunks/IPgW5q-o.js +1 -0
- package/dist-browser/chunks/IRJFdyYz.js +1 -0
- package/dist-browser/chunks/J1EyHJSp.js +1 -0
- package/dist-browser/chunks/JtVcQQeX.js +5 -0
- package/dist-browser/chunks/KYZpoAyE.js +1 -0
- package/dist-browser/chunks/KjHCb3-W.js +2 -0
- package/dist-browser/chunks/Kp8JypHd.js +441 -0
- package/dist-browser/chunks/Ku6I7UKh.js +1 -0
- package/dist-browser/chunks/KzprlngN.js +1 -0
- package/dist-browser/chunks/L5CwTQJI.js +4 -0
- package/dist-browser/chunks/L9tCceA2.js +150 -0
- package/dist-browser/chunks/L_tB79W_.js +1 -0
- package/dist-browser/chunks/MDiJyUbk.js +1 -0
- package/dist-browser/chunks/MaXgxQlM.js +1 -0
- package/dist-browser/chunks/N5x7ZUws.js +1 -0
- package/dist-browser/chunks/NZYk81nU.js +1 -0
- package/dist-browser/chunks/Np7O_rbA.js +1 -0
- package/dist-browser/chunks/Oo8Rc01u.js +1 -0
- package/dist-browser/chunks/OtECxeEN.js +9 -0
- package/dist-browser/chunks/OtOkABqS.js +158 -0
- package/dist-browser/chunks/Oyc0qEPK.js +1 -0
- package/dist-browser/chunks/PDPf8POY.js +1 -0
- package/dist-browser/chunks/QRJE7tia.js +1 -0
- package/dist-browser/chunks/Q_sagimg.js +1 -0
- package/dist-browser/chunks/QgFqrot_.js +1 -0
- package/dist-browser/chunks/QpPH2K9r.js +1 -0
- package/dist-browser/chunks/R8vFmq4f.js +1 -0
- package/dist-browser/chunks/RxUw8kPH.js +1 -0
- package/dist-browser/chunks/SO6iJj34.js +1 -0
- package/dist-browser/chunks/SWr9_u-k.js +13 -0
- package/dist-browser/chunks/TQJJL2UK.js +27 -0
- package/dist-browser/chunks/UE6Xi3ol.js +1 -0
- package/dist-browser/chunks/VGXLiJ0S.js +1 -0
- package/dist-browser/chunks/VMH7wDAk.js +1 -0
- package/dist-browser/chunks/VwXcqbG4.js +23 -0
- package/dist-browser/chunks/Wmd1pmNu.js +1 -0
- package/dist-browser/chunks/XTdr3vkK.js +1 -0
- package/dist-browser/chunks/XaLSS-X1.js +23 -0
- package/dist-browser/chunks/XhPbWY7N.js +1 -0
- package/dist-browser/chunks/Y4nknrnT.js +1 -0
- package/dist-browser/chunks/Y9xF8jFn.js +23 -0
- package/dist-browser/chunks/_-SUJuni.js +1 -0
- package/dist-browser/chunks/_M7-qabf.js +101 -0
- package/dist-browser/chunks/_qsNVwXW.js +1 -0
- package/dist-browser/chunks/_vvwCLWQ.js +1 -0
- package/dist-browser/chunks/b6V8XMYY.js +1 -0
- package/dist-browser/chunks/bA3FB4mi.js +3 -0
- package/dist-browser/chunks/bAf7cF9y.js +1 -0
- package/dist-browser/chunks/bhrkTdEx.js +538 -0
- package/dist-browser/chunks/dFGbvMHe.js +1 -0
- package/dist-browser/chunks/dOIX3hJ7.js +1 -0
- package/dist-browser/chunks/eUYPiZ2p.js +1 -0
- package/dist-browser/chunks/eUiHGfWU.js +1 -0
- package/dist-browser/chunks/f6_vnw-E.js +1 -0
- package/dist-browser/chunks/fE2ZfJiX.js +1 -0
- package/dist-browser/chunks/gZQtAM7h.js +2 -0
- package/dist-browser/chunks/h8XD1xl-.js +1 -0
- package/dist-browser/chunks/hEdm-zUW.js +1 -0
- package/dist-browser/chunks/hWCYme74.js +1 -0
- package/dist-browser/chunks/hfB064S0.js +1 -0
- package/dist-browser/chunks/hlEBxUea.js +1 -0
- package/dist-browser/chunks/j5sGo2Pt.js +1 -0
- package/dist-browser/chunks/kG0ku-oF.js +1 -0
- package/dist-browser/chunks/kLNROLfT.js +1 -0
- package/dist-browser/chunks/kggDnku6.js +1 -0
- package/dist-browser/chunks/klRtNUrN.js +1 -0
- package/dist-browser/chunks/lOD1Gn8c.js +1 -0
- package/dist-browser/chunks/lrh33Ko2.js +1 -0
- package/dist-browser/chunks/mB6FoGFb.js +1 -0
- package/dist-browser/chunks/msmucz6Z.js +1 -0
- package/dist-browser/chunks/nEtJtbDE.js +1 -0
- package/dist-browser/chunks/nvwS1LmH.js +1 -0
- package/dist-browser/chunks/oqmnhzmi.js +2 -0
- package/dist-browser/chunks/pICTBHHN.js +1 -0
- package/dist-browser/chunks/pU4H1b3r.js +43 -0
- package/dist-browser/chunks/qBpAlJSP.js +1 -0
- package/dist-browser/chunks/qCjqID6v.js +1 -0
- package/dist-browser/chunks/r-cfH8A5.js +1 -0
- package/dist-browser/chunks/rgDalb_G.js +1 -0
- package/dist-browser/chunks/rolldown-runtime-hePW80VL.js +1 -0
- package/dist-browser/chunks/sdmDudQj.js +1 -0
- package/dist-browser/chunks/shRf5cdU.js +1 -0
- package/dist-browser/chunks/tvcsfh86.js +1 -0
- package/dist-browser/chunks/tz7IArSg.js +1 -0
- package/dist-browser/chunks/u--BrnjZ.js +1 -0
- package/dist-browser/chunks/uBIymjUX.js +1 -0
- package/dist-browser/chunks/uHO_HSNA.js +1 -0
- package/dist-browser/chunks/uZz_bF7-.js +1 -0
- package/dist-browser/chunks/uc0Y9KUA.js +1 -0
- package/dist-browser/chunks/ud6upqGO.js +2 -0
- package/dist-browser/chunks/udTuD3NU.js +1 -0
- package/dist-browser/chunks/ul0Kb67V.js +38 -0
- package/dist-browser/chunks/uq1wJ3hU.js +322 -0
- package/dist-browser/chunks/vA_owFWw.js +1 -0
- package/dist-browser/chunks/vgYSnL0k.js +1 -0
- package/dist-browser/chunks/vjQO9b4G.js +1 -0
- package/dist-browser/chunks/vm1kntVK.js +18 -0
- package/dist-browser/chunks/vnMr9U1p.js +1 -0
- package/dist-browser/chunks/vyik5ymL.js +1 -0
- package/dist-browser/chunks/w2RB3fs9.js +1 -0
- package/dist-browser/chunks/wmdxOiEL.js +1 -0
- package/dist-browser/chunks/xtpWQ17d.js +27 -0
- package/dist-browser/chunks/yRMgu4ay.js +3 -0
- package/dist-browser/chunks/yYrq3lUc.js +42 -0
- package/dist-browser/chunks/yieoIIce.js +1 -0
- package/dist-browser/chunks/yzr1keSX.js +38 -0
- package/dist-browser/chunks/z94mqM9o.js +1 -0
- package/dist-browser/chunks/zSWKwMId.js +1 -0
- package/dist-browser/importmap.json +1761 -0
- package/dist-browser/koota/react.js +1 -0
- package/dist-browser/koota.js +1 -0
- package/dist-browser/postprocessing.js +1 -0
- package/dist-browser/react/jsx-runtime.js +1 -0
- package/dist-browser/react-dom/client.js +1 -0
- package/dist-browser/react-dom.js +1 -0
- package/dist-browser/react.js +1 -0
- package/dist-browser/release.json +11655 -0
- package/dist-browser/three/addons/Addons.js +1 -0
- package/dist-browser/three/addons/animation/AnimationClipCreator.js +1 -0
- package/dist-browser/three/addons/animation/CCDIKSolver.js +1 -0
- package/dist-browser/three/addons/capabilities/WebGL.js +1 -0
- package/dist-browser/three/addons/capabilities/WebGPU.js +1 -0
- package/dist-browser/three/addons/controls/ArcballControls.js +1 -0
- package/dist-browser/three/addons/controls/DragControls.js +1 -0
- package/dist-browser/three/addons/controls/FirstPersonControls.js +1 -0
- package/dist-browser/three/addons/controls/FlyControls.js +1 -0
- package/dist-browser/three/addons/controls/MapControls.js +1 -0
- package/dist-browser/three/addons/controls/OrbitControls.js +1 -0
- package/dist-browser/three/addons/controls/PointerLockControls.js +1 -0
- package/dist-browser/three/addons/controls/TrackballControls.js +1 -0
- package/dist-browser/three/addons/controls/TransformControls.js +1 -0
- package/dist-browser/three/addons/csm/CSM.js +1 -0
- package/dist-browser/three/addons/csm/CSMFrustum.js +1 -0
- package/dist-browser/three/addons/csm/CSMHelper.js +1 -0
- package/dist-browser/three/addons/csm/CSMShader.js +1 -0
- package/dist-browser/three/addons/csm/CSMShadowNode.js +1 -0
- package/dist-browser/three/addons/curves/CurveExtras.js +1 -0
- package/dist-browser/three/addons/curves/NURBSCurve.js +1 -0
- package/dist-browser/three/addons/curves/NURBSSurface.js +1 -0
- package/dist-browser/three/addons/curves/NURBSUtils.js +1 -0
- package/dist-browser/three/addons/curves/NURBSVolume.js +1 -0
- package/dist-browser/three/addons/effects/AnaglyphEffect.js +1 -0
- package/dist-browser/three/addons/effects/AsciiEffect.js +1 -0
- package/dist-browser/three/addons/effects/OutlineEffect.js +1 -0
- package/dist-browser/three/addons/effects/ParallaxBarrierEffect.js +1 -0
- package/dist-browser/three/addons/effects/StereoEffect.js +1 -0
- package/dist-browser/three/addons/environments/ColorEnvironment.js +1 -0
- package/dist-browser/three/addons/environments/DebugEnvironment.js +1 -0
- package/dist-browser/three/addons/environments/RoomEnvironment.js +1 -0
- package/dist-browser/three/addons/exporters/DRACOExporter.js +1 -0
- package/dist-browser/three/addons/exporters/EXRExporter.js +1 -0
- package/dist-browser/three/addons/exporters/GLTFExporter.js +1 -0
- package/dist-browser/three/addons/exporters/KTX2Exporter.js +1 -0
- package/dist-browser/three/addons/exporters/OBJExporter.js +1 -0
- package/dist-browser/three/addons/exporters/PLYExporter.js +1 -0
- package/dist-browser/three/addons/exporters/STLExporter.js +1 -0
- package/dist-browser/three/addons/exporters/USDZExporter.js +1 -0
- package/dist-browser/three/addons/generators/CityGenerator.js +1 -0
- package/dist-browser/three/addons/generators/ForestGenerator.js +1 -0
- package/dist-browser/three/addons/generators/TerrainGenerator.js +1 -0
- package/dist-browser/three/addons/generators/TreeGenerator.js +1 -0
- package/dist-browser/three/addons/generators/city/BenchGenerator.js +1 -0
- package/dist-browser/three/addons/generators/city/CarGenerator.js +1 -0
- package/dist-browser/three/addons/generators/city/CityGeneratorUtils.js +1 -0
- package/dist-browser/three/addons/generators/city/HydrantGenerator.js +1 -0
- package/dist-browser/three/addons/generators/city/InstancedMeshGenerator.js +1 -0
- package/dist-browser/three/addons/generators/city/PersonGenerator.js +1 -0
- package/dist-browser/three/addons/generators/city/SidewalkGenerator.js +1 -0
- package/dist-browser/three/addons/generators/city/SkyscraperGenerator.js +1 -0
- package/dist-browser/three/addons/generators/city/StreetTreeGenerator.js +1 -0
- package/dist-browser/three/addons/generators/city/StreetlightGenerator.js +1 -0
- package/dist-browser/three/addons/generators/city/TrafficlightGenerator.js +1 -0
- package/dist-browser/three/addons/generators/city/TrashcanGenerator.js +1 -0
- package/dist-browser/three/addons/geometries/BoxLineGeometry.js +1 -0
- package/dist-browser/three/addons/geometries/ConvexGeometry.js +1 -0
- package/dist-browser/three/addons/geometries/DecalGeometry.js +1 -0
- package/dist-browser/three/addons/geometries/LoftGeometry.js +1 -0
- package/dist-browser/three/addons/geometries/ParametricFunctions.js +1 -0
- package/dist-browser/three/addons/geometries/ParametricGeometry.js +1 -0
- package/dist-browser/three/addons/geometries/RoundedBoxGeometry.js +1 -0
- package/dist-browser/three/addons/geometries/TeapotGeometry.js +1 -0
- package/dist-browser/three/addons/geometries/TextGeometry.js +1 -0
- package/dist-browser/three/addons/gpgpu/BitonicSort.js +1 -0
- package/dist-browser/three/addons/gpgpu/CountingSort.js +1 -0
- package/dist-browser/three/addons/helpers/AnimationPathHelper.js +1 -0
- package/dist-browser/three/addons/helpers/LightProbeGridHelper.js +1 -0
- package/dist-browser/three/addons/helpers/LightProbeGridHelperWebGL.js +80 -0
- package/dist-browser/three/addons/helpers/LightProbeHelper.js +1 -0
- package/dist-browser/three/addons/helpers/LightProbeHelperGPU.js +1 -0
- package/dist-browser/three/addons/helpers/OctreeHelper.js +1 -0
- package/dist-browser/three/addons/helpers/PositionalAudioHelper.js +1 -0
- package/dist-browser/three/addons/helpers/RapierHelper.js +1 -0
- package/dist-browser/three/addons/helpers/RectAreaLightHelper.js +1 -0
- package/dist-browser/three/addons/helpers/TextureHelper.js +1 -0
- package/dist-browser/three/addons/helpers/TextureHelperGPU.js +1 -0
- package/dist-browser/three/addons/helpers/VertexNormalsHelper.js +1 -0
- package/dist-browser/three/addons/helpers/VertexTangentsHelper.js +1 -0
- package/dist-browser/three/addons/helpers/ViewHelper.js +1 -0
- package/dist-browser/three/addons/inspector/Extension.js +1 -0
- package/dist-browser/three/addons/inspector/Inspector.js +1 -0
- package/dist-browser/three/addons/inspector/RendererInspector.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/ColorGrading.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/ColorWheel.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/CurveEditor.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/LUT3DStyle.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/LUTMath.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/BrightnessModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/ColorWheelModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/ContrastModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/CurvesModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/ExposureHueModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/ExposureModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/HueModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/ImportedCubeModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/Module.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/OutputModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/RendererModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/SatVibranceModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/SaturationModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/VibranceModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/color-grading/modules/WhiteBalanceModule.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/tsl-graph/TSLGraphEditor.js +1 -0
- package/dist-browser/three/addons/inspector/extensions/tsl-graph/TSLGraphLoader.js +1 -0
- package/dist-browser/three/addons/inspector/tabs/Console.js +1 -0
- package/dist-browser/three/addons/inspector/tabs/Memory.js +1 -0
- package/dist-browser/three/addons/inspector/tabs/Parameters.js +1 -0
- package/dist-browser/three/addons/inspector/tabs/Performance.js +1 -0
- package/dist-browser/three/addons/inspector/tabs/Settings.js +1 -0
- package/dist-browser/three/addons/inspector/tabs/Timeline.js +1 -0
- package/dist-browser/three/addons/inspector/tabs/Viewer.js +1 -0
- package/dist-browser/three/addons/inspector/ui/Graph.js +1 -0
- package/dist-browser/three/addons/inspector/ui/Item.js +1 -0
- package/dist-browser/three/addons/inspector/ui/List.js +1 -0
- package/dist-browser/three/addons/inspector/ui/Profiler.js +1 -0
- package/dist-browser/three/addons/inspector/ui/Style.js +1 -0
- package/dist-browser/three/addons/inspector/ui/Tab.js +1 -0
- package/dist-browser/three/addons/inspector/ui/Values.js +1 -0
- package/dist-browser/three/addons/inspector/ui/utils.js +1 -0
- package/dist-browser/three/addons/interaction/InteractionManager.js +1 -0
- package/dist-browser/three/addons/interactive/HTMLMesh.js +1 -0
- package/dist-browser/three/addons/interactive/InteractiveGroup.js +1 -0
- package/dist-browser/three/addons/interactive/SelectionBox.js +1 -0
- package/dist-browser/three/addons/interactive/SelectionHelper.js +1 -0
- package/dist-browser/three/addons/libs/chevrotain.module.min.js +1 -0
- package/dist-browser/three/addons/libs/demuxer_mp4.js +1 -0
- package/dist-browser/three/addons/libs/fflate.module.js +1 -0
- package/dist-browser/three/addons/libs/ktx-parse.module.js +1 -0
- package/dist-browser/three/addons/libs/lil-gui.module.min.js +4 -0
- package/dist-browser/three/addons/libs/meshopt_clusterizer.module.js +1 -0
- package/dist-browser/three/addons/libs/meshopt_decoder.module.js +1 -0
- package/dist-browser/three/addons/libs/meshopt_simplifier.module.js +1 -0
- package/dist-browser/three/addons/libs/mikktspace.module.js +1 -0
- package/dist-browser/three/addons/libs/motion-controllers.module.js +1 -0
- package/dist-browser/three/addons/libs/potpack.module.js +1 -0
- package/dist-browser/three/addons/libs/stats.module.js +1 -0
- package/dist-browser/three/addons/libs/surfaceNet.js +1 -0
- package/dist-browser/three/addons/libs/tween.module.js +1 -0
- package/dist-browser/three/addons/libs/utif.module.js +1 -0
- package/dist-browser/three/addons/libs/zstddec.module.js +1 -0
- package/dist-browser/three/addons/lighting/ClusteredLighting.js +1 -0
- package/dist-browser/three/addons/lighting/DynamicLighting.js +1 -0
- package/dist-browser/three/addons/lighting/LightProbeGrid.js +1 -0
- package/dist-browser/three/addons/lighting/LightProbeGridUtils.js +1 -0
- package/dist-browser/three/addons/lighting/LightProbeGridWebGL.js +135 -0
- package/dist-browser/three/addons/lighting/vxgi/VXGIConeTracer.js +1 -0
- package/dist-browser/three/addons/lighting/vxgi/VXGINode.js +1 -0
- package/dist-browser/three/addons/lighting/vxgi/VXGISceneCollector.js +1 -0
- package/dist-browser/three/addons/lighting/vxgi/VXGIVolume.js +1 -0
- package/dist-browser/three/addons/lights/LightProbeGenerator.js +1 -0
- package/dist-browser/three/addons/lights/RectAreaLightTexturesLib.js +1 -0
- package/dist-browser/three/addons/lights/RectAreaLightUniformsLib.js +1 -0
- package/dist-browser/three/addons/lights/SunLight.js +1 -0
- package/dist-browser/three/addons/lights/SunLightNode.js +1 -0
- package/dist-browser/three/addons/lights/SunLightShadow.js +1 -0
- package/dist-browser/three/addons/lights/SunShadowNode.js +1 -0
- package/dist-browser/three/addons/lines/Line2.js +1 -0
- package/dist-browser/three/addons/lines/LineGeometry.js +1 -0
- package/dist-browser/three/addons/lines/LineMaterial.js +1 -0
- package/dist-browser/three/addons/lines/LineSegments2.js +1 -0
- package/dist-browser/three/addons/lines/LineSegmentsGeometry.js +1 -0
- package/dist-browser/three/addons/lines/Wireframe.js +1 -0
- package/dist-browser/three/addons/lines/WireframeGeometry2.js +1 -0
- package/dist-browser/three/addons/lines/webgpu/Line2.js +1 -0
- package/dist-browser/three/addons/lines/webgpu/LineSegments2.js +1 -0
- package/dist-browser/three/addons/lines/webgpu/Wireframe.js +1 -0
- package/dist-browser/three/addons/loaders/3DMLoader.js +1 -0
- package/dist-browser/three/addons/loaders/3MFLoader.js +1 -0
- package/dist-browser/three/addons/loaders/AMFLoader.js +1 -0
- package/dist-browser/three/addons/loaders/BVHLoader.js +1 -0
- package/dist-browser/three/addons/loaders/ColladaLoader.js +1 -0
- package/dist-browser/three/addons/loaders/DDSLoader.js +1 -0
- package/dist-browser/three/addons/loaders/DRACOLoader.js +1 -0
- package/dist-browser/three/addons/loaders/EXRLoader.js +1 -0
- package/dist-browser/three/addons/loaders/FBXLoader.js +1 -0
- package/dist-browser/three/addons/loaders/FontLoader.js +1 -0
- package/dist-browser/three/addons/loaders/GCodeLoader.js +1 -0
- package/dist-browser/three/addons/loaders/GLTFGaussianSplatLoaderExtension.js +1 -0
- package/dist-browser/three/addons/loaders/GLTFLoader.js +1 -0
- package/dist-browser/three/addons/loaders/GaussianSplatPLYLoader.js +1 -0
- package/dist-browser/three/addons/loaders/HDRCubeTextureLoader.js +1 -0
- package/dist-browser/three/addons/loaders/HDRLoader.js +1 -0
- package/dist-browser/three/addons/loaders/IESLoader.js +1 -0
- package/dist-browser/three/addons/loaders/KMZLoader.js +1 -0
- package/dist-browser/three/addons/loaders/KSPLATLoader.js +1 -0
- package/dist-browser/three/addons/loaders/KTX2Loader.js +1 -0
- package/dist-browser/three/addons/loaders/KTXLoader.js +1 -0
- package/dist-browser/three/addons/loaders/LDrawLoader.js +1 -0
- package/dist-browser/three/addons/loaders/LUT3dlLoader.js +1 -0
- package/dist-browser/three/addons/loaders/LUTCubeLoader.js +1 -0
- package/dist-browser/three/addons/loaders/LUTImageLoader.js +1 -0
- package/dist-browser/three/addons/loaders/LWOLoader.js +1 -0
- package/dist-browser/three/addons/loaders/MD2Loader.js +1 -0
- package/dist-browser/three/addons/loaders/MDDLoader.js +1 -0
- package/dist-browser/three/addons/loaders/MTLLoader.js +1 -0
- package/dist-browser/three/addons/loaders/MaterialXLoader.js +1 -0
- package/dist-browser/three/addons/loaders/NRRDLoader.js +1 -0
- package/dist-browser/three/addons/loaders/OBJLoader.js +1 -0
- package/dist-browser/three/addons/loaders/PCDLoader.js +1 -0
- package/dist-browser/three/addons/loaders/PDBLoader.js +1 -0
- package/dist-browser/three/addons/loaders/PLYLoader.js +1 -0
- package/dist-browser/three/addons/loaders/PVRLoader.js +1 -0
- package/dist-browser/three/addons/loaders/RGBELoader.js +1 -0
- package/dist-browser/three/addons/loaders/SPLATLoader.js +1 -0
- package/dist-browser/three/addons/loaders/SPZLoader.js +1 -0
- package/dist-browser/three/addons/loaders/STLLoader.js +1 -0
- package/dist-browser/three/addons/loaders/SVGLoader.js +1 -0
- package/dist-browser/three/addons/loaders/TDSLoader.js +1 -0
- package/dist-browser/three/addons/loaders/TGALoader.js +1 -0
- package/dist-browser/three/addons/loaders/TIFFLoader.js +1 -0
- package/dist-browser/three/addons/loaders/TTFLoader.js +1 -0
- package/dist-browser/three/addons/loaders/USDLoader.js +1 -0
- package/dist-browser/three/addons/loaders/USDZLoader.js +1 -0
- package/dist-browser/three/addons/loaders/UltraHDRLoader.js +1 -0
- package/dist-browser/three/addons/loaders/VOXLoader.js +1 -0
- package/dist-browser/three/addons/loaders/VRMLLoader.js +1 -0
- package/dist-browser/three/addons/loaders/VTKLoader.js +1 -0
- package/dist-browser/three/addons/loaders/XYZLoader.js +1 -0
- package/dist-browser/three/addons/loaders/collada/ColladaComposer.js +1 -0
- package/dist-browser/three/addons/loaders/collada/ColladaParser.js +1 -0
- package/dist-browser/three/addons/loaders/lwo/IFFParser.js +1 -0
- package/dist-browser/three/addons/loaders/lwo/LWO2Parser.js +1 -0
- package/dist-browser/three/addons/loaders/lwo/LWO3Parser.js +1 -0
- package/dist-browser/three/addons/loaders/materialx/MaterialXArchive.js +1 -0
- package/dist-browser/three/addons/loaders/materialx/MaterialXDocument.js +1 -0
- package/dist-browser/three/addons/loaders/materialx/MaterialXHextile.js +1 -0
- package/dist-browser/three/addons/loaders/materialx/MaterialXInterfaceValidation.js +1 -0
- package/dist-browser/three/addons/loaders/materialx/MaterialXLog.js +1 -0
- package/dist-browser/three/addons/loaders/materialx/MaterialXNodeInterfaceRegistry.js +1 -0
- package/dist-browser/three/addons/loaders/materialx/MaterialXNodeLibrary.js +1 -0
- package/dist-browser/three/addons/loaders/materialx/MaterialXSurfaceMappings.js +1 -0
- package/dist-browser/three/addons/loaders/materialx/MaterialXUtils.js +1 -0
- package/dist-browser/three/addons/loaders/materialx/compile/MaterialXCompileRegistry.js +1 -0
- package/dist-browser/three/addons/loaders/materialx/parse/MaterialXParser.js +1 -0
- package/dist-browser/three/addons/loaders/usd/USDAParser.js +1 -0
- package/dist-browser/three/addons/loaders/usd/USDCParser.js +1 -0
- package/dist-browser/three/addons/loaders/usd/USDComposer.js +1 -0
- package/dist-browser/three/addons/materials/LDrawConditionalLineMaterial.js +1 -0
- package/dist-browser/three/addons/materials/LDrawConditionalLineNodeMaterial.js +1 -0
- package/dist-browser/three/addons/materials/WoodNodeMaterial.js +42 -0
- package/dist-browser/three/addons/math/Capsule.js +1 -0
- package/dist-browser/three/addons/math/ColorConverter.js +1 -0
- package/dist-browser/three/addons/math/ColorSpaces.js +1 -0
- package/dist-browser/three/addons/math/ConvexHull.js +1 -0
- package/dist-browser/three/addons/math/ImprovedNoise.js +1 -0
- package/dist-browser/three/addons/math/Lut.js +1 -0
- package/dist-browser/three/addons/math/MeshSurfaceSampler.js +1 -0
- package/dist-browser/three/addons/math/OBB.js +1 -0
- package/dist-browser/three/addons/math/Octree.js +1 -0
- package/dist-browser/three/addons/math/SimplexNoise.js +1 -0
- package/dist-browser/three/addons/misc/ConvexObjectBreaker.js +1 -0
- package/dist-browser/three/addons/misc/GPUComputationRenderer.js +1 -0
- package/dist-browser/three/addons/misc/Gyroscope.js +1 -0
- package/dist-browser/three/addons/misc/MD2Character.js +1 -0
- package/dist-browser/three/addons/misc/MD2CharacterComplex.js +1 -0
- package/dist-browser/three/addons/misc/MorphAnimMesh.js +1 -0
- package/dist-browser/three/addons/misc/MorphBlendMesh.js +1 -0
- package/dist-browser/three/addons/misc/ProgressiveLightMap.js +1 -0
- package/dist-browser/three/addons/misc/ProgressiveLightMapGPU.js +1 -0
- package/dist-browser/three/addons/misc/RollerCoaster.js +1 -0
- package/dist-browser/three/addons/misc/Sculptor.js +1 -0
- package/dist-browser/three/addons/misc/SculptorMesh.js +1 -0
- package/dist-browser/three/addons/misc/SculptorTools.js +1 -0
- package/dist-browser/three/addons/misc/SculptorUtils.js +1 -0
- package/dist-browser/three/addons/misc/TileCreasedNormalsPlugin.js +1 -0
- package/dist-browser/three/addons/misc/TubePainter.js +1 -0
- package/dist-browser/three/addons/misc/Volume.js +1 -0
- package/dist-browser/three/addons/misc/VolumeSlice.js +1 -0
- package/dist-browser/three/addons/modifiers/CurveModifier.js +1 -0
- package/dist-browser/three/addons/modifiers/CurveModifierGPU.js +1 -0
- package/dist-browser/three/addons/modifiers/EdgeSplitModifier.js +1 -0
- package/dist-browser/three/addons/modifiers/SimplifyModifier.js +1 -0
- package/dist-browser/three/addons/modifiers/TessellateModifier.js +1 -0
- package/dist-browser/three/addons/objects/GaussianSplat.js +1 -0
- package/dist-browser/three/addons/objects/GroundedSkybox.js +1 -0
- package/dist-browser/three/addons/objects/Lensflare.js +1 -0
- package/dist-browser/three/addons/objects/LensflareMesh.js +1 -0
- package/dist-browser/three/addons/objects/MarchingCubes.js +1 -0
- package/dist-browser/three/addons/objects/Reflector.js +1 -0
- package/dist-browser/three/addons/objects/ReflectorForSSRPass.js +1 -0
- package/dist-browser/three/addons/objects/Refractor.js +1 -0
- package/dist-browser/three/addons/objects/ShadowMesh.js +1 -0
- package/dist-browser/three/addons/objects/Sky.js +1 -0
- package/dist-browser/three/addons/objects/SkyMesh.js +1 -0
- package/dist-browser/three/addons/objects/Water.js +1 -0
- package/dist-browser/three/addons/objects/Water2.js +1 -0
- package/dist-browser/three/addons/objects/Water2Mesh.js +1 -0
- package/dist-browser/three/addons/objects/WaterMesh.js +1 -0
- package/dist-browser/three/addons/offscreen/jank.js +1 -0
- package/dist-browser/three/addons/offscreen/offscreen.js +0 -0
- package/dist-browser/three/addons/offscreen/scene.js +1 -0
- package/dist-browser/three/addons/physics/AmmoPhysics.js +1 -0
- package/dist-browser/three/addons/physics/JoltPhysics.js +1 -0
- package/dist-browser/three/addons/physics/RapierPhysics.js +1 -0
- package/dist-browser/three/addons/postprocessing/AfterimagePass.js +1 -0
- package/dist-browser/three/addons/postprocessing/BloomPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/BokehPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/ClearPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/CubeTexturePass.js +1 -0
- package/dist-browser/three/addons/postprocessing/DotScreenPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/EffectComposer.js +1 -0
- package/dist-browser/three/addons/postprocessing/FXAAPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/FilmPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/GTAOPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/GlitchPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/HalftonePass.js +1 -0
- package/dist-browser/three/addons/postprocessing/LUTPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/MaskPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/OutlinePass.js +1 -0
- package/dist-browser/three/addons/postprocessing/OutputPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/Pass.js +1 -0
- package/dist-browser/three/addons/postprocessing/RenderPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/RenderPixelatedPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/RenderTransitionPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/SAOPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/SMAAPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/SSAARenderPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/SSAOPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/SSRPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/SavePass.js +1 -0
- package/dist-browser/three/addons/postprocessing/ShaderPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/TAARenderPass.js +1 -0
- package/dist-browser/three/addons/postprocessing/TexturePass.js +1 -0
- package/dist-browser/three/addons/postprocessing/UnrealBloomPass.js +1 -0
- package/dist-browser/three/addons/renderers/CSS2DRenderer.js +1 -0
- package/dist-browser/three/addons/renderers/CSS3DRenderer.js +1 -0
- package/dist-browser/three/addons/renderers/Projector.js +1 -0
- package/dist-browser/three/addons/renderers/SVGRenderer.js +1 -0
- package/dist-browser/three/addons/shaders/ACESFilmicToneMappingShader.js +1 -0
- package/dist-browser/three/addons/shaders/AfterimageShader.js +1 -0
- package/dist-browser/three/addons/shaders/BasicShader.js +1 -0
- package/dist-browser/three/addons/shaders/BleachBypassShader.js +1 -0
- package/dist-browser/three/addons/shaders/BlendShader.js +1 -0
- package/dist-browser/three/addons/shaders/BokehShader.js +1 -0
- package/dist-browser/three/addons/shaders/BokehShader2.js +1 -0
- package/dist-browser/three/addons/shaders/BrightnessContrastShader.js +1 -0
- package/dist-browser/three/addons/shaders/ColorCorrectionShader.js +1 -0
- package/dist-browser/three/addons/shaders/ColorifyShader.js +1 -0
- package/dist-browser/three/addons/shaders/ConvolutionShader.js +1 -0
- package/dist-browser/three/addons/shaders/CopyShader.js +1 -0
- package/dist-browser/three/addons/shaders/DOFMipMapShader.js +1 -0
- package/dist-browser/three/addons/shaders/DepthLimitedBlurShader.js +1 -0
- package/dist-browser/three/addons/shaders/DigitalGlitch.js +1 -0
- package/dist-browser/three/addons/shaders/DotScreenShader.js +1 -0
- package/dist-browser/three/addons/shaders/ExposureShader.js +1 -0
- package/dist-browser/three/addons/shaders/FXAAShader.js +1 -0
- package/dist-browser/three/addons/shaders/FilmShader.js +1 -0
- package/dist-browser/three/addons/shaders/FocusShader.js +1 -0
- package/dist-browser/three/addons/shaders/FreiChenShader.js +1 -0
- package/dist-browser/three/addons/shaders/GTAOShader.js +1 -0
- package/dist-browser/three/addons/shaders/GammaCorrectionShader.js +1 -0
- package/dist-browser/three/addons/shaders/HalftoneShader.js +1 -0
- package/dist-browser/three/addons/shaders/HorizontalBlurShader.js +1 -0
- package/dist-browser/three/addons/shaders/HorizontalTiltShiftShader.js +1 -0
- package/dist-browser/three/addons/shaders/HueSaturationShader.js +1 -0
- package/dist-browser/three/addons/shaders/KaleidoShader.js +1 -0
- package/dist-browser/three/addons/shaders/LuminosityHighPassShader.js +1 -0
- package/dist-browser/three/addons/shaders/LuminosityShader.js +1 -0
- package/dist-browser/three/addons/shaders/MirrorShader.js +1 -0
- package/dist-browser/three/addons/shaders/NormalMapShader.js +1 -0
- package/dist-browser/three/addons/shaders/OutputShader.js +1 -0
- package/dist-browser/three/addons/shaders/PoissonDenoiseShader.js +1 -0
- package/dist-browser/three/addons/shaders/RGBShiftShader.js +1 -0
- package/dist-browser/three/addons/shaders/SAOShader.js +1 -0
- package/dist-browser/three/addons/shaders/SMAAShader.js +1 -0
- package/dist-browser/three/addons/shaders/SSAOShader.js +1 -0
- package/dist-browser/three/addons/shaders/SSRShader.js +1 -0
- package/dist-browser/three/addons/shaders/SepiaShader.js +1 -0
- package/dist-browser/three/addons/shaders/SobelOperatorShader.js +1 -0
- package/dist-browser/three/addons/shaders/SubsurfaceScatteringShader.js +1 -0
- package/dist-browser/three/addons/shaders/TechnicolorShader.js +1 -0
- package/dist-browser/three/addons/shaders/ToonShader.js +1 -0
- package/dist-browser/three/addons/shaders/TriangleBlurShader.js +1 -0
- package/dist-browser/three/addons/shaders/UnpackDepthRGBAShader.js +1 -0
- package/dist-browser/three/addons/shaders/VelocityShader.js +1 -0
- package/dist-browser/three/addons/shaders/VerticalBlurShader.js +1 -0
- package/dist-browser/three/addons/shaders/VerticalTiltShiftShader.js +1 -0
- package/dist-browser/three/addons/shaders/VignetteShader.js +1 -0
- package/dist-browser/three/addons/shaders/VolumeShader.js +1 -0
- package/dist-browser/three/addons/shaders/WaterRefractionShader.js +1 -0
- package/dist-browser/three/addons/textures/FlakesTexture.js +1 -0
- package/dist-browser/three/addons/transpiler/AST.js +1 -0
- package/dist-browser/three/addons/transpiler/GLSLDecoder.js +1 -0
- package/dist-browser/three/addons/transpiler/Linker.js +1 -0
- package/dist-browser/three/addons/transpiler/ShaderToyDecoder.js +1 -0
- package/dist-browser/three/addons/transpiler/TSLEncoder.js +55 -0
- package/dist-browser/three/addons/transpiler/Transpiler.js +1 -0
- package/dist-browser/three/addons/transpiler/TranspilerUtils.js +1 -0
- package/dist-browser/three/addons/transpiler/WGSLEncoder.js +30 -0
- package/dist-browser/three/addons/tsl/WebGLNodesHandler.js +1 -0
- package/dist-browser/three/addons/tsl/display/AfterImageNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/AnaglyphPassNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/BilateralBlurNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/BleachBypass.js +1 -0
- package/dist-browser/three/addons/tsl/display/BloomNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/CRT.js +1 -0
- package/dist-browser/three/addons/tsl/display/ChromaticAberrationNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/DenoiseNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/DepthOfFieldNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/DotScreenNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/FSR1Node.js +1 -0
- package/dist-browser/three/addons/tsl/display/FXAANode.js +1 -0
- package/dist-browser/three/addons/tsl/display/FilmNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/GTAONode.js +1 -0
- package/dist-browser/three/addons/tsl/display/GaussianBlurNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/GodraysNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/ImportanceSampledEnvironment.js +1 -0
- package/dist-browser/three/addons/tsl/display/LensflareNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/Lut3DNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/MotionBlur.js +1 -0
- package/dist-browser/three/addons/tsl/display/OITPassNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/OutlineNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/ParallaxBarrierPassNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/PixelationPassNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/RGBShiftNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/RecurrentDenoiseNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/RetroPassNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/SMAANode.js +1 -0
- package/dist-browser/three/addons/tsl/display/SSAAPassNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/SSAONode.js +1 -0
- package/dist-browser/three/addons/tsl/display/SSGINode.js +1 -0
- package/dist-browser/three/addons/tsl/display/SSRNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/SSSNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/Sepia.js +1 -0
- package/dist-browser/three/addons/tsl/display/Shape.js +1 -0
- package/dist-browser/three/addons/tsl/display/SharpenNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/SobelOperatorNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/StereoCompositePassNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/StereoPassNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/TAAUNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/TRAANode.js +1 -0
- package/dist-browser/three/addons/tsl/display/TemporalReprojectNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/TransitionNode.js +1 -0
- package/dist-browser/three/addons/tsl/display/boxBlur.js +1 -0
- package/dist-browser/three/addons/tsl/display/depthAwareBlend.js +1 -0
- package/dist-browser/three/addons/tsl/display/depthAwareBlur.js +1 -0
- package/dist-browser/three/addons/tsl/display/hashBlur.js +1 -0
- package/dist-browser/three/addons/tsl/display/radialBlur.js +1 -0
- package/dist-browser/three/addons/tsl/lighting/ClusteredLightsNode.js +1 -0
- package/dist-browser/three/addons/tsl/lighting/DynamicLightsNode.js +1 -0
- package/dist-browser/three/addons/tsl/lighting/LightProbeGridNode.js +1 -0
- package/dist-browser/three/addons/tsl/lighting/data/AmbientLightDataNode.js +1 -0
- package/dist-browser/three/addons/tsl/lighting/data/DirectionalLightDataNode.js +1 -0
- package/dist-browser/three/addons/tsl/lighting/data/HemisphereLightDataNode.js +1 -0
- package/dist-browser/three/addons/tsl/lighting/data/PointLightDataNode.js +1 -0
- package/dist-browser/three/addons/tsl/lighting/data/SpotLightDataNode.js +1 -0
- package/dist-browser/three/addons/tsl/math/Bayer.js +1 -0
- package/dist-browser/three/addons/tsl/math/curlNoise.js +1 -0
- package/dist-browser/three/addons/tsl/math/voronoiNoise.js +1 -0
- package/dist-browser/three/addons/tsl/shadows/TileShadowNode.js +1 -0
- package/dist-browser/three/addons/tsl/shadows/TileShadowNodeHelper.js +1 -0
- package/dist-browser/three/addons/tsl/utils/GroundedSkybox.js +1 -0
- package/dist-browser/three/addons/tsl/utils/RNoise.js +1 -0
- package/dist-browser/three/addons/tsl/utils/Raymarching.js +1 -0
- package/dist-browser/three/addons/tsl/utils/SoftParticles.js +1 -0
- package/dist-browser/three/addons/tsl/utils/SpecularHelpers.js +1 -0
- package/dist-browser/three/addons/tsl/utils/TAAUtils.js +1 -0
- package/dist-browser/three/addons/utils/BufferGeometryUtils.js +1 -0
- package/dist-browser/three/addons/utils/CameraUtils.js +1 -0
- package/dist-browser/three/addons/utils/ColorUtils.js +1 -0
- package/dist-browser/three/addons/utils/GaussianSplatUtils.js +1 -0
- package/dist-browser/three/addons/utils/GeometryCompressionUtils.js +1 -0
- package/dist-browser/three/addons/utils/GeometryUtils.js +1 -0
- package/dist-browser/three/addons/utils/LDrawUtils.js +1 -0
- package/dist-browser/three/addons/utils/SceneOptimizer.js +1 -0
- package/dist-browser/three/addons/utils/SceneUtils.js +1 -0
- package/dist-browser/three/addons/utils/ShadowMapViewer.js +1 -0
- package/dist-browser/three/addons/utils/ShadowMapViewerGPU.js +1 -0
- package/dist-browser/three/addons/utils/SkeletonUtils.js +1 -0
- package/dist-browser/three/addons/utils/SortUtils.js +1 -0
- package/dist-browser/three/addons/utils/UVsDebug.js +1 -0
- package/dist-browser/three/addons/utils/WebGLTextureUtils.js +1 -0
- package/dist-browser/three/addons/utils/WebGPUTextureUtils.js +1 -0
- package/dist-browser/three/addons/utils/WorkerPool.js +1 -0
- package/dist-browser/three/addons/webxr/ARButton.js +1 -0
- package/dist-browser/three/addons/webxr/OculusHandModel.js +1 -0
- package/dist-browser/three/addons/webxr/OculusHandPointerModel.js +1 -0
- package/dist-browser/three/addons/webxr/Text2D.js +1 -0
- package/dist-browser/three/addons/webxr/VRButton.js +1 -0
- package/dist-browser/three/addons/webxr/WebGLXRFallback.js +1 -0
- package/dist-browser/three/addons/webxr/XRButton.js +1 -0
- package/dist-browser/three/addons/webxr/XRControllerModelFactory.js +1 -0
- package/dist-browser/three/addons/webxr/XREstimatedLight.js +1 -0
- package/dist-browser/three/addons/webxr/XRHandMeshModel.js +1 -0
- package/dist-browser/three/addons/webxr/XRHandModelFactory.js +1 -0
- package/dist-browser/three/addons/webxr/XRHandPrimitiveModel.js +1 -0
- package/dist-browser/three/addons/webxr/XRPlanes.js +1 -0
- package/dist-browser/three/addons.js +1 -0
- package/dist-browser/three/tsl.js +1 -0
- package/dist-browser/three/webgpu.js +1 -0
- package/dist-browser/three.js +1 -0
- package/dist-browser/three.quarks.js +1 -0
- package/dist-browser/zustand/middleware.js +1 -0
- package/dist-browser/zustand/shallow.js +1 -0
- package/dist-browser/zustand/vanilla.js +1 -0
- package/dist-browser/zustand.js +1 -0
- package/package.json +194 -0
- package/rapier/LICENSE +201 -0
- package/rapier/NOTICE +23 -0
- package/rapier/simd/coarena.js +1 -0
- package/rapier/simd/control/character_controller.js +1 -0
- package/rapier/simd/control/index.js +1 -0
- package/rapier/simd/control/pid_controller.js +1 -0
- package/rapier/simd/control/ray_cast_vehicle_controller.js +1 -0
- package/rapier/simd/dynamics/ccd_solver.js +1 -0
- package/rapier/simd/dynamics/coefficient_combine_rule.js +1 -0
- package/rapier/simd/dynamics/impulse_joint.js +1 -0
- package/rapier/simd/dynamics/impulse_joint_set.js +1 -0
- package/rapier/simd/dynamics/index.js +1 -0
- package/rapier/simd/dynamics/integration_parameters.js +1 -0
- package/rapier/simd/dynamics/island_manager.js +1 -0
- package/rapier/simd/dynamics/multibody_joint.js +1 -0
- package/rapier/simd/dynamics/multibody_joint_set.js +1 -0
- package/rapier/simd/dynamics/rigid_body.js +1 -0
- package/rapier/simd/dynamics/rigid_body_set.js +1 -0
- package/rapier/simd/exports.js +1 -0
- package/rapier/simd/geometry/broad_phase.js +1 -0
- package/rapier/simd/geometry/collider.js +1 -0
- package/rapier/simd/geometry/collider_set.js +1 -0
- package/rapier/simd/geometry/contact.js +1 -0
- package/rapier/simd/geometry/feature.js +1 -0
- package/rapier/simd/geometry/index.js +1 -0
- package/rapier/simd/geometry/interaction_groups.js +0 -0
- package/rapier/simd/geometry/narrow_phase.js +1 -0
- package/rapier/simd/geometry/point.js +1 -0
- package/rapier/simd/geometry/ray.js +1 -0
- package/rapier/simd/geometry/shape.js +1 -0
- package/rapier/simd/geometry/toi.js +1 -0
- package/rapier/simd/init.js +0 -0
- package/rapier/simd/math.js +1 -0
- package/rapier/simd/pipeline/debug_render_pipeline.js +1 -0
- package/rapier/simd/pipeline/event_queue.js +1 -0
- package/rapier/simd/pipeline/index.js +1 -0
- package/rapier/simd/pipeline/physics_hooks.js +1 -0
- package/rapier/simd/pipeline/physics_pipeline.js +1 -0
- package/rapier/simd/pipeline/query_pipeline.js +1 -0
- package/rapier/simd/pipeline/serialization_pipeline.js +1 -0
- package/rapier/simd/pipeline/world.js +1 -0
- package/rapier/simd/rapier.js +1 -0
- package/rapier/simd/rapier_wasm3d.js +1 -0
- package/rapier/simd/rapier_wasm3d_bg.js +1 -0
- package/rapier/simd/rapier_wasm3d_bg.wasm +0 -0
- package/rapier/simd/raw.js +1 -0
- package/rapier/simd-compat/rapier.mjs +1 -0
- package/rapier/types/coarena.d.ts +15 -0
- package/rapier/types/control/character_controller.d.ts +191 -0
- package/rapier/types/control/index.d.ts +3 -0
- package/rapier/types/control/pid_controller.d.ts +50 -0
- package/rapier/types/control/ray_cast_vehicle_controller.d.ts +277 -0
- package/rapier/types/dynamics/ccd_solver.d.ts +15 -0
- package/rapier/types/dynamics/coefficient_combine_rule.d.ts +13 -0
- package/rapier/types/dynamics/impulse_joint.d.ts +375 -0
- package/rapier/types/dynamics/impulse_joint_set.d.ts +79 -0
- package/rapier/types/dynamics/index.d.ts +10 -0
- package/rapier/types/dynamics/integration_parameters.d.ts +57 -0
- package/rapier/types/dynamics/island_manager.d.ts +24 -0
- package/rapier/types/dynamics/multibody_joint.d.ts +42 -0
- package/rapier/types/dynamics/multibody_joint_set.d.ts +76 -0
- package/rapier/types/dynamics/rigid_body.d.ts +803 -0
- package/rapier/types/dynamics/rigid_body_set.d.ts +78 -0
- package/rapier/types/exports.d.ts +8 -0
- package/rapier/types/geometry/broad_phase.d.ts +164 -0
- package/rapier/types/geometry/collider.d.ts +996 -0
- package/rapier/types/geometry/collider_set.d.ts +72 -0
- package/rapier/types/geometry/contact.d.ts +36 -0
- package/rapier/types/geometry/feature.d.ts +6 -0
- package/rapier/types/geometry/index.d.ts +11 -0
- package/rapier/types/geometry/interaction_groups.d.ts +18 -0
- package/rapier/types/geometry/narrow_phase.d.ts +130 -0
- package/rapier/types/geometry/point.d.ts +58 -0
- package/rapier/types/geometry/ray.d.ts +108 -0
- package/rapier/types/geometry/shape.d.ts +632 -0
- package/rapier/types/geometry/toi.d.ts +44 -0
- package/rapier/types/init.d.ts +5 -0
- package/rapier/types/math.d.ts +98 -0
- package/rapier/types/pipeline/debug_render_pipeline.d.ts +40 -0
- package/rapier/types/pipeline/event_queue.d.ts +101 -0
- package/rapier/types/pipeline/index.d.ts +7 -0
- package/rapier/types/pipeline/physics_hooks.d.ts +39 -0
- package/rapier/types/pipeline/physics_pipeline.d.ts +12 -0
- package/rapier/types/pipeline/query_pipeline.d.ts +38 -0
- package/rapier/types/pipeline/serialization_pipeline.d.ts +37 -0
- package/rapier/types/pipeline/world.d.ts +602 -0
- package/rapier/types/rapier.d.ts +3 -0
- package/rapier/types/rapier_wasm3d.d.ts +2204 -0
- package/rapier/types/rapier_wasm3d_bg.wasm.d.ts +582 -0
- package/rapier/types/raw.d.ts +1 -0
- package/readable/rounds/LevelBanner.tsx +44 -0
- package/readable/rounds/Round.tsx +228 -0
- package/readable/rounds/RoundScreen.tsx +89 -0
- package/readable/rounds/dist/LevelBanner.d.ts +13 -0
- package/readable/rounds/dist/LevelBanner.d.ts.map +1 -0
- package/readable/rounds/dist/LevelBanner.js +20 -0
- package/readable/rounds/dist/LevelBanner.js.map +1 -0
- package/readable/rounds/dist/Round.d.ts +74 -0
- package/readable/rounds/dist/Round.d.ts.map +1 -0
- package/readable/rounds/dist/Round.js +137 -0
- package/readable/rounds/dist/Round.js.map +1 -0
- package/readable/rounds/dist/RoundScreen.d.ts +39 -0
- package/readable/rounds/dist/RoundScreen.d.ts.map +1 -0
- package/readable/rounds/dist/RoundScreen.js +23 -0
- package/readable/rounds/dist/RoundScreen.js.map +1 -0
- package/readable/rounds/dist/index.d.ts +7 -0
- package/readable/rounds/dist/index.d.ts.map +1 -0
- package/readable/rounds/dist/index.js +11 -0
- package/readable/rounds/dist/index.js.map +1 -0
- package/readable/rounds/dist/rounds.d.ts +16 -0
- package/readable/rounds/dist/rounds.d.ts.map +1 -0
- package/readable/rounds/dist/rounds.js +82 -0
- package/readable/rounds/dist/rounds.js.map +1 -0
- package/readable/rounds/dist/rules.d.ts +65 -0
- package/readable/rounds/dist/rules.d.ts.map +1 -0
- package/readable/rounds/dist/rules.js +150 -0
- package/readable/rounds/dist/rules.js.map +1 -0
- package/readable/rounds/dist/traits.d.ts +103 -0
- package/readable/rounds/dist/traits.d.ts.map +1 -0
- package/readable/rounds/dist/traits.js +79 -0
- package/readable/rounds/dist/traits.js.map +1 -0
- package/readable/rounds/index.ts +11 -0
- package/readable/rounds/rounds.ts +117 -0
- package/readable/rounds/rules.ts +182 -0
- package/readable/rounds/traits.ts +82 -0
|
@@ -0,0 +1,1039 @@
|
|
|
1
|
+
import{$ as e,$r as t,B as n,Br as r,Dr as i,Er as a,Fi as o,Gn as s,Hn as c,I as l,Ii as u,Io as d,Ki as f,N as p,Pn as m,Po as h,Qi as g,Qr as _,Qt as v,Rs as y,To as b,Ts as x,Un as S,Uo as C,V as w,Vo as T,Wt as E,Xi as D,br as O,cr as k,d as A,ea as j,et as M,gn as N,h as P,hn as F,hs as I,j as ee,jn as te,na as ne,oi as re,oo as ie,si as ae,ur as oe,vr as se,wo as ce,zo as le}from"./BoJD7UsQ.js";import{n as ue}from"./Bzy44bV2.js";var L=`00.01.02.03.04.05.06.07.08.09.0a.0b.0c.0d.0e.0f.10.11.12.13.14.15.16.17.18.19.1a.1b.1c.1d.1e.1f.20.21.22.23.24.25.26.27.28.29.2a.2b.2c.2d.2e.2f.30.31.32.33.34.35.36.37.38.39.3a.3b.3c.3d.3e.3f.40.41.42.43.44.45.46.47.48.49.4a.4b.4c.4d.4e.4f.50.51.52.53.54.55.56.57.58.59.5a.5b.5c.5d.5e.5f.60.61.62.63.64.65.66.67.68.69.6a.6b.6c.6d.6e.6f.70.71.72.73.74.75.76.77.78.79.7a.7b.7c.7d.7e.7f.80.81.82.83.84.85.86.87.88.89.8a.8b.8c.8d.8e.8f.90.91.92.93.94.95.96.97.98.99.9a.9b.9c.9d.9e.9f.a0.a1.a2.a3.a4.a5.a6.a7.a8.a9.aa.ab.ac.ad.ae.af.b0.b1.b2.b3.b4.b5.b6.b7.b8.b9.ba.bb.bc.bd.be.bf.c0.c1.c2.c3.c4.c5.c6.c7.c8.c9.ca.cb.cc.cd.ce.cf.d0.d1.d2.d3.d4.d5.d6.d7.d8.d9.da.db.dc.dd.de.df.e0.e1.e2.e3.e4.e5.e6.e7.e8.e9.ea.eb.ec.ed.ee.ef.f0.f1.f2.f3.f4.f5.f6.f7.f8.f9.fa.fb.fc.fd.fe.ff`.split(`.`),de=1234567,fe=Math.PI/180,pe=180/Math.PI;function me(){let e=Math.random()*4294967295|0,t=Math.random()*4294967295|0,n=Math.random()*4294967295|0,r=Math.random()*4294967295|0;return(L[e&255]+L[e>>8&255]+L[e>>16&255]+L[e>>24&255]+`-`+L[t&255]+L[t>>8&255]+`-`+L[t>>16&15|64]+L[t>>24&255]+`-`+L[n&63|128]+L[n>>8&255]+`-`+L[n>>16&255]+L[n>>24&255]+L[r&255]+L[r>>8&255]+L[r>>16&255]+L[r>>24&255]).toLowerCase()}function R(e,t,n){return Math.max(t,Math.min(n,e))}function he(e,t){return(e%t+t)%t}function ge(e,t,n,r,i){return r+(e-t)*(i-r)/(n-t)}function _e(e,t,n){return e===t?0:(n-e)/(t-e)}function ve(e,t,n){return(1-n)*e+n*t}function ye(e,t,n,r){return ve(e,t,1-Math.exp(-n*r))}function be(e,t=1){return t-Math.abs(he(e,t*2)-t)}function xe(e,t,n){return e<=t?0:e>=n?1:(e=(e-t)/(n-t),e*e*(3-2*e))}function Se(e,t,n){return e<=t?0:e>=n?1:(e=(e-t)/(n-t),e*e*e*(e*(e*6-15)+10))}function Ce(e,t){return e+Math.floor(Math.random()*(t-e+1))}function we(e,t){return e+Math.random()*(t-e)}function Te(e){return e*(.5-Math.random())}function Ee(e){e!==void 0&&(de=e);let t=de+=1831565813;return t=Math.imul(t^t>>>15,t|1),t^=t+Math.imul(t^t>>>7,t|61),((t^t>>>14)>>>0)/4294967296}function De(e){return e*fe}function Oe(e){return e*pe}function ke(e){return!(e&e-1)&&e!==0}function Ae(e){return 2**Math.ceil(Math.log(e)/Math.LN2)}function je(e){return 2**Math.floor(Math.log(e)/Math.LN2)}function Me(e,t,n,r,i){let a=Math.cos,o=Math.sin,s=a(n/2),c=o(n/2),l=a((t+r)/2),u=o((t+r)/2),d=a((t-r)/2),f=o((t-r)/2),p=a((r-t)/2),m=o((r-t)/2);switch(i){case`XYX`:e.set(s*u,c*d,c*f,s*l);break;case`YZY`:e.set(c*f,s*u,c*d,s*l);break;case`ZXZ`:e.set(c*d,c*f,s*u,s*l);break;case`XZX`:e.set(s*u,c*m,c*p,s*l);break;case`YXY`:e.set(c*p,s*u,c*m,s*l);break;case`ZYZ`:e.set(c*m,c*p,s*u,s*l);break;default:console.warn(`../math.MathUtils: .setQuaternionFromProperEuler() encountered an unknown order: `+i)}}function Ne(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return e/4294967295;case Uint16Array:return e/65535;case Uint8Array:return e/255;case Int32Array:return Math.max(e/2147483647,-1);case Int16Array:return Math.max(e/32767,-1);case Int8Array:return Math.max(e/127,-1);default:throw Error(`Invalid component type.`)}}function Pe(e,t){switch(t.constructor){case Float32Array:return e;case Uint32Array:return Math.round(e*4294967295);case Uint16Array:return Math.round(e*65535);case Uint8Array:return Math.round(e*255);case Int32Array:return Math.round(e*2147483647);case Int16Array:return Math.round(e*32767);case Int8Array:return Math.round(e*127);default:throw Error(`Invalid component type.`)}}var Fe={DEG2RAD:fe,RAD2DEG:pe,generateUUID:me,clamp:R,euclideanModulo:he,mapLinear:ge,inverseLerp:_e,lerp:ve,damp:ye,pingpong:be,smoothstep:xe,smootherstep:Se,randInt:Ce,randFloat:we,randFloatSpread:Te,seededRandom:Ee,degToRad:De,radToDeg:Oe,isPowerOfTwo:ke,ceilPowerOfTwo:Ae,floorPowerOfTwo:je,setQuaternionFromProperEuler:Me,normalize:Pe,denormalize:Ne},z=class e{constructor(e=0,t=0,n=0,r=1){this.isQuaternion=!0,this._x=e,this._y=t,this._z=n,this._w=r}static slerpFlat(e,t,n,r,i,a,o){let s=n[r+0],c=n[r+1],l=n[r+2],u=n[r+3],d=i[a+0],f=i[a+1],p=i[a+2],m=i[a+3];if(o===0){e[t+0]=s,e[t+1]=c,e[t+2]=l,e[t+3]=u;return}if(o===1){e[t+0]=d,e[t+1]=f,e[t+2]=p,e[t+3]=m;return}if(u!==m||s!==d||c!==f||l!==p){let e=1-o,t=s*d+c*f+l*p+u*m,n=t>=0?1:-1,r=1-t*t;if(r>2**-52){let i=Math.sqrt(r),a=Math.atan2(i,t*n);e=Math.sin(e*a)/i,o=Math.sin(o*a)/i}let i=o*n;if(s=s*e+d*i,c=c*e+f*i,l=l*e+p*i,u=u*e+m*i,e===1-o){let e=1/Math.sqrt(s*s+c*c+l*l+u*u);s*=e,c*=e,l*=e,u*=e}}e[t]=s,e[t+1]=c,e[t+2]=l,e[t+3]=u}static multiplyQuaternionsFlat(e,t,n,r,i,a){let o=n[r],s=n[r+1],c=n[r+2],l=n[r+3],u=i[a],d=i[a+1],f=i[a+2],p=i[a+3];return e[t]=o*p+l*u+s*f-c*d,e[t+1]=s*p+l*d+c*u-o*f,e[t+2]=c*p+l*f+o*d-s*u,e[t+3]=l*p-o*u-s*d-c*f,e}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get w(){return this._w}set w(e){this._w=e,this._onChangeCallback()}set(e,t,n,r){return this._x=e,this._y=t,this._z=n,this._w=r,this._onChangeCallback(),this}clone(){return new e(this._x,this._y,this._z,this._w)}copy(e){return this._x=e.x,this._y=e.y,this._z=e.z,this._w=e.w,this._onChangeCallback(),this}setFromEuler(e,t=!0){let n=e._x,r=e._y,i=e._z,a=e._order,o=Math.cos,s=Math.sin,c=o(n/2),l=o(r/2),u=o(i/2),d=s(n/2),f=s(r/2),p=s(i/2);switch(a){case`XYZ`:this._x=d*l*u+c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u-d*f*p;break;case`YXZ`:this._x=d*l*u+c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u+d*f*p;break;case`ZXY`:this._x=d*l*u-c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u-d*f*p;break;case`ZYX`:this._x=d*l*u-c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u+d*f*p;break;case`YZX`:this._x=d*l*u+c*f*p,this._y=c*f*u+d*l*p,this._z=c*l*p-d*f*u,this._w=c*l*u-d*f*p;break;case`XZY`:this._x=d*l*u-c*f*p,this._y=c*f*u-d*l*p,this._z=c*l*p+d*f*u,this._w=c*l*u+d*f*p;break;default:console.warn(`../math.Quaternion: .setFromEuler() encountered an unknown order: `+a)}return t===!0&&this._onChangeCallback(),this}setFromAxisAngle(e,t){let n=t/2,r=Math.sin(n);return this._x=e.x*r,this._y=e.y*r,this._z=e.z*r,this._w=Math.cos(n),this._onChangeCallback(),this}setFromRotationMatrix(e){let t=e.elements,n=t[0],r=t[4],i=t[8],a=t[1],o=t[5],s=t[9],c=t[2],l=t[6],u=t[10],d=n+o+u;if(d>0){let e=.5/Math.sqrt(d+1);this._w=.25/e,this._x=(l-s)*e,this._y=(i-c)*e,this._z=(a-r)*e}else if(n>o&&n>u){let e=2*Math.sqrt(1+n-o-u);this._w=(l-s)/e,this._x=.25*e,this._y=(r+a)/e,this._z=(i+c)/e}else if(o>u){let e=2*Math.sqrt(1+o-n-u);this._w=(i-c)/e,this._x=(r+a)/e,this._y=.25*e,this._z=(s+l)/e}else{let e=2*Math.sqrt(1+u-n-o);this._w=(a-r)/e,this._x=(i+c)/e,this._y=(s+l)/e,this._z=.25*e}return this._onChangeCallback(),this}setFromUnitVectors(e,t){let n=e.dot(t)+1;return n<2**-52?(n=0,Math.abs(e.x)>Math.abs(e.z)?(this._x=-e.y,this._y=e.x,this._z=0,this._w=n):(this._x=0,this._y=-e.z,this._z=e.y,this._w=n)):(this._x=e.y*t.z-e.z*t.y,this._y=e.z*t.x-e.x*t.z,this._z=e.x*t.y-e.y*t.x,this._w=n),this.normalize()}angleTo(e){return 2*Math.acos(Math.abs(R(this.dot(e),-1,1)))}rotateTowards(e,t){let n=this.angleTo(e);if(n===0)return this;let r=Math.min(1,t/n);return this.slerp(e,r),this}identity(){return this.set(0,0,0,1)}invert(){return this.conjugate()}conjugate(){return this._x*=-1,this._y*=-1,this._z*=-1,this._onChangeCallback(),this}dot(e){return this._x*e._x+this._y*e._y+this._z*e._z+this._w*e._w}lengthSq(){return this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w}length(){return Math.sqrt(this._x*this._x+this._y*this._y+this._z*this._z+this._w*this._w)}normalize(){let e=this.length();return e===0?(this._x=0,this._y=0,this._z=0,this._w=1):(e=1/e,this._x*=e,this._y*=e,this._z*=e,this._w*=e),this._onChangeCallback(),this}multiply(e){return this.multiplyQuaternions(this,e)}premultiply(e){return this.multiplyQuaternions(e,this)}multiplyQuaternions(e,t){let n=e._x,r=e._y,i=e._z,a=e._w,o=t._x,s=t._y,c=t._z,l=t._w;return this._x=n*l+a*o+r*c-i*s,this._y=r*l+a*s+i*o-n*c,this._z=i*l+a*c+n*s-r*o,this._w=a*l-n*o-r*s-i*c,this._onChangeCallback(),this}slerp(e,t){if(t===0)return this;if(t===1)return this.copy(e);let n=this._x,r=this._y,i=this._z,a=this._w,o=a*e._w+n*e._x+r*e._y+i*e._z;if(o<0?(this._w=-e._w,this._x=-e._x,this._y=-e._y,this._z=-e._z,o=-o):this.copy(e),o>=1)return this._w=a,this._x=n,this._y=r,this._z=i,this;let s=1-o*o;if(s<=2**-52){let e=1-t;return this._w=e*a+t*this._w,this._x=e*n+t*this._x,this._y=e*r+t*this._y,this._z=e*i+t*this._z,this.normalize(),this}let c=Math.sqrt(s),l=Math.atan2(c,o),u=Math.sin((1-t)*l)/c,d=Math.sin(t*l)/c;return this._w=a*u+this._w*d,this._x=n*u+this._x*d,this._y=r*u+this._y*d,this._z=i*u+this._z*d,this._onChangeCallback(),this}slerpQuaternions(e,t,n){return this.copy(e).slerp(t,n)}random(){let e=2*Math.PI*Math.random(),t=2*Math.PI*Math.random(),n=Math.random(),r=Math.sqrt(1-n),i=Math.sqrt(n);return this.set(r*Math.sin(e),r*Math.cos(e),i*Math.sin(t),i*Math.cos(t))}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._w===this._w}fromArray(e,t=0){return this._x=e[t],this._y=e[t+1],this._z=e[t+2],this._w=e[t+3],this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._w,e}toJSON(){return this.toArray()}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._w}},B=class e{constructor(t=0,n=0,r=0){this.isVector3=!0,e.prototype.isVector3=!0,this.x=t,this.y=n,this.z=r}set(e,t,n){return n===void 0&&(n=this.z),this.x=e,this.y=t,this.z=n,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;default:throw Error(`index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;default:throw Error(`index is out of range: `+e)}}clone(){return new e(this.x,this.y,this.z)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this}multiplyVectors(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this.z=e.z*t.z,this}applyEuler(e){return this.applyQuaternion(Le.setFromEuler(e))}applyAxisAngle(e,t){return this.applyQuaternion(Le.setFromAxisAngle(e,t))}applyMatrix3(e){let t=this.x,n=this.y,r=this.z,i=e.elements;return this.x=i[0]*t+i[3]*n+i[6]*r,this.y=i[1]*t+i[4]*n+i[7]*r,this.z=i[2]*t+i[5]*n+i[8]*r,this}applyNormalMatrix(e){return this.applyMatrix3(e).normalize()}applyMatrix4(e){let t=this.x,n=this.y,r=this.z,i=e.elements,a=1/(i[3]*t+i[7]*n+i[11]*r+i[15]);return this.x=(i[0]*t+i[4]*n+i[8]*r+i[12])*a,this.y=(i[1]*t+i[5]*n+i[9]*r+i[13])*a,this.z=(i[2]*t+i[6]*n+i[10]*r+i[14])*a,this}applyQuaternion(e){let t=this.x,n=this.y,r=this.z,i=e.x,a=e.y,o=e.z,s=e.w,c=2*(a*r-o*n),l=2*(o*t-i*r),u=2*(i*n-a*t);return this.x=t+s*c+a*u-o*l,this.y=n+s*l+o*c-i*u,this.z=r+s*u+i*l-a*c,this}transformDirection(e){let t=this.x,n=this.y,r=this.z,i=e.elements;return this.x=i[0]*t+i[4]*n+i[8]*r,this.y=i[1]*t+i[5]*n+i[9]*r,this.z=i[2]*t+i[6]*n+i[10]*r,this.normalize()}divide(e){return this.x/=e.x,this.y/=e.y,this.z/=e.z,this}divideScalar(e){return this.multiplyScalar(1/e)}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this}clamp(e,t){return this.x=Math.max(e.x,Math.min(t.x,this.x)),this.y=Math.max(e.y,Math.min(t.y,this.y)),this.z=Math.max(e.z,Math.min(t.z,this.z)),this}clampScalar(e,t){return this.x=Math.max(e,Math.min(t,this.x)),this.y=Math.max(e,Math.min(t,this.y)),this.z=Math.max(e,Math.min(t,this.z)),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(e,Math.min(t,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this}cross(e){return this.crossVectors(this,e)}crossVectors(e,t){let n=e.x,r=e.y,i=e.z,a=t.x,o=t.y,s=t.z;return this.x=r*s-i*o,this.y=i*a-n*s,this.z=n*o-r*a,this}projectOnVector(e){let t=e.lengthSq();if(t===0)return this.set(0,0,0);let n=e.dot(this)/t;return this.copy(e).multiplyScalar(n)}projectOnPlane(e){return Ie.copy(this).projectOnVector(e),this.sub(Ie)}reflect(e){return this.sub(Ie.copy(e).multiplyScalar(2*this.dot(e)))}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;let n=this.dot(e)/t;return Math.acos(R(n,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,n=this.y-e.y,r=this.z-e.z;return t*t+n*n+r*r}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)+Math.abs(this.z-e.z)}setFromSphericalCoords(e,t,n){let r=Math.sin(t)*e;return this.x=r*Math.sin(n),this.y=Math.cos(t)*e,this.z=r*Math.cos(n),this}setFromCylindricalCoords(e,t,n){return this.x=e*Math.sin(t),this.y=n,this.z=e*Math.cos(t),this}setFromMatrixPosition(e){let t=e.elements;return this.x=t[12],this.y=t[13],this.z=t[14],this}setFromMatrixScale(e){let t=this.setFromMatrixColumn(e,0).length(),n=this.setFromMatrixColumn(e,1).length(),r=this.setFromMatrixColumn(e,2).length();return this.x=t,this.y=n,this.z=r,this}setFromMatrixColumn(e,t){return this.fromArray(e.elements,t*4)}setFromMatrix3Column(e,t){return this.fromArray(e.elements,t*3)}setFromEuler(e){return this.x=e._x,this.y=e._y,this.z=e._z,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this}randomDirection(){let e=Math.random()*Math.PI*2,t=Math.random()*2-1,n=Math.sqrt(1-t*t);return this.x=n*Math.cos(e),this.y=t,this.z=n*Math.sin(e),this}abs(){return this.x=Math.abs(this.x),this.y=Math.abs(this.y),this.z=Math.abs(this.z),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z}},Ie=new B,Le=new z,Re=2e3,ze=2001,V=class e{constructor(t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g){this.isMatrix4=!0,e.prototype.isMatrix4=!0,this.elements=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],t!==void 0&&this.set(t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g)}extractPosition(e){return console.warn(`THREE.Matrix4: .extractPosition() has been renamed to .copyPosition().`),this.copyPosition(e)}multiplyToArray(e,t,n){return console.error(`THREE.Matrix4: .multiplyToArray() has been removed.`),this}setRotationFromQuaternion(e){return this.makeRotationFromQuaternion(e)}set(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){let g=this.elements;return g[0]=e,g[4]=t,g[8]=n,g[12]=r,g[1]=i,g[5]=a,g[9]=o,g[13]=s,g[2]=c,g[6]=l,g[10]=u,g[14]=d,g[3]=f,g[7]=p,g[11]=m,g[15]=h,this}identity(){return this.set(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1),this}clone(){return new e().fromArray(this.elements)}copy(e){let t=this.elements,n=e.elements;return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],t[9]=n[9],t[10]=n[10],t[11]=n[11],t[12]=n[12],t[13]=n[13],t[14]=n[14],t[15]=n[15],this}copyPosition(e){let t=this.elements,n=e.elements;return t[12]=n[12],t[13]=n[13],t[14]=n[14],this}setFromMatrix3(e){let t=e.elements;return this.set(t[0],t[3],t[6],0,t[1],t[4],t[7],0,t[2],t[5],t[8],0,0,0,0,1),this}extractBasis(e,t,n){return e.setFromMatrixColumn(this,0),t.setFromMatrixColumn(this,1),n.setFromMatrixColumn(this,2),this}makeBasis(e,t,n){return this.set(e.x,t.x,n.x,0,e.y,t.y,n.y,0,e.z,t.z,n.z,0,0,0,0,1),this}extractRotation(e){let t=this.elements,n=e.elements,r=1/Be.setFromMatrixColumn(e,0).length(),i=1/Be.setFromMatrixColumn(e,1).length(),a=1/Be.setFromMatrixColumn(e,2).length();return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=0,t[4]=n[4]*i,t[5]=n[5]*i,t[6]=n[6]*i,t[7]=0,t[8]=n[8]*a,t[9]=n[9]*a,t[10]=n[10]*a,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromEuler(e){let t=this.elements,n=e.x,r=e.y,i=e.z,a=Math.cos(n),o=Math.sin(n),s=Math.cos(r),c=Math.sin(r),l=Math.cos(i),u=Math.sin(i);if(e.order===`XYZ`){let e=a*l,n=a*u,r=o*l,i=o*u;t[0]=s*l,t[4]=-s*u,t[8]=c,t[1]=n+r*c,t[5]=e-i*c,t[9]=-o*s,t[2]=i-e*c,t[6]=r+n*c,t[10]=a*s}else if(e.order===`YXZ`){let e=s*l,n=s*u,r=c*l,i=c*u;t[0]=e+i*o,t[4]=r*o-n,t[8]=a*c,t[1]=a*u,t[5]=a*l,t[9]=-o,t[2]=n*o-r,t[6]=i+e*o,t[10]=a*s}else if(e.order===`ZXY`){let e=s*l,n=s*u,r=c*l,i=c*u;t[0]=e-i*o,t[4]=-a*u,t[8]=r+n*o,t[1]=n+r*o,t[5]=a*l,t[9]=i-e*o,t[2]=-a*c,t[6]=o,t[10]=a*s}else if(e.order===`ZYX`){let e=a*l,n=a*u,r=o*l,i=o*u;t[0]=s*l,t[4]=r*c-n,t[8]=e*c+i,t[1]=s*u,t[5]=i*c+e,t[9]=n*c-r,t[2]=-c,t[6]=o*s,t[10]=a*s}else if(e.order===`YZX`){let e=a*s,n=a*c,r=o*s,i=o*c;t[0]=s*l,t[4]=i-e*u,t[8]=r*u+n,t[1]=u,t[5]=a*l,t[9]=-o*l,t[2]=-c*l,t[6]=n*u+r,t[10]=e-i*u}else if(e.order===`XZY`){let e=a*s,n=a*c,r=o*s,i=o*c;t[0]=s*l,t[4]=-u,t[8]=c*l,t[1]=e*u+i,t[5]=a*l,t[9]=n*u-r,t[2]=r*u-n,t[6]=o*l,t[10]=i*u+e}return t[3]=0,t[7]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,this}makeRotationFromQuaternion(e){return this.compose(Ve,e,He)}lookAt(e,t,n){let r=this.elements;return U.subVectors(e,t),U.lengthSq()===0&&(U.z=1),U.normalize(),Ue.crossVectors(n,U),Ue.lengthSq()===0&&(Math.abs(n.z)===1?U.x+=1e-4:U.z+=1e-4,U.normalize(),Ue.crossVectors(n,U)),Ue.normalize(),We.crossVectors(U,Ue),r[0]=Ue.x,r[4]=We.x,r[8]=U.x,r[1]=Ue.y,r[5]=We.y,r[9]=U.y,r[2]=Ue.z,r[6]=We.z,r[10]=U.z,this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){let n=e.elements,r=t.elements,i=this.elements,a=n[0],o=n[4],s=n[8],c=n[12],l=n[1],u=n[5],d=n[9],f=n[13],p=n[2],m=n[6],h=n[10],g=n[14],_=n[3],v=n[7],y=n[11],b=n[15],x=r[0],S=r[4],C=r[8],w=r[12],T=r[1],E=r[5],D=r[9],O=r[13],k=r[2],A=r[6],j=r[10],M=r[14],N=r[3],P=r[7],F=r[11],I=r[15];return i[0]=a*x+o*T+s*k+c*N,i[4]=a*S+o*E+s*A+c*P,i[8]=a*C+o*D+s*j+c*F,i[12]=a*w+o*O+s*M+c*I,i[1]=l*x+u*T+d*k+f*N,i[5]=l*S+u*E+d*A+f*P,i[9]=l*C+u*D+d*j+f*F,i[13]=l*w+u*O+d*M+f*I,i[2]=p*x+m*T+h*k+g*N,i[6]=p*S+m*E+h*A+g*P,i[10]=p*C+m*D+h*j+g*F,i[14]=p*w+m*O+h*M+g*I,i[3]=_*x+v*T+y*k+b*N,i[7]=_*S+v*E+y*A+b*P,i[11]=_*C+v*D+y*j+b*F,i[15]=_*w+v*O+y*M+b*I,this}multiplyScalar(e){let t=this.elements;return t[0]*=e,t[4]*=e,t[8]*=e,t[12]*=e,t[1]*=e,t[5]*=e,t[9]*=e,t[13]*=e,t[2]*=e,t[6]*=e,t[10]*=e,t[14]*=e,t[3]*=e,t[7]*=e,t[11]*=e,t[15]*=e,this}determinant(){let e=this.elements,t=e[0],n=e[4],r=e[8],i=e[12],a=e[1],o=e[5],s=e[9],c=e[13],l=e[2],u=e[6],d=e[10],f=e[14],p=e[3],m=e[7],h=e[11],g=e[15];return p*(+i*s*u-r*c*u-i*o*d+n*c*d+r*o*f-n*s*f)+m*(+t*s*f-t*c*d+i*a*d-r*a*f+r*c*l-i*s*l)+h*(+t*c*u-t*o*f-i*a*u+n*a*f+i*o*l-n*c*l)+g*(-r*o*l-t*s*u+t*o*d+r*a*u-n*a*d+n*s*l)}transpose(){let e=this.elements,t;return t=e[1],e[1]=e[4],e[4]=t,t=e[2],e[2]=e[8],e[8]=t,t=e[6],e[6]=e[9],e[9]=t,t=e[3],e[3]=e[12],e[12]=t,t=e[7],e[7]=e[13],e[13]=t,t=e[11],e[11]=e[14],e[14]=t,this}setPosition(e,t,n){let r=this.elements;return e.isVector3?(r[12]=e.x,r[13]=e.y,r[14]=e.z):(r[12]=e,r[13]=t,r[14]=n),this}invert(){let e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=e[9],d=e[10],f=e[11],p=e[12],m=e[13],h=e[14],g=e[15],_=u*h*c-m*d*c+m*s*f-o*h*f-u*s*g+o*d*g,v=p*d*c-l*h*c-p*s*f+a*h*f+l*s*g-a*d*g,y=l*m*c-p*u*c+p*o*f-a*m*f-l*o*g+a*u*g,b=p*u*s-l*m*s-p*o*d+a*m*d+l*o*h-a*u*h,x=t*_+n*v+r*y+i*b;if(x===0)return this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);let S=1/x;return e[0]=_*S,e[1]=(m*d*i-u*h*i-m*r*f+n*h*f+u*r*g-n*d*g)*S,e[2]=(o*h*i-m*s*i+m*r*c-n*h*c-o*r*g+n*s*g)*S,e[3]=(u*s*i-o*d*i-u*r*c+n*d*c+o*r*f-n*s*f)*S,e[4]=v*S,e[5]=(l*h*i-p*d*i+p*r*f-t*h*f-l*r*g+t*d*g)*S,e[6]=(p*s*i-a*h*i-p*r*c+t*h*c+a*r*g-t*s*g)*S,e[7]=(a*d*i-l*s*i+l*r*c-t*d*c-a*r*f+t*s*f)*S,e[8]=y*S,e[9]=(p*u*i-l*m*i-p*n*f+t*m*f+l*n*g-t*u*g)*S,e[10]=(a*m*i-p*o*i+p*n*c-t*m*c-a*n*g+t*o*g)*S,e[11]=(l*o*i-a*u*i-l*n*c+t*u*c+a*n*f-t*o*f)*S,e[12]=b*S,e[13]=(l*m*r-p*u*r+p*n*d-t*m*d-l*n*h+t*u*h)*S,e[14]=(p*o*r-a*m*r-p*n*s+t*m*s+a*n*h-t*o*h)*S,e[15]=(a*u*r-l*o*r+l*n*s-t*u*s-a*n*d+t*o*d)*S,this}scale(e){let t=this.elements,n=e.x,r=e.y,i=e.z;return t[0]*=n,t[4]*=r,t[8]*=i,t[1]*=n,t[5]*=r,t[9]*=i,t[2]*=n,t[6]*=r,t[10]*=i,t[3]*=n,t[7]*=r,t[11]*=i,this}getMaxScaleOnAxis(){let e=this.elements,t=e[0]*e[0]+e[1]*e[1]+e[2]*e[2],n=e[4]*e[4]+e[5]*e[5]+e[6]*e[6],r=e[8]*e[8]+e[9]*e[9]+e[10]*e[10];return Math.sqrt(Math.max(t,n,r))}makeTranslation(e,t,n){return e.isVector3?this.set(1,0,0,e.x,0,1,0,e.y,0,0,1,e.z,0,0,0,1):this.set(1,0,0,e,0,1,0,t,0,0,1,n,0,0,0,1),this}makeRotationX(e){let t=Math.cos(e),n=Math.sin(e);return this.set(1,0,0,0,0,t,-n,0,0,n,t,0,0,0,0,1),this}makeRotationY(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,0,n,0,0,1,0,0,-n,0,t,0,0,0,0,1),this}makeRotationZ(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,0,n,t,0,0,0,0,1,0,0,0,0,1),this}makeRotationAxis(e,t){let n=Math.cos(t),r=Math.sin(t),i=1-n,a=e.x,o=e.y,s=e.z,c=i*a,l=i*o;return this.set(c*a+n,c*o-r*s,c*s+r*o,0,c*o+r*s,l*o+n,l*s-r*a,0,c*s-r*o,l*s+r*a,i*s*s+n,0,0,0,0,1),this}makeScale(e,t,n){return this.set(e,0,0,0,0,t,0,0,0,0,n,0,0,0,0,1),this}makeShear(e,t,n,r,i,a){return this.set(1,n,i,0,e,1,a,0,t,r,1,0,0,0,0,1),this}compose(e,t,n){let r=this.elements,i=t._x,a=t._y,o=t._z,s=t._w,c=i+i,l=a+a,u=o+o,d=i*c,f=i*l,p=i*u,m=a*l,h=a*u,g=o*u,_=s*c,v=s*l,y=s*u,b=n.x,x=n.y,S=n.z;return r[0]=(1-(m+g))*b,r[1]=(f+y)*b,r[2]=(p-v)*b,r[3]=0,r[4]=(f-y)*x,r[5]=(1-(d+g))*x,r[6]=(h+_)*x,r[7]=0,r[8]=(p+v)*S,r[9]=(h-_)*S,r[10]=(1-(d+m))*S,r[11]=0,r[12]=e.x,r[13]=e.y,r[14]=e.z,r[15]=1,this}decompose(e,t,n){let r=this.elements,i=Be.set(r[0],r[1],r[2]).length(),a=Be.set(r[4],r[5],r[6]).length(),o=Be.set(r[8],r[9],r[10]).length();this.determinant()<0&&(i=-i),e.x=r[12],e.y=r[13],e.z=r[14],H.copy(this);let s=1/i,c=1/a,l=1/o;return H.elements[0]*=s,H.elements[1]*=s,H.elements[2]*=s,H.elements[4]*=c,H.elements[5]*=c,H.elements[6]*=c,H.elements[8]*=l,H.elements[9]*=l,H.elements[10]*=l,t.setFromRotationMatrix(H),n.x=i,n.y=a,n.z=o,this}makePerspective(e,t,n,r,i,a,o=Re){let s=this.elements,c=2*i/(t-e),l=2*i/(n-r),u=(t+e)/(t-e),d=(n+r)/(n-r),f,p;if(o===2e3)f=-(a+i)/(a-i),p=-2*a*i/(a-i);else if(o===2001)f=-a/(a-i),p=-a*i/(a-i);else throw Error(`Matrix4.makePerspective(): Invalid coordinate system: `+o);return s[0]=c,s[4]=0,s[8]=u,s[12]=0,s[1]=0,s[5]=l,s[9]=d,s[13]=0,s[2]=0,s[6]=0,s[10]=f,s[14]=p,s[3]=0,s[7]=0,s[11]=-1,s[15]=0,this}makeOrthographic(e,t,n,r,i,a,o=Re){let s=this.elements,c=1/(t-e),l=1/(n-r),u=1/(a-i),d=(t+e)*c,f=(n+r)*l,p,m;if(o===2e3)p=(a+i)*u,m=-2*u;else if(o===2001)p=i*u,m=-1*u;else throw Error(`../math.Matrix4.makeOrthographic(): Invalid coordinate system: `+o);return s[0]=2*c,s[4]=0,s[8]=0,s[12]=-d,s[1]=0,s[5]=2*l,s[9]=0,s[13]=-f,s[2]=0,s[6]=0,s[10]=m,s[14]=-p,s[3]=0,s[7]=0,s[11]=0,s[15]=1,this}equals(e){let t=this.elements,n=e.elements;for(let e=0;e<16;e++)if(t[e]!==n[e])return!1;return!0}fromArray(e,t=0){for(let n=0;n<16;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){let n=this.elements;return e[t]=n[0],e[t+1]=n[1],e[t+2]=n[2],e[t+3]=n[3],e[t+4]=n[4],e[t+5]=n[5],e[t+6]=n[6],e[t+7]=n[7],e[t+8]=n[8],e[t+9]=n[9],e[t+10]=n[10],e[t+11]=n[11],e[t+12]=n[12],e[t+13]=n[13],e[t+14]=n[14],e[t+15]=n[15],e}},Be=new B,H=new V,Ve=new B(0,0,0),He=new B(1,1,1),Ue=new B,We=new B,U=new B,Ge=new V,Ke=new z,qe=class e{constructor(t=0,n=0,r=0,i=e.DEFAULT_ORDER){this.isEuler=!0,this._x=t,this._y=n,this._z=r,this._order=i}get x(){return this._x}set x(e){this._x=e,this._onChangeCallback()}get y(){return this._y}set y(e){this._y=e,this._onChangeCallback()}get z(){return this._z}set z(e){this._z=e,this._onChangeCallback()}get order(){return this._order}set order(e){this._order=e,this._onChangeCallback()}set(e,t,n,r=this._order){return this._x=e,this._y=t,this._z=n,this._order=r,this._onChangeCallback(),this}clone(){return new e(this._x,this._y,this._z,this._order)}copy(e){return this._x=e._x,this._y=e._y,this._z=e._z,this._order=e._order,this._onChangeCallback(),this}setFromRotationMatrix(e,t=this._order,n=!0){let r=e.elements,i=r[0],a=r[4],o=r[8],s=r[1],c=r[5],l=r[9],u=r[2],d=r[6],f=r[10];switch(t){case`XYZ`:this._y=Math.asin(R(o,-1,1)),Math.abs(o)<.9999999?(this._x=Math.atan2(-l,f),this._z=Math.atan2(-a,i)):(this._x=Math.atan2(d,c),this._z=0);break;case`YXZ`:this._x=Math.asin(-R(l,-1,1)),Math.abs(l)<.9999999?(this._y=Math.atan2(o,f),this._z=Math.atan2(s,c)):(this._y=Math.atan2(-u,i),this._z=0);break;case`ZXY`:this._x=Math.asin(R(d,-1,1)),Math.abs(d)<.9999999?(this._y=Math.atan2(-u,f),this._z=Math.atan2(-a,c)):(this._y=0,this._z=Math.atan2(s,i));break;case`ZYX`:this._y=Math.asin(-R(u,-1,1)),Math.abs(u)<.9999999?(this._x=Math.atan2(d,f),this._z=Math.atan2(s,i)):(this._x=0,this._z=Math.atan2(-a,c));break;case`YZX`:this._z=Math.asin(R(s,-1,1)),Math.abs(s)<.9999999?(this._x=Math.atan2(-l,c),this._y=Math.atan2(-u,i)):(this._x=0,this._y=Math.atan2(o,f));break;case`XZY`:this._z=Math.asin(-R(a,-1,1)),Math.abs(a)<.9999999?(this._x=Math.atan2(d,c),this._y=Math.atan2(o,i)):(this._x=Math.atan2(-l,f),this._y=0);break;default:console.warn(`../math.Euler: .setFromRotationMatrix() encountered an unknown order: `+t)}return this._order=t,n===!0&&this._onChangeCallback(),this}setFromQuaternion(e,t,n){return Ge.makeRotationFromQuaternion(e),this.setFromRotationMatrix(Ge,t,n)}setFromVector3(e,t=this._order){return this.set(e.x,e.y,e.z,t)}reorder(e){return Ke.setFromEuler(this),this.setFromQuaternion(Ke,e)}equals(e){return e._x===this._x&&e._y===this._y&&e._z===this._z&&e._order===this._order}fromArray(e){return this._x=e[0],this._y=e[1],this._z=e[2],e[3]!==void 0&&(this._order=e[3]),this._onChangeCallback(),this}toArray(e=[],t=0){return e[t]=this._x,e[t+1]=this._y,e[t+2]=this._z,e[t+3]=this._order,e}_onChange(e){return this._onChangeCallback=e,this}_onChangeCallback(e){}*[Symbol.iterator](){yield this._x,yield this._y,yield this._z,yield this._order}};qe.DEFAULT_ORDER=`XYZ`;var Je=class e{constructor(e=0,t=0){this.x=e,this.y=t}get width(){return this.x}set width(e){this.x=e}get height(){return this.y}set height(e){this.y=e}set(e,t){return this.x=e,this.y=t,this}setScalar(e){return this.x=e,this.y=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;default:throw Error(`index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;default:throw Error(`index is out of range: `+e)}}clone(){return new e(this.x,this.y)}copy(e){return this.x=e.x,this.y=e.y,this}add(e){return this.x+=e.x,this.y+=e.y,this}addScalar(e){return this.x+=e,this.y+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this}subScalar(e){return this.x-=e,this.y-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}multiplyScalar(e){return this.x*=e,this.y*=e,this}divide(e){return this.x/=e.x,this.y/=e.y,this}divideScalar(e){return this.multiplyScalar(1/e)}applyMatrix3(e){let t=this.x,n=this.y,r=e.elements;return this.x=r[0]*t+r[3]*n+r[6],this.y=r[1]*t+r[4]*n+r[7],this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this}clamp(e,t){return this.x=Math.max(e.x,Math.min(t.x,this.x)),this.y=Math.max(e.y,Math.min(t.y,this.y)),this}clampScalar(e,t){return this.x=Math.max(e,Math.min(t,this.x)),this.y=Math.max(e,Math.min(t,this.y)),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(e,Math.min(t,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this}negate(){return this.x=-this.x,this.y=-this.y,this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.x}lengthSq(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.x*this.x+this.y*this.y)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)}normalize(){return this.divideScalar(this.length()||1)}angle(){return Math.atan2(-this.y,-this.x)+Math.PI}angleTo(e){let t=Math.sqrt(this.lengthSq()*e.lengthSq());if(t===0)return Math.PI/2;let n=this.dot(e)/t;return Math.acos(R(n,-1,1))}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){let t=this.x-e.x,n=this.y-e.y;return t*t+n*n}manhattanDistanceTo(e){return Math.abs(this.x-e.x)+Math.abs(this.y-e.y)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this}equals(e){return e.x===this.x&&e.y===this.y}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e}rotateAround(e,t){let n=Math.cos(t),r=Math.sin(t),i=this.x-e.x,a=this.y-e.y;return this.x=i*n-a*r+e.x,this.y=i*r+a*n+e.y,this}random(){return this.x=Math.random(),this.y=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y}};Je.isVector2=!0;var W=class e{constructor(t=0,n=0,r=0,i=1){e.prototype.isVector4=!0,this.x=t,this.y=n,this.z=r,this.w=i}get width(){return this.z}set width(e){this.z=e}get height(){return this.w}set height(e){this.w=e}set(e,t,n,r){return this.x=e,this.y=t,this.z=n,this.w=r,this}setScalar(e){return this.x=e,this.y=e,this.z=e,this.w=e,this}setX(e){return this.x=e,this}setY(e){return this.y=e,this}setZ(e){return this.z=e,this}setW(e){return this.w=e,this}setComponent(e,t){switch(e){case 0:this.x=t;break;case 1:this.y=t;break;case 2:this.z=t;break;case 3:this.w=t;break;default:throw Error(`index is out of range: `+e)}return this}getComponent(e){switch(e){case 0:return this.x;case 1:return this.y;case 2:return this.z;case 3:return this.w;default:throw Error(`index is out of range: `+e)}}clone(){return new e(this.x,this.y,this.z,this.w)}copy(e){return this.x=e.x,this.y=e.y,this.z=e.z,this.w=e.w,this}add(e){return this.x+=e.x,this.y+=e.y,this.z+=e.z,this.w+=e.w,this}addScalar(e){return this.x+=e,this.y+=e,this.z+=e,this.w+=e,this}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this.z=e.z+t.z,this.w=e.w+t.w,this}addScaledVector(e,t){return this.x+=e.x*t,this.y+=e.y*t,this.z+=e.z*t,this.w+=e.w*t,this}sub(e){return this.x-=e.x,this.y-=e.y,this.z-=e.z,this.w-=e.w,this}subScalar(e){return this.x-=e,this.y-=e,this.z-=e,this.w-=e,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this.z=e.z-t.z,this.w=e.w-t.w,this}multiply(e){return this.x*=e.x,this.y*=e.y,this.z*=e.z,this.w*=e.w,this}multiplyScalar(e){return this.x*=e,this.y*=e,this.z*=e,this.w*=e,this}applyMatrix4(e){let t=this.x,n=this.y,r=this.z,i=this.w,a=e.elements;return this.x=a[0]*t+a[4]*n+a[8]*r+a[12]*i,this.y=a[1]*t+a[5]*n+a[9]*r+a[13]*i,this.z=a[2]*t+a[6]*n+a[10]*r+a[14]*i,this.w=a[3]*t+a[7]*n+a[11]*r+a[15]*i,this}divideScalar(e){return this.multiplyScalar(1/e)}setAxisAngleFromQuaternion(e){this.w=2*Math.acos(e.w);let t=Math.sqrt(1-e.w*e.w);return t<1e-4?(this.x=1,this.y=0,this.z=0):(this.x=e.x/t,this.y=e.y/t,this.z=e.z/t),this}setAxisAngleFromRotationMatrix(e){let t,n,r,i,a=.01,o=.1,s=e.elements,c=s[0],l=s[4],u=s[8],d=s[1],f=s[5],p=s[9],m=s[2],h=s[6],g=s[10];if(Math.abs(l-d)<a&&Math.abs(u-m)<a&&Math.abs(p-h)<a){if(Math.abs(l+d)<o&&Math.abs(u+m)<o&&Math.abs(p+h)<o&&Math.abs(c+f+g-3)<o)return this.set(1,0,0,0),this;t=Math.PI;let e=(c+1)/2,s=(f+1)/2,_=(g+1)/2,v=(l+d)/4,y=(u+m)/4,b=(p+h)/4;return e>s&&e>_?e<a?(n=0,r=.707106781,i=.707106781):(n=Math.sqrt(e),r=v/n,i=y/n):s>_?s<a?(n=.707106781,r=0,i=.707106781):(r=Math.sqrt(s),n=v/r,i=b/r):_<a?(n=.707106781,r=.707106781,i=0):(i=Math.sqrt(_),n=y/i,r=b/i),this.set(n,r,i,t),this}let _=Math.sqrt((h-p)*(h-p)+(u-m)*(u-m)+(d-l)*(d-l));return Math.abs(_)<.001&&(_=1),this.x=(h-p)/_,this.y=(u-m)/_,this.z=(d-l)/_,this.w=Math.acos((c+f+g-1)/2),this}min(e){return this.x=Math.min(this.x,e.x),this.y=Math.min(this.y,e.y),this.z=Math.min(this.z,e.z),this.w=Math.min(this.w,e.w),this}max(e){return this.x=Math.max(this.x,e.x),this.y=Math.max(this.y,e.y),this.z=Math.max(this.z,e.z),this.w=Math.max(this.w,e.w),this}clamp(e,t){return this.x=Math.max(e.x,Math.min(t.x,this.x)),this.y=Math.max(e.y,Math.min(t.y,this.y)),this.z=Math.max(e.z,Math.min(t.z,this.z)),this.w=Math.max(e.w,Math.min(t.w,this.w)),this}clampScalar(e,t){return this.x=Math.max(e,Math.min(t,this.x)),this.y=Math.max(e,Math.min(t,this.y)),this.z=Math.max(e,Math.min(t,this.z)),this.w=Math.max(e,Math.min(t,this.w)),this}clampLength(e,t){let n=this.length();return this.divideScalar(n||1).multiplyScalar(Math.max(e,Math.min(t,n)))}floor(){return this.x=Math.floor(this.x),this.y=Math.floor(this.y),this.z=Math.floor(this.z),this.w=Math.floor(this.w),this}ceil(){return this.x=Math.ceil(this.x),this.y=Math.ceil(this.y),this.z=Math.ceil(this.z),this.w=Math.ceil(this.w),this}round(){return this.x=Math.round(this.x),this.y=Math.round(this.y),this.z=Math.round(this.z),this.w=Math.round(this.w),this}roundToZero(){return this.x=Math.trunc(this.x),this.y=Math.trunc(this.y),this.z=Math.trunc(this.z),this.w=Math.trunc(this.w),this}negate(){return this.x=-this.x,this.y=-this.y,this.z=-this.z,this.w=-this.w,this}dot(e){return this.x*e.x+this.y*e.y+this.z*e.z+this.w*e.w}lengthSq(){return this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w}length(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w)}manhattanLength(){return Math.abs(this.x)+Math.abs(this.y)+Math.abs(this.z)+Math.abs(this.w)}normalize(){return this.divideScalar(this.length()||1)}setLength(e){return this.normalize().multiplyScalar(e)}lerp(e,t){return this.x+=(e.x-this.x)*t,this.y+=(e.y-this.y)*t,this.z+=(e.z-this.z)*t,this.w+=(e.w-this.w)*t,this}lerpVectors(e,t,n){return this.x=e.x+(t.x-e.x)*n,this.y=e.y+(t.y-e.y)*n,this.z=e.z+(t.z-e.z)*n,this.w=e.w+(t.w-e.w)*n,this}equals(e){return e.x===this.x&&e.y===this.y&&e.z===this.z&&e.w===this.w}fromArray(e,t=0){return this.x=e[t],this.y=e[t+1],this.z=e[t+2],this.w=e[t+3],this}toArray(e=[],t=0){return e[t]=this.x,e[t+1]=this.y,e[t+2]=this.z,e[t+3]=this.w,e}random(){return this.x=Math.random(),this.y=Math.random(),this.z=Math.random(),this.w=Math.random(),this}*[Symbol.iterator](){yield this.x,yield this.y,yield this.z,yield this.w}},Ye=class e{constructor(t,n,r,i,a,o,s,c,l){e.prototype.isMatrix3=!0,this.elements=[1,0,0,0,1,0,0,0,1],t!==void 0&&this.set(t,n,r,i,a,o,s,c,l)}set(e,t,n,r,i,a,o,s,c){let l=this.elements;return l[0]=e,l[1]=r,l[2]=o,l[3]=t,l[4]=i,l[5]=s,l[6]=n,l[7]=a,l[8]=c,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){let t=this.elements,n=e.elements;return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t[6]=n[6],t[7]=n[7],t[8]=n[8],this}extractBasis(e,t,n){return e.setFromMatrix3Column(this,0),t.setFromMatrix3Column(this,1),n.setFromMatrix3Column(this,2),this}setFromMatrix4(e){let t=e.elements;return this.set(t[0],t[4],t[8],t[1],t[5],t[9],t[2],t[6],t[10]),this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){let n=e.elements,r=t.elements,i=this.elements,a=n[0],o=n[3],s=n[6],c=n[1],l=n[4],u=n[7],d=n[2],f=n[5],p=n[8],m=r[0],h=r[3],g=r[6],_=r[1],v=r[4],y=r[7],b=r[2],x=r[5],S=r[8];return i[0]=a*m+o*_+s*b,i[3]=a*h+o*v+s*x,i[6]=a*g+o*y+s*S,i[1]=c*m+l*_+u*b,i[4]=c*h+l*v+u*x,i[7]=c*g+l*y+u*S,i[2]=d*m+f*_+p*b,i[5]=d*h+f*v+p*x,i[8]=d*g+f*y+p*S,this}multiplyScalar(e){let t=this.elements;return t[0]*=e,t[3]*=e,t[6]*=e,t[1]*=e,t[4]*=e,t[7]*=e,t[2]*=e,t[5]*=e,t[8]*=e,this}determinant(){let e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8];return t*a*l-t*o*c-n*i*l+n*o*s+r*i*c-r*a*s}invert(){let e=this.elements,t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=l*a-o*c,d=o*s-l*i,f=c*i-a*s,p=t*u+n*d+r*f;if(p===0)return this.set(0,0,0,0,0,0,0,0,0);let m=1/p;return e[0]=u*m,e[1]=(r*c-l*n)*m,e[2]=(o*n-r*a)*m,e[3]=d*m,e[4]=(l*t-r*s)*m,e[5]=(r*i-o*t)*m,e[6]=f*m,e[7]=(n*s-c*t)*m,e[8]=(a*t-n*i)*m,this}transpose(){let e,t=this.elements;return e=t[1],t[1]=t[3],t[3]=e,e=t[2],t[2]=t[6],t[6]=e,e=t[5],t[5]=t[7],t[7]=e,this}getNormalMatrix(e){return this.setFromMatrix4(e).invert().transpose()}transposeIntoArray(e){let t=this.elements;return e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8],this}setUvTransform(e,t,n,r,i,a,o){let s=Math.cos(i),c=Math.sin(i);return this.set(n*s,n*c,-n*(s*a+c*o)+a+e,-r*c,r*s,-r*(-c*a+s*o)+o+t,0,0,1),this}scale(e,t){return this.premultiply(Xe.makeScale(e,t)),this}rotate(e){return this.premultiply(Xe.makeRotation(-e)),this}translate(e,t){return this.premultiply(Xe.makeTranslation(e,t)),this}makeTranslation(e,t){return e.isVector2?this.set(1,0,e.x,0,1,e.y,0,0,1):this.set(1,0,e,0,1,t,0,0,1),this}makeRotation(e){let t=Math.cos(e),n=Math.sin(e);return this.set(t,-n,0,n,t,0,0,0,1),this}makeScale(e,t){return this.set(e,0,0,0,t,0,0,0,1),this}equals(e){let t=this.elements,n=e.elements;for(let e=0;e<9;e++)if(t[e]!==n[e])return!1;return!0}fromArray(e,t=0){for(let n=0;n<9;n++)this.elements[n]=e[n+t];return this}toArray(e=[],t=0){let n=this.elements;return e[t]=n[0],e[t+1]=n[1],e[t+2]=n[2],e[t+3]=n[3],e[t+4]=n[4],e[t+5]=n[5],e[t+6]=n[6],e[t+7]=n[7],e[t+8]=n[8],e}clone(){return new e().fromArray(this.elements)}},Xe=new Ye,G;(function(e){e[e.Random=0]=`Random`,e[e.Loop=1]=`Loop`,e[e.PingPong=2]=`PingPong`,e[e.Burst=3]=`Burst`})(G||={});function Ze(e,t,n,r){let i;switch(G.Random===e?t=Math.random():G.Burst===e&&r.isBursting&&(t=r.burstParticleIndex/r.burstParticleCount),i=n>0?Math.floor(t/n)*n:t,e){case G.Loop:i%=1;break;case G.PingPong:i=Math.abs(i%2-1)}return i}var Qe=class e{constructor(e,t,n,r){this.p=[e,t,n,r]}genValue(e){let t=e*e,n=e*e*e,r=1-e,i=r*r,a=i*r;return this.p[0]*a+this.p[1]*i*e*3+this.p[2]*r*t*3+this.p[3]*n}derivativeCoefficients(e){let t=[];for(let n=e,r=n.length-1;r>0;r--){let e=[];for(let t=0;t<r;t++){let i=r*(n[t+1]-n[t]);e.push(i)}t.push(e),n=e}return t}getSlope(e){let t=this.derivativeCoefficients(this.p)[0],n=1-e,r=n*n,i=n*e*2,a=e*e;return r*t[0]+i*t[1]+a*t[2]}controlCurve(e,t){this.p[1]=e/3+this.p[0],this.p[2]=this.p[3]-t/3}hull(e){let t=this.p,n=[],r,i=0,a=0,o=0,s=[];for(s[i++]=t[0],s[i++]=t[1],s[i++]=t[2],s[i++]=t[3];t.length>1;){for(n=[],a=0,o=t.length-1;a<o;a++)r=e*t[a]+(1-e)*t[a+1],s[i++]=r,n.push(r);t=n}return s}split(t){let n=this.hull(t);return{left:new e(n[0],n[4],n[7],n[9]),right:new e(n[9],n[8],n[6],n[3]),span:n}}clone(){return new e(this.p[0],this.p[1],this.p[2],this.p[3])}toJSON(){return{p0:this.p[0],p1:this.p[1],p2:this.p[2],p3:this.p[3]}}static fromJSON(t){return new e(t.p0,t.p1,t.p2,t.p3)}},$e=e=>({r:e.x,g:e.y,b:e.z,a:e.w}),et=e=>new W(e.r,e.g,e.b,e.a),tt=(e,t)=>{switch(t){case`Vector3`:return new B(e.x,e.y,e.z);case`Vector4`:return new W(e.x,e.y,e.z,e.w);case`Color`:return new B(e.r,e.g,e.b);case`Number`:return e;default:return e}},nt=(e,t)=>{switch(t){case`Vector3`:return{x:e.x,y:e.y,z:e.z};case`Vector4`:return{x:e.x,y:e.y,z:e.z,w:e.w};case`Color`:return{r:e.x,g:e.y,b:e.z};case`Number`:return e;default:return e}},rt=class e{constructor(e,t){this.a=e,this.b=t,this.type=`value`}startGen(e){}genColor(e,t){let n=Math.random();return t.copy(this.a).lerp(this.b,n)}toJSON(){return{type:`RandomColor`,a:$e(this.a),b:$e(this.b)}}static fromJSON(t){return new e(et(t.a),et(t.b))}clone(){return new e(this.a.clone(),this.b.clone())}},it=class e{constructor(e,t){this.a=e,this.b=t,this.indexCount=-1,this.type=`value`}startGen(e){this.indexCount=e.length,e.push(Math.random())}genColor(e,t){return this.indexCount===-1&&this.startGen(e),t.copy(this.a).lerp(this.b,e[this.indexCount])}toJSON(){return{type:`ColorRange`,a:$e(this.a),b:$e(this.b)}}static fromJSON(t){return new e(et(t.a),et(t.b))}clone(){return new e(this.a.clone(),this.b.clone())}},at=class e{constructor(e,t){this.subType=t,this.type=`function`,this.keys=e}findKey(e){let t=0,n=0,r=this.keys.length-1;for(;n+1<r;)if(t=Math.floor((n+r)/2),e<this.getStartX(t))r=t-1;else if(e>this.getEndX(t))n=t+1;else return t;for(let t=n;t<=r;t++)if(e>=this.getStartX(t)&&e<=this.getEndX(t))return t;return-1}getStartX(e){return this.keys[e][1]}getEndX(e){return e+1<this.keys.length?this.keys[e+1][1]:1}genValue(e,t){let n=this.findKey(t);return this.subType===`Number`?n===-1?this.keys[0][0]:n+1>=this.keys.length?this.keys[this.keys.length-1][0]:(this.keys[n+1][0]-this.keys[n][0])*((t-this.getStartX(n))/(this.getEndX(n)-this.getStartX(n)))+this.keys[n][0]:n===-1?e.copy(this.keys[0][0]):n+1>=this.keys.length?e.copy(this.keys[this.keys.length-1][0]):e.copy(this.keys[n][0]).lerp(this.keys[n+1][0],(t-this.getStartX(n))/(this.getEndX(n)-this.getStartX(n)))}toJSON(){return this.keys[0][0].constructor.name,{type:`CLinearFunction`,subType:this.subType,keys:this.keys.map(([e,t])=>({value:nt(e,this.subType),pos:t}))}}static fromJSON(t){return new e(t.keys.map(e=>[tt(e.value,t.subType),e.pos]),t.subType)}clone(){return this.subType===`Number`?new e(this.keys.map(([e,t])=>[e,t]),this.subType):new e(this.keys.map(([e,t])=>[e.clone(),t]),this.subType)}},ot=new B,st=class e{constructor(e=[[new B(0,0,0),0],[new B(1,1,1),0]],t=[[1,0],[1,1]]){this.type=`function`,this.color=new at(e,`Color`),this.alpha=new at(t,`Number`)}genColor(e,t,n){return this.color.genValue(ot,n),t.set(ot.x,ot.y,ot.z,this.alpha.genValue(1,n))}toJSON(){return{type:`Gradient`,color:this.color.toJSON(),alpha:this.alpha.toJSON()}}static fromJSON(t){if(t.functions){let n=t.functions.map(e=>[it.fromJSON(e.function).a,e.start]);return t.functions.length>0&&n.push([it.fromJSON(t.functions[t.functions.length-1].function).b,1]),new e(n.map(e=>[new B(e[0].x,e[0].y,e[0].z),e[1]]),n.map(e=>[e[0].w,e[1]]))}{let n=new e;return n.alpha=at.fromJSON(t.alpha),n.color=at.fromJSON(t.color),n}}clone(){let t=new e;return t.alpha=this.alpha.clone(),t.color=this.color.clone(),t}startGen(e){}},ct=new W,lt=class e{constructor(e,t){this.indexCount=0,this.type=`function`,this.gradient1=e,this.gradient2=t}startGen(e){this.indexCount=e.length,e.push(Math.random())}genColor(e,t,n){return this.gradient1.genColor(e,t,n),this.gradient2.genColor(e,ct,n),e&&e[this.indexCount]!==void 0?t.lerp(ct,e[this.indexCount]):t.lerp(ct,Math.random()),t}toJSON(){return{type:`RandomColorBetweenGradient`,gradient1:this.gradient1.toJSON(),gradient2:this.gradient2.toJSON()}}static fromJSON(t){return new e(st.fromJSON(t.gradient1),st.fromJSON(t.gradient2))}clone(){return new e(this.gradient1.clone(),this.gradient2.clone())}},ut=class e{constructor(e){this.color=e,this.type=`value`}startGen(e){}genColor(e,t){return t.copy(this.color)}toJSON(){return{type:`ConstantColor`,color:$e(this.color)}}static fromJSON(t){return new e(et(t.color))}clone(){return new e(this.color.clone())}};function dt(e){switch(e.type){case`ConstantColor`:return ut.fromJSON(e);case`ColorRange`:return it.fromJSON(e);case`RandomColor`:return rt.fromJSON(e);case`Gradient`:return st.fromJSON(e);case`RandomColorBetweenGradient`:return lt.fromJSON(e);default:return new ut(new W(1,1,1,1))}}var K=class e{constructor(e){this.value=e,this.type=`value`}startGen(e){}genValue(e){return this.value}toJSON(){return{type:`ConstantValue`,value:this.value}}static fromJSON(t){return new e(t.value)}clone(){return new e(this.value)}},ft=class e{constructor(e,t){this.a=e,this.b=t,this.indexCount=-1,this.type=`value`}startGen(e){this.indexCount=e.length,e.push(Math.random())}genValue(e){return this.indexCount===-1&&this.startGen(e),Fe.lerp(this.a,this.b,e[this.indexCount])}toJSON(){return{type:`IntervalValue`,a:this.a,b:this.b}}static fromJSON(t){return new e(t.a,t.b)}clone(){return new e(this.a,this.b)}},pt=class{constructor(){this.functions=[]}findFunction(e){let t=0,n=0,r=this.functions.length-1;for(;n+1<r;)if(t=Math.floor((n+r)/2),e<this.getStartX(t))r=t-1;else if(e>this.getEndX(t))n=t+1;else return t;for(let t=n;t<=r;t++)if(e>=this.functions[t][1]&&e<=this.getEndX(t))return t;return-1}getStartX(e){return this.functions[e][1]}setStartX(e,t){e>0&&(this.functions[e][1]=t)}getEndX(e){return e+1<this.functions.length?this.functions[e+1][1]:1}setEndX(e,t){e+1<this.functions.length&&(this.functions[e+1][1]=t)}insertFunction(e,t){let n=this.findFunction(e);this.functions.splice(n+1,0,[t,e])}removeFunction(e){return this.functions.splice(e,1)[0][0]}getFunction(e){return this.functions[e][0]}setFunction(e,t){this.functions[e][0]=t}get numOfFunctions(){return this.functions.length}},mt=class e extends pt{constructor(e=[[new Qe(0,1/3,1/3*2,1),0]]){super(),this.type=`function`,this.functions=e}genValue(e,t=0){let n=this.findFunction(t);return n===-1?0:this.functions[n][0].genValue((t-this.getStartX(n))/(this.getEndX(n)-this.getStartX(n)))}toSVG(e,t){if(t<1)return``;let n=[`M`,0,this.functions[0][0].p[0]].join(` `);for(let r=1/t;r<=1;r+=1/t)n=[n,`L`,r*e,this.genValue(void 0,r)].join(` `);return n}toJSON(){return{type:`PiecewiseBezier`,functions:this.functions.map(([e,t])=>({function:e.toJSON(),start:t}))}}static fromJSON(t){return new e(t.functions.map(e=>[Qe.fromJSON(e.function),e.start]))}clone(){return new e(this.functions.map(([e,t])=>[e.clone(),t]))}startGen(e){}};function q(e){switch(e.type){case`ConstantValue`:return K.fromJSON(e);case`IntervalValue`:return ft.fromJSON(e);case`PiecewiseBezier`:return mt.fromJSON(e);default:return new K(0)}}var ht=class e{constructor(){this.indexCount=0,this.type=`rotation`}startGen(e){this.indexCount=e.length,e.push(new z);let t,n,r,i,a,o;do t=Math.random()*2-1,n=Math.random()*2-1,r=t*t+n*n;while(r>1);do i=Math.random()*2-1,a=Math.random()*2-1,o=i*i+a*a;while(o>1);let s=Math.sqrt((1-r)/o);e[this.indexCount].set(t,n,s*i,s*a)}genValue(e,t,n,r){return this.indexCount===-1&&this.startGen(e),t.copy(e[this.indexCount]),t}toJSON(){return{type:`RandomQuat`}}static fromJSON(t){return new e}clone(){return new e}},gt=class e{constructor(e,t){this.axis=e,this.angle=t,this.type=`rotation`}startGen(e){this.angle.startGen(e)}genValue(e,t,n,r){return t.setFromAxisAngle(this.axis,this.angle.genValue(e,r)*n)}toJSON(){return{type:`AxisAngle`,axis:{x:this.axis.x,y:this.axis.y,z:this.axis.z},angle:this.angle.toJSON()}}static fromJSON(t){return new e(new B(t.axis.x,t.axis.y,t.axis.z),q(t.angle))}clone(){return new e(this.axis.clone(),this.angle.clone())}},_t=class e{constructor(e,t,n,r){this.angleX=e,this.angleY=t,this.angleZ=n,this.type=`rotation`,this.eular=new qe(0,0,0,r)}startGen(e){this.angleX.startGen(e),this.angleY.startGen(e),this.angleZ.startGen(e)}genValue(e,t,n,r){return this.eular.set(this.angleX.genValue(e,r)*n,this.angleY.genValue(e,r)*n,this.angleZ.genValue(e,r)*n),t.setFromEuler(this.eular)}toJSON(){return{type:`Euler`,angleX:this.angleX.toJSON(),angleY:this.angleY.toJSON(),angleZ:this.angleZ.toJSON(),eulerOrder:this.eular.order}}static fromJSON(t){return new e(q(t.angleX),q(t.angleY),q(t.angleZ),t.eulerOrder)}clone(){return new e(this.angleX,this.angleY,this.angleZ,this.eular.order)}};function vt(e){switch(e.type){case`AxisAngle`:return gt.fromJSON(e);case`Euler`:return _t.fromJSON(e);case`RandomQuat`:return ht.fromJSON(e);default:return new ht}}var yt=class e{constructor(e,t,n){this.x=e,this.y=t,this.z=n,this.type=`vec3function`}startGen(e){this.x.startGen(e),this.y.startGen(e),this.z.startGen(e)}genValue(e,t,n){return t.set(this.x.genValue(e,n),this.y.genValue(e,n),this.z.genValue(e,n))}toJSON(){return{type:`Vector3Function`,x:this.x.toJSON(),y:this.y.toJSON(),z:this.z.toJSON()}}static fromJSON(t){return new e(q(t.x),q(t.y),q(t.z))}clone(){return new e(this.x,this.y,this.z)}};function bt(e){switch(e.type){case`Vector3Function`:return yt.fromJSON(e);default:return new yt(new K(0),new K(0),new K(0))}}function xt(e){switch(e.type){case`ConstantValue`:case`IntervalValue`:case`PiecewiseBezier`:return q(e);case`AxisAngle`:case`RandomQuat`:case`Euler`:return vt(e);case`Vector3Function`:return bt(e);default:return new K(0)}}var St=class e{constructor(e={}){this.type=`cone`,this.currentValue=0,this.radius=e.radius??10,this.arc=e.arc??2*Math.PI,this.thickness=e.thickness??1,this.angle=e.angle??Math.PI/6,this.mode=e.mode??G.Random,this.spread=e.spread??0,this.speed=e.speed??new K(1),this.memory=[]}update(e,t){G.Random!=this.mode&&(this.currentValue+=this.speed.genValue(this.memory,e.emissionState.time/e.duration)*t)}initialize(e,t){let n=Ze(this.mode,this.currentValue,this.spread,t),r=Fe.lerp(1-this.thickness,1,Math.random()),i=n*this.arc,a=Math.sqrt(r),o=Math.sin(i),s=Math.cos(i);e.position.x=a*s,e.position.y=a*o,e.position.z=0;let c=this.angle*a;e.velocity.set(0,0,Math.cos(c)).addScaledVector(e.position,Math.sin(c)).multiplyScalar(e.startSpeed),e.position.multiplyScalar(this.radius)}toJSON(){return{type:`cone`,radius:this.radius,arc:this.arc,thickness:this.thickness,angle:this.angle,mode:this.mode,spread:this.spread,speed:this.speed.toJSON()}}static fromJSON(t){return new e({radius:t.radius,arc:t.arc,thickness:t.thickness,angle:t.angle,mode:t.mode,speed:t.speed?q(t.speed):void 0,spread:t.spread})}clone(){return new e({radius:this.radius,arc:this.arc,thickness:this.thickness,angle:this.angle,mode:this.mode,speed:this.speed.clone(),spread:this.spread})}},Ct=class e{constructor(e={}){this.type=`circle`,this.currentValue=0,this.radius=e.radius??10,this.arc=e.arc??2*Math.PI,this.thickness=e.thickness??1,this.mode=e.mode??G.Random,this.spread=e.spread??0,this.speed=e.speed??new K(1),this.memory=[]}update(e,t){this.currentValue+=this.speed.genValue(this.memory,e.emissionState.time/e.duration)*t}initialize(e,t){let n=Ze(this.mode,this.currentValue,this.spread,t),r=Fe.lerp(1-this.thickness,1,Math.random()),i=n*this.arc;e.position.x=Math.cos(i),e.position.y=Math.sin(i),e.position.z=0,e.velocity.copy(e.position).multiplyScalar(e.startSpeed),e.position.multiplyScalar(this.radius*r)}toJSON(){return{type:`circle`,radius:this.radius,arc:this.arc,thickness:this.thickness,mode:this.mode,spread:this.spread,speed:this.speed.toJSON()}}static fromJSON(t){return new e({radius:t.radius,arc:t.arc,thickness:t.thickness,mode:t.mode,speed:t.speed?q(t.speed):void 0,spread:t.spread})}clone(){return new e({radius:this.radius,arc:this.arc,thickness:this.thickness,mode:this.mode,speed:this.speed.clone(),spread:this.spread})}};function wt(e,t){return Math.floor(Math.random()*(t-e))+e}var Tt=new B(0,1,0),Et=new B(0,0,0),Dt=new B(1,1,1),Ot=new B(0,0,1),kt=class e{constructor(e={}){this.type=`donut`,this.currentValue=0,this.radius=e.radius??10,this.arc=e.arc??2*Math.PI,this.thickness=e.thickness??1,this.donutRadius=e.donutRadius??this.radius*.2,this.mode=e.mode??G.Random,this.spread=e.spread??0,this.speed=e.speed??new K(1),this.memory=[],this._m1=new V}update(e,t){G.Random!=this.mode&&(this.currentValue+=this.speed.genValue(this.memory,e.emissionState.time/e.duration)*t)}initialize(e,t){let n=Ze(this.mode,this.currentValue,this.spread,t),r=Math.random(),i=Fe.lerp(1-this.thickness,1,Math.random()),a=n*this.arc,o=r*Math.PI*2,s=Math.sin(a),c=Math.cos(a);if(e.position.x=this.radius*c,e.position.y=this.radius*s,e.position.z=0,e.velocity.z=this.donutRadius*i*Math.sin(o),e.velocity.x=this.donutRadius*i*Math.cos(o)*c,e.velocity.y=this.donutRadius*i*Math.cos(o)*s,e.position.add(e.velocity),e.velocity.normalize().multiplyScalar(e.startSpeed),e.rotation instanceof z){let t=e.rotation;t.x===0&&t.y===0&&t.z===0&&t.w===1&&(this._m1.lookAt(Et,e.velocity,Tt),e.rotation.setFromRotationMatrix(this._m1))}}toJSON(){return{type:`donut`,radius:this.radius,arc:this.arc,thickness:this.thickness,donutRadius:this.donutRadius,mode:this.mode,spread:this.spread,speed:this.speed.toJSON()}}static fromJSON(t){return new e({radius:t.radius,arc:t.arc,thickness:t.thickness,donutRadius:t.donutRadius,mode:t.mode,speed:t.speed?q(t.speed):void 0,spread:t.spread})}clone(){return new e({radius:this.radius,arc:this.arc,thickness:this.thickness,donutRadius:this.donutRadius,mode:this.mode,speed:this.speed.clone(),spread:this.spread})}},At=class e{constructor(){this.type=`point`,this._m1=new V}update(e,t){}initialize(e){let t=Math.random(),n=Math.random(),r=t*Math.PI*2,i=Math.acos(2*n-1),a=Math.cbrt(Math.random()),o=Math.sin(r),s=Math.cos(r),c=Math.sin(i),l=Math.cos(i);if(e.velocity.x=a*c*s,e.velocity.y=a*c*o,e.velocity.z=a*l,e.velocity.multiplyScalar(e.startSpeed),e.position.setScalar(0),e.rotation instanceof z){let t=e.rotation;t.x===0&&t.y===0&&t.z===0&&t.w===1&&(this._m1.lookAt(Et,e.velocity,Tt),e.rotation.setFromRotationMatrix(this._m1))}}toJSON(){return{type:`point`}}static fromJSON(t){return new e}clone(){return new e}},jt=class e{constructor(e={}){this.type=`sphere`,this.currentValue=0,this.radius=e.radius??10,this.arc=e.arc??2*Math.PI,this.thickness=e.thickness??1,this.mode=e.mode??G.Random,this.spread=e.spread??0,this.speed=e.speed??new K(1),this.memory=[],this._m1=new V}update(e,t){G.Random!=this.mode&&(this.currentValue+=this.speed.genValue(this.memory,e.emissionState.time/e.duration)*t)}initialize(e,t){let n=Ze(this.mode,this.currentValue,this.spread,t),r=Math.random(),i=Fe.lerp(1-this.thickness,1,Math.random()),a=n*this.arc,o=Math.acos(2*r-1),s=Math.sin(a),c=Math.cos(a),l=Math.sin(o),u=Math.cos(o);if(e.position.x=l*c,e.position.y=l*s,e.position.z=u,e.velocity.copy(e.position).multiplyScalar(e.startSpeed),e.position.multiplyScalar(this.radius*i),e.rotation instanceof z){let t=e.rotation;t.x===0&&t.y===0&&t.z===0&&t.w===1&&(this._m1.lookAt(Et,e.position,Tt),e.rotation.setFromRotationMatrix(this._m1))}}toJSON(){return{type:`sphere`,radius:this.radius,arc:this.arc,thickness:this.thickness,mode:this.mode,spread:this.spread,speed:this.speed.toJSON()}}static fromJSON(t){return new e({radius:t.radius,arc:t.arc,thickness:t.thickness,mode:t.mode,speed:t.speed?q(t.speed):void 0,spread:t.spread})}clone(){return new e({radius:this.radius,arc:this.arc,thickness:this.thickness,mode:this.mode,speed:this.speed.clone(),spread:this.spread})}},Mt=class e{constructor(e={}){this.type=`hemisphere`,this.currentValue=0,this.radius=e.radius??10,this.arc=e.arc??2*Math.PI,this.thickness=e.thickness??1,this.mode=e.mode??G.Random,this.spread=e.spread??0,this.speed=e.speed??new K(1),this.memory=[],this._m1=new V}update(e,t){G.Random!=this.mode&&(this.currentValue+=this.speed.genValue(this.memory,e.emissionState.time/e.duration)*t)}initialize(e,t){let n=Ze(this.mode,this.currentValue,this.spread,t),r=Math.random(),i=Fe.lerp(1-this.thickness,1,Math.random()),a=n*this.arc,o=Math.acos(r),s=Math.sin(a),c=Math.cos(a),l=Math.sin(o),u=Math.cos(o);if(e.position.x=l*c,e.position.y=l*s,e.position.z=u,e.velocity.copy(e.position).multiplyScalar(e.startSpeed),e.position.multiplyScalar(this.radius*i),e.rotation instanceof z){let t=e.rotation;t.x===0&&t.y===0&&t.z===0&&t.w===1&&(this._m1.lookAt(Et,e.position,Tt),e.rotation.setFromRotationMatrix(this._m1))}}toJSON(){return{type:`hemisphere`,radius:this.radius,arc:this.arc,thickness:this.thickness,mode:this.mode,spread:this.spread,speed:this.speed.toJSON()}}static fromJSON(t){return new e({radius:t.radius,arc:t.arc,thickness:t.thickness,mode:t.mode,speed:t.speed?q(t.speed):void 0,spread:t.spread})}clone(){return new e({radius:this.radius,arc:this.arc,thickness:this.thickness,mode:this.mode,speed:this.speed.clone(),spread:this.spread})}},Nt=class e{constructor(e={}){this.type=`grid`,this.width=e.width??1,this.height=e.height??1,this.column=e.column??10,this.row=e.row??10}initialize(e){let t=Math.floor(Math.random()*this.row),n=Math.floor(Math.random()*this.column);e.position.x=n*this.width/this.column-this.width/2,e.position.y=t*this.height/this.row-this.height/2,e.position.z=0,e.velocity.set(0,0,e.startSpeed)}toJSON(){return{type:`grid`,width:this.width,height:this.height,column:this.column,row:this.row}}static fromJSON(t){return new e(t)}clone(){return new e({width:this.width,height:this.height,column:this.column,row:this.row})}update(e,t){}},Pt=class e{constructor(e={}){this.type=`rectangle`,this.currentValue=0,this.width=e.width??10,this.height=e.height??10,this.thickness=e.thickness??1,this.mode=e.mode??G.Random,this.spread=e.spread??0,this.speed=e.speed??new K(1),this.memory=[],this._m1=new V}update(e,t){this.currentValue+=this.speed.genValue(this.memory,e.emissionState.time/e.duration)*t}initialize(e,t){let n=Ze(this.mode,this.currentValue,this.spread,t)*(2*(this.width+this.height)),r,i;n<this.width?(r=n-this.width/2,i=-this.height/2):n<this.width+this.height?(r=this.width/2,i=n-this.width-this.height/2):n<2*this.width+this.height?(r=this.width/2-(n-this.width-this.height),i=this.height/2):(r=-this.width/2,i=this.height/2-(n-2*this.width-this.height));let a=Math.random(),o=1-this.thickness*a;if(e.position.x=r*o,e.position.y=i*o,e.position.z=0,e.velocity.x=r,e.velocity.y=i,e.velocity.z=0,e.velocity.normalize().multiplyScalar(e.startSpeed),e.rotation instanceof z){let t=e.rotation;t.x===0&&t.y===0&&t.z===0&&t.w===1&&(this._m1.lookAt(Et,e.velocity,Tt),e.rotation.setFromRotationMatrix(this._m1))}}toJSON(){return{type:`rectangle`,width:this.width,height:this.height,thickness:this.thickness,mode:this.mode,spread:this.spread,speed:this.speed.toJSON()}}static fromJSON(t){return new e({width:t.width,height:t.height,thickness:t.thickness,mode:t.mode,speed:t.speed?q(t.speed):void 0,spread:t.spread})}clone(){return new e({width:this.width,height:this.height,thickness:this.thickness,mode:this.mode,speed:this.speed.clone(),spread:this.spread})}},Ft={circle:{type:`circle`,params:[[`radius`,[`number`]],[`arc`,[`radian`]],[`thickness`,[`number`]],[`mode`,[`emitterMode`]],[`spread`,[`number`]],[`speed`,[`valueFunc`,`value`]]],constructor:Ct,loadJSON:Ct.fromJSON},cone:{type:`cone`,params:[[`radius`,[`number`]],[`arc`,[`radian`]],[`thickness`,[`number`]],[`angle`,[`radian`]],[`mode`,[`emitterMode`]],[`spread`,[`number`]],[`speed`,[`valueFunc`,`value`]]],constructor:St,loadJSON:St.fromJSON},donut:{type:`donut`,params:[[`radius`,[`number`]],[`arc`,[`radian`]],[`thickness`,[`number`]],[`donutRadius`,[`number`]],[`mode`,[`emitterMode`]],[`spread`,[`number`]],[`speed`,[`valueFunc`,`value`]]],constructor:kt,loadJSON:kt.fromJSON},point:{type:`point`,params:[],constructor:At,loadJSON:At.fromJSON},sphere:{type:`sphere`,params:[[`radius`,[`number`]],[`arc`,[`radian`]],[`thickness`,[`number`]],[`angle`,[`radian`]],[`mode`,[`emitterMode`]],[`spread`,[`number`]],[`speed`,[`valueFunc`,`value`]]],constructor:jt,loadJSON:jt.fromJSON},hemisphere:{type:`hemisphere`,params:[[`radius`,[`number`]],[`arc`,[`radian`]],[`thickness`,[`number`]],[`angle`,[`radian`]],[`mode`,[`emitterMode`]],[`spread`,[`number`]],[`speed`,[`valueFunc`,`value`]]],constructor:Mt,loadJSON:Mt.fromJSON},grid:{type:`grid`,params:[[`width`,[`number`]],[`height`,[`number`]],[`rows`,[`number`]],[`column`,[`number`]]],constructor:Nt,loadJSON:Nt.fromJSON},rectangle:{type:`rectangle`,params:[[`width`,[`number`]],[`height`,[`number`]],[`thickness`,[`number`]],[`mode`,[`emitterMode`]],[`spread`,[`number`]],[`speed`,[`valueFunc`,`value`]]],constructor:Pt,loadJSON:Pt.fromJSON}};function It(e,t){return Ft[e.type].loadJSON(e,t)}var Lt=class e{constructor(e){this.color=e,this.type=`ColorOverLife`}initialize(e){this.color.startGen(e.memory)}update(e,t){this.color.genColor(e.memory,e.color,e.age/e.life),e.color.x*=e.startColor.x,e.color.y*=e.startColor.y,e.color.z*=e.startColor.z,e.color.w*=e.startColor.w}frameUpdate(e){}toJSON(){return{type:this.type,color:this.color.toJSON()}}static fromJSON(t){return new e(dt(t.color))}clone(){return new e(this.color.clone())}reset(){}},Rt=class e{constructor(e){this.angularVelocity=e,this.type=`RotationOverLife`}initialize(e){typeof e.rotation==`number`&&this.angularVelocity.startGen(e.memory)}update(e,t){typeof e.rotation==`number`&&(e.rotation+=t*this.angularVelocity.genValue(e.memory,e.age/e.life))}toJSON(){return{type:this.type,angularVelocity:this.angularVelocity.toJSON()}}static fromJSON(t){return new e(q(t.angularVelocity))}frameUpdate(e){}clone(){return new e(this.angularVelocity.clone())}reset(){}},zt=class e{constructor(e){this.angularVelocity=e,this.type=`Rotation3DOverLife`,this.tempQuat=new z,this.tempQuat2=new z}initialize(e){e.rotation instanceof z&&(e.angularVelocity=new z,this.angularVelocity.startGen(e.memory))}update(e,t){e.rotation instanceof z&&(this.angularVelocity.genValue(e.memory,this.tempQuat,t,e.age/e.life),e.rotation.multiply(this.tempQuat))}toJSON(){return{type:this.type,angularVelocity:this.angularVelocity.toJSON()}}static fromJSON(t){return new e(vt(t.angularVelocity))}frameUpdate(e){}clone(){return new e(this.angularVelocity.clone())}reset(){}},Bt=class e{initialize(e,t){this.ps=t,this.x.startGen(e.memory),this.y.startGen(e.memory),this.z.startGen(e.memory)}constructor(e,t,n){this.x=e,this.y=t,this.z=n,this.type=`ForceOverLife`,this._temp=new B,this._tempScale=new B,this._tempQ=new z}update(e,t){this._temp.set(this.x.genValue(e.memory,e.age/e.life),this.y.genValue(e.memory,e.age/e.life),this.z.genValue(e.memory,e.age/e.life)),this.ps.worldSpace||this._temp.multiply(this._tempScale).applyQuaternion(this._tempQ),e.velocity.addScaledVector(this._temp,t)}toJSON(){return{type:this.type,x:this.x.toJSON(),y:this.y.toJSON(),z:this.z.toJSON()}}static fromJSON(t){return new e(q(t.x),q(t.y),q(t.z))}frameUpdate(e){if(this.ps&&!this.ps.worldSpace){let e=this._temp,t=this._tempQ,n=this._tempScale;this.ps.emitter.matrixWorld.decompose(e,t,n),t.invert(),n.set(1/n.x,1/n.y,1/n.z)}}clone(){return new e(this.x.clone(),this.y.clone(),this.z.clone())}reset(){}},Vt=class e{initialize(e){this.size.startGen(e.memory)}constructor(e){this.size=e,this.type=`SizeOverLife`}update(e){this.size instanceof yt?this.size.genValue(e.memory,e.size,e.age/e.life).multiply(e.startSize):e.size.copy(e.startSize).multiplyScalar(this.size.genValue(e.memory,e.age/e.life))}toJSON(){return{type:this.type,size:this.size.toJSON()}}static fromJSON(t){return new e(xt(t.size))}frameUpdate(e){}clone(){return new e(this.size.clone())}reset(){}},Ht=class e{initialize(e){this.speed.startGen(e.memory)}constructor(e){this.speed=e,this.type=`SpeedOverLife`}update(e){e.speedModifier=this.speed.genValue(e.memory,e.age/e.life)}toJSON(){return{type:this.type,speed:this.speed.toJSON()}}static fromJSON(t){return new e(q(t.speed))}frameUpdate(e){}clone(){return new e(this.speed.clone())}reset(){}},Ut=class e{constructor(e){this.frame=e,this.type=`FrameOverLife`}initialize(e){this.frame.startGen(e.memory)}update(e,t){this.frame instanceof mt&&(e.uvTile=this.frame.genValue(e.memory,e.age/e.life))}frameUpdate(e){}toJSON(){return{type:this.type,frame:this.frame.toJSON()}}static fromJSON(t){return new e(q(t.frame))}clone(){return new e(this.frame.clone())}reset(){}},Wt=class e{constructor(e,t=new B(0,1,0)){this.orbitSpeed=e,this.axis=t,this.type=`OrbitOverLife`,this.temp=new B,this.rotation=new z}initialize(e){this.orbitSpeed.startGen(e.memory)}update(e,t){this.temp.copy(e.position).projectOnVector(this.axis),this.rotation.setFromAxisAngle(this.axis,this.orbitSpeed.genValue(e.memory,e.age/e.life)*t),e.position.sub(this.temp),e.position.applyQuaternion(this.rotation),e.position.add(this.temp)}frameUpdate(e){}toJSON(){return{type:this.type,orbitSpeed:this.orbitSpeed.toJSON(),axis:[this.axis.x,this.axis.y,this.axis.z]}}static fromJSON(t){return new e(q(t.orbitSpeed),t.axis?new B(t.axis[0],t.axis[1],t.axis[2]):void 0)}clone(){return new e(this.orbitSpeed.clone())}reset(){}},Gt=class{constructor(e){this.data=e,this.next=null,this.prev=null}hasPrev(){return this.prev!==null}hasNext(){return this.next!==null}},Kt=class{constructor(){this.length=0,this.head=this.tail=null}isEmpty(){return this.head===null}clear(){this.length=0,this.head=this.tail=null}front(){return this.head===null?null:this.head.data}back(){return this.tail===null?null:this.tail.data}dequeue(){if(this.head){let e=this.head.data;return this.head=this.head.next,this.head?this.head.prev=null:this.tail=null,this.length--,e}}pop(){if(this.tail){let e=this.tail.data;return this.tail=this.tail.prev,this.tail?this.tail.next=null:this.head=null,this.length--,e}}queue(e){let t=new Gt(e);this.tail||=t,this.head&&(this.head.prev=t,t.next=this.head),this.head=t,this.length++}push(e){let t=new Gt(e);this.head||=t,this.tail&&(this.tail.next=t,t.prev=this.tail),this.tail=t,this.length++}insertBefore(e,t){let n=new Gt(t);n.next=e,n.prev=e.prev,n.prev!==null&&(n.prev.next=n),n.next.prev=n,e==this.head&&(this.head=n),this.length++}remove(e){if(this.head===null||this.tail===null)return;let t=this.head;for(e===this.head.data&&(this.head=this.head.next),e===this.tail.data&&(this.tail=this.tail.prev);t.next!==null&&t.data!==e;)t=t.next;t.data===e&&(t.prev!==null&&(t.prev.next=t.next),t.next!==null&&(t.next.prev=t.prev),this.length--)}*values(){let e=this.head;for(;e!==null;)yield e.data,e=e.next}},qt=class{constructor(){this.position=new B,this.velocity=new B,this.age=0,this.life=1,this.size=new B,this.rotation=0,this.color=new W(1,1,1,1),this.uvTile=0,this.memory=[]}get died(){return this.age>=this.life}reset(){this.memory.length=0,this.position.set(0,0,0),this.velocity.set(0,0,0),this.age=0,this.life=1,this.size.set(1,1,1),this.rotation=0,this.color.set(1,1,1,1),this.uvTile=0}},Jt=class{constructor(){this.startSpeed=0,this.startColor=new W,this.startSize=new B(1,1,1),this.position=new B,this.velocity=new B,this.age=0,this.life=1,this.size=new B(1,1,1),this.speedModifier=1,this.rotation=0,this.color=new W,this.uvTile=0,this.memory=[]}get died(){return this.age>=this.life}reset(){this.memory.length=0}},Yt=class{constructor(e,t,n){this.position=e,this.size=t,this.color=n}},Xt=class{constructor(){this.startSpeed=0,this.startColor=new W,this.startSize=new B(1,1,1),this.position=new B,this.velocity=new B,this.age=0,this.life=1,this.size=new B(1,1,1),this.length=100,this.speedModifier=1,this.color=new W,this.previous=new Kt,this.uvTile=0,this.memory=[]}update(){for(this.age<=this.life?this.previous.push(new Yt(this.position.clone(),this.size.x,this.color.clone())):this.previous.length>0&&this.previous.dequeue();this.previous.length>this.length;)this.previous.dequeue()}get died(){return this.age>=this.life}reset(){this.memory.length=0,this.previous.clear()}},Zt=class e{initialize(e){this.width.startGen(e.memory)}constructor(e){this.width=e,this.type=`WidthOverLength`}update(e){if(e instanceof Xt){let t=e.previous.values();for(let n=0;n<e.previous.length;n++){let r=t.next();r.value.size=this.width.genValue(e.memory,(e.previous.length-n)/e.length)}}}frameUpdate(e){}toJSON(){return{type:this.type,width:this.width.toJSON()}}static fromJSON(t){return new e(q(t.width))}clone(){return new e(this.width.clone())}reset(){}},Qt=class e{constructor(e,t){this.direction=e,this.magnitude=t,this.type=`ApplyForce`,this.memory={data:[],dataCount:0},this.magnitudeValue=this.magnitude.genValue(this.memory)}initialize(e){}update(e,t){e.velocity.addScaledVector(this.direction,this.magnitudeValue*t)}frameUpdate(e){this.magnitudeValue=this.magnitude.genValue(this.memory)}toJSON(){return{type:this.type,direction:[this.direction.x,this.direction.y,this.direction.z],magnitude:this.magnitude.toJSON()}}static fromJSON(t){return new e(new B(t.direction[0],t.direction[1],t.direction[2]),q(t.magnitude??t.force))}clone(){return new e(this.direction.clone(),this.magnitude.clone())}reset(){}},$t=class e{constructor(e,t){this.center=e,this.magnitude=t,this.type=`GravityForce`,this.temp=new B}initialize(e){}update(e,t){this.temp.copy(this.center).sub(e.position).normalize(),e.velocity.addScaledVector(this.temp,this.magnitude/e.position.distanceToSquared(this.center)*t)}frameUpdate(e){}toJSON(){return{type:this.type,center:[this.center.x,this.center.y,this.center.z],magnitude:this.magnitude}}static fromJSON(t){return new e(new B(t.center[0],t.center[1],t.center[2]),t.magnitude)}clone(){return new e(this.center.clone(),this.magnitude)}reset(){}},en=class e{constructor(e){this.angle=e,this.type=`ChangeEmitDirection`,this._temp=new B,this._q=new z,this.memory={data:[],dataCount:0}}initialize(e){let t=e.velocity.length();t!=0&&(e.velocity.normalize(),e.velocity.x===0&&e.velocity.y===0?this._temp.set(0,e.velocity.z,0):this._temp.set(-e.velocity.y,e.velocity.x,0),this.angle.startGen(this.memory),this._q.setFromAxisAngle(this._temp.normalize(),this.angle.genValue(this.memory)),this._temp.copy(e.velocity),e.velocity.applyQuaternion(this._q),this._q.setFromAxisAngle(this._temp,Math.random()*Math.PI*2),e.velocity.applyQuaternion(this._q),e.velocity.setLength(t))}update(e,t){}frameUpdate(e){}toJSON(){return{type:this.type,angle:this.angle.toJSON()}}static fromJSON(t){return new e(q(t.angle))}clone(){return new e(this.angle)}reset(){}},tn;(function(e){e[e.Death=0]=`Death`,e[e.Birth=1]=`Birth`,e[e.Frame=2]=`Frame`})(tn||={});var nn=class e{constructor(e,t,n,r=tn.Frame,i=1){this.particleSystem=e,this.useVelocityAsBasis=t,this.subParticleSystem=n,this.mode=r,this.emitProbability=i,this.type=`EmitSubParticleSystem`,this.q_=new z,this.v_=new B,this.v2_=new B,this.subEmissions=[],this.subParticleSystem&&this.subParticleSystem.system&&(this.subParticleSystem.system.onlyUsedByOther=!0)}initialize(e){}update(e,t){(this.mode===tn.Frame||this.mode===tn.Birth&&e.age===0||this.mode===tn.Death&&e.age+t>=e.life)&&this.emit(e,t)}emit(e,t){if(!this.subParticleSystem||Math.random()>this.emitProbability)return;let n=new V;this.setMatrixFromParticle(n,e),this.subEmissions.push({burstParticleCount:0,burstParticleIndex:0,isBursting:!1,burstIndex:0,burstWaveIndex:0,time:0,waitEmiting:0,matrix:n,travelDistance:0,particle:e})}frameUpdate(e){if(this.subParticleSystem)for(let t=0;t<this.subEmissions.length;t++)if(this.subEmissions[t].time>=this.subParticleSystem.system.duration)this.subEmissions[t]=this.subEmissions[this.subEmissions.length-1],this.subEmissions.length=this.subEmissions.length-1,t--;else{let n=this.subEmissions[t];n.particle&&n.particle.age<n.particle.life?this.setMatrixFromParticle(n.matrix,n.particle):n.particle=void 0,this.subParticleSystem.system.emit(e,n,n.matrix)}}toJSON(){return{type:this.type,subParticleSystem:this.subParticleSystem?this.subParticleSystem.uuid:``,useVelocityAsBasis:this.useVelocityAsBasis,mode:this.mode,emitProbability:this.emitProbability}}static fromJSON(t,n){return new e(n,t.useVelocityAsBasis,t.subParticleSystem,t.mode,t.emitProbability)}clone(){return new e(this.particleSystem,this.useVelocityAsBasis,this.subParticleSystem,this.mode,this.emitProbability)}reset(){}setMatrixFromParticle(e,t){let n;if(t.rotation===void 0||this.useVelocityAsBasis){if(t.velocity.x===0&&t.velocity.y===0&&(t.velocity.z===1||t.velocity.z===0))e.set(1,0,0,t.position.x,0,1,0,t.position.y,0,0,1,t.position.z,0,0,0,1);else{this.v_.copy(Ot).cross(t.velocity),this.v2_.copy(t.velocity).cross(this.v_);let n=this.v_.length(),r=this.v2_.length();e.set(this.v_.x/n,this.v2_.x/r,t.velocity.x,t.position.x,this.v_.y/n,this.v2_.y/r,t.velocity.y,t.position.y,this.v_.z/n,this.v2_.z/r,t.velocity.z,t.position.z,0,0,0,1)}}else t.rotation instanceof z?n=t.rotation:(this.q_.setFromAxisAngle(Ot,t.rotation),n=this.q_),e.compose(t.position,n,Dt);this.particleSystem.worldSpace||e.multiplyMatrices(this.particleSystem.emitter.matrixWorld,e)}},rn=.5*(Math.sqrt(3)-1),an=(3-Math.sqrt(3))/6,on=1/3,J=1/6,sn=(Math.sqrt(5)-1)/4,Y=(5-Math.sqrt(5))/20,X=new Float32Array([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]),Z=new Float32Array([0,1,1,1,0,1,1,-1,0,1,-1,1,0,1,-1,-1,0,-1,1,1,0,-1,1,-1,0,-1,-1,1,0,-1,-1,-1,1,0,1,1,1,0,1,-1,1,0,-1,1,1,0,-1,-1,-1,0,1,1,-1,0,1,-1,-1,0,-1,1,-1,0,-1,-1,1,1,0,1,1,1,0,-1,1,-1,0,1,1,-1,0,-1,-1,1,0,1,-1,1,0,-1,-1,-1,0,1,-1,-1,0,-1,1,1,1,0,1,1,-1,0,1,-1,1,0,1,-1,-1,0,-1,1,1,0,-1,1,-1,0,-1,-1,1,0,-1,-1,-1,0]),cn=class{constructor(e=Math.random){let t=typeof e==`function`?e:un(e);this.p=ln(t),this.perm=new Uint8Array(512),this.permMod12=new Uint8Array(512);for(let e=0;e<512;e++)this.perm[e]=this.p[e&255],this.permMod12[e]=this.perm[e]%12}noise2D(e,t){let n=this.permMod12,r=this.perm,i=0,a=0,o=0,s=(e+t)*rn,c=Math.floor(e+s),l=Math.floor(t+s),u=(c+l)*an,d=c-u,f=l-u,p=e-d,m=t-f,h,g;p>m?(h=1,g=0):(h=0,g=1);let _=p-h+an,v=m-g+an,y=p-1+2*an,b=m-1+2*an,x=c&255,S=l&255,C=.5-p*p-m*m;if(C>=0){let e=n[x+r[S]]*3;C*=C,i=C*C*(X[e]*p+X[e+1]*m)}let w=.5-_*_-v*v;if(w>=0){let e=n[x+h+r[S+g]]*3;w*=w,a=w*w*(X[e]*_+X[e+1]*v)}let T=.5-y*y-b*b;if(T>=0){let e=n[x+1+r[S+1]]*3;T*=T,o=T*T*(X[e]*y+X[e+1]*b)}return 70*(i+a+o)}noise3D(e,t,n){let r=this.permMod12,i=this.perm,a,o,s,c,l=(e+t+n)*on,u=Math.floor(e+l),d=Math.floor(t+l),f=Math.floor(n+l),p=(u+d+f)*J,m=u-p,h=d-p,g=f-p,_=e-m,v=t-h,y=n-g,b,x,S,C,w,T;_>=v?v>=y?(b=1,x=0,S=0,C=1,w=1,T=0):_>=y?(b=1,x=0,S=0,C=1,w=0,T=1):(b=0,x=0,S=1,C=1,w=0,T=1):v<y?(b=0,x=0,S=1,C=0,w=1,T=1):_<y?(b=0,x=1,S=0,C=0,w=1,T=1):(b=0,x=1,S=0,C=1,w=1,T=0);let E=_-b+J,D=v-x+J,O=y-S+J,k=_-C+2*J,A=v-w+2*J,j=y-T+2*J,M=_-1+3*J,N=v-1+3*J,P=y-1+3*J,F=u&255,I=d&255,ee=f&255,te=.6-_*_-v*v-y*y;if(te<0)a=0;else{let e=r[F+i[I+i[ee]]]*3;te*=te,a=te*te*(X[e]*_+X[e+1]*v+X[e+2]*y)}let ne=.6-E*E-D*D-O*O;if(ne<0)o=0;else{let e=r[F+b+i[I+x+i[ee+S]]]*3;ne*=ne,o=ne*ne*(X[e]*E+X[e+1]*D+X[e+2]*O)}let re=.6-k*k-A*A-j*j;if(re<0)s=0;else{let e=r[F+C+i[I+w+i[ee+T]]]*3;re*=re,s=re*re*(X[e]*k+X[e+1]*A+X[e+2]*j)}let ie=.6-M*M-N*N-P*P;if(ie<0)c=0;else{let e=r[F+1+i[I+1+i[ee+1]]]*3;ie*=ie,c=ie*ie*(X[e]*M+X[e+1]*N+X[e+2]*P)}return 32*(a+o+s+c)}noise4D(e,t,n,r){let i=this.perm,a,o,s,c,l,u=(e+t+n+r)*sn,d=Math.floor(e+u),f=Math.floor(t+u),p=Math.floor(n+u),m=Math.floor(r+u),h=(d+f+p+m)*Y,g=d-h,_=f-h,v=p-h,y=m-h,b=e-g,x=t-_,S=n-v,C=r-y,w=0,T=0,E=0,D=0;b>x?w++:T++,b>S?w++:E++,b>C?w++:D++,x>S?T++:E++,x>C?T++:D++,S>C?E++:D++;let O=+(w>=3),k=+(T>=3),A=+(E>=3),j=+(D>=3),M=+(w>=2),N=+(T>=2),P=+(E>=2),F=+(D>=2),I=+(w>=1),ee=+(T>=1),te=+(E>=1),ne=+(D>=1),re=b-O+Y,ie=x-k+Y,ae=S-A+Y,oe=C-j+Y,se=b-M+2*Y,ce=x-N+2*Y,le=S-P+2*Y,ue=C-F+2*Y,L=b-I+3*Y,de=x-ee+3*Y,fe=S-te+3*Y,pe=C-ne+3*Y,me=b-1+4*Y,R=x-1+4*Y,he=S-1+4*Y,ge=C-1+4*Y,_e=d&255,ve=f&255,ye=p&255,be=m&255,xe=.6-b*b-x*x-S*S-C*C;if(xe<0)a=0;else{let e=i[_e+i[ve+i[ye+i[be]]]]%32*4;xe*=xe,a=xe*xe*(Z[e]*b+Z[e+1]*x+Z[e+2]*S+Z[e+3]*C)}let Se=.6-re*re-ie*ie-ae*ae-oe*oe;if(Se<0)o=0;else{let e=i[_e+O+i[ve+k+i[ye+A+i[be+j]]]]%32*4;Se*=Se,o=Se*Se*(Z[e]*re+Z[e+1]*ie+Z[e+2]*ae+Z[e+3]*oe)}let Ce=.6-se*se-ce*ce-le*le-ue*ue;if(Ce<0)s=0;else{let e=i[_e+M+i[ve+N+i[ye+P+i[be+F]]]]%32*4;Ce*=Ce,s=Ce*Ce*(Z[e]*se+Z[e+1]*ce+Z[e+2]*le+Z[e+3]*ue)}let we=.6-L*L-de*de-fe*fe-pe*pe;if(we<0)c=0;else{let e=i[_e+I+i[ve+ee+i[ye+te+i[be+ne]]]]%32*4;we*=we,c=we*we*(Z[e]*L+Z[e+1]*de+Z[e+2]*fe+Z[e+3]*pe)}let Te=.6-me*me-R*R-he*he-ge*ge;if(Te<0)l=0;else{let e=i[_e+1+i[ve+1+i[ye+1+i[be+1]]]]%32*4;Te*=Te,l=Te*Te*(Z[e]*me+Z[e+1]*R+Z[e+2]*he+Z[e+3]*ge)}return 27*(a+o+s+c+l)}};function ln(e){let t=new Uint8Array(256);for(let e=0;e<256;e++)t[e]=e;for(let n=0;n<255;n++){let r=n+~~(e()*(256-n)),i=t[n];t[n]=t[r],t[r]=i}return t}function un(e){let t=0,n=0,r=0,i=1,a=dn();return t=a(` `),n=a(` `),r=a(` `),t-=a(e),t<0&&(t+=1),n-=a(e),n<0&&(n+=1),r-=a(e),r<0&&(r+=1),function(){let e=2091639*t+i*23283064365386963e-26;return t=n,n=r,r=e-(i=e|0)}}function dn(){let e=4022871197;return function(t){t=t.toString();for(let n=0;n<t.length;n++){e+=t.charCodeAt(n);let r=.02519603282416938*e;e=r>>>0,r-=e,r*=e,e=r>>>0,r-=e,e+=r*4294967296}return(e>>>0)*23283064365386963e-26}}var fn=class e{constructor(e,t,n,r){this.scale=e,this.octaves=t,this.velocityMultiplier=n,this.timeScale=r,this.type=`TurbulenceField`,this.generator=new cn,this.timeOffset=new B,this.temp=new B,this.temp2=new B,this.timeOffset.x=Math.random()/this.scale.x*this.timeScale.x,this.timeOffset.y=Math.random()/this.scale.y*this.timeScale.y,this.timeOffset.z=Math.random()/this.scale.z*this.timeScale.z}initialize(e){}update(e,t){let n=e.position.x/this.scale.x,r=e.position.y/this.scale.y,i=e.position.z/this.scale.z;this.temp.set(0,0,0);let a=1;for(let e=0;e<this.octaves;e++)this.temp2.set(this.generator.noise4D(n*a,r*a,i*a,this.timeOffset.x*a)/a,this.generator.noise4D(n*a,r*a,i*a,this.timeOffset.y*a)/a,this.generator.noise4D(n*a,r*a,i*a,this.timeOffset.z*a)/a),this.temp.add(this.temp2),a*=2;this.temp.multiply(this.velocityMultiplier),e.velocity.addScaledVector(this.temp,t)}toJSON(){return{type:this.type,scale:[this.scale.x,this.scale.y,this.scale.z],octaves:this.octaves,velocityMultiplier:[this.velocityMultiplier.x,this.velocityMultiplier.y,this.velocityMultiplier.z],timeScale:[this.timeScale.x,this.timeScale.y,this.timeScale.z]}}frameUpdate(e){this.timeOffset.x+=e*this.timeScale.x,this.timeOffset.y+=e*this.timeScale.y,this.timeOffset.z+=e*this.timeScale.z}static fromJSON(t){return new e(new B(t.scale[0],t.scale[1],t.scale[2]),t.octaves,new B(t.velocityMultiplier[0],t.velocityMultiplier[1],t.velocityMultiplier[2]),new B(t.timeScale[0],t.timeScale[1],t.timeScale[2]))}clone(){return new e(this.scale.clone(),this.octaves,this.velocityMultiplier.clone(),this.timeScale.clone())}reset(){}},Q=[],pn=new B,mn=new z,hn=class e{constructor(e,t,n=new K(1),r=new K(0)){if(this.frequency=e,this.power=t,this.positionAmount=n,this.rotationAmount=r,this.type=`Noise`,this.duration=0,Q.length===0)for(let e=0;e<100;e++)Q.push(new cn)}initialize(e){e.lastPosNoise=new B,e.lastRotNoise=typeof e.rotation==`number`?0:new z,e.generatorIndex=[wt(0,100),wt(0,100),wt(0,100),wt(0,100)],this.positionAmount.startGen(e.memory),this.rotationAmount.startGen(e.memory),this.frequency.startGen(e.memory),this.power.startGen(e.memory)}update(e,t){let n=this.frequency.genValue(e.memory,e.age/e.life),r=this.power.genValue(e.memory,e.age/e.life),i=this.positionAmount.genValue(e.memory,e.age/e.life),a=this.rotationAmount.genValue(e.memory,e.age/e.life);i>0&&e.lastPosNoise!==void 0&&(e.position.sub(e.lastPosNoise),pn.set(Q[e.generatorIndex[0]].noise2D(0,e.age*n)*r*i,Q[e.generatorIndex[1]].noise2D(0,e.age*n)*r*i,Q[e.generatorIndex[2]].noise2D(0,e.age*n)*r*i),e.position.add(pn),e.lastPosNoise.copy(pn)),a>0&&e.lastRotNoise!==void 0&&(typeof e.rotation==`number`?(e.rotation-=e.lastRotNoise,e.rotation+=Q[e.generatorIndex[3]].noise2D(0,e.age*n)*Math.PI*r*a):(e.lastRotNoise.invert(),e.rotation.multiply(e.lastRotNoise),mn.set(Q[e.generatorIndex[0]].noise2D(0,e.age*n)*r*a,Q[e.generatorIndex[1]].noise2D(0,e.age*n)*r*a,Q[e.generatorIndex[2]].noise2D(0,e.age*n)*r*a,Q[e.generatorIndex[3]].noise2D(0,e.age*n)*r*a).normalize(),e.rotation.multiply(mn),e.lastRotNoise.copy(mn)))}toJSON(){return{type:this.type,frequency:this.frequency.toJSON(),power:this.power.toJSON(),positionAmount:this.positionAmount.toJSON(),rotationAmount:this.rotationAmount.toJSON()}}frameUpdate(e){this.duration+=e}static fromJSON(t){return new e(q(t.frequency),q(t.power),q(t.positionAmount),q(t.rotationAmount))}clone(){return new e(this.frequency.clone(),this.power.clone(),this.positionAmount.clone(),this.rotationAmount.clone())}reset(){}},gn=class e{constructor(e=0,t=0,n=new B){this.scaleX=e,this.scaleY=t,this.position=n,this.locations=[]}transform(e,t){e.x=this.locations[t%this.locations.length].x*this.scaleX+this.position.x,e.y=this.locations[t%this.locations.length].y*this.scaleY+this.position.y,e.z=this.position.z}static fromJSON(t){let n=new e(t.scaleX,t.scaleY,new B(t.position[0],t.position[1],t.position[2]));return n.locations=t.locations.map(e=>new Je(e.x,e.y)),n}clone(){let t=new e(this.scaleX,this.scaleY,this.position.clone());return t.locations=this.locations.map(e=>e.clone()),t}toJSON(){return{scaleX:this.scaleX,scaleY:this.scaleY,position:this.position,locations:this.locations.map(e=>({x:e.x,y:e.y}))}}fromImage(e,t){let n=document.createElement(`canvas`);n.width=e.width,n.height=e.height;let r=n.getContext(`2d`);if(!r)return;r.drawImage(e,0,0);let i=r.getImageData(0,0,n.width,n.height,{colorSpace:`srgb`});n.remove(),this.locations.length=0;for(let e=0;e<i.height;e++)for(let n=0;n<i.width;n++)i.data[(e*i.width+n)*4+3]>t&&this.locations.push(new Je(n,i.height-e))}};function _n(e){switch(e.type){case`TextureSequencer`:return gn.fromJSON(e);default:return new gn}}var vn=class e{constructor(e){this.type=`ApplySequences`,this.sequencers=[],this.time=0,this.index=0,this.pCount=0,this.tempV=new B,this.delay=e}initialize(e){e.id=this.pCount,e.dst=new B,e.begin=new B,e.inMotion=!1,this.pCount++}reset(){this.time=0,this.index=0,this.pCount=0}update(t,n){let r=this.sequencers[this.index],i=t.id*this.delay;this.time>=r[0].a+i&&this.time<=r[0].b+i?(t.inMotion||(t.inMotion=!0,t.begin.copy(t.position),r[1].transform(t.dst,t.id)),t.position.lerpVectors(t.begin,t.dst,e.BEZIER.genValue((this.time-r[0].a-i)/(r[0].b-r[0].a)))):this.time>r[0].b+i&&(t.inMotion=!1)}frameUpdate(e){for(;this.index+1<this.sequencers.length&&this.time>=this.sequencers[this.index+1][0].a;)this.index++;this.time+=e}appendSequencer(e,t){this.sequencers.push([e,t])}toJSON(){return{type:this.type,delay:this.delay,sequencers:this.sequencers.map(([e,t])=>({range:e.toJSON(),sequencer:t.toJSON()}))}}static fromJSON(t){let n=new e(t.delay);return t.sequencers.forEach(e=>{n.sequencers.push([q(e.range),_n(e.sequencer)])}),n}clone(){let t=new e(this.delay);return t.sequencers=this.sequencers.map(e=>[e[0].clone(),e[1].clone()]),t}};vn.BEZIER=new Qe(0,0,1,1);var yn;function bn(e){yn=e}function xn(){return yn}var Sn=class e{constructor(e,t){this.resolver=e,this.bounce=t,this.type=`ApplyCollision`,this.tempV=new B}initialize(e){}update(e,t){this.resolver.resolve(e.position,this.tempV)&&e.velocity.reflect(this.tempV).multiplyScalar(this.bounce)}frameUpdate(e){}toJSON(){return{type:this.type,bounce:this.bounce}}static fromJSON(t){return new e(xn(),t.bounce)}clone(){return new e(this.resolver,this.bounce)}reset(){}},Cn=class e{constructor(e,t){this.color=e,this.speedRange=t,this.type=`ColorBySpeed`}initialize(e){this.color.startGen(e.memory)}update(e,t){let n=(e.startSpeed-this.speedRange.a)/(this.speedRange.b-this.speedRange.a);this.color.genColor(e.memory,e.color,n),e.color.x*=e.startColor.x,e.color.y*=e.startColor.y,e.color.z*=e.startColor.z,e.color.w*=e.startColor.w}frameUpdate(e){}toJSON(){return{type:this.type,color:this.color.toJSON(),speedRange:this.speedRange.toJSON()}}static fromJSON(t){return new e(dt(t.color),ft.fromJSON(t.speedRange))}clone(){return new e(this.color.clone(),this.speedRange.clone())}reset(){}},wn=class e{initialize(e){this.size.startGen(e.memory)}constructor(e,t){this.size=e,this.speedRange=t,this.type=`SizeBySpeed`}update(e){let t=(e.startSpeed-this.speedRange.a)/(this.speedRange.b-this.speedRange.a);this.size instanceof yt?this.size.genValue(e.memory,e.size,t).multiply(e.startSize):e.size.copy(e.startSize).multiplyScalar(this.size.genValue(e.memory,t))}toJSON(){return{type:this.type,size:this.size.toJSON(),speedRange:this.speedRange.toJSON()}}static fromJSON(t){return new e(xt(t.size),ft.fromJSON(t.speedRange))}frameUpdate(e){}clone(){return new e(this.size.clone(),this.speedRange.clone())}reset(){}},Tn=class e{constructor(e,t){this.angularVelocity=e,this.speedRange=t,this.type=`RotationBySpeed`,this.tempQuat=new z}initialize(e){typeof e.rotation==`number`&&this.angularVelocity.startGen(e.memory)}update(e,t){if(typeof e.rotation==`number`){let n=(e.startSpeed-this.speedRange.a)/(this.speedRange.b-this.speedRange.a);e.rotation+=t*this.angularVelocity.genValue(e.memory,n)}}toJSON(){return{type:this.type,angularVelocity:this.angularVelocity.toJSON(),speedRange:this.speedRange.toJSON()}}static fromJSON(t){return new e(q(t.angularVelocity),ft.fromJSON(t.speedRange))}frameUpdate(e){}clone(){return new e(this.angularVelocity.clone(),this.speedRange.clone())}reset(){}},En=class e{initialize(e){this.speed.startGen(e.memory)}constructor(e,t){this.speed=e,this.dampen=t,this.type=`LimitSpeedOverLife`}update(e,t){let n=e.velocity.length(),r=this.speed.genValue(e.memory,e.age/e.life);if(n>r){let i=(n-r)/n;e.velocity.multiplyScalar(1-i*this.dampen*t*20)}}toJSON(){return{type:this.type,speed:this.speed.toJSON(),dampen:this.dampen}}static fromJSON(t){return new e(q(t.speed),t.dampen)}frameUpdate(e){}clone(){return new e(this.speed.clone(),this.dampen)}reset(){}},Dn={ApplyForce:{type:`ApplyForce`,constructor:Qt,params:[[`direction`,[`vec3`]],[`magnitude`,[`value`]]],loadJSON:Qt.fromJSON},Noise:{type:`Noise`,constructor:hn,params:[[`frequency`,[`value`]],[`power`,[`value`]],[`positionAmount`,[`value`]],[`rotationAmount`,[`value`]]],loadJSON:hn.fromJSON},TurbulenceField:{type:`TurbulenceField`,constructor:fn,params:[[`scale`,[`vec3`]],[`octaves`,[`number`]],[`velocityMultiplier`,[`vec3`]],[`timeScale`,[`vec3`]]],loadJSON:fn.fromJSON},GravityForce:{type:`GravityForce`,constructor:$t,params:[[`center`,[`vec3`]],[`magnitude`,[`number`]]],loadJSON:$t.fromJSON},ColorOverLife:{type:`ColorOverLife`,constructor:Lt,params:[[`color`,[`colorFunc`]]],loadJSON:Lt.fromJSON},RotationOverLife:{type:`RotationOverLife`,constructor:Rt,params:[[`angularVelocity`,[`value`,`valueFunc`]]],loadJSON:Rt.fromJSON},Rotation3DOverLife:{type:`Rotation3DOverLife`,constructor:zt,params:[[`angularVelocity`,[`rotationFunc`]]],loadJSON:zt.fromJSON},SizeOverLife:{type:`SizeOverLife`,constructor:Vt,params:[[`size`,[`value`,`valueFunc`,`vec3Func`]]],loadJSON:Vt.fromJSON},ColorBySpeed:{type:`ColorBySpeed`,constructor:Cn,params:[[`color`,[`colorFunc`]],[`speedRange`,[`range`]]],loadJSON:Cn.fromJSON},RotationBySpeed:{type:`RotationBySpeed`,constructor:Tn,params:[[`angularVelocity`,[`value`,`valueFunc`]],[`speedRange`,[`range`]]],loadJSON:Tn.fromJSON},SizeBySpeed:{type:`SizeBySpeed`,constructor:wn,params:[[`size`,[`value`,`valueFunc`,`vec3Func`]],[`speedRange`,[`range`]]],loadJSON:wn.fromJSON},SpeedOverLife:{type:`SpeedOverLife`,constructor:Ht,params:[[`speed`,[`value`,`valueFunc`]]],loadJSON:Ht.fromJSON},FrameOverLife:{type:`FrameOverLife`,constructor:Ut,params:[[`frame`,[`value`,`valueFunc`]]],loadJSON:Ut.fromJSON},ForceOverLife:{type:`ForceOverLife`,constructor:Bt,params:[[`x`,[`value`,`valueFunc`]],[`y`,[`value`,`valueFunc`]],[`z`,[`value`,`valueFunc`]]],loadJSON:Bt.fromJSON},OrbitOverLife:{type:`OrbitOverLife`,constructor:Wt,params:[[`orbitSpeed`,[`value`,`valueFunc`]],[`axis`,[`vec3`]]],loadJSON:Wt.fromJSON},WidthOverLength:{type:`WidthOverLength`,constructor:Zt,params:[[`width`,[`value`,`valueFunc`]]],loadJSON:Zt.fromJSON},ChangeEmitDirection:{type:`ChangeEmitDirection`,constructor:en,params:[[`angle`,[`value`]]],loadJSON:en.fromJSON},EmitSubParticleSystem:{type:`EmitSubParticleSystem`,constructor:nn,params:[[`particleSystem`,[`self`]],[`useVelocityAsBasis`,[`boolean`]],[`subParticleSystem`,[`particleSystem`]],[`mode`,[`number`]],[`emitProbability`,[`number`]]],loadJSON:nn.fromJSON},LimitSpeedOverLife:{type:`LimitSpeedOverLife`,constructor:En,params:[[`speed`,[`value`,`valueFunc`]],[`dampen`,[`number`]]],loadJSON:En.fromJSON}};function On(e,t){return Dn[e.type]?Dn[e.type].loadJSON(e,t):null}var kn=[];function An(e){if(!kn.find(t=>t.id===e.id)){e.initialize();for(let t of e.emitterShapes)Ft[t.type]||(Ft[t.type]=t);for(let t of e.behaviors)Dn[t.type]||(Dn[t.type]=t)}}function jn(e){let t=kn.find(t=>t.id===e);if(t){for(let e of t.emitterShapes)Ft[e.type]&&delete Ft[e.type];for(let e of t.behaviors)Dn[e.type]&&delete Dn[e.type]}}var Mn=class e{get geometry(){return this._geometry}set geometry(e){if(this._geometry=e,e===void 0||typeof e==`string`)return;let t=new I;this._triangleIndexToArea.length=0;let n=0;if(!e.getIndex())return;let r=e.getIndex().array,i=r.length/3;this._triangleIndexToArea.push(0);for(let a=0;a<i;a++)t.setFromAttributeAndIndices(e.getAttribute(`position`),r[a*3],r[a*3+1],r[a*3+2]),n+=t.getArea(),this._triangleIndexToArea.push(n);e.userData.triangleIndexToArea=this._triangleIndexToArea}constructor(e){this.type=`mesh_surface`,this._triangleIndexToArea=[],this._tempA=new y,this._tempB=new y,this._tempC=new y,e&&(this.geometry=e)}initialize(e){let t=this._geometry;if(!t||t.getIndex()===null){e.position.set(0,0,0),e.velocity.set(0,0,1).multiplyScalar(e.startSpeed);return}let n=this._triangleIndexToArea.length-1,r=0,i=n,a=Math.random()*this._triangleIndexToArea[n];for(;r+1<i;){let e=Math.floor((r+i)/2);a<this._triangleIndexToArea[e]?i=e:r=e}let o=Math.random(),s=Math.random();o+s>1&&(o=1-o,s=1-s);let c=t.getIndex().array[r*3],l=t.getIndex().array[r*3+1],u=t.getIndex().array[r*3+2],d=t.getAttribute(`position`);this._tempA.fromBufferAttribute(d,c),this._tempB.fromBufferAttribute(d,l),this._tempC.fromBufferAttribute(d,u),this._tempB.sub(this._tempA),this._tempC.sub(this._tempA),this._tempA.addScaledVector(this._tempB,o).addScaledVector(this._tempC,s),e.position.copy(this._tempA),this._tempA.copy(this._tempB).cross(this._tempC).normalize(),e.velocity.copy(this._tempA).normalize().multiplyScalar(e.startSpeed)}toJSON(){return{type:`mesh_surface`,mesh:this._geometry?this._geometry.uuid:``}}static fromJSON(t,n){return new e(n.geometries[t.geometry])}clone(){return new e(this._geometry)}update(e,t){}},Nn={id:`three.quarks`,initialize:()=>{},emitterShapes:[{type:`mesh_surface`,params:[[`geometry`,[`geometry`]]],constructor:Mn,loadJSON:Mn.fromJSON}],behaviors:[]},Pn=`
|
|
2
|
+
#ifdef SOFT_PARTICLES
|
|
3
|
+
|
|
4
|
+
/* #ifdef LOGDEPTH
|
|
5
|
+
float distSample = linearize_depth_log(sampleDepth, near, far);
|
|
6
|
+
#else
|
|
7
|
+
float distSample = ortho ? linearize_depth_ortho(sampleDepth, near, far) : linearize_depth(sampleDepth, near, far);
|
|
8
|
+
#endif */
|
|
9
|
+
|
|
10
|
+
vec2 p2 = projPosition.xy / projPosition.w;
|
|
11
|
+
|
|
12
|
+
p2 = 0.5 * p2 + 0.5;
|
|
13
|
+
|
|
14
|
+
float readDepth = texture2D(depthTexture, p2.xy).r;
|
|
15
|
+
float viewDepth = linearize_depth(readDepth);
|
|
16
|
+
|
|
17
|
+
float softParticlesFade = saturate(SOFT_INV_FADE_DISTANCE * ((viewDepth - SOFT_NEAR_FADE) - linearDepth));
|
|
18
|
+
|
|
19
|
+
gl_FragColor *= softParticlesFade;
|
|
20
|
+
|
|
21
|
+
//gl_FragColor = vec4(softParticlesFade , 0, 0, 1);
|
|
22
|
+
#endif
|
|
23
|
+
`,Fn=`
|
|
24
|
+
#ifdef SOFT_PARTICLES
|
|
25
|
+
|
|
26
|
+
uniform sampler2D depthTexture;
|
|
27
|
+
uniform vec4 projParams;
|
|
28
|
+
uniform vec2 softParams;
|
|
29
|
+
|
|
30
|
+
varying vec4 projPosition;
|
|
31
|
+
varying float linearDepth;
|
|
32
|
+
|
|
33
|
+
#define SOFT_NEAR_FADE softParams.x
|
|
34
|
+
#define SOFT_INV_FADE_DISTANCE softParams.y
|
|
35
|
+
|
|
36
|
+
#define zNear projParams.x
|
|
37
|
+
#define zFar projParams.y
|
|
38
|
+
|
|
39
|
+
float linearize_depth(float d)
|
|
40
|
+
{
|
|
41
|
+
return (zFar * zNear) / (zFar - d * (zFar - zNear));
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
#endif
|
|
45
|
+
`,In=`
|
|
46
|
+
#ifdef SOFT_PARTICLES
|
|
47
|
+
varying vec4 projPosition;
|
|
48
|
+
varying float linearDepth;
|
|
49
|
+
#endif
|
|
50
|
+
`,Ln=`
|
|
51
|
+
#ifdef SOFT_PARTICLES
|
|
52
|
+
projPosition = gl_Position;
|
|
53
|
+
linearDepth = -mvPosition.z;
|
|
54
|
+
#endif
|
|
55
|
+
`,Rn=`
|
|
56
|
+
#ifdef USE_MAP
|
|
57
|
+
vec4 texelColor = texture2D( map, vUv);
|
|
58
|
+
#ifdef TILE_BLEND
|
|
59
|
+
texelColor = mix( texelColor, texture2D( map, vUvNext ), vUvBlend );
|
|
60
|
+
#endif
|
|
61
|
+
diffuseColor *= texelColor;
|
|
62
|
+
#endif
|
|
63
|
+
`,zn=`
|
|
64
|
+
#if defined( USE_UV ) || defined( USE_ANISOTROPY )
|
|
65
|
+
|
|
66
|
+
varying vec2 vUv;
|
|
67
|
+
#ifdef TILE_BLEND
|
|
68
|
+
varying vec2 vUvNext;
|
|
69
|
+
varying float vUvBlend;
|
|
70
|
+
#endif
|
|
71
|
+
|
|
72
|
+
#endif
|
|
73
|
+
#ifdef USE_MAP
|
|
74
|
+
|
|
75
|
+
uniform mat3 mapTransform;
|
|
76
|
+
varying vec2 vMapUv;
|
|
77
|
+
#ifdef TILE_BLEND
|
|
78
|
+
varying vec2 vMapUvNext;
|
|
79
|
+
#endif
|
|
80
|
+
|
|
81
|
+
#endif
|
|
82
|
+
#ifdef USE_ALPHAMAP
|
|
83
|
+
|
|
84
|
+
uniform mat3 alphaMapTransform;
|
|
85
|
+
varying vec2 vAlphaMapUv;
|
|
86
|
+
|
|
87
|
+
#endif
|
|
88
|
+
#ifdef USE_LIGHTMAP
|
|
89
|
+
|
|
90
|
+
uniform mat3 lightMapTransform;
|
|
91
|
+
varying vec2 vLightMapUv;
|
|
92
|
+
|
|
93
|
+
#endif
|
|
94
|
+
#ifdef USE_AOMAP
|
|
95
|
+
|
|
96
|
+
uniform mat3 aoMapTransform;
|
|
97
|
+
varying vec2 vAoMapUv;
|
|
98
|
+
|
|
99
|
+
#endif
|
|
100
|
+
#ifdef USE_BUMPMAP
|
|
101
|
+
|
|
102
|
+
uniform mat3 bumpMapTransform;
|
|
103
|
+
varying vec2 vBumpMapUv;
|
|
104
|
+
|
|
105
|
+
#endif
|
|
106
|
+
#ifdef USE_NORMALMAP
|
|
107
|
+
|
|
108
|
+
uniform mat3 normalMapTransform;
|
|
109
|
+
varying vec2 vNormalMapUv;
|
|
110
|
+
|
|
111
|
+
#endif
|
|
112
|
+
#ifdef USE_DISPLACEMENTMAP
|
|
113
|
+
|
|
114
|
+
uniform mat3 displacementMapTransform;
|
|
115
|
+
varying vec2 vDisplacementMapUv;
|
|
116
|
+
|
|
117
|
+
#endif
|
|
118
|
+
#ifdef USE_EMISSIVEMAP
|
|
119
|
+
|
|
120
|
+
uniform mat3 emissiveMapTransform;
|
|
121
|
+
varying vec2 vEmissiveMapUv;
|
|
122
|
+
|
|
123
|
+
#endif
|
|
124
|
+
#ifdef USE_METALNESSMAP
|
|
125
|
+
|
|
126
|
+
uniform mat3 metalnessMapTransform;
|
|
127
|
+
varying vec2 vMetalnessMapUv;
|
|
128
|
+
|
|
129
|
+
#endif
|
|
130
|
+
#ifdef USE_ROUGHNESSMAP
|
|
131
|
+
|
|
132
|
+
uniform mat3 roughnessMapTransform;
|
|
133
|
+
varying vec2 vRoughnessMapUv;
|
|
134
|
+
|
|
135
|
+
#endif
|
|
136
|
+
#ifdef USE_ANISOTROPYMAP
|
|
137
|
+
|
|
138
|
+
uniform mat3 anisotropyMapTransform;
|
|
139
|
+
varying vec2 vAnisotropyMapUv;
|
|
140
|
+
|
|
141
|
+
#endif
|
|
142
|
+
#ifdef USE_CLEARCOATMAP
|
|
143
|
+
|
|
144
|
+
uniform mat3 clearcoatMapTransform;
|
|
145
|
+
varying vec2 vClearcoatMapUv;
|
|
146
|
+
|
|
147
|
+
#endif
|
|
148
|
+
#ifdef USE_CLEARCOAT_NORMALMAP
|
|
149
|
+
|
|
150
|
+
uniform mat3 clearcoatNormalMapTransform;
|
|
151
|
+
varying vec2 vClearcoatNormalMapUv;
|
|
152
|
+
|
|
153
|
+
#endif
|
|
154
|
+
#ifdef USE_CLEARCOAT_ROUGHNESSMAP
|
|
155
|
+
|
|
156
|
+
uniform mat3 clearcoatRoughnessMapTransform;
|
|
157
|
+
varying vec2 vClearcoatRoughnessMapUv;
|
|
158
|
+
|
|
159
|
+
#endif
|
|
160
|
+
#ifdef USE_SHEEN_COLORMAP
|
|
161
|
+
|
|
162
|
+
uniform mat3 sheenColorMapTransform;
|
|
163
|
+
varying vec2 vSheenColorMapUv;
|
|
164
|
+
|
|
165
|
+
#endif
|
|
166
|
+
#ifdef USE_SHEEN_ROUGHNESSMAP
|
|
167
|
+
|
|
168
|
+
uniform mat3 sheenRoughnessMapTransform;
|
|
169
|
+
varying vec2 vSheenRoughnessMapUv;
|
|
170
|
+
|
|
171
|
+
#endif
|
|
172
|
+
#ifdef USE_IRIDESCENCEMAP
|
|
173
|
+
|
|
174
|
+
uniform mat3 iridescenceMapTransform;
|
|
175
|
+
varying vec2 vIridescenceMapUv;
|
|
176
|
+
|
|
177
|
+
#endif
|
|
178
|
+
#ifdef USE_IRIDESCENCE_THICKNESSMAP
|
|
179
|
+
|
|
180
|
+
uniform mat3 iridescenceThicknessMapTransform;
|
|
181
|
+
varying vec2 vIridescenceThicknessMapUv;
|
|
182
|
+
|
|
183
|
+
#endif
|
|
184
|
+
#ifdef USE_SPECULARMAP
|
|
185
|
+
|
|
186
|
+
uniform mat3 specularMapTransform;
|
|
187
|
+
varying vec2 vSpecularMapUv;
|
|
188
|
+
|
|
189
|
+
#endif
|
|
190
|
+
#ifdef USE_SPECULAR_COLORMAP
|
|
191
|
+
|
|
192
|
+
uniform mat3 specularColorMapTransform;
|
|
193
|
+
varying vec2 vSpecularColorMapUv;
|
|
194
|
+
|
|
195
|
+
#endif
|
|
196
|
+
#ifdef USE_SPECULAR_INTENSITYMAP
|
|
197
|
+
|
|
198
|
+
uniform mat3 specularIntensityMapTransform;
|
|
199
|
+
varying vec2 vSpecularIntensityMapUv;
|
|
200
|
+
|
|
201
|
+
#endif
|
|
202
|
+
#ifdef USE_TRANSMISSIONMAP
|
|
203
|
+
|
|
204
|
+
uniform mat3 transmissionMapTransform;
|
|
205
|
+
varying vec2 vTransmissionMapUv;
|
|
206
|
+
|
|
207
|
+
#endif
|
|
208
|
+
#ifdef USE_THICKNESSMAP
|
|
209
|
+
|
|
210
|
+
uniform mat3 thicknessMapTransform;
|
|
211
|
+
varying vec2 vThicknessMapUv;
|
|
212
|
+
|
|
213
|
+
#endif
|
|
214
|
+
`,Bn=`
|
|
215
|
+
#ifdef UV_TILE
|
|
216
|
+
attribute float uvTile;
|
|
217
|
+
uniform vec2 tileCount;
|
|
218
|
+
|
|
219
|
+
mat3 makeTileTransform(float uvTile) {
|
|
220
|
+
float col = mod(uvTile, tileCount.x);
|
|
221
|
+
float row = (tileCount.y - floor(uvTile / tileCount.x) - 1.0);
|
|
222
|
+
|
|
223
|
+
return mat3(
|
|
224
|
+
1.0 / tileCount.x, 0.0, 0.0,
|
|
225
|
+
0.0, 1.0 / tileCount.y, 0.0,
|
|
226
|
+
col / tileCount.x, row / tileCount.y, 1.0);
|
|
227
|
+
}
|
|
228
|
+
#else
|
|
229
|
+
mat3 makeTileTransform(float uvTile) {
|
|
230
|
+
return mat3(1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0);
|
|
231
|
+
}
|
|
232
|
+
#endif
|
|
233
|
+
|
|
234
|
+
#if defined( USE_UV ) || defined( USE_ANISOTROPY )
|
|
235
|
+
|
|
236
|
+
varying vec2 vUv;
|
|
237
|
+
#ifdef TILE_BLEND
|
|
238
|
+
varying vec2 vUvNext;
|
|
239
|
+
varying float vUvBlend;
|
|
240
|
+
#endif
|
|
241
|
+
|
|
242
|
+
#endif
|
|
243
|
+
#ifdef USE_MAP
|
|
244
|
+
|
|
245
|
+
uniform mat3 mapTransform;
|
|
246
|
+
varying vec2 vMapUv;
|
|
247
|
+
#ifdef TILE_BLEND
|
|
248
|
+
varying vec2 vMapUvNext;
|
|
249
|
+
#endif
|
|
250
|
+
|
|
251
|
+
#endif
|
|
252
|
+
#ifdef USE_ALPHAMAP
|
|
253
|
+
|
|
254
|
+
uniform mat3 alphaMapTransform;
|
|
255
|
+
varying vec2 vAlphaMapUv;
|
|
256
|
+
|
|
257
|
+
#endif
|
|
258
|
+
#ifdef USE_LIGHTMAP
|
|
259
|
+
|
|
260
|
+
uniform mat3 lightMapTransform;
|
|
261
|
+
varying vec2 vLightMapUv;
|
|
262
|
+
|
|
263
|
+
#endif
|
|
264
|
+
#ifdef USE_AOMAP
|
|
265
|
+
|
|
266
|
+
uniform mat3 aoMapTransform;
|
|
267
|
+
varying vec2 vAoMapUv;
|
|
268
|
+
|
|
269
|
+
#endif
|
|
270
|
+
#ifdef USE_BUMPMAP
|
|
271
|
+
|
|
272
|
+
uniform mat3 bumpMapTransform;
|
|
273
|
+
varying vec2 vBumpMapUv;
|
|
274
|
+
|
|
275
|
+
#endif
|
|
276
|
+
#ifdef USE_NORMALMAP
|
|
277
|
+
|
|
278
|
+
uniform mat3 normalMapTransform;
|
|
279
|
+
varying vec2 vNormalMapUv;
|
|
280
|
+
|
|
281
|
+
#endif
|
|
282
|
+
#ifdef USE_DISPLACEMENTMAP
|
|
283
|
+
|
|
284
|
+
uniform mat3 displacementMapTransform;
|
|
285
|
+
varying vec2 vDisplacementMapUv;
|
|
286
|
+
|
|
287
|
+
#endif
|
|
288
|
+
#ifdef USE_EMISSIVEMAP
|
|
289
|
+
|
|
290
|
+
uniform mat3 emissiveMapTransform;
|
|
291
|
+
varying vec2 vEmissiveMapUv;
|
|
292
|
+
|
|
293
|
+
#endif
|
|
294
|
+
#ifdef USE_METALNESSMAP
|
|
295
|
+
|
|
296
|
+
uniform mat3 metalnessMapTransform;
|
|
297
|
+
varying vec2 vMetalnessMapUv;
|
|
298
|
+
|
|
299
|
+
#endif
|
|
300
|
+
#ifdef USE_ROUGHNESSMAP
|
|
301
|
+
|
|
302
|
+
uniform mat3 roughnessMapTransform;
|
|
303
|
+
varying vec2 vRoughnessMapUv;
|
|
304
|
+
|
|
305
|
+
#endif
|
|
306
|
+
#ifdef USE_ANISOTROPYMAP
|
|
307
|
+
|
|
308
|
+
uniform mat3 anisotropyMapTransform;
|
|
309
|
+
varying vec2 vAnisotropyMapUv;
|
|
310
|
+
|
|
311
|
+
#endif
|
|
312
|
+
#ifdef USE_CLEARCOATMAP
|
|
313
|
+
|
|
314
|
+
uniform mat3 clearcoatMapTransform;
|
|
315
|
+
varying vec2 vClearcoatMapUv;
|
|
316
|
+
|
|
317
|
+
#endif
|
|
318
|
+
#ifdef USE_CLEARCOAT_NORMALMAP
|
|
319
|
+
|
|
320
|
+
uniform mat3 clearcoatNormalMapTransform;
|
|
321
|
+
varying vec2 vClearcoatNormalMapUv;
|
|
322
|
+
|
|
323
|
+
#endif
|
|
324
|
+
#ifdef USE_CLEARCOAT_ROUGHNESSMAP
|
|
325
|
+
|
|
326
|
+
uniform mat3 clearcoatRoughnessMapTransform;
|
|
327
|
+
varying vec2 vClearcoatRoughnessMapUv;
|
|
328
|
+
|
|
329
|
+
#endif
|
|
330
|
+
#ifdef USE_SHEEN_COLORMAP
|
|
331
|
+
|
|
332
|
+
uniform mat3 sheenColorMapTransform;
|
|
333
|
+
varying vec2 vSheenColorMapUv;
|
|
334
|
+
|
|
335
|
+
#endif
|
|
336
|
+
#ifdef USE_SHEEN_ROUGHNESSMAP
|
|
337
|
+
|
|
338
|
+
uniform mat3 sheenRoughnessMapTransform;
|
|
339
|
+
varying vec2 vSheenRoughnessMapUv;
|
|
340
|
+
|
|
341
|
+
#endif
|
|
342
|
+
#ifdef USE_IRIDESCENCEMAP
|
|
343
|
+
|
|
344
|
+
uniform mat3 iridescenceMapTransform;
|
|
345
|
+
varying vec2 vIridescenceMapUv;
|
|
346
|
+
|
|
347
|
+
#endif
|
|
348
|
+
#ifdef USE_IRIDESCENCE_THICKNESSMAP
|
|
349
|
+
|
|
350
|
+
uniform mat3 iridescenceThicknessMapTransform;
|
|
351
|
+
varying vec2 vIridescenceThicknessMapUv;
|
|
352
|
+
|
|
353
|
+
#endif
|
|
354
|
+
#ifdef USE_SPECULARMAP
|
|
355
|
+
|
|
356
|
+
uniform mat3 specularMapTransform;
|
|
357
|
+
varying vec2 vSpecularMapUv;
|
|
358
|
+
|
|
359
|
+
#endif
|
|
360
|
+
#ifdef USE_SPECULAR_COLORMAP
|
|
361
|
+
|
|
362
|
+
uniform mat3 specularColorMapTransform;
|
|
363
|
+
varying vec2 vSpecularColorMapUv;
|
|
364
|
+
|
|
365
|
+
#endif
|
|
366
|
+
#ifdef USE_SPECULAR_INTENSITYMAP
|
|
367
|
+
|
|
368
|
+
uniform mat3 specularIntensityMapTransform;
|
|
369
|
+
varying vec2 vSpecularIntensityMapUv;
|
|
370
|
+
|
|
371
|
+
#endif
|
|
372
|
+
#ifdef USE_TRANSMISSIONMAP
|
|
373
|
+
|
|
374
|
+
uniform mat3 transmissionMapTransform;
|
|
375
|
+
varying vec2 vTransmissionMapUv;
|
|
376
|
+
|
|
377
|
+
#endif
|
|
378
|
+
#ifdef USE_THICKNESSMAP
|
|
379
|
+
|
|
380
|
+
uniform mat3 thicknessMapTransform;
|
|
381
|
+
varying vec2 vThicknessMapUv;
|
|
382
|
+
|
|
383
|
+
#endif
|
|
384
|
+
`,Vn=`
|
|
385
|
+
#ifdef UV_TILE
|
|
386
|
+
mat3 tileTransform = makeTileTransform(floor(uvTile));
|
|
387
|
+
#ifdef TILE_BLEND
|
|
388
|
+
mat3 nextTileTransform = makeTileTransform(ceil(uvTile));
|
|
389
|
+
vUvBlend = fract(uvTile);
|
|
390
|
+
#endif
|
|
391
|
+
#else
|
|
392
|
+
mat3 tileTransform = makeTileTransform(0.0);
|
|
393
|
+
#endif
|
|
394
|
+
|
|
395
|
+
#if defined( USE_UV ) || defined( USE_ANISOTROPY )
|
|
396
|
+
|
|
397
|
+
vUv = (tileTransform *vec3( uv, 1 )).xy;
|
|
398
|
+
#if defined( TILE_BLEND ) && defined( UV_TILE )
|
|
399
|
+
vUvNext = (nextTileTransform *vec3( uv, 1 )).xy;
|
|
400
|
+
#endif
|
|
401
|
+
|
|
402
|
+
#endif
|
|
403
|
+
#ifdef USE_MAP
|
|
404
|
+
|
|
405
|
+
vMapUv = ( tileTransform * (mapTransform * vec3( MAP_UV, 1 ) )).xy;
|
|
406
|
+
#if defined( TILE_BLEND ) && defined( UV_TILE )
|
|
407
|
+
vMapUvNext = (nextTileTransform * (mapTransform * vec3( MAP_UV, 1 ))).xy;
|
|
408
|
+
#endif
|
|
409
|
+
|
|
410
|
+
#endif
|
|
411
|
+
#ifdef USE_ALPHAMAP
|
|
412
|
+
|
|
413
|
+
vAlphaMapUv = ( tileTransform * (alphaMapTransform * vec3( ALPHAMAP_UV, 1 ) )).xy;
|
|
414
|
+
|
|
415
|
+
#endif
|
|
416
|
+
#ifdef USE_LIGHTMAP
|
|
417
|
+
|
|
418
|
+
vLightMapUv = ( tileTransform * (lightMapTransform * vec3( LIGHTMAP_UV, 1 ) )).xy;
|
|
419
|
+
|
|
420
|
+
#endif
|
|
421
|
+
#ifdef USE_AOMAP
|
|
422
|
+
|
|
423
|
+
vAoMapUv = ( tileTransform * (aoMapTransform * vec3( AOMAP_UV, 1 ) )).xy;
|
|
424
|
+
|
|
425
|
+
#endif
|
|
426
|
+
#ifdef USE_BUMPMAP
|
|
427
|
+
|
|
428
|
+
vBumpMapUv = ( tileTransform * (bumpMapTransform * vec3( BUMPMAP_UV, 1 ) )).xy;
|
|
429
|
+
|
|
430
|
+
#endif
|
|
431
|
+
#ifdef USE_NORMALMAP
|
|
432
|
+
|
|
433
|
+
vNormalMapUv = ( tileTransform * (normalMapTransform * vec3( NORMALMAP_UV, 1 ) )).xy;
|
|
434
|
+
|
|
435
|
+
#endif
|
|
436
|
+
#ifdef USE_DISPLACEMENTMAP
|
|
437
|
+
|
|
438
|
+
vDisplacementMapUv = ( tileTransform * (displacementMapTransform * vec3( DISPLACEMENTMAP_UV, 1 ) )).xy;
|
|
439
|
+
|
|
440
|
+
#endif
|
|
441
|
+
#ifdef USE_EMISSIVEMAP
|
|
442
|
+
|
|
443
|
+
vEmissiveMapUv = ( tileTransform * (emissiveMapTransform * vec3( EMISSIVEMAP_UV, 1 ) )).xy;
|
|
444
|
+
|
|
445
|
+
#endif
|
|
446
|
+
#ifdef USE_METALNESSMAP
|
|
447
|
+
|
|
448
|
+
vMetalnessMapUv = ( tileTransform * (metalnessMapTransform * vec3( METALNESSMAP_UV, 1 ) )).xy;
|
|
449
|
+
|
|
450
|
+
#endif
|
|
451
|
+
#ifdef USE_ROUGHNESSMAP
|
|
452
|
+
|
|
453
|
+
vRoughnessMapUv = ( tileTransform * (roughnessMapTransform * vec3( ROUGHNESSMAP_UV, 1 ) )).xy;
|
|
454
|
+
|
|
455
|
+
#endif
|
|
456
|
+
#ifdef USE_ANISOTROPYMAP
|
|
457
|
+
|
|
458
|
+
vAnisotropyMapUv = ( tileTransform * (anisotropyMapTransform * vec3( ANISOTROPYMAP_UV, 1 ) )).xy;
|
|
459
|
+
|
|
460
|
+
#endif
|
|
461
|
+
#ifdef USE_CLEARCOATMAP
|
|
462
|
+
|
|
463
|
+
vClearcoatMapUv = ( tileTransform * (clearcoatMapTransform * vec3( CLEARCOATMAP_UV, 1 ) )).xy;
|
|
464
|
+
|
|
465
|
+
#endif
|
|
466
|
+
#ifdef USE_CLEARCOAT_NORMALMAP
|
|
467
|
+
|
|
468
|
+
vClearcoatNormalMapUv = ( tileTransform * (clearcoatNormalMapTransform * vec3( CLEARCOAT_NORMALMAP_UV, 1 ) )).xy;
|
|
469
|
+
|
|
470
|
+
#endif
|
|
471
|
+
#ifdef USE_CLEARCOAT_ROUGHNESSMAP
|
|
472
|
+
|
|
473
|
+
vClearcoatRoughnessMapUv = ( tileTransform * (clearcoatRoughnessMapTransform * vec3( CLEARCOAT_ROUGHNESSMAP_UV, 1 ) )).xy;
|
|
474
|
+
|
|
475
|
+
#endif
|
|
476
|
+
#ifdef USE_IRIDESCENCEMAP
|
|
477
|
+
|
|
478
|
+
vIridescenceMapUv = ( tileTransform * (iridescenceMapTransform * vec3( IRIDESCENCEMAP_UV, 1 ) )).xy;
|
|
479
|
+
|
|
480
|
+
#endif
|
|
481
|
+
#ifdef USE_IRIDESCENCE_THICKNESSMAP
|
|
482
|
+
|
|
483
|
+
vIridescenceThicknessMapUv = ( tileTransform * (iridescenceThicknessMapTransform * vec3( IRIDESCENCE_THICKNESSMAP_UV, 1 ) )).xy;
|
|
484
|
+
|
|
485
|
+
#endif
|
|
486
|
+
#ifdef USE_SHEEN_COLORMAP
|
|
487
|
+
|
|
488
|
+
vSheenColorMapUv = ( tileTransform * (sheenColorMapTransform * vec3( SHEEN_COLORMAP_UV, 1 ) )).xy;
|
|
489
|
+
|
|
490
|
+
#endif
|
|
491
|
+
#ifdef USE_SHEEN_ROUGHNESSMAP
|
|
492
|
+
|
|
493
|
+
vSheenRoughnessMapUv = ( tileTransform * (sheenRoughnessMapTransform * vec3( SHEEN_ROUGHNESSMAP_UV, 1 ) )).xy;
|
|
494
|
+
|
|
495
|
+
#endif
|
|
496
|
+
#ifdef USE_SPECULARMAP
|
|
497
|
+
|
|
498
|
+
vSpecularMapUv = ( tileTransform * (specularMapTransform * vec3( SPECULARMAP_UV, 1 ) )).xy;
|
|
499
|
+
|
|
500
|
+
#endif
|
|
501
|
+
#ifdef USE_SPECULAR_COLORMAP
|
|
502
|
+
|
|
503
|
+
vSpecularColorMapUv = ( tileTransform * (specularColorMapTransform * vec3( SPECULAR_COLORMAP_UV, 1 ) )).xy;
|
|
504
|
+
|
|
505
|
+
#endif
|
|
506
|
+
#ifdef USE_SPECULAR_INTENSITYMAP
|
|
507
|
+
|
|
508
|
+
vSpecularIntensityMapUv = ( tileTransform * (specularIntensityMapTransform * vec3( SPECULAR_INTENSITYMAP_UV, 1 ) )).xy;
|
|
509
|
+
|
|
510
|
+
#endif
|
|
511
|
+
#ifdef USE_TRANSMISSIONMAP
|
|
512
|
+
|
|
513
|
+
vTransmissionMapUv = ( tileTransform * transmissionMapTransform * vec3( TRANSMISSIONMAP_UV, 1 ) )).xy;
|
|
514
|
+
|
|
515
|
+
#endif
|
|
516
|
+
#ifdef USE_THICKNESSMAP
|
|
517
|
+
|
|
518
|
+
vThicknessMapUv = ( tileTransform * thicknessMapTransform * vec3( THICKNESSMAP_UV, 1 ) )).xy;
|
|
519
|
+
|
|
520
|
+
#endif
|
|
521
|
+
|
|
522
|
+
`,Hn=ue;function Un(){Hn.tile_pars_vertex=Bn,Hn.tile_vertex=Vn,Hn.tile_pars_fragment=zn,Hn.tile_fragment=Rn,Hn.soft_pars_vertex=In,Hn.soft_vertex=Ln,Hn.soft_pars_fragment=Fn,Hn.soft_fragment=Pn}var Wn=class extends o{constructor(e){super(),this.type=`ParticleEmitter`,this.system=e}clone(){let e=this.system.clone();return e.emitter.copy(this,!0),e.emitter}dispose(){}extractFromCache(e){let t=[];for(let n in e){let r=e[n];delete r.metadata,t.push(r)}return t}toJSON(e,t={}){let n=this.children;this.children=this.children.filter(e=>e.type!==`ParticleSystemPreview`);let r=super.toJSON(e);return this.children=n,this.system!==null&&(r.object.ps=this.system.toJSON(e,t)),r}},$;(function(e){e[e.BillBoard=0]=`BillBoard`,e[e.StretchedBillBoard=1]=`StretchedBillBoard`,e[e.Mesh=2]=`Mesh`,e[e.Trail=3]=`Trail`,e[e.HorizontalBillBoard=4]=`HorizontalBillBoard`,e[e.VerticalBillBoard=5]=`VerticalBillBoard`})($||={});var Gn=class extends _{constructor(e){super(),this.type=`VFXBatch`,this.maxParticles=1e3,this.systems=new Set;let t=new oe;t.mask=e.layers.mask;let n=e.material.clone();n.defines={},Object.assign(n.defines,e.material.defines),this.settings={instancingGeometry:e.instancingGeometry,renderMode:e.renderMode,renderOrder:e.renderOrder,material:n,uTileCount:e.uTileCount,vTileCount:e.vTileCount,blendTiles:e.blendTiles,softParticles:e.softParticles,softNearFade:e.softNearFade,softFarFade:e.softFarFade,layers:t},this.frustumCulled=!1,this.renderOrder=this.settings.renderOrder}addSystem(e){this.systems.add(e)}removeSystem(e){this.systems.delete(e)}applyDepthTexture(e){let t=this.material.uniforms.depthTexture;t&&t.value!==e&&(t.value=e,this.material.needsUpdate=!0)}getVisibleSystems(){return Array.from(this.systems).filter(e=>e.emitter.visible)}},Kn=new B(0,0,1),qn=new z,Jn=new B,Yn=new B;new B;var Xn=60,Zn=new g(1,1,1,1),Qn=class e{set time(e){this.emissionState.time=e}get time(){return this.emissionState.time}get layers(){return this.rendererSettings.layers}get texture(){return this.rendererSettings.material.map}set texture(e){this.rendererSettings.material.map=e,this.neededToUpdateRender=!0}get material(){return this.rendererSettings.material}set material(e){this.rendererSettings.material=e,this.neededToUpdateRender=!0}get uTileCount(){return this.rendererSettings.uTileCount}set uTileCount(e){this.rendererSettings.uTileCount=e,this.neededToUpdateRender=!0}get vTileCount(){return this.rendererSettings.vTileCount}set vTileCount(e){this.rendererSettings.vTileCount=e,this.neededToUpdateRender=!0}get blendTiles(){return this.rendererSettings.blendTiles}set blendTiles(e){this.rendererSettings.blendTiles=e,this.neededToUpdateRender=!0}get softParticles(){return this.rendererSettings.softParticles}set softParticles(e){this.rendererSettings.softParticles=e,this.neededToUpdateRender=!0}get softNearFade(){return this.rendererSettings.softNearFade}set softNearFade(e){this.rendererSettings.softNearFade=e,this.neededToUpdateRender=!0}get softFarFade(){return this.rendererSettings.softFarFade}set softFarFade(e){this.rendererSettings.softFarFade=e,this.neededToUpdateRender=!0}get instancingGeometry(){return this.rendererSettings.instancingGeometry}set instancingGeometry(e){this.restart(),this.particles.length=0,this.rendererSettings.instancingGeometry=e,this.neededToUpdateRender=!0}get renderMode(){return this.rendererSettings.renderMode}set renderMode(e){if(this.rendererSettings.renderMode!==e){let t=!1;switch(this.rendererSettings.renderMode===$.Trail&&(t=!0),this.rendererSettings.renderMode===$.Mesh&&(this.startRotation=new K(0)),e){case $.Trail:this.rendererEmitterSettings={startLength:new K(30),followLocalOrigin:!1},t=!0;break;case $.Mesh:this.rendererEmitterSettings={geometry:Zn},this.startRotation=new gt(new B(0,1,0),new K(0));break;case $.StretchedBillBoard:this.rendererEmitterSettings={speedFactor:0,lengthFactor:2},this.rendererSettings.instancingGeometry=Zn;break;case $.BillBoard:case $.VerticalBillBoard:case $.HorizontalBillBoard:this.rendererEmitterSettings={},this.rendererSettings.instancingGeometry=Zn}this.rendererSettings.renderMode=e,t&&(this.restart(),this.particles.length=0),this.neededToUpdateRender=!0}}get renderOrder(){return this.rendererSettings.renderOrder}set renderOrder(e){this.rendererSettings.renderOrder=e,this.neededToUpdateRender=!0}get blending(){return this.rendererSettings.material.blending}set blending(e){this.rendererSettings.material.blending=e,this.neededToUpdateRender=!0}constructor(e){if(this.temp=new B,this.travelDistance=0,this.normalMatrix=new Ye,this.memory=[],this.listeners={},this.firstTimeUpdate=!0,this.autoDestroy=e.autoDestroy!==void 0&&e.autoDestroy,this.duration=e.duration??1,this.looping=e.looping===void 0||e.looping,this.prewarm=e.prewarm!==void 0&&e.prewarm,this.startLife=e.startLife??new K(5),this.startSpeed=e.startSpeed??new K(0),this.startRotation=e.startRotation??new K(0),this.startSize=e.startSize??new K(1),this.startColor=e.startColor??new ut(new W(1,1,1,1)),this.emissionOverTime=e.emissionOverTime??new K(10),this.emissionOverDistance=e.emissionOverDistance??new K(0),this.emissionBursts=e.emissionBursts??[],this.onlyUsedByOther=e.onlyUsedByOther??!1,this.emitterShape=e.shape??new jt,this.behaviors=e.behaviors??[],this.worldSpace=e.worldSpace??!1,this.rendererEmitterSettings=e.rendererEmitterSettings??{},e.renderMode===$.StretchedBillBoard){let t=this.rendererEmitterSettings;e.speedFactor!==void 0&&(t.speedFactor=e.speedFactor),t.speedFactor=t.speedFactor??0,t.lengthFactor=t.lengthFactor??0}this.rendererSettings={instancingGeometry:e.instancingGeometry??Zn,renderMode:e.renderMode??$.BillBoard,renderOrder:e.renderOrder??0,material:e.material,uTileCount:e.uTileCount??1,vTileCount:e.vTileCount??1,blendTiles:e.blendTiles??!1,softParticles:e.softParticles??!1,softNearFade:e.softNearFade??0,softFarFade:e.softFarFade??0,layers:e.layers??new oe},this.neededToUpdateRender=!0,this.particles=[],this.startTileIndex=e.startTileIndex||new K(0),this.emitter=new Wn(this),this.paused=!1,this.particleNum=0,this.emissionState={isBursting:!1,burstParticleIndex:0,burstParticleCount:0,burstIndex:0,burstWaveIndex:0,time:0,waitEmiting:0,travelDistance:0},this.emissionBursts.forEach(e=>e.count.startGen(this.memory)),this.emissionOverDistance.startGen(this.memory),this.emitEnded=!1,this.markForDestroy=!1,this.prewarmed=!1}pause(){this.paused=!0}play(){this.paused=!1}stop(){this.restart(),this.pause()}spawn(e,t,n){qn.setFromRotationMatrix(n);let r=Jn,i=qn,a=Yn;n.decompose(r,i,a);for(let r=0;r<e;r++){for(t.burstParticleIndex=r,this.particleNum++;this.particles.length<this.particleNum;)this.rendererSettings.renderMode===$.Trail?this.particles.push(new Xt):this.particles.push(new Jt);let e=this.particles[this.particleNum-1];if(e.reset(),e.speedModifier=1,this.startColor.startGen(e.memory),this.startColor.genColor(e.memory,e.startColor,this.emissionState.time),e.color.copy(e.startColor),this.startSpeed.startGen(e.memory),e.startSpeed=this.startSpeed.genValue(e.memory,t.time/this.duration),this.startLife.startGen(e.memory),e.life=this.startLife.genValue(e.memory,t.time/this.duration),e.age=0,this.startSize.startGen(e.memory),this.startSize.type===`vec3function`)this.startSize.genValue(e.memory,e.startSize,t.time/this.duration);else{let n=this.startSize.genValue(e.memory,t.time/this.duration);e.startSize.set(n,n,n)}if(this.startTileIndex.startGen(e.memory),e.uvTile=this.startTileIndex.genValue(e.memory),e.size.copy(e.startSize),this.rendererSettings.renderMode===$.Mesh||this.rendererSettings.renderMode===$.BillBoard||this.rendererSettings.renderMode===$.VerticalBillBoard||this.rendererSettings.renderMode===$.HorizontalBillBoard||this.rendererSettings.renderMode===$.StretchedBillBoard){let n=e;this.startRotation.startGen(e.memory),this.rendererSettings.renderMode===$.Mesh?(n.rotation instanceof z||(n.rotation=new z),this.startRotation.type===`rotation`?this.startRotation.genValue(e.memory,n.rotation,1,t.time/this.duration):n.rotation.setFromAxisAngle(Kn,this.startRotation.genValue(n.memory,t.time/this.duration))):n.rotation=this.startRotation.type===`rotation`?0:this.startRotation.genValue(n.memory,t.time/this.duration)}else if(this.rendererSettings.renderMode===$.Trail){let n=e;this.rendererEmitterSettings.startLength.startGen(n.memory),n.length=this.rendererEmitterSettings.startLength.genValue(n.memory,t.time/this.duration)}if(this.emitterShape.initialize(e,t),this.rendererSettings.renderMode===$.Trail&&this.rendererEmitterSettings.followLocalOrigin){let t=e;t.localPosition=new B().copy(t.position)}this.worldSpace?(e.position.applyMatrix4(n),e.startSize.multiply(a).abs(),e.size.copy(e.startSize),e.velocity.multiply(a).applyMatrix3(this.normalMatrix),e.rotation&&e.rotation instanceof z&&e.rotation.multiplyQuaternions(qn,e.rotation)):this.onlyUsedByOther&&(e.parentMatrix=n);for(let t=0;t<this.behaviors.length;t++)this.behaviors[t].initialize(e,this)}}endEmit(){this.emitEnded=!0,this.autoDestroy&&(this.markForDestroy=!0),this.fire({type:`emitEnd`,particleSystem:this})}dispose(){this._renderer&&this._renderer.deleteSystem(this),this.emitter.dispose(),this.emitter.parent&&this.emitter.parent.remove(this.emitter),this.fire({type:`destroy`,particleSystem:this})}restart(){this.memory.length=0,this.paused=!1,this.particleNum=0,this.emissionState.isBursting=!1,this.emissionState.burstIndex=0,this.emissionState.burstWaveIndex=0,this.emissionState.time=0,this.emissionState.waitEmiting=0,this.behaviors.forEach(e=>{e.reset()}),this.emitEnded=!1,this.markForDestroy=!1,this.prewarmed=!1,this.emissionBursts.forEach(e=>e.count.startGen(this.memory)),this.emissionOverDistance.startGen(this.memory)}update(e){if(this.paused)return;let t=this.emitter;for(;t.parent;)t=t.parent;if(t.type!==`Scene`){this.dispose();return}if(this.firstTimeUpdate&&(this.firstTimeUpdate=!1,this.emitter.updateWorldMatrix(!0,!1)),this.emitEnded&&this.particleNum===0){this.markForDestroy&&this.emitter.parent&&this.dispose();return}if(this.looping&&this.prewarm&&!this.prewarmed){this.prewarmed=!0;for(let e=0;e<this.duration*Xn;e++)this.update(1/Xn)}e>.1&&(e=.1),this.neededToUpdateRender&&=(this._renderer&&this._renderer.updateSystem(this),!1),this.onlyUsedByOther||this.emit(e,this.emissionState,this.emitter.matrixWorld),this.emitterShape.update(this,e);for(let t=0;t<this.behaviors.length;t++){this.behaviors[t].frameUpdate(e);for(let n=0;n<this.particleNum;n++)this.particles[n].died||this.behaviors[t].update(this.particles[n],e)}for(let t=0;t<this.particleNum;t++)this.rendererEmitterSettings.followLocalOrigin&&this.particles[t].localPosition?(this.particles[t].position.copy(this.particles[t].localPosition),this.particles[t].parentMatrix?this.particles[t].position.applyMatrix4(this.particles[t].parentMatrix):this.particles[t].position.applyMatrix4(this.emitter.matrixWorld)):this.particles[t].position.addScaledVector(this.particles[t].velocity,e*this.particles[t].speedModifier),this.particles[t].age+=e;if(this.rendererSettings.renderMode===$.Trail)for(let e=0;e<this.particleNum;e++)this.particles[e].update();for(let e=0;e<this.particleNum;e++){let t=this.particles[e];t.died&&(!(t instanceof Xt)||t.previous.length===0)&&(this.particles[e]=this.particles[this.particleNum-1],this.particles[this.particleNum-1]=t,this.particleNum--,e--,this.fire({type:`particleDied`,particleSystem:this,particle:t}))}}emit(e,t,n){t.time>this.duration&&(this.looping?(t.time-=this.duration,t.burstIndex=0,this.behaviors.forEach(e=>{e.reset()})):!this.emitEnded&&!this.onlyUsedByOther&&this.endEmit()),this.normalMatrix.getNormalMatrix(n);let r=Math.ceil(t.waitEmiting);for(this.spawn(r,t,n),t.waitEmiting-=r;t.burstIndex<this.emissionBursts.length&&this.emissionBursts[t.burstIndex].time<=t.time;){if(Math.random()<this.emissionBursts[t.burstIndex].probability){let e=this.emissionBursts[t.burstIndex].count.genValue(this.memory,this.time);t.isBursting=!0,t.burstParticleCount=e,this.spawn(e,t,n),t.isBursting=!1}t.burstIndex++}if(!this.emitEnded&&(t.waitEmiting+=e*this.emissionOverTime.genValue(this.memory,t.time/this.duration),t.previousWorldPos!=null)){this.temp.set(n.elements[12],n.elements[13],n.elements[14]),t.travelDistance+=t.previousWorldPos.distanceTo(this.temp);let e=this.emissionOverDistance.genValue(this.memory,t.time/this.duration);if(t.travelDistance*e>0){let n=Math.floor(t.travelDistance*e);t.travelDistance-=n/e,t.waitEmiting+=n}}t.previousWorldPos===void 0&&(t.previousWorldPos=new B),t.previousWorldPos.set(n.elements[12],n.elements[13],n.elements[14]),t.time+=e}toJSON(e,t={}){if((e===void 0||typeof e==`string`)&&(e={geometries:{},materials:{},textures:{},images:{},shapes:{},skeletons:{},animations:{},nodes:{}}),e.materials[this.rendererSettings.material.uuid]=this.rendererSettings.material.toJSON(e),t.useUrlForImage&&this.texture?.source!==void 0){let t=this.texture.source;e.images[t.uuid]={uuid:t.uuid,url:this.texture.image.url}}let n;n=this.renderMode===$.Trail?{startLength:this.rendererEmitterSettings.startLength.toJSON(),followLocalOrigin:this.rendererEmitterSettings.followLocalOrigin}:this.renderMode===$.Mesh?{}:this.renderMode===$.StretchedBillBoard?{speedFactor:this.rendererEmitterSettings.speedFactor,lengthFactor:this.rendererEmitterSettings.lengthFactor}:{};let r=this.rendererSettings.instancingGeometry;return e.geometries&&!e.geometries[r.uuid]&&(e.geometries[r.uuid]=r.toJSON()),{version:`3.0`,autoDestroy:this.autoDestroy,looping:this.looping,prewarm:this.prewarm,duration:this.duration,shape:this.emitterShape.toJSON(),startLife:this.startLife.toJSON(),startSpeed:this.startSpeed.toJSON(),startRotation:this.startRotation.toJSON(),startSize:this.startSize.toJSON(),startColor:this.startColor.toJSON(),emissionOverTime:this.emissionOverTime.toJSON(),emissionOverDistance:this.emissionOverDistance.toJSON(),emissionBursts:this.emissionBursts.map(e=>({time:e.time,count:e.count.toJSON(),probability:e.probability,interval:e.interval,cycle:e.cycle})),onlyUsedByOther:this.onlyUsedByOther,instancingGeometry:this.rendererSettings.instancingGeometry.uuid,renderOrder:this.renderOrder,renderMode:this.renderMode,rendererEmitterSettings:n,material:this.rendererSettings.material.uuid,layers:this.layers.mask,startTileIndex:this.startTileIndex.toJSON(),uTileCount:this.uTileCount,vTileCount:this.vTileCount,blendTiles:this.blendTiles,softParticles:this.rendererSettings.softParticles,softFarFade:this.rendererSettings.softFarFade,softNearFade:this.rendererSettings.softNearFade,behaviors:this.behaviors.map(e=>e.toJSON()),worldSpace:this.worldSpace}}static fromJSON(n,r,i){let a=It(n.shape,r),o;if(n.renderMode===$.Trail){let e=n.rendererEmitterSettings;o={startLength:e.startLength==null?new K(30):q(e.startLength),followLocalOrigin:e.followLocalOrigin}}else n.renderMode===$.Mesh?o={}:n.renderMode===$.StretchedBillBoard?(o=n.rendererEmitterSettings,n.speedFactor!=null&&(o.speedFactor=n.speedFactor)):o={};let s=new oe;n.layers&&(s.mask=n.layers);let c=new e({autoDestroy:n.autoDestroy,looping:n.looping,prewarm:n.prewarm,duration:n.duration,shape:a,startLife:q(n.startLife),startSpeed:q(n.startSpeed),startRotation:xt(n.startRotation),startSize:xt(n.startSize),startColor:dt(n.startColor),emissionOverTime:q(n.emissionOverTime),emissionOverDistance:q(n.emissionOverDistance),emissionBursts:n.emissionBursts?.map(e=>({time:e.time,count:typeof e.count==`number`?new K(e.count):q(e.count),probability:e.probability??1,interval:e.interval??.1,cycle:e.cycle??1})),onlyUsedByOther:n.onlyUsedByOther,instancingGeometry:r.geometries[n.instancingGeometry],renderMode:n.renderMode,rendererEmitterSettings:o,renderOrder:n.renderOrder,layers:s,material:n.material?r.materials[n.material]:n.texture?new t({map:r.textures[n.texture],transparent:n.transparent??!0,blending:n.blending,side:2}):new t({color:16777215,transparent:!0,blending:2,side:2}),startTileIndex:typeof n.startTileIndex==`number`?new K(n.startTileIndex):q(n.startTileIndex),uTileCount:n.uTileCount,vTileCount:n.vTileCount,blendTiles:n.blendTiles,softParticles:n.softParticles,softFarFade:n.softFarFade,softNearFade:n.softNearFade,behaviors:[],worldSpace:n.worldSpace});return c.behaviors=n.behaviors.map(e=>{let t=On(e,c);return t&&t.type===`EmitSubParticleSystem`&&(i[e.subParticleSystem]=t),t}).filter(e=>e!==null),c}addBehavior(e){this.behaviors.push(e)}getRendererSettings(){return this.rendererSettings}addEventListener(e,t){this.listeners[e]||(this.listeners[e]=[]),this.listeners[e].push(t)}removeAllEventListeners(e){this.listeners[e]&&(this.listeners[e]=[])}removeEventListener(e,t){if(this.listeners[e]){let n=this.listeners[e].indexOf(t);n!==-1&&this.listeners[e].splice(n,1)}}fire(e){this.listeners[e.type]&&this.listeners[e.type].forEach(t=>t(e))}clone(){let t=[];for(let e of this.emissionBursts){let n={};Object.assign(n,e),t.push(n)}let n=[];for(let e of this.behaviors)n.push(e.clone());let r;r=this.renderMode===$.Trail?{startLength:this.rendererEmitterSettings.startLength.clone(),followLocalOrigin:this.rendererEmitterSettings.followLocalOrigin}:this.renderMode===$.StretchedBillBoard?{lengthFactor:this.rendererEmitterSettings.lengthFactor,speedFactor:this.rendererEmitterSettings.speedFactor}:{};let i=new oe;return i.mask=this.layers.mask,new e({autoDestroy:this.autoDestroy,looping:this.looping,duration:this.duration,shape:this.emitterShape.clone(),startLife:this.startLife.clone(),startSpeed:this.startSpeed.clone(),startRotation:this.startRotation.clone(),startSize:this.startSize.clone(),startColor:this.startColor.clone(),emissionOverTime:this.emissionOverTime.clone(),emissionOverDistance:this.emissionOverDistance.clone(),emissionBursts:t,onlyUsedByOther:this.onlyUsedByOther,instancingGeometry:this.rendererSettings.instancingGeometry,renderMode:this.renderMode,renderOrder:this.renderOrder,rendererEmitterSettings:r,material:this.rendererSettings.material,startTileIndex:this.startTileIndex,uTileCount:this.uTileCount,vTileCount:this.vTileCount,blendTiles:this.blendTiles,softParticles:this.softParticles,softFarFade:this.softFarFade,softNearFade:this.softNearFade,behaviors:n,worldSpace:this.worldSpace,layers:i})}},$n=`
|
|
523
|
+
|
|
524
|
+
#include <common>
|
|
525
|
+
#include <color_pars_fragment>
|
|
526
|
+
#include <map_pars_fragment>
|
|
527
|
+
#include <logdepthbuf_pars_fragment>
|
|
528
|
+
#include <clipping_planes_pars_fragment>
|
|
529
|
+
#include <alphatest_pars_fragment>
|
|
530
|
+
|
|
531
|
+
#include <tile_pars_fragment>
|
|
532
|
+
#include <soft_pars_fragment>
|
|
533
|
+
|
|
534
|
+
void main() {
|
|
535
|
+
|
|
536
|
+
#include <clipping_planes_fragment>
|
|
537
|
+
|
|
538
|
+
vec3 outgoingLight = vec3( 0.0 );
|
|
539
|
+
vec4 diffuseColor = vColor;
|
|
540
|
+
|
|
541
|
+
#include <logdepthbuf_fragment>
|
|
542
|
+
|
|
543
|
+
#include <tile_fragment>
|
|
544
|
+
#include <alphatest_fragment>
|
|
545
|
+
|
|
546
|
+
outgoingLight = diffuseColor.rgb;
|
|
547
|
+
|
|
548
|
+
#ifdef USE_COLOR_AS_ALPHA
|
|
549
|
+
gl_FragColor = vec4( outgoingLight, diffuseColor.r );
|
|
550
|
+
#else
|
|
551
|
+
gl_FragColor = vec4( outgoingLight, diffuseColor.a );
|
|
552
|
+
#endif
|
|
553
|
+
|
|
554
|
+
#include <soft_fragment>
|
|
555
|
+
#include <tonemapping_fragment>
|
|
556
|
+
}
|
|
557
|
+
`,er=`
|
|
558
|
+
#define STANDARD
|
|
559
|
+
|
|
560
|
+
#ifdef PHYSICAL
|
|
561
|
+
#define IOR
|
|
562
|
+
#define USE_SPECULAR
|
|
563
|
+
#endif
|
|
564
|
+
|
|
565
|
+
uniform vec3 diffuse;
|
|
566
|
+
uniform vec3 emissive;
|
|
567
|
+
uniform float roughness;
|
|
568
|
+
uniform float metalness;
|
|
569
|
+
uniform float opacity;
|
|
570
|
+
|
|
571
|
+
#ifdef IOR
|
|
572
|
+
uniform float ior;
|
|
573
|
+
#endif
|
|
574
|
+
|
|
575
|
+
#ifdef USE_SPECULAR
|
|
576
|
+
uniform float specularIntensity;
|
|
577
|
+
uniform vec3 specularColor;
|
|
578
|
+
|
|
579
|
+
#ifdef USE_SPECULAR_COLORMAP
|
|
580
|
+
uniform sampler2D specularColorMap;
|
|
581
|
+
#endif
|
|
582
|
+
|
|
583
|
+
#ifdef USE_SPECULAR_INTENSITYMAP
|
|
584
|
+
uniform sampler2D specularIntensityMap;
|
|
585
|
+
#endif
|
|
586
|
+
#endif
|
|
587
|
+
|
|
588
|
+
#ifdef USE_CLEARCOAT
|
|
589
|
+
uniform float clearcoat;
|
|
590
|
+
uniform float clearcoatRoughness;
|
|
591
|
+
#endif
|
|
592
|
+
|
|
593
|
+
#ifdef USE_DISPERSION
|
|
594
|
+
uniform float dispersion;
|
|
595
|
+
#endif
|
|
596
|
+
|
|
597
|
+
#ifdef USE_IRIDESCENCE
|
|
598
|
+
uniform float iridescence;
|
|
599
|
+
uniform float iridescenceIOR;
|
|
600
|
+
uniform float iridescenceThicknessMinimum;
|
|
601
|
+
uniform float iridescenceThicknessMaximum;
|
|
602
|
+
#endif
|
|
603
|
+
|
|
604
|
+
#ifdef USE_SHEEN
|
|
605
|
+
uniform vec3 sheenColor;
|
|
606
|
+
uniform float sheenRoughness;
|
|
607
|
+
|
|
608
|
+
#ifdef USE_SHEEN_COLORMAP
|
|
609
|
+
uniform sampler2D sheenColorMap;
|
|
610
|
+
#endif
|
|
611
|
+
|
|
612
|
+
#ifdef USE_SHEEN_ROUGHNESSMAP
|
|
613
|
+
uniform sampler2D sheenRoughnessMap;
|
|
614
|
+
#endif
|
|
615
|
+
#endif
|
|
616
|
+
|
|
617
|
+
#ifdef USE_ANISOTROPY
|
|
618
|
+
uniform vec2 anisotropyVector;
|
|
619
|
+
|
|
620
|
+
#ifdef USE_ANISOTROPYMAP
|
|
621
|
+
uniform sampler2D anisotropyMap;
|
|
622
|
+
#endif
|
|
623
|
+
#endif
|
|
624
|
+
|
|
625
|
+
varying vec3 vViewPosition;
|
|
626
|
+
|
|
627
|
+
#include <common>
|
|
628
|
+
#include <packing>
|
|
629
|
+
#include <dithering_pars_fragment>
|
|
630
|
+
#include <color_pars_fragment>
|
|
631
|
+
#include <uv_pars_fragment>
|
|
632
|
+
#include <map_pars_fragment>
|
|
633
|
+
#include <alphamap_pars_fragment>
|
|
634
|
+
#include <alphatest_pars_fragment>
|
|
635
|
+
#include <alphahash_pars_fragment>
|
|
636
|
+
#include <aomap_pars_fragment>
|
|
637
|
+
#include <lightmap_pars_fragment>
|
|
638
|
+
#include <emissivemap_pars_fragment>
|
|
639
|
+
#include <iridescence_fragment>
|
|
640
|
+
#include <cube_uv_reflection_fragment>
|
|
641
|
+
#include <envmap_common_pars_fragment>
|
|
642
|
+
#include <envmap_physical_pars_fragment>
|
|
643
|
+
#include <fog_pars_fragment>
|
|
644
|
+
#include <lights_pars_begin>
|
|
645
|
+
#include <normal_pars_fragment>
|
|
646
|
+
#include <lights_physical_pars_fragment>
|
|
647
|
+
#include <transmission_pars_fragment>
|
|
648
|
+
#include <shadowmap_pars_fragment>
|
|
649
|
+
#include <bumpmap_pars_fragment>
|
|
650
|
+
#include <normalmap_pars_fragment>
|
|
651
|
+
#include <clearcoat_pars_fragment>
|
|
652
|
+
#include <iridescence_pars_fragment>
|
|
653
|
+
#include <roughnessmap_pars_fragment>
|
|
654
|
+
#include <metalnessmap_pars_fragment>
|
|
655
|
+
#include <logdepthbuf_pars_fragment>
|
|
656
|
+
#include <clipping_planes_pars_fragment>
|
|
657
|
+
|
|
658
|
+
void main() {
|
|
659
|
+
|
|
660
|
+
vec4 diffuseColor = vec4( diffuse, opacity );
|
|
661
|
+
#include <clipping_planes_fragment>
|
|
662
|
+
|
|
663
|
+
ReflectedLight reflectedLight = ReflectedLight( vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ), vec3( 0.0 ) );
|
|
664
|
+
vec3 totalEmissiveRadiance = emissive;
|
|
665
|
+
|
|
666
|
+
#include <logdepthbuf_fragment>
|
|
667
|
+
#include <map_fragment>
|
|
668
|
+
#include <color_fragment>
|
|
669
|
+
#include <alphamap_fragment>
|
|
670
|
+
#include <alphatest_fragment>
|
|
671
|
+
#include <alphahash_fragment>
|
|
672
|
+
#include <roughnessmap_fragment>
|
|
673
|
+
#include <metalnessmap_fragment>
|
|
674
|
+
#include <normal_fragment_begin>
|
|
675
|
+
#include <normal_fragment_maps>
|
|
676
|
+
#include <clearcoat_normal_fragment_begin>
|
|
677
|
+
#include <clearcoat_normal_fragment_maps>
|
|
678
|
+
#include <emissivemap_fragment>
|
|
679
|
+
|
|
680
|
+
// accumulation
|
|
681
|
+
#include <lights_physical_fragment>
|
|
682
|
+
#include <lights_fragment_begin>
|
|
683
|
+
#include <lights_fragment_maps>
|
|
684
|
+
#include <lights_fragment_end>
|
|
685
|
+
|
|
686
|
+
// modulation
|
|
687
|
+
#include <aomap_fragment>
|
|
688
|
+
|
|
689
|
+
vec3 totalDiffuse = reflectedLight.directDiffuse + reflectedLight.indirectDiffuse;
|
|
690
|
+
vec3 totalSpecular = reflectedLight.directSpecular + reflectedLight.indirectSpecular;
|
|
691
|
+
|
|
692
|
+
#include <transmission_fragment>
|
|
693
|
+
|
|
694
|
+
vec3 outgoingLight = totalDiffuse + totalSpecular + totalEmissiveRadiance;
|
|
695
|
+
|
|
696
|
+
#ifdef USE_SHEEN
|
|
697
|
+
|
|
698
|
+
// Sheen energy compensation approximation calculation can be found at the end of
|
|
699
|
+
// https://drive.google.com/file/d/1T0D1VSyR4AllqIJTQAraEIzjlb5h4FKH/view?usp=sharing
|
|
700
|
+
float sheenEnergyComp = 1.0 - 0.157 * max3( material.sheenColor );
|
|
701
|
+
|
|
702
|
+
outgoingLight = outgoingLight * sheenEnergyComp + sheenSpecularDirect + sheenSpecularIndirect;
|
|
703
|
+
|
|
704
|
+
#endif
|
|
705
|
+
|
|
706
|
+
#ifdef USE_CLEARCOAT
|
|
707
|
+
|
|
708
|
+
float dotNVcc = saturate( dot( geometryClearcoatNormal, geometryViewDir ) );
|
|
709
|
+
|
|
710
|
+
vec3 Fcc = F_Schlick( material.clearcoatF0, material.clearcoatF90, dotNVcc );
|
|
711
|
+
|
|
712
|
+
outgoingLight = outgoingLight * ( 1.0 - material.clearcoat * Fcc ) + ( clearcoatSpecularDirect + clearcoatSpecularIndirect ) * material.clearcoat;
|
|
713
|
+
|
|
714
|
+
#endif
|
|
715
|
+
|
|
716
|
+
#include <opaque_fragment>
|
|
717
|
+
#include <tonemapping_fragment>
|
|
718
|
+
#include <colorspace_fragment>
|
|
719
|
+
#include <fog_fragment>
|
|
720
|
+
#include <premultiplied_alpha_fragment>
|
|
721
|
+
#include <dithering_fragment>
|
|
722
|
+
}`,tr=`
|
|
723
|
+
#include <common>
|
|
724
|
+
#include <color_pars_vertex>
|
|
725
|
+
#include <logdepthbuf_pars_vertex>
|
|
726
|
+
#include <clipping_planes_pars_vertex>
|
|
727
|
+
|
|
728
|
+
#include <tile_pars_vertex>
|
|
729
|
+
#include <soft_pars_vertex>
|
|
730
|
+
|
|
731
|
+
attribute vec3 offset;
|
|
732
|
+
attribute float rotation;
|
|
733
|
+
attribute vec3 size;
|
|
734
|
+
|
|
735
|
+
void main() {
|
|
736
|
+
|
|
737
|
+
vec2 alignedPosition = position.xy * size.xy;
|
|
738
|
+
|
|
739
|
+
vec2 rotatedPosition;
|
|
740
|
+
rotatedPosition.x = cos( rotation ) * alignedPosition.x - sin( rotation ) * alignedPosition.y;
|
|
741
|
+
rotatedPosition.y = sin( rotation ) * alignedPosition.x + cos( rotation ) * alignedPosition.y;
|
|
742
|
+
#ifdef HORIZONTAL
|
|
743
|
+
vec4 mvPosition = modelMatrix * vec4( offset, 1.0 );
|
|
744
|
+
mvPosition.x += rotatedPosition.x;
|
|
745
|
+
mvPosition.z -= rotatedPosition.y;
|
|
746
|
+
mvPosition = viewMatrix * mvPosition;
|
|
747
|
+
#elif defined(VERTICAL)
|
|
748
|
+
vec4 mvPosition = modelMatrix * vec4( offset, 1.0 );
|
|
749
|
+
mvPosition.y += rotatedPosition.y;
|
|
750
|
+
mvPosition = viewMatrix * mvPosition;
|
|
751
|
+
mvPosition.x += rotatedPosition.x;
|
|
752
|
+
#else
|
|
753
|
+
vec4 mvPosition = modelViewMatrix * vec4( offset, 1.0 );
|
|
754
|
+
mvPosition.xy += rotatedPosition;
|
|
755
|
+
#endif
|
|
756
|
+
|
|
757
|
+
vColor = color;
|
|
758
|
+
|
|
759
|
+
gl_Position = projectionMatrix * mvPosition;
|
|
760
|
+
|
|
761
|
+
#include <logdepthbuf_vertex>
|
|
762
|
+
|
|
763
|
+
#include <clipping_planes_vertex>
|
|
764
|
+
|
|
765
|
+
#include <tile_vertex>
|
|
766
|
+
#include <soft_vertex>
|
|
767
|
+
}
|
|
768
|
+
`,nr=`
|
|
769
|
+
#include <common>
|
|
770
|
+
#include <color_pars_vertex>
|
|
771
|
+
#include <logdepthbuf_pars_vertex>
|
|
772
|
+
#include <clipping_planes_pars_vertex>
|
|
773
|
+
#include <tile_pars_vertex>
|
|
774
|
+
#include <soft_pars_vertex>
|
|
775
|
+
|
|
776
|
+
attribute vec3 offset;
|
|
777
|
+
attribute vec4 rotation;
|
|
778
|
+
attribute vec3 size;
|
|
779
|
+
// attribute vec4 color;
|
|
780
|
+
|
|
781
|
+
void main() {
|
|
782
|
+
|
|
783
|
+
float x2 = rotation.x + rotation.x, y2 = rotation.y + rotation.y, z2 = rotation.z + rotation.z;
|
|
784
|
+
float xx = rotation.x * x2, xy = rotation.x * y2, xz = rotation.x * z2;
|
|
785
|
+
float yy = rotation.y * y2, yz = rotation.y * z2, zz = rotation.z * z2;
|
|
786
|
+
float wx = rotation.w * x2, wy = rotation.w * y2, wz = rotation.w * z2;
|
|
787
|
+
float sx = size.x, sy = size.y, sz = size.z;
|
|
788
|
+
|
|
789
|
+
mat4 matrix = mat4(( 1.0 - ( yy + zz ) ) * sx, ( xy + wz ) * sx, ( xz - wy ) * sx, 0.0, // 1. column
|
|
790
|
+
( xy - wz ) * sy, ( 1.0 - ( xx + zz ) ) * sy, ( yz + wx ) * sy, 0.0, // 2. column
|
|
791
|
+
( xz + wy ) * sz, ( yz - wx ) * sz, ( 1.0 - ( xx + yy ) ) * sz, 0.0, // 3. column
|
|
792
|
+
offset.x, offset.y, offset.z, 1.0);
|
|
793
|
+
|
|
794
|
+
vec4 mvPosition = modelViewMatrix * (matrix * vec4( position, 1.0 ));
|
|
795
|
+
|
|
796
|
+
vColor = color;
|
|
797
|
+
|
|
798
|
+
gl_Position = projectionMatrix * mvPosition;
|
|
799
|
+
|
|
800
|
+
#include <logdepthbuf_vertex>
|
|
801
|
+
#include <clipping_planes_vertex>
|
|
802
|
+
#include <tile_vertex>
|
|
803
|
+
#include <soft_vertex>
|
|
804
|
+
}
|
|
805
|
+
`,rr=`
|
|
806
|
+
#define STANDARD
|
|
807
|
+
varying vec3 vViewPosition;
|
|
808
|
+
#ifdef USE_TRANSMISSION
|
|
809
|
+
varying vec3 vWorldPosition;
|
|
810
|
+
#endif
|
|
811
|
+
#include <common>
|
|
812
|
+
|
|
813
|
+
attribute vec3 offset;
|
|
814
|
+
attribute vec4 rotation;
|
|
815
|
+
attribute vec3 size;
|
|
816
|
+
#include <tile_pars_vertex>
|
|
817
|
+
#include <displacementmap_pars_vertex>
|
|
818
|
+
#include <color_pars_vertex>
|
|
819
|
+
#include <fog_pars_vertex>
|
|
820
|
+
#include <normal_pars_vertex>
|
|
821
|
+
#include <morphtarget_pars_vertex>
|
|
822
|
+
#include <skinning_pars_vertex>
|
|
823
|
+
#include <shadowmap_pars_vertex>
|
|
824
|
+
#include <logdepthbuf_pars_vertex>
|
|
825
|
+
#include <clipping_planes_pars_vertex>
|
|
826
|
+
|
|
827
|
+
void main() {
|
|
828
|
+
|
|
829
|
+
#include <tile_vertex>
|
|
830
|
+
float x2 = rotation.x + rotation.x, y2 = rotation.y + rotation.y, z2 = rotation.z + rotation.z;
|
|
831
|
+
float xx = rotation.x * x2, xy = rotation.x * y2, xz = rotation.x * z2;
|
|
832
|
+
float yy = rotation.y * y2, yz = rotation.y * z2, zz = rotation.z * z2;
|
|
833
|
+
float wx = rotation.w * x2, wy = rotation.w * y2, wz = rotation.w * z2;
|
|
834
|
+
float sx = size.x, sy = size.y, sz = size.z;
|
|
835
|
+
|
|
836
|
+
mat4 particleMatrix = mat4(( 1.0 - ( yy + zz ) ) * sx, ( xy + wz ) * sx, ( xz - wy ) * sx, 0.0, // 1. column
|
|
837
|
+
( xy - wz ) * sy, ( 1.0 - ( xx + zz ) ) * sy, ( yz + wx ) * sy, 0.0, // 2. column
|
|
838
|
+
( xz + wy ) * sz, ( yz - wx ) * sz, ( 1.0 - ( xx + yy ) ) * sz, 0.0, // 3. column
|
|
839
|
+
offset.x, offset.y, offset.z, 1.0);
|
|
840
|
+
|
|
841
|
+
#include <color_vertex>
|
|
842
|
+
#include <morphinstance_vertex>
|
|
843
|
+
#include <morphcolor_vertex>
|
|
844
|
+
#include <batching_vertex>
|
|
845
|
+
|
|
846
|
+
#include <beginnormal_vertex>
|
|
847
|
+
#include <morphnormal_vertex>
|
|
848
|
+
#include <skinbase_vertex>
|
|
849
|
+
#include <skinnormal_vertex>
|
|
850
|
+
|
|
851
|
+
// replace defaultnormal_vertex
|
|
852
|
+
vec3 transformedNormal = objectNormal;
|
|
853
|
+
mat3 m = mat3( particleMatrix );
|
|
854
|
+
transformedNormal /= vec3( dot( m[ 0 ], m[ 0 ] ), dot( m[ 1 ], m[ 1 ] ), dot( m[ 2 ], m[ 2 ] ) );
|
|
855
|
+
transformedNormal = m * transformedNormal;
|
|
856
|
+
transformedNormal = normalMatrix * transformedNormal;
|
|
857
|
+
#ifdef FLIP_SIDED
|
|
858
|
+
transformedNormal = - transformedNormal;
|
|
859
|
+
#endif
|
|
860
|
+
#ifdef USE_TANGENT
|
|
861
|
+
vec3 transformedTangent = ( modelViewMatrix * vec4( objectTangent, 0.0 ) ).xyz;
|
|
862
|
+
#ifdef FLIP_SIDED
|
|
863
|
+
transformedTangent = - transformedTangent;
|
|
864
|
+
#endif
|
|
865
|
+
#endif
|
|
866
|
+
|
|
867
|
+
#include <normal_vertex>
|
|
868
|
+
#include <begin_vertex>
|
|
869
|
+
#include <morphtarget_vertex>
|
|
870
|
+
#include <skinning_vertex>
|
|
871
|
+
#include <displacementmap_vertex>
|
|
872
|
+
|
|
873
|
+
// replace include <project_vertex>
|
|
874
|
+
vec4 mvPosition = vec4( transformed, 1.0 );
|
|
875
|
+
mvPosition = modelViewMatrix * (particleMatrix * mvPosition);
|
|
876
|
+
gl_Position = projectionMatrix * mvPosition;
|
|
877
|
+
|
|
878
|
+
#include <logdepthbuf_vertex>
|
|
879
|
+
#include <clipping_planes_vertex>
|
|
880
|
+
|
|
881
|
+
vViewPosition = - mvPosition.xyz;
|
|
882
|
+
|
|
883
|
+
#include <worldpos_vertex>
|
|
884
|
+
#include <shadowmap_vertex>
|
|
885
|
+
#include <fog_vertex>
|
|
886
|
+
#ifdef USE_TRANSMISSION
|
|
887
|
+
vWorldPosition = worldPosition.xyz;
|
|
888
|
+
#endif
|
|
889
|
+
}
|
|
890
|
+
`,ir=`
|
|
891
|
+
#include <common>
|
|
892
|
+
#include <color_pars_vertex>
|
|
893
|
+
#include <logdepthbuf_pars_vertex>
|
|
894
|
+
#include <clipping_planes_pars_vertex>
|
|
895
|
+
|
|
896
|
+
#include <tile_pars_vertex>
|
|
897
|
+
#include <soft_pars_vertex>
|
|
898
|
+
|
|
899
|
+
attribute vec3 offset;
|
|
900
|
+
attribute float rotation;
|
|
901
|
+
attribute vec3 size;
|
|
902
|
+
attribute vec4 velocity;
|
|
903
|
+
|
|
904
|
+
uniform float speedFactor;
|
|
905
|
+
|
|
906
|
+
void main() {
|
|
907
|
+
float lengthFactor = velocity.w;
|
|
908
|
+
float avgSize = (size.x + size.y) * 0.5;
|
|
909
|
+
#ifdef USE_SKEW
|
|
910
|
+
vec4 mvPosition = modelViewMatrix * vec4( offset, 1.0 );
|
|
911
|
+
vec3 viewVelocity = normalMatrix * velocity.xyz;
|
|
912
|
+
|
|
913
|
+
vec3 scaledPos = vec3(position.xy * size.xy, position.z);
|
|
914
|
+
float vlength = length(viewVelocity);
|
|
915
|
+
vec3 projVelocity = dot(scaledPos, viewVelocity) * viewVelocity / vlength;
|
|
916
|
+
mvPosition.xyz += scaledPos + projVelocity * (speedFactor / avgSize + lengthFactor / vlength);
|
|
917
|
+
#else
|
|
918
|
+
vec4 mvPosition = modelViewMatrix * vec4( offset, 1.0 );
|
|
919
|
+
vec3 viewVelocity = normalMatrix * velocity.xyz;
|
|
920
|
+
float vlength = length(viewVelocity);
|
|
921
|
+
mvPosition.xyz += position.y * normalize(cross(mvPosition.xyz, viewVelocity)) * avgSize; // switch the cross to match unity implementation
|
|
922
|
+
mvPosition.xyz -= (position.x + 0.5) * viewVelocity * (1.0 + lengthFactor / vlength) * avgSize; // minus position.x to match unity implementation
|
|
923
|
+
#endif
|
|
924
|
+
vColor = color;
|
|
925
|
+
gl_Position = projectionMatrix * mvPosition;
|
|
926
|
+
#include <logdepthbuf_vertex>
|
|
927
|
+
#include <clipping_planes_vertex>
|
|
928
|
+
#include <tile_vertex>
|
|
929
|
+
#include <soft_vertex>
|
|
930
|
+
}
|
|
931
|
+
`;function ar(e){return e===0?`uv`:`uv${e}`}var or=class extends ae{constructor(e){super(e)}onBeforeCompile(e,t){super.onBeforeCompile(e,t),e.vertexShader=rr,e.fragmentShader=er}},sr=class extends re{constructor(e){super(e)}onBeforeCompile(e,t){super.onBeforeCompile(e,t),e.vertexShader=rr,e.fragmentShader=er}},cr=class extends Gn{constructor(e){super(e),this.vector_=new B,this.vector2_=new B,this.vector3_=new B,this.quaternion_=new z,this.quaternion2_=new z,this.quaternion3_=new z,this.rotationMat_=new Ye,this.rotationMat2_=new Ye,this.maxParticles=1e3,this.setupBuffers(),this.rebuildMaterial()}buildExpandableBuffers(){this.offsetBuffer=new c(new Float32Array(this.maxParticles*3),3),this.offsetBuffer.setUsage(v),this.geometry.setAttribute(`offset`,this.offsetBuffer),this.colorBuffer=new c(new Float32Array(this.maxParticles*4),4),this.colorBuffer.setUsage(v),this.geometry.setAttribute(`color`,this.colorBuffer),this.settings.renderMode===$.Mesh?(this.rotationBuffer=new c(new Float32Array(this.maxParticles*4),4),this.rotationBuffer.setUsage(v),this.geometry.setAttribute(`rotation`,this.rotationBuffer)):(this.settings.renderMode===$.BillBoard||this.settings.renderMode===$.HorizontalBillBoard||this.settings.renderMode===$.VerticalBillBoard||this.settings.renderMode===$.StretchedBillBoard)&&(this.rotationBuffer=new c(new Float32Array(this.maxParticles),1),this.rotationBuffer.setUsage(v),this.geometry.setAttribute(`rotation`,this.rotationBuffer)),this.sizeBuffer=new c(new Float32Array(this.maxParticles*3),3),this.sizeBuffer.setUsage(v),this.geometry.setAttribute(`size`,this.sizeBuffer),this.uvTileBuffer=new c(new Float32Array(this.maxParticles),1),this.uvTileBuffer.setUsage(v),this.geometry.setAttribute(`uvTile`,this.uvTileBuffer),this.settings.renderMode===$.StretchedBillBoard&&(this.velocityBuffer=new c(new Float32Array(this.maxParticles*4),4),this.velocityBuffer.setUsage(v),this.geometry.setAttribute(`velocity`,this.velocityBuffer))}setupBuffers(){this.geometry&&this.geometry.dispose(),this.geometry=new S,this.geometry.setIndex(this.settings.instancingGeometry.getIndex()),this.settings.instancingGeometry.hasAttribute(`normal`)&&this.geometry.setAttribute(`normal`,this.settings.instancingGeometry.getAttribute(`normal`)),this.geometry.setAttribute(`position`,this.settings.instancingGeometry.getAttribute(`position`)),this.settings.instancingGeometry.hasAttribute(`uv`)&&this.geometry.setAttribute(`uv`,this.settings.instancingGeometry.getAttribute(`uv`)),this.buildExpandableBuffers()}expandBuffers(e){for(;e>=this.maxParticles;)this.maxParticles*=2;this.setupBuffers()}rebuildMaterial(){this.layers.mask=this.settings.layers.mask;let e={},t={};this.settings.material.type!==`MeshStandardMaterial`&&this.settings.material.type!==`MeshPhysicalMaterial`&&(e.map=new x(this.settings.material.map)),this.settings.material.alphaTest&&(t.USE_ALPHATEST=``,e.alphaTest=new x(this.settings.material.alphaTest)),t.USE_UV=``;let n=this.settings.uTileCount,r=this.settings.vTileCount;(n>1||r>1)&&(t.UV_TILE=``,e.tileCount=new x(new Je(n,r))),this.settings.material.defines&&this.settings.material.defines.USE_COLOR_AS_ALPHA!==void 0&&(t.USE_COLOR_AS_ALPHA=``),this.settings.material.normalMap&&(t.USE_NORMALMAP=``,t.NORMALMAP_UV=ar(this.settings.material.normalMap.channel),e.normalMapTransform=new x(new Ye().copy(this.settings.material.normalMap.matrix))),this.settings.material.map&&(t.USE_MAP=``,this.settings.blendTiles&&(t.TILE_BLEND=``),t.MAP_UV=ar(this.settings.material.map.channel),e.mapTransform=new x(new Ye().copy(this.settings.material.map.matrix))),t.USE_COLOR_ALPHA=``;let i;if(this.settings.softParticles){t.SOFT_PARTICLES=``;let n=this.settings.softNearFade,r=1/(this.settings.softFarFade-this.settings.softNearFade);e.softParams=new x(new Je(n,r)),e.depthTexture=new x(null);let a=e.projParams=new x(new W);i=(e,t,n)=>{a.value.set(n.near,n.far,0,0)}}let a=!1;if(this.settings.renderMode===$.BillBoard||this.settings.renderMode===$.VerticalBillBoard||this.settings.renderMode===$.HorizontalBillBoard||this.settings.renderMode===$.Mesh){let n,r;this.settings.renderMode===$.Mesh?this.settings.material.type===`MeshStandardMaterial`||this.settings.material.type===`MeshPhysicalMaterial`?(t.USE_COLOR=``,n=rr,r=er,a=!0):(n=nr,r=$n):(n=tr,r=$n),this.settings.renderMode===$.VerticalBillBoard?t.VERTICAL=``:this.settings.renderMode===$.HorizontalBillBoard&&(t.HORIZONTAL=``);let i=!1;this.settings.renderMode===$.Mesh&&(this.settings.material.type===`MeshStandardMaterial`?(this.material=new or({}),this.material.copy(this.settings.material),this.material.uniforms=e,this.material.defines=t,i=!0):this.settings.material.type===`MeshPhysicalMaterial`&&(this.material=new sr({}),this.material.copy(this.settings.material),this.material.uniforms=e,this.material.defines=t,i=!0)),i||(this.material=new b({uniforms:e,defines:t,vertexShader:n,fragmentShader:r,transparent:this.settings.material.transparent,depthWrite:!this.settings.material.transparent,blending:this.settings.material.blending,blendDst:this.settings.material.blendDst,blendSrc:this.settings.material.blendSrc,blendEquation:this.settings.material.blendEquation,premultipliedAlpha:this.settings.material.premultipliedAlpha,side:this.settings.material.side,alphaTest:this.settings.material.alphaTest,depthTest:this.settings.material.depthTest,lights:a}))}else if(this.settings.renderMode===$.StretchedBillBoard)e.speedFactor=new x(1),this.material=new b({uniforms:e,defines:t,vertexShader:ir,fragmentShader:$n,transparent:this.settings.material.transparent,depthWrite:!this.settings.material.transparent,blending:this.settings.material.blending,blendDst:this.settings.material.blendDst,blendSrc:this.settings.material.blendSrc,blendEquation:this.settings.material.blendEquation,premultipliedAlpha:this.settings.material.premultipliedAlpha,side:this.settings.material.side,alphaTest:this.settings.material.alphaTest,depthTest:this.settings.material.depthTest});else throw Error(`render mode unavailable`);this.material&&i&&(this.material.onBeforeRender=i)}update(){let e=0,t=0,n=this.getVisibleSystems();for(let e of n)t+=e.particleNum;t>this.maxParticles&&this.expandBuffers(t);for(let t of n){t.emitter.updateMatrixWorld&&(t.emitter.updateWorldMatrix(!0,!1),t.emitter.updateMatrixWorld(!0));let n=t.particles,r=t.particleNum,i=this.quaternion2_,a=this.vector2_,o=this.vector3_;t.emitter.matrixWorld.decompose(a,i,o),this.rotationMat_.setFromMatrix4(t.emitter.matrixWorld);for(let a=0;a<r;a++,e++){let r=n[a];if(this.settings.renderMode===$.Mesh){let n;if(t.worldSpace)n=r.rotation;else{let e;e=r.parentMatrix?this.quaternion3_.setFromRotationMatrix(r.parentMatrix):i,n=this.quaternion_,n.copy(e).multiply(r.rotation)}this.rotationBuffer.setXYZW(e,n.x,n.y,n.z,n.w)}else(this.settings.renderMode===$.StretchedBillBoard||this.settings.renderMode===$.VerticalBillBoard||this.settings.renderMode===$.HorizontalBillBoard||this.settings.renderMode===$.BillBoard)&&this.rotationBuffer.setX(e,r.rotation);let s;if(t.worldSpace?s=r.position:(s=this.vector_,r.parentMatrix?s.copy(r.position).applyMatrix4(r.parentMatrix):s.copy(r.position).applyMatrix4(t.emitter.matrixWorld)),this.offsetBuffer.setXYZ(e,s.x,s.y,s.z),this.colorBuffer.setXYZW(e,r.color.x,r.color.y,r.color.z,r.color.w),t.worldSpace||r.parentMatrix?this.sizeBuffer.setXYZ(e,r.size.x,r.size.y,r.size.z):this.sizeBuffer.setXYZ(e,r.size.x*Math.abs(o.x),r.size.y*Math.abs(o.y),r.size.z*Math.abs(o.z)),this.uvTileBuffer.setX(e,r.uvTile),this.settings.renderMode===$.StretchedBillBoard&&this.velocityBuffer){let n=t.rendererEmitterSettings.speedFactor;n===0&&(n=.001);let i=t.rendererEmitterSettings.lengthFactor,a;t.worldSpace?a=r.velocity:(a=this.vector_,r.parentMatrix?(this.rotationMat2_.setFromMatrix4(r.parentMatrix),a.copy(r.velocity).applyMatrix3(this.rotationMat2_)):a.copy(r.velocity).applyMatrix3(this.rotationMat_)),this.velocityBuffer.setXYZW(e,a.x*n,a.y*n,a.z*n,i)}}}this.geometry.instanceCount=e,e>0&&(this.offsetBuffer.clearUpdateRanges(),this.offsetBuffer.addUpdateRange(0,e*3),this.offsetBuffer.needsUpdate=!0,this.sizeBuffer.clearUpdateRanges(),this.sizeBuffer.addUpdateRange(0,e*3),this.sizeBuffer.needsUpdate=!0,this.colorBuffer.clearUpdateRanges(),this.colorBuffer.addUpdateRange(0,e*4),this.colorBuffer.needsUpdate=!0,this.uvTileBuffer.clearUpdateRanges(),this.uvTileBuffer.addUpdateRange(0,e),this.uvTileBuffer.needsUpdate=!0,this.settings.renderMode===$.StretchedBillBoard&&this.velocityBuffer&&(this.velocityBuffer.clearUpdateRanges(),this.velocityBuffer.addUpdateRange(0,e*4),this.velocityBuffer.needsUpdate=!0),this.settings.renderMode===$.Mesh?(this.rotationBuffer.clearUpdateRanges(),this.rotationBuffer.addUpdateRange(0,e*4),this.rotationBuffer.needsUpdate=!0):(this.settings.renderMode===$.StretchedBillBoard||this.settings.renderMode===$.HorizontalBillBoard||this.settings.renderMode===$.VerticalBillBoard||this.settings.renderMode===$.BillBoard)&&(this.rotationBuffer.clearUpdateRanges(),this.rotationBuffer.addUpdateRange(0,e),this.rotationBuffer.needsUpdate=!0))}dispose(){this.geometry.dispose()}},lr=`
|
|
932
|
+
|
|
933
|
+
#include <common>
|
|
934
|
+
#include <tile_pars_fragment>
|
|
935
|
+
#include <map_pars_fragment>
|
|
936
|
+
#include <fog_pars_fragment>
|
|
937
|
+
#include <logdepthbuf_pars_fragment>
|
|
938
|
+
#include <clipping_planes_pars_fragment>
|
|
939
|
+
|
|
940
|
+
uniform sampler2D alphaMap;
|
|
941
|
+
uniform float useAlphaMap;
|
|
942
|
+
uniform float visibility;
|
|
943
|
+
uniform float alphaTest;
|
|
944
|
+
|
|
945
|
+
varying vec4 vColor;
|
|
946
|
+
|
|
947
|
+
void main() {
|
|
948
|
+
#include <clipping_planes_fragment>
|
|
949
|
+
#include <logdepthbuf_fragment>
|
|
950
|
+
|
|
951
|
+
vec4 diffuseColor = vColor;
|
|
952
|
+
|
|
953
|
+
#ifdef USE_MAP
|
|
954
|
+
#include <tile_fragment>
|
|
955
|
+
#ifndef USE_COLOR_AS_ALPHA
|
|
956
|
+
#endif
|
|
957
|
+
#endif
|
|
958
|
+
if( useAlphaMap == 1. ) diffuseColor.a *= texture2D( alphaMap, vUv).a;
|
|
959
|
+
if( diffuseColor.a < alphaTest ) discard;
|
|
960
|
+
gl_FragColor = diffuseColor;
|
|
961
|
+
|
|
962
|
+
#include <fog_fragment>
|
|
963
|
+
#include <tonemapping_fragment>
|
|
964
|
+
}`,ur=`
|
|
965
|
+
#include <common>
|
|
966
|
+
#include <tile_pars_vertex>
|
|
967
|
+
#include <color_pars_vertex>
|
|
968
|
+
#include <clipping_planes_pars_vertex>
|
|
969
|
+
#include <logdepthbuf_pars_vertex>
|
|
970
|
+
#include <fog_pars_vertex>
|
|
971
|
+
|
|
972
|
+
attribute vec3 previous;
|
|
973
|
+
attribute vec3 next;
|
|
974
|
+
attribute float side;
|
|
975
|
+
attribute float width;
|
|
976
|
+
|
|
977
|
+
uniform vec2 resolution;
|
|
978
|
+
uniform float lineWidth;
|
|
979
|
+
uniform float sizeAttenuation;
|
|
980
|
+
|
|
981
|
+
vec2 fix(vec4 i, float aspect) {
|
|
982
|
+
vec2 res = i.xy / i.w;
|
|
983
|
+
res.x *= aspect;
|
|
984
|
+
return res;
|
|
985
|
+
}
|
|
986
|
+
|
|
987
|
+
void main() {
|
|
988
|
+
|
|
989
|
+
#include <tile_vertex>
|
|
990
|
+
|
|
991
|
+
float aspect = resolution.x / resolution.y;
|
|
992
|
+
|
|
993
|
+
vColor = color;
|
|
994
|
+
|
|
995
|
+
mat4 m = projectionMatrix * modelViewMatrix;
|
|
996
|
+
vec4 finalPosition = m * vec4( position, 1.0 );
|
|
997
|
+
vec4 prevPos = m * vec4( previous, 1.0 );
|
|
998
|
+
vec4 nextPos = m * vec4( next, 1.0 );
|
|
999
|
+
|
|
1000
|
+
vec2 currentP = fix( finalPosition, aspect );
|
|
1001
|
+
vec2 prevP = fix( prevPos, aspect );
|
|
1002
|
+
vec2 nextP = fix( nextPos, aspect );
|
|
1003
|
+
|
|
1004
|
+
float w = lineWidth * width;
|
|
1005
|
+
|
|
1006
|
+
vec2 dir;
|
|
1007
|
+
if( nextP == currentP ) dir = normalize( currentP - prevP );
|
|
1008
|
+
else if( prevP == currentP ) dir = normalize( nextP - currentP );
|
|
1009
|
+
else {
|
|
1010
|
+
vec2 dir1 = normalize( currentP - prevP );
|
|
1011
|
+
vec2 dir2 = normalize( nextP - currentP );
|
|
1012
|
+
dir = normalize( dir1 + dir2 );
|
|
1013
|
+
|
|
1014
|
+
vec2 perp = vec2( -dir1.y, dir1.x );
|
|
1015
|
+
vec2 miter = vec2( -dir.y, dir.x );
|
|
1016
|
+
//w = clamp( w / dot( miter, perp ), 0., 4., * lineWidth * width );
|
|
1017
|
+
|
|
1018
|
+
}
|
|
1019
|
+
|
|
1020
|
+
//vec2 normal = ( cross( vec3( dir, 0. ) vec3( 0., 0., 1. ) ) ).xy;
|
|
1021
|
+
vec4 normal = vec4( -dir.y, dir.x, 0., 1. );
|
|
1022
|
+
normal.xy *= .5 * w;
|
|
1023
|
+
normal *= projectionMatrix;
|
|
1024
|
+
if( sizeAttenuation == 0. ) {
|
|
1025
|
+
normal.xy *= finalPosition.w;
|
|
1026
|
+
normal.xy /= ( vec4( resolution, 0., 1. ) * projectionMatrix ).xy;
|
|
1027
|
+
}
|
|
1028
|
+
|
|
1029
|
+
finalPosition.xy += normal.xy * side;
|
|
1030
|
+
|
|
1031
|
+
gl_Position = finalPosition;
|
|
1032
|
+
|
|
1033
|
+
#include <logdepthbuf_vertex>
|
|
1034
|
+
#include <clipping_planes_vertex>
|
|
1035
|
+
|
|
1036
|
+
vec4 mvPosition = modelViewMatrix * vec4( position, 1.0 );
|
|
1037
|
+
|
|
1038
|
+
#include <fog_vertex>
|
|
1039
|
+
}`,dr=class extends Gn{constructor(e){super(e),this.vector_=new B,this.vector2_=new B,this.vector3_=new B,this.quaternion_=new z,this.maxParticles=1e4,this.setupBuffers(),this.rebuildMaterial()}setupBuffers(){this.geometry&&this.geometry.dispose(),this.geometry=new w,this.indexBuffer=new n(new Uint32Array(this.maxParticles*6),1),this.indexBuffer.setUsage(v),this.geometry.setIndex(this.indexBuffer),this.positionBuffer=new n(new Float32Array(this.maxParticles*6),3),this.positionBuffer.setUsage(v),this.geometry.setAttribute(`position`,this.positionBuffer),this.previousBuffer=new n(new Float32Array(this.maxParticles*6),3),this.previousBuffer.setUsage(v),this.geometry.setAttribute(`previous`,this.previousBuffer),this.nextBuffer=new n(new Float32Array(this.maxParticles*6),3),this.nextBuffer.setUsage(v),this.geometry.setAttribute(`next`,this.nextBuffer),this.widthBuffer=new n(new Float32Array(this.maxParticles*2),1),this.widthBuffer.setUsage(v),this.geometry.setAttribute(`width`,this.widthBuffer),this.sideBuffer=new n(new Float32Array(this.maxParticles*2),1),this.sideBuffer.setUsage(v),this.geometry.setAttribute(`side`,this.sideBuffer),this.uvBuffer=new n(new Float32Array(this.maxParticles*4),2),this.uvBuffer.setUsage(v),this.geometry.setAttribute(`uv`,this.uvBuffer),this.colorBuffer=new n(new Float32Array(this.maxParticles*8),4),this.colorBuffer.setUsage(v),this.geometry.setAttribute(`color`,this.colorBuffer)}expandBuffers(e){for(;e>=this.maxParticles;)this.maxParticles*=2;this.setupBuffers()}rebuildMaterial(){this.layers.mask=this.settings.layers.mask;let e={lineWidth:{value:1},map:{value:null},useMap:{value:0},alphaMap:{value:null},useAlphaMap:{value:0},resolution:{value:new Je(1,1)},sizeAttenuation:{value:1},visibility:{value:1},alphaTest:{value:0}},t={};if(t.USE_UV=``,t.USE_COLOR_ALPHA=``,this.settings.material.map&&(t.USE_MAP=``,t.MAP_UV=ar(this.settings.material.map.channel),e.map=new x(this.settings.material.map),e.mapTransform=new x(new Ye().copy(this.settings.material.map.matrix))),this.settings.material.defines&&this.settings.material.defines.USE_COLOR_AS_ALPHA!==void 0&&(t.USE_COLOR_AS_ALPHA=``),this.settings.renderMode===$.Trail)this.material=new b({uniforms:e,defines:t,vertexShader:ur,fragmentShader:lr,transparent:this.settings.material.transparent,depthWrite:!this.settings.material.transparent,side:this.settings.material.side,blending:this.settings.material.blending||2,blendDst:this.settings.material.blendDst,blendSrc:this.settings.material.blendSrc,blendEquation:this.settings.material.blendEquation,premultipliedAlpha:this.settings.material.premultipliedAlpha});else throw Error(`render mode unavailable`)}update(){let e=0,t=0,n=0,r=this.getVisibleSystems();for(let e of r)for(let t=0;t<e.particleNum;t++)n+=e.particles[t].previous.length*2;n>this.maxParticles&&this.expandBuffers(n);for(let n of r){n.emitter.updateMatrixWorld&&(n.emitter.updateWorldMatrix(!0,!1),n.emitter.updateMatrixWorld(!0));let r=this.quaternion_,i=this.vector2_,a=this.vector3_;n.emitter.matrixWorld.decompose(i,r,a);let o=n.particles,s=n.particleNum,c=this.settings.uTileCount,l=this.settings.vTileCount,u=1/c,d=1/l;for(let r=0;r<s;r++){let i=o[r],s=i.uvTile%l,c=Math.floor(i.uvTile/l+.001),f=i.previous.values(),p=f.next(),m=p.value,h=m;p.done||(p=f.next());let g;g=p.value===void 0?h:p.value;for(let r=0;r<i.previous.length;r++,e+=2){if(this.positionBuffer.setXYZ(e,h.position.x,h.position.y,h.position.z),this.positionBuffer.setXYZ(e+1,h.position.x,h.position.y,h.position.z),n.worldSpace?(this.positionBuffer.setXYZ(e,h.position.x,h.position.y,h.position.z),this.positionBuffer.setXYZ(e+1,h.position.x,h.position.y,h.position.z)):(i.parentMatrix?this.vector_.copy(h.position).applyMatrix4(i.parentMatrix):this.vector_.copy(h.position).applyMatrix4(n.emitter.matrixWorld),this.positionBuffer.setXYZ(e,this.vector_.x,this.vector_.y,this.vector_.z),this.positionBuffer.setXYZ(e+1,this.vector_.x,this.vector_.y,this.vector_.z)),n.worldSpace?(this.previousBuffer.setXYZ(e,m.position.x,m.position.y,m.position.z),this.previousBuffer.setXYZ(e+1,m.position.x,m.position.y,m.position.z)):(i.parentMatrix?this.vector_.copy(m.position).applyMatrix4(i.parentMatrix):this.vector_.copy(m.position).applyMatrix4(n.emitter.matrixWorld),this.previousBuffer.setXYZ(e,this.vector_.x,this.vector_.y,this.vector_.z),this.previousBuffer.setXYZ(e+1,this.vector_.x,this.vector_.y,this.vector_.z)),n.worldSpace?(this.nextBuffer.setXYZ(e,g.position.x,g.position.y,g.position.z),this.nextBuffer.setXYZ(e+1,g.position.x,g.position.y,g.position.z)):(i.parentMatrix?this.vector_.copy(g.position).applyMatrix4(i.parentMatrix):this.vector_.copy(g.position).applyMatrix4(n.emitter.matrixWorld),this.nextBuffer.setXYZ(e,this.vector_.x,this.vector_.y,this.vector_.z),this.nextBuffer.setXYZ(e+1,this.vector_.x,this.vector_.y,this.vector_.z)),this.sideBuffer.setX(e,1),this.sideBuffer.setX(e+1,-1),n.worldSpace)this.widthBuffer.setX(e,h.size),this.widthBuffer.setX(e+1,h.size);else if(i.parentMatrix)this.widthBuffer.setX(e,h.size),this.widthBuffer.setX(e+1,h.size);else{let t=(Math.abs(a.x)+Math.abs(a.y)+Math.abs(a.z))/3;this.widthBuffer.setX(e,h.size*t),this.widthBuffer.setX(e+1,h.size*t)}this.uvBuffer.setXY(e,(r/i.previous.length+s)*u,(l-c-1)*d),this.uvBuffer.setXY(e+1,(r/i.previous.length+s)*u,(l-c)*d),this.colorBuffer.setXYZW(e,h.color.x,h.color.y,h.color.z,h.color.w),this.colorBuffer.setXYZW(e+1,h.color.x,h.color.y,h.color.z,h.color.w),r+1<i.previous.length&&(this.indexBuffer.setX(t*3,e),this.indexBuffer.setX(t*3+1,e+1),this.indexBuffer.setX(t*3+2,e+2),t++,this.indexBuffer.setX(t*3,e+2),this.indexBuffer.setX(t*3+1,e+1),this.indexBuffer.setX(t*3+2,e+3),t++),m=h,h=g,p.done||(p=f.next(),p.value!==void 0&&(g=p.value))}}}this.positionBuffer.clearUpdateRanges(),this.positionBuffer.addUpdateRange(0,e*3),this.positionBuffer.needsUpdate=!0,this.previousBuffer.clearUpdateRanges(),this.previousBuffer.addUpdateRange(0,e*3),this.previousBuffer.needsUpdate=!0,this.nextBuffer.clearUpdateRanges(),this.nextBuffer.addUpdateRange(0,e*3),this.nextBuffer.needsUpdate=!0,this.sideBuffer.clearUpdateRanges(),this.sideBuffer.addUpdateRange(0,e),this.sideBuffer.needsUpdate=!0,this.widthBuffer.clearUpdateRanges(),this.widthBuffer.addUpdateRange(0,e),this.widthBuffer.needsUpdate=!0,this.uvBuffer.clearUpdateRanges(),this.uvBuffer.addUpdateRange(0,e*2),this.uvBuffer.needsUpdate=!0,this.colorBuffer.clearUpdateRanges(),this.colorBuffer.addUpdateRange(0,e*4),this.colorBuffer.needsUpdate=!0,this.indexBuffer.clearUpdateRanges(),this.indexBuffer.addUpdateRange(0,t*3),this.indexBuffer.needsUpdate=!0,this.geometry.setDrawRange(0,t*3)}dispose(){this.geometry.dispose()}},fr=class e extends o{constructor(){super(),this.batches=[],this.systemToBatchIndex=new Map,this.type=`BatchedRenderer`,this.depthTexture=null}static equals(e,t){return e.material.side===t.material.side&&e.material.blending===t.material.blending&&e.material.blendSrc===t.material.blendSrc&&e.material.blendDst===t.material.blendDst&&e.material.blendEquation===t.material.blendEquation&&e.material.premultipliedAlpha===t.material.premultipliedAlpha&&e.material.transparent===t.material.transparent&&e.material.depthTest===t.material.depthTest&&e.material.type===t.material.type&&e.material.alphaTest===t.material.alphaTest&&e.material.map===t.material.map&&e.renderMode===t.renderMode&&e.blendTiles===t.blendTiles&&e.softParticles===t.softParticles&&e.softFarFade===t.softFarFade&&e.softNearFade===t.softNearFade&&e.uTileCount===t.uTileCount&&e.vTileCount===t.vTileCount&&e.instancingGeometry===t.instancingGeometry&&e.renderOrder===t.renderOrder&&e.layers.mask===t.layers.mask}addSystem(t){t._renderer=this;let n=t.getRendererSettings();for(let r=0;r<this.batches.length;r++)if(e.equals(this.batches[r].settings,n)){this.batches[r].addSystem(t),this.systemToBatchIndex.set(t,r);return}let r;switch(n.renderMode){case $.Trail:r=new dr(n);break;case $.Mesh:case $.BillBoard:case $.VerticalBillBoard:case $.HorizontalBillBoard:case $.StretchedBillBoard:r=new cr(n)}this.depthTexture&&r.applyDepthTexture(this.depthTexture),r.addSystem(t),this.batches.push(r),this.systemToBatchIndex.set(t,this.batches.length-1),this.add(r)}deleteSystem(e){let t=this.systemToBatchIndex.get(e);t!=null&&(this.batches[t].removeSystem(e),this.systemToBatchIndex.delete(e))}setDepthTexture(e){this.depthTexture=e;for(let t of this.batches)t.applyDepthTexture(e)}updateSystem(e){this.deleteSystem(e),this.addSystem(e)}update(e){this.systemToBatchIndex.forEach((t,n)=>{n.update(e)});for(let e=0;e<this.batches.length;e++)this.batches[e].update()}},pr=fr,mr=class t extends te{constructor(){super(),this.type=`QuarksPrefab`,this.animationData=[],this.isPlaying=!1,this.currentTime=-1e-5,this.timeScale=1,this.duration=0,this._mixers=new Map,this._tempAnimationJSON=[],this._clock=new e(!0)}registerBatchedRenderer(e){this._batchedRenderer=e}getOrCreateMixer(e){if(!this._mixers.has(e)){let t=new P(e);this._mixers.set(e,t)}return this._mixers.get(e)}addThreeAnimation(e,t,n=0,i=t.duration,a=!1){let o=this.getOrCreateMixer(e),s=o.clipAction(t);a||(s.setLoop(r,1),s.clampWhenFinished=!0);let c={startTime:n,duration:i,type:`three`,loop:a,target:e,clip:t,mixer:o,action:s};return this.animationData.push(c),this.updateDuration(),c}addParticleSystemAnimation(e,t=0,n=0,r=!1){n<=0&&(n=e.system.duration);let i={startTime:t,duration:n,type:`ps`,loop:r,target:e};return this.animationData.push(i),this.pause(),this.updateDuration(),i}removeAnimation(e){this.animationData.splice(e,1),this.updateDuration()}play(){this.isPlaying||=!0}pause(){this.isPlaying&&(this.isPlaying=!1,this.animationData.forEach(e=>{e.target&&(e.type===`ps`&&!e.target.system.paused?e.target.system.pause():e.type===`three`&&e.action&&e.action.isRunning()&&(e.action.paused=!0))}))}stop(){this.pause(),this.currentTime=-1e-5,this.animationData.forEach(e=>{e.type===`ps`&&e.target?e.target.system.stop():e.type===`three`&&e.mixer&&e.action&&e.action.reset()})}update(e){if(!this.isPlaying)return;let t=e===void 0?this._clock.getDelta():e;this.currentTime+=t*this.timeScale,this.currentTime>this.duration&&this.stop();let n=new Set;this.animationData.forEach(e=>{let{startTime:r,duration:i,type:a,loop:o,target:s,action:c,mixer:l}=e,u=r+i,d=this.currentTime>=r,f=this.currentTime>u,p=Math.abs(this.currentTime-r)<t;a===`three`&&c&&l?d&&!f?(p?(c.reset(),c.play()):c.paused&&(c.paused=!1,c.play()),this.currentTime-r,n.add(l)):f&&(c.paused=!0):a===`ps`&&s&&(d&&!f?p&&e.target.system.restart():f&&e.target.system.endEmit())}),n.forEach(e=>{e.update(t)})}setTime(e){let t=this.currentTime;this.currentTime=e,this.animationData.forEach(n=>{let{startTime:r,duration:i,type:a,target:o,action:s,mixer:c}=n;a===`three`&&s&&c?(s.reset(),e>=r&&e<r+i&&(s.time=e-r,s.play(),c.update(0),s.paused=!this.isPlaying)):a===`ps`&&o&&(e>=r&&e<r+i?(t<r||t>=r+i)&&o.system.restart():o.system.endEmit())})}getDuration(){return this.duration}updateDuration(){let e=0;this.animationData.forEach(t=>{let n=t.startTime+t.duration;n>e&&(e=n)}),this.duration=e}resolveReferences(e){this._tempAnimationJSON.forEach(t=>{let n;if(e.traverse(e=>{e.uuid===t.targetUUID&&(n=e)}),n){if(t.type===`three`&&t.clipUUID){let e;n.animations&&(e=n.animations.find(e=>e.uuid===t.clipUUID)),e&&this.addThreeAnimation(n,e,t.startTime,t.duration,t.loop)}else t.type===`ps`&&this.addParticleSystemAnimation(n,t.startTime,t.duration,t.loop)}}),this.updateDuration(),this._tempAnimationJSON=[]}toJSON(){let e=super.toJSON();return e.object.animationData=this.animationData.map(e=>({startTime:e.startTime,duration:e.duration,type:e.type,targetUUID:e.target.uuid,clipUUID:e.clip?.uuid,loop:e.loop})),e}static fromJSON(e){let n=new t;return e.animationData&&(n._tempAnimationJSON=e.animationData),n}},hr=class extends u{constructor(e){super(e)}linkReference(e){let t={};e.traverse(function(e){t[e.uuid]=e}),e.traverse(function(e){if(e.type===`ParticleEmitter`){let n=e.system;n.emitterShape;for(let e=0;e<n.behaviors.length;e++)n.behaviors[e]instanceof nn&&(n.behaviors[e].subParticleSystem=t[n.behaviors[e].subParticleSystem])}})}parse(e,t){let n=super.parse(e,t);return this.linkReference(n),n}parseObject(e,t,n,r,u){let g;function v(e){return t[e]===void 0&&console.warn(`THREE.ObjectLoader: Undefined geometry`,e),t[e]}function y(e){if(e!==void 0){if(Array.isArray(e)){let t=[];for(let r=0,i=e.length;r<i;r++){let i=e[r];n[i]===void 0&&console.warn(`THREE.ObjectLoader: Undefined material`,i),t.push(n[i])}return t}return n[e]===void 0&&console.warn(`THREE.ObjectLoader: Undefined material`,e),n[e]}}function b(e){return r[e]===void 0&&console.warn(`THREE.ObjectLoader: Undefined texture`,e),r[e]}let x,S,w={textures:r,geometries:t,materials:n},P={};switch(e.type){case`QuarksPrefab`:g=mr.fromJSON(e);break;case`ParticleEmitter`:g=Qn.fromJSON(e.ps,w,P).emitter;break;case`Scene`:g=new ce,e.background!==void 0&&(Number.isInteger(e.background)?g.background=new M(e.background):g.background=b(e.background)),e.environment!==void 0&&(g.environment=b(e.environment)),e.fog!==void 0&&(e.fog.type===`Fog`?g.fog=new F(e.fog.color,e.fog.near,e.fog.far):e.fog.type===`FogExp2`&&(g.fog=new N(e.fog.color,e.fog.density)),e.fog.name!==``&&(g.fog.name=e.fog.name)),e.backgroundBlurriness!==void 0&&(g.backgroundBlurriness=e.backgroundBlurriness),e.backgroundIntensity!==void 0&&(g.backgroundIntensity=e.backgroundIntensity),e.backgroundRotation!==void 0&&g.backgroundRotation.fromArray(e.backgroundRotation),e.environmentIntensity!==void 0&&(g.environmentIntensity=e.environmentIntensity),e.environmentRotation!==void 0&&g.environmentRotation.fromArray(e.environmentRotation);break;case`PerspectiveCamera`:g=new D(e.fov,e.aspect,e.near,e.far),e.focus!==void 0&&(g.focus=e.focus),e.zoom!==void 0&&(g.zoom=e.zoom),e.filmGauge!==void 0&&(g.filmGauge=e.filmGauge),e.filmOffset!==void 0&&(g.filmOffset=e.filmOffset),e.view!==void 0&&(g.view=Object.assign({},e.view));break;case`OrthographicCamera`:g=new f(e.left,e.right,e.top,e.bottom,e.near,e.far),e.zoom!==void 0&&(g.zoom=e.zoom),e.view!==void 0&&(g.view=Object.assign({},e.view));break;case`AmbientLight`:g=new A(e.color,e.intensity);break;case`DirectionalLight`:g=new E(e.color,e.intensity);break;case`PointLight`:g=new j(e.color,e.intensity,e.distance,e.decay);break;case`RectAreaLight`:g=new ie(e.color,e.intensity,e.width,e.height);break;case`SpotLight`:g=new T(e.color,e.intensity,e.distance,e.angle,e.penumbra,e.decay);break;case`HemisphereLight`:g=new m(e.color,e.groundColor,e.intensity);break;case`LightProbe`:g=new se,e.sh!==void 0&&(g.sh=new le().fromArray(e.sh));break;case`SkinnedMesh`:x=v(e.geometry),S=y(e.material),g=new h(x,S),e.bindMode!==void 0&&(g.bindMode=e.bindMode),e.bindMatrix!==void 0&&g.bindMatrix.fromArray(e.bindMatrix),e.skeleton!==void 0&&(g.skeleton=e.skeleton);break;case`Mesh`:x=v(e.geometry),S=y(e.material),g=new _(x,S);break;case`InstancedMesh`:{x=v(e.geometry),S=y(e.material);let t=e.count,n=e.instanceMatrix,r=e.instanceColor;g=new s(x,S,t),g.instanceMatrix=new c(new Float32Array(n.array),16),r!==void 0&&(g.instanceColor=new c(new Float32Array(r.array),r.itemSize));break}case`BatchedMesh`:x=v(e.geometry),S=y(e.material),g=new ee(e.maxGeometryCount,e.maxVertexCount,e.maxIndexCount,S),g.geometry=x,g.perObjectFrustumCulled=e.perObjectFrustumCulled,g.sortObjects=e.sortObjects,g._drawRanges=e.drawRanges,g._reservedRanges=e.reservedRanges,g._visibility=e.visibility,g._active=e.active,g._bounds=e.bounds.map(e=>{let t=new l;t.min.fromArray(e.boxMin),t.max.fromArray(e.boxMax);let n=new d;return n.radius=e.sphereRadius,n.center.fromArray(e.sphereCenter),{boxInitialized:e.boxInitialized,box:t,sphereInitialized:e.sphereInitialized,sphere:n}}),g._maxGeometryCount=e.maxGeometryCount,g._maxVertexCount=e.maxVertexCount,g._maxIndexCount=e.maxIndexCount,g._geometryInitialized=e.geometryInitialized,g._geometryCount=e.geometryCount,g._matricesTexture=b(e.matricesTexture.uuid);break;case`LOD`:g=new k;break;case`Line`:g=new O(v(e.geometry),y(e.material));break;case`LineLoop`:g=new a(v(e.geometry),y(e.material));break;case`LineSegments`:g=new i(v(e.geometry),y(e.material));break;case`PointCloud`:case`Points`:g=new ne(v(e.geometry),y(e.material));break;case`Sprite`:g=new C(y(e.material));break;case`Group`:g=new te;break;case`Bone`:g=new p;break;default:g=new o}if(g.uuid=e.uuid,e.name!==void 0&&(g.name=e.name),e.matrix===void 0?(e.position!==void 0&&g.position.fromArray(e.position),e.rotation!==void 0&&g.rotation.fromArray(e.rotation),e.quaternion!==void 0&&g.quaternion.fromArray(e.quaternion),e.scale!==void 0&&g.scale.fromArray(e.scale)):(g.matrix.fromArray(e.matrix),e.matrixAutoUpdate!==void 0&&(g.matrixAutoUpdate=e.matrixAutoUpdate),g.matrixAutoUpdate&&(g.matrix.decompose(g.position,g.quaternion,g.scale),isNaN(g.quaternion.x)&&g.quaternion.set(0,0,0,1))),e.up!==void 0&&g.up.fromArray(e.up),e.castShadow!==void 0&&(g.castShadow=e.castShadow),e.receiveShadow!==void 0&&(g.receiveShadow=e.receiveShadow),e.shadow&&(e.shadow.bias!==void 0&&(g.shadow.bias=e.shadow.bias),e.shadow.normalBias!==void 0&&(g.normalBias=e.shadow.normalBias),e.shadow.radius!==void 0&&(g.radius=e.shadow.radius),e.shadow.mapSize!==void 0&&g.mapSize.fromArray(e.shadow.mapSize),e.shadow.camera!==void 0&&(g.camera=this.parseObject(e.shadow.camera))),e.visible!==void 0&&(g.visible=e.visible),e.frustumCulled!==void 0&&(g.frustumCulled=e.frustumCulled),e.renderOrder!==void 0&&(g.renderOrder=e.renderOrder),e.userData!==void 0&&(g.userData=e.userData),e.layers!==void 0&&(g.layers.mask=e.layers),e.children!==void 0){let i=e.children;for(let e=0;e<i.length;e++)g.add(this.parseObject(i[e],t,n,r,u))}if(e.animations!==void 0){let t=e.animations;for(let e=0;e<t.length;e++){let n=t[e];g.animations.push(u[n])}}if(e.type===`LOD`){e.autoUpdate!==void 0&&(g.autoUpdate=e.autoUpdate);let t=e.levels;for(let e=0;e<t.length;e++){let n=t[e],r=g.getObjectByProperty(`uuid`,n.object);r!==void 0&&g.addLevel(r,n.distance)}}else e.type===`QuarksPrefab`&&g.resolveReferences(g);return g}},gr=class e{static runOnAllParticleEmitters(e,t){e.traverse(e=>{e.type===`ParticleEmitter`&&t(e)}),e.type===`ParticleEmitter`&&t(e)}static addToBatchRenderer(t,n){e.runOnAllParticleEmitters(t,e=>{n.addSystem(e.system)})}static play(t){e.runOnAllParticleEmitters(t,e=>{e.system.play()})}static stop(t){e.runOnAllParticleEmitters(t,e=>{e.system.stop()})}static setAutoDestroy(t,n){e.runOnAllParticleEmitters(t,e=>{e.system.autoDestroy=n})}static endEmit(t){e.runOnAllParticleEmitters(t,e=>{e.system.endEmit()})}static restart(t){e.runOnAllParticleEmitters(t,e=>{e.system.restart()})}static pause(t){e.runOnAllParticleEmitters(t,e=>{e.system.pause()})}};Un(),An(Nn),console.log(`%c Particle system powered by three.quarks. https://quarks.art/`,`font-size: 14px; font-weight: bold;`);export{qt as $,Oe as $t,St as A,yt as At,_t as B,Ne as Bt,Qe as C,tn as Ct,dt as D,q as Dt,Cn as E,fn as Et,nn as F,Zt as Ft,$t as G,Ze as Gt,Ut as H,je as Ht,It as I,Ae as It,ft as J,ve as Jt,Nt as K,_e as Kt,G as L,R as Lt,K as M,W as Mt,fe as N,Re as Nt,Lt as O,Je as Ot,kt as P,ze as Pt,V as Q,be as Qt,Ft as R,ye as Rt,Dn as S,Jt as St,Ct as T,Xt as Tt,xt as U,me as Ut,Bt as V,he as Vt,st as W,xn as Wt,Fe as X,ge as Xt,En as Y,An as Yt,Ye as Z,Pe as Zt,Sn as _,_n as _t,Wn as a,Me as an,At as at,gt as b,Ht as bt,Qn as c,jn as cn,rt as ct,gr as d,Yt as dt,we as en,hn as et,$ as f,Pt as ft,Un as g,Rt as gt,Gn as h,vt as ht,Nn as i,bn as in,kn as it,ut as j,bt as jt,it as k,B as kt,hr as l,lt,dr as m,Tn as mt,fr as n,Ce as nn,mt as nt,sr as o,Se as on,z as ot,cr as p,zt as pt,Mt as q,ke as qt,Mn as r,Ee as rn,pt as rt,or as s,xe as sn,pe as st,pr as t,Te as tn,Wt as tt,mr as u,ht as ut,Qt as v,wn as vt,en as w,gn as wt,On as x,jt as xt,vn as y,Vt as yt,qe as z,De as zt};
|