@holoscript/core 6.0.3 → 6.1.1
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/README.md +40 -40
- package/bin/holoscript.cjs +3 -0
- package/dist/GLTFPipeline-SFIORFJU.js +16 -0
- package/dist/GLTFPipeline-VNNDPONV.cjs +37 -0
- package/dist/{HoloScriptPlusParser-BZR5DELQ.js → HoloScriptPlusParser-7FBIFUFC.js} +6 -5
- package/dist/{HoloScriptPlusParser-SBMYDNXO.cjs → HoloScriptPlusParser-A2W7OCN2.cjs} +17 -16
- package/dist/HoloScriptPlusParser-F2Z56FJR.js +10 -0
- package/dist/HoloScriptPlusParser-WKHRIH6T.cjs +27 -0
- package/dist/{USDZExporter-MHEHXZB4.cjs → USDZExporter-3FWJ25JI.cjs} +344 -16
- package/dist/{USDZExporter-YA55ZS35.js → USDZExporter-D2HQLQYK.js} +344 -16
- package/dist/agents/index.cjs +19 -0
- package/dist/agents/index.d.ts +100 -0
- package/dist/agents/index.js +17 -0
- package/dist/chunk-22W6NGYN.js +725 -0
- package/dist/{chunk-XSUZMPVQ.cjs → chunk-27MPVJVZ.cjs} +64 -28
- package/dist/{chunk-W76ETJTI.js → chunk-2A7FURVO.js} +44 -8
- package/dist/{chunk-C7BNX4XJ.js → chunk-2B7WVIDZ.js} +11 -8
- package/dist/chunk-2BSMSUCE.js +1941 -0
- package/dist/chunk-2HLIGOKU.cjs +5546 -0
- package/dist/{chunk-GC3YU46J.js → chunk-2M2DPHKB.js} +4 -4
- package/dist/{chunk-A6GO3DPZ.cjs → chunk-2YSNA2F2.cjs} +321 -49
- package/dist/{chunk-ZL6VJ6SN.js → chunk-33XCOVE3.js} +5 -5
- package/dist/chunk-3FOKASKO.cjs +348 -0
- package/dist/{chunk-XSF76QRU.js → chunk-4C57PR42.js} +3 -3
- package/dist/chunk-4N4SXXWF.js +769 -0
- package/dist/chunk-4PDEPEQW.cjs +41 -0
- package/dist/chunk-4R6SBXDB.js +45 -0
- package/dist/chunk-4SY77NA4.cjs +413 -0
- package/dist/{chunk-74YCHHTE.js → chunk-4UUKPCY4.js} +670 -116
- package/dist/{chunk-VZNKJZTT.cjs → chunk-52ULD552.cjs} +178 -113
- package/dist/{chunk-65RFOWZI.js → chunk-5CKA5SXU.js} +441 -23
- package/dist/chunk-5FSKKMR7.cjs +2092 -0
- package/dist/{chunk-FF3Q7ADR.js → chunk-5JEU52DW.js} +5 -3
- package/dist/chunk-5N54COB6.cjs +327 -0
- package/dist/chunk-5S7RKFGR.cjs +446 -0
- package/dist/{chunk-EJA7G2C4.cjs → chunk-5WUNN6ZN.cjs} +2 -2
- package/dist/{chunk-ELLQPFAF.js → chunk-6ASWLXXN.js} +24 -10
- package/dist/chunk-6CTRH7HT.cjs +1985 -0
- package/dist/{chunk-ARNKA274.cjs → chunk-6EX3I5P4.cjs} +6 -6
- package/dist/chunk-6FGQNDR4.js +5731 -0
- package/dist/{chunk-X4YVN7H3.cjs → chunk-6KMK2UXT.cjs} +152 -56
- package/dist/{chunk-KUJRR4FJ.js → chunk-6L4VE27M.js} +36 -24
- package/dist/{chunk-RT7LJRSF.cjs → chunk-6S6TKNEA.cjs} +7357 -8312
- package/dist/chunk-77V4GTCA.js +596 -0
- package/dist/{chunk-XH7SE4HH.cjs → chunk-7AD52FRS.cjs} +19 -19
- package/dist/chunk-7OPW2KO7.cjs +639 -0
- package/dist/chunk-A6KINLZJ.js +236 -0
- package/dist/chunk-AIA52I7T.cjs +543 -0
- package/dist/chunk-AIX25INK.cjs +602 -0
- package/dist/{chunk-WN3YF33G.cjs → chunk-AO4I2Z7M.cjs} +15 -17
- package/dist/{chunk-TSWTWZ42.cjs → chunk-BPICAGBV.cjs} +376 -209
- package/dist/chunk-BRQJKJGT.cjs +20 -0
- package/dist/{chunk-3FXV5S25.cjs → chunk-C37BHB7N.cjs} +6 -3
- package/dist/{chunk-XNMEH2BI.js → chunk-CBJY23VL.js} +3 -3
- package/dist/chunk-CIWWXYHZ.cjs +50 -0
- package/dist/{chunk-NTMZSDXM.cjs → chunk-DIL6DDDN.cjs} +101 -45
- package/dist/chunk-DMXC24WV.js +404 -0
- package/dist/{chunk-SPDELRRV.cjs → chunk-DTGBOSEM.cjs} +12 -12
- package/dist/chunk-E7JP3BS3.cjs +61 -0
- package/dist/{chunk-HJJLD366.js → chunk-EKBKLK7P.js} +3 -3
- package/dist/chunk-EKYL4PE3.cjs +404 -0
- package/dist/{chunk-7N3JIJMT.js → chunk-EMMC5CSQ.js} +12 -8
- package/dist/{chunk-EUFLX2PI.js → chunk-EOBB6A4B.js} +7263 -8214
- package/dist/chunk-EOFNVCM6.js +325 -0
- package/dist/{chunk-NKRKT6V2.js → chunk-ER4GATIU.js} +11 -10
- package/dist/{chunk-N5FTS757.cjs → chunk-EXKSFGSX.cjs} +7 -148
- package/dist/{chunk-LK5IAVH6.cjs → chunk-EXUP2BUM.cjs} +27 -27
- package/dist/chunk-FDSGHPAK.js +130 -0
- package/dist/chunk-FEWUHQNM.cjs +144 -0
- package/dist/{chunk-5TOFIR6L.js → chunk-FGGJQRLZ.js} +5 -142
- package/dist/chunk-FHP6LXJS.js +415 -0
- package/dist/{chunk-7LCYLPW2.cjs → chunk-FJPADH77.cjs} +7 -4
- package/dist/{chunk-HBZYCASG.js → chunk-FXKTYFYA.js} +203 -36
- package/dist/chunk-GCMWDSBZ.cjs +729 -0
- package/dist/chunk-GJNCFRJU.cjs +125 -0
- package/dist/{chunk-I3XGTIHM.cjs → chunk-GMP623FG.cjs} +16 -13
- package/dist/{chunk-CNVM7J3M.js → chunk-GN3KDX4W.js} +149 -53
- package/dist/{chunk-WFJIDI2N.cjs → chunk-GQYKQSTC.cjs} +10 -10
- package/dist/chunk-GTU2Z2WW.cjs +262 -0
- package/dist/chunk-GZG4KA4E.js +529 -0
- package/dist/{chunk-DIEDKX5B.cjs → chunk-H3MGK7TX.cjs} +45 -33
- package/dist/{chunk-DN7UFU63.cjs → chunk-H5DZIHJP.cjs} +14 -17
- package/dist/{chunk-DH5G2JUA.cjs → chunk-HANL7K2Q.cjs} +66 -53
- package/dist/{chunk-EGIZHYJP.cjs → chunk-HCCQLAA4.cjs} +2 -13
- package/dist/{chunk-HHS6FMOU.cjs → chunk-HGVXZDSK.cjs} +178 -29
- package/dist/{chunk-LBPEZQAF.js → chunk-HRODTEEO.js} +30 -10
- package/dist/{chunk-ZGTGVSTZ.js → chunk-HYNTS5CP.js} +2 -2
- package/dist/{chunk-RE3OKSYF.cjs → chunk-HZCQO4JM.cjs} +6 -6
- package/dist/{chunk-NCUHGRTZ.js → chunk-I2O7TW6B.js} +12 -8
- package/dist/chunk-IHESJZSW.js +4490 -0
- package/dist/{chunk-7H5UNJZD.cjs → chunk-IRWWS72C.cjs} +64 -22
- package/dist/{chunk-EMO7HAKJ.cjs → chunk-IVIA7K75.cjs} +691 -133
- package/dist/chunk-IVY74O6C.js +247 -0
- package/dist/chunk-J32ZJZJH.js +554 -0
- package/dist/chunk-JD7CIZ33.js +1949 -0
- package/dist/{chunk-7X2IEJIE.cjs → chunk-JIYN45TV.cjs} +41 -42
- package/dist/{chunk-XDXZM3ZP.cjs → chunk-KHPCJRI3.cjs} +24 -21
- package/dist/chunk-KKFZ3B6J.cjs +557 -0
- package/dist/chunk-KPJL34Y7.cjs +186 -0
- package/dist/{chunk-7KPI4EKH.cjs → chunk-KQTPCYTG.cjs} +130 -50
- package/dist/{chunk-F5LVGHNT.js → chunk-KX76JUQY.js} +3 -3
- package/dist/chunk-L4LFINPO.js +623 -0
- package/dist/{chunk-2UX5LRAP.cjs → chunk-L63H3SQ4.cjs} +46 -32
- package/dist/{chunk-NLPSZT4C.js → chunk-LAOCQJ2M.js} +64 -8
- package/dist/chunk-LM2VU56C.cjs +37 -0
- package/dist/chunk-M56JSP4A.js +400 -0
- package/dist/chunk-MBOOR7X4.js +18 -0
- package/dist/{chunk-PQLGZKMC.cjs → chunk-MJVIRCUV.cjs} +31 -27
- package/dist/{chunk-AC4BSHFV.js → chunk-MSMIFMBL.js} +135 -18
- package/dist/{chunk-56IF4NTA.js → chunk-MXFUTKCO.js} +18 -18
- package/dist/{chunk-NRUB55IT.cjs → chunk-MXJ5SS53.cjs} +450 -32
- package/dist/chunk-MXWNGCRS.js +2176 -0
- package/dist/chunk-MYY4PMWX.cjs +264 -0
- package/dist/chunk-N75IH2HY.js +258 -0
- package/dist/chunk-NG77ATEW.cjs +778 -0
- package/dist/chunk-NW5G5FBQ.js +215 -0
- package/dist/{chunk-4FCZDTD5.js → chunk-OEFY723R.js} +29 -16
- package/dist/chunk-OEV5RMZO.cjs +3042 -0
- package/dist/{chunk-VSXOIUCF.cjs → chunk-OIQYIIO3.cjs} +7 -7
- package/dist/{chunk-32TWR3HE.js → chunk-OL46QLBJ.js} +3 -12
- package/dist/chunk-OPZ7XDDI.js +487 -0
- package/dist/chunk-OSYNRVOV.cjs +243 -0
- package/dist/{chunk-HUFNKFA6.js → chunk-P7YIA5LN.js} +93 -13
- package/dist/chunk-PGANYCAG.cjs +220 -0
- package/dist/{chunk-CO2VM2DK.js → chunk-QAVXL2IH.js} +62 -20
- package/dist/{chunk-BO2OKHIY.js → chunk-QCCBXSCE.js} +1640 -1311
- package/dist/{chunk-WYH4GVZ5.js → chunk-QPOQ7VPI.js} +16 -13
- package/dist/{chunk-V42NTCFH.js → chunk-QTPMJRGS.js} +2331 -17
- package/dist/{chunk-FEFHPUEM.cjs → chunk-QWNQ523V.cjs} +1705 -1382
- package/dist/{chunk-VK5AXKO3.js → chunk-R3IVNY6P.js} +166 -101
- package/dist/chunk-R75BSDH7.cjs +50 -0
- package/dist/{chunk-AIUXRS74.cjs → chunk-RMHC2VG7.cjs} +2358 -41
- package/dist/chunk-RUXGBKPS.cjs +4517 -0
- package/dist/{chunk-PLMYCCA4.js → chunk-S5IFXW6E.js} +113 -9
- package/dist/{chunk-27LWW5FU.cjs → chunk-S6YWHCKV.cjs} +5 -5
- package/dist/{chunk-SUCBB66F.js → chunk-SIEXCILW.js} +3 -3
- package/dist/{chunk-CLYEIWA5.cjs → chunk-SLU6UPJI.cjs} +5 -3
- package/dist/{chunk-H6WMMLQK.cjs → chunk-T5J7ZKP3.cjs} +454 -61
- package/dist/chunk-TDCNJHWO.js +341 -0
- package/dist/{chunk-IHOUYQIA.js → chunk-TG7O4WBC.js} +5 -5
- package/dist/chunk-THCK6ECW.js +2085 -0
- package/dist/chunk-TJHVSBP2.js +439 -0
- package/dist/chunk-TK74TR4H.js +5541 -0
- package/dist/{chunk-BU5ZAFMC.js → chunk-U4NBQJBY.js} +11 -13
- package/dist/{chunk-Y5MUAYTO.js → chunk-UD3DSHZM.js} +10 -13
- package/dist/chunk-UDMYRFDZ.js +3038 -0
- package/dist/{chunk-PPULB4GG.cjs → chunk-UOIGFQXC.cjs} +90 -68
- package/dist/{chunk-EPWRXL6S.js → chunk-URG2SJLK.js} +41 -42
- package/dist/{chunk-VJVCD5T5.cjs → chunk-V73NPPTM.cjs} +152 -35
- package/dist/chunk-VECQYRXL.js +474 -0
- package/dist/chunk-VEXPG4WN.js +1989 -0
- package/dist/{chunk-4SMUJFHL.js → chunk-VMLKSV26.js} +9 -6
- package/dist/{chunk-HKCVM6OK.cjs → chunk-VSK7W3O5.cjs} +47 -27
- package/dist/chunk-VVKVQZI6.js +55 -0
- package/dist/{chunk-KDB6BUMB.js → chunk-W55Z7QIX.js} +172 -25
- package/dist/{chunk-BY3B7ZYV.cjs → chunk-W6P2GBHH.cjs} +3 -3
- package/dist/{chunk-PBA6NXCT.cjs → chunk-W6RW64BB.cjs} +11 -8
- package/dist/chunk-WDT3JTGM.cjs +483 -0
- package/dist/{chunk-26TLYBFD.js → chunk-WKX5AMOY.js} +3 -3
- package/dist/chunk-WNNE3PO3.js +34 -0
- package/dist/chunk-WRLUBRKS.cjs +1943 -0
- package/dist/chunk-WRNEH5MO.js +3169 -0
- package/dist/{chunk-54FHG2MX.js → chunk-WRWEX5ZF.js} +7 -4
- package/dist/chunk-X3GJPRVK.cjs +3246 -0
- package/dist/{chunk-4KJ2R7VP.cjs → chunk-XFXGA5IW.cjs} +126 -22
- package/dist/{chunk-L3Z2HIWJ.cjs → chunk-XHIV6326.cjs} +4 -4
- package/dist/chunk-XJAN7CZG.cjs +432 -0
- package/dist/chunk-XL6INWKT.js +121 -0
- package/dist/{chunk-KYM4XRFG.js → chunk-XMWZG36H.js} +4 -4
- package/dist/{chunk-BKIGPPVM.js → chunk-XSFNHP2E.js} +6 -3
- package/dist/{chunk-ODGMVILH.js → chunk-XT6JY5W5.js} +25 -3
- package/dist/chunk-XXZJEFKW.cjs +490 -0
- package/dist/chunk-Y3MWXQSB.cjs +5737 -0
- package/dist/chunk-YF2I3MV3.js +46 -0
- package/dist/{chunk-CMYAWUX3.js → chunk-YIMN575O.js} +445 -53
- package/dist/chunk-YIVFJNYV.js +176 -0
- package/dist/{chunk-V2ILLPHK.cjs → chunk-YKGPCZEE.cjs} +10 -10
- package/dist/chunk-YQELFNJV.js +39 -0
- package/dist/chunk-YSCKYJOB.cjs +2196 -0
- package/dist/chunk-Z5XMPRNC.cjs +5390 -0
- package/dist/{chunk-3FYZOR7S.cjs → chunk-ZDSYWBIE.cjs} +18 -18
- package/dist/{chunk-CQDOF3G7.cjs → chunk-ZKSS47EV.cjs} +24 -19
- package/dist/chunk-ZUL5AVTX.cjs +1993 -0
- package/dist/chunk-ZXBZVXDW.js +5386 -0
- package/dist/{chunk-AW7WAELW.js → chunk-ZZ7RO2UQ.js} +314 -46
- package/dist/cli/holoscript-runner.cjs +203 -206
- package/dist/cli/holoscript-runner.js +147 -150
- package/dist/codebase/index.cjs +1 -1
- package/dist/codebase/index.d.ts +25 -0
- package/dist/codebase/index.js +1 -1
- package/dist/compiler/agent-inference.cjs +10 -8
- package/dist/compiler/agent-inference.js +6 -4
- package/dist/compiler/android-xr.cjs +12 -8
- package/dist/compiler/android-xr.js +10 -6
- package/dist/compiler/android.cjs +12 -9
- package/dist/compiler/android.js +10 -7
- package/dist/compiler/ar.cjs +9 -7
- package/dist/compiler/ar.js +7 -5
- package/dist/compiler/babylon.cjs +12 -9
- package/dist/compiler/babylon.js +11 -8
- package/dist/compiler/business-quest.cjs +43 -0
- package/dist/compiler/business-quest.js +4 -0
- package/dist/compiler/coco.cjs +1 -1
- package/dist/compiler/coco.js +1 -1
- package/dist/compiler/context.cjs +25 -0
- package/dist/compiler/context.d.ts +28 -0
- package/dist/compiler/context.js +8 -0
- package/dist/compiler/domain-block-utils.cjs +161 -151
- package/dist/compiler/domain-block-utils.js +7 -5
- package/dist/compiler/dtdl.cjs +10 -8
- package/dist/compiler/dtdl.js +7 -5
- package/dist/compiler/gltf-pipeline.cjs +9 -9
- package/dist/compiler/gltf-pipeline.js +2 -2
- package/dist/compiler/godot.cjs +9 -7
- package/dist/compiler/godot.js +8 -6
- package/dist/compiler/incremental.cjs +12 -8
- package/dist/compiler/incremental.js +7 -3
- package/dist/compiler/index.cjs +5152 -814
- package/dist/compiler/index.d.ts +404 -21
- package/dist/compiler/index.js +5063 -859
- package/dist/compiler/ios.cjs +11 -9
- package/dist/compiler/ios.js +9 -7
- package/dist/compiler/llm-provider-capabilities.cjs +25 -0
- package/dist/compiler/llm-provider-capabilities.d.ts +43 -0
- package/dist/compiler/llm-provider-capabilities.js +8 -0
- package/dist/compiler/multi-layer.cjs +14 -17
- package/dist/compiler/multi-layer.js +13 -10
- package/dist/compiler/nodetoy.cjs +5 -5
- package/dist/compiler/nodetoy.js +2 -2
- package/dist/compiler/openxr.cjs +10 -7
- package/dist/compiler/openxr.js +9 -6
- package/dist/compiler/playcanvas.cjs +10 -8
- package/dist/compiler/playcanvas.js +9 -7
- package/dist/compiler/r3f.cjs +17 -14
- package/dist/compiler/r3f.d.ts +22 -0
- package/dist/compiler/r3f.js +12 -9
- package/dist/compiler/remotion.cjs +1 -1
- package/dist/compiler/remotion.js +1 -1
- package/dist/compiler/reproducibility.cjs +1 -1
- package/dist/compiler/reproducibility.js +1 -1
- package/dist/compiler/sdf.cjs +10 -8
- package/dist/compiler/sdf.js +8 -6
- package/dist/compiler/semantic-scene.cjs +7 -7
- package/dist/compiler/semantic-scene.js +2 -2
- package/dist/compiler/state.cjs +9 -6
- package/dist/compiler/state.js +7 -4
- package/dist/compiler/trait-composition.cjs +11 -8
- package/dist/compiler/trait-composition.js +7 -4
- package/dist/compiler/unity.cjs +10 -7
- package/dist/compiler/unity.js +9 -6
- package/dist/compiler/unreal.cjs +11 -8
- package/dist/compiler/unreal.js +9 -6
- package/dist/compiler/urdf.cjs +20 -14
- package/dist/compiler/urdf.js +8 -6
- package/dist/compiler/usd-physics.cjs +10 -8
- package/dist/compiler/usd-physics.js +7 -5
- package/dist/compiler/visionos.cjs +10 -7
- package/dist/compiler/visionos.js +9 -6
- package/dist/compiler/vrchat.cjs +10 -8
- package/dist/compiler/vrchat.js +8 -6
- package/dist/compiler/vrr.cjs +10 -8
- package/dist/compiler/vrr.js +8 -6
- package/dist/compiler/wasm.cjs +13 -11
- package/dist/compiler/wasm.js +8 -6
- package/dist/compiler/webgpu.cjs +9 -7
- package/dist/compiler/webgpu.js +8 -6
- package/dist/constants.d.ts +4 -0
- package/dist/coordinators/index.cjs +1266 -0
- package/dist/coordinators/index.d.ts +260 -0
- package/dist/coordinators/index.js +1259 -0
- package/dist/debugger.cjs +9 -7
- package/dist/debugger.js +7 -5
- package/dist/entries/interop.cjs +23 -21
- package/dist/entries/interop.d.ts +9 -0
- package/dist/entries/interop.js +5 -3
- package/dist/entries/scripting.cjs +18 -17
- package/dist/entries/scripting.d.ts +7 -0
- package/dist/entries/scripting.js +8 -7
- package/dist/hololand/index.cjs +146 -0
- package/dist/hololand/index.d.ts +70 -0
- package/dist/hololand/index.js +5 -0
- package/dist/index.cjs +21396 -39967
- package/dist/index.d.ts +1496 -40
- package/dist/index.js +21066 -40142
- package/dist/math/tropical-spmv.cjs +45 -0
- package/dist/math/tropical-spmv.js +4 -0
- package/dist/math/vec3.cjs +14 -14
- package/dist/math/vec3.js +2 -2
- package/dist/ml-dsa-FSKBTE3W.cjs +1265 -0
- package/dist/ml-dsa-Z7JDKW4L.js +1265 -0
- package/dist/paper-0c-spike/index.cjs +150 -0
- package/dist/paper-0c-spike/index.d.ts +29 -0
- package/dist/paper-0c-spike/index.js +141 -0
- package/dist/parser.cjs +45 -10
- package/dist/parser.d.ts +11 -0
- package/dist/parser.js +10 -7
- package/dist/{playwright-7DTEQCBD.cjs → playwright-3AT3AKTV.cjs} +1985 -1985
- package/dist/{playwright-BIZXMLD2.js → playwright-VZPDVUEQ.js} +3 -3
- package/dist/reconstruction/index.cjs +153 -0
- package/dist/reconstruction/index.d.ts +105 -0
- package/dist/reconstruction/index.js +8 -0
- package/dist/runtime.cjs +7 -5
- package/dist/runtime.js +6 -4
- package/dist/self-improvement/index.cjs +563 -0
- package/dist/self-improvement/index.d.ts +0 -48
- package/dist/self-improvement/index.js +545 -0
- package/dist/storage/index.cjs +10 -9
- package/dist/storage/index.d.ts +24 -0
- package/dist/storage/index.js +3 -2
- package/dist/testing.cjs +25 -0
- package/dist/testing.d.ts +70 -0
- package/dist/testing.js +4 -0
- package/dist/tools/index.d.ts +33 -0
- package/dist/traitDocs/traitDocs.cjs +33 -0
- package/dist/traitDocs/traitDocs.d.ts +69 -0
- package/dist/traitDocs/traitDocs.js +7 -0
- package/dist/traits/botanical-lotus.cjs +41 -0
- package/dist/traits/botanical-lotus.d.ts +172 -0
- package/dist/traits/botanical-lotus.js +4 -0
- package/dist/traits/engines/index.cjs +520 -0
- package/dist/traits/engines/index.d.ts +111 -0
- package/dist/traits/engines/index.js +380 -0
- package/dist/traits/index.cjs +14387 -4320
- package/dist/traits/index.d.ts +197 -0
- package/dist/traits/index.js +16455 -6958
- package/dist/traits/simulation-solver-factory.cjs +13 -0
- package/dist/traits/simulation-solver-factory.d.ts +23 -0
- package/dist/traits/simulation-solver-factory.js +4 -0
- package/dist/traits/webcam-gaze.cjs +35 -0
- package/dist/traits/webcam-gaze.d.ts +17 -0
- package/dist/traits/webcam-gaze.js +4 -0
- package/dist/type-checker.cjs +6 -5
- package/dist/type-checker.js +4 -3
- package/dist/world/index.cjs +947 -0
- package/dist/world/index.d.ts +147 -0
- package/dist/world/index.js +939 -0
- package/dist/world-model/index.cjs +1446 -0
- package/dist/world-model/index.d.ts +119 -0
- package/dist/world-model/index.js +1414 -0
- package/dist/wot/index.cjs +7 -7
- package/dist/wot/index.js +2 -2
- package/package.json +150 -23
- package/dist/GLTFPipeline-3KLWWUQO.cjs +0 -34
- package/dist/GLTFPipeline-LYII2ZVQ.js +0 -13
- package/dist/chunk-3KEU5QYY.cjs +0 -175
- package/dist/chunk-6OQBLABR.js +0 -5240
- package/dist/chunk-6WNCRE6F.js +0 -126
- package/dist/chunk-C2QHVHZF.js +0 -4066
- package/dist/chunk-CN4NOESF.cjs +0 -416
- package/dist/chunk-DXVCEFZB.js +0 -2027
- package/dist/chunk-ENV7K6XA.js +0 -282
- package/dist/chunk-H7XMORZI.js +0 -2731
- package/dist/chunk-HAN4V3PF.cjs +0 -2037
- package/dist/chunk-HF4OFY25.cjs +0 -4097
- package/dist/chunk-LER4WXW5.cjs +0 -286
- package/dist/chunk-M6FU6S22.js +0 -2911
- package/dist/chunk-MWEFR6YQ.js +0 -1857
- package/dist/chunk-PJMOXFPR.cjs +0 -1861
- package/dist/chunk-QHVVVN47.cjs +0 -2033
- package/dist/chunk-QWKUKVRE.js +0 -2026
- package/dist/chunk-UITWA6DV.cjs +0 -2829
- package/dist/chunk-UQW6SLM5.js +0 -172
- package/dist/chunk-WUXIRGZP.cjs +0 -2915
- package/dist/chunk-X67XRI2T.js +0 -410
- package/dist/chunk-Y7VK5TH3.cjs +0 -129
- package/dist/chunk-YCMQQQ5U.cjs +0 -5244
- package/dist/post-quantum-JTTAAGO3.cjs +0 -6
- package/dist/post-quantum-RVPVDEPI.js +0 -4
|
@@ -0,0 +1,520 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkMYY4PMWX_cjs = require('../../chunk-MYY4PMWX.cjs');
|
|
4
|
+
var chunkXJAN7CZG_cjs = require('../../chunk-XJAN7CZG.cjs');
|
|
5
|
+
require('../../chunk-HCCQLAA4.cjs');
|
|
6
|
+
|
|
7
|
+
// src/traits/engines/onnx-motion-matching.ts
|
|
8
|
+
var TRAJ_SAMPLES = 12;
|
|
9
|
+
var TRAJ_FEATURES_PER_SAMPLE = 5;
|
|
10
|
+
var PHASE_CHANNELS = 4;
|
|
11
|
+
var CORE_INPUT_DIM = 7;
|
|
12
|
+
var INPUT_DIM = CORE_INPUT_DIM + TRAJ_SAMPLES * TRAJ_FEATURES_PER_SAMPLE + PHASE_CHANNELS;
|
|
13
|
+
var OUTPUT_DIM = chunkMYY4PMWX_cjs.TRAJECTORY_HORIZON_FRAMES * 3 + PHASE_CHANNELS + 4 + 1 + 5;
|
|
14
|
+
var SHARED_OUTPUT_DIM = OUTPUT_DIM;
|
|
15
|
+
var BUNDLED_MODELS = {
|
|
16
|
+
biped_humanoid_v2: {
|
|
17
|
+
id: "biped_humanoid_v2",
|
|
18
|
+
label: "Biped Humanoid v2 (PFNN, Holden 2017)",
|
|
19
|
+
skeletonType: "biped",
|
|
20
|
+
jointCount: 24,
|
|
21
|
+
inputDim: INPUT_DIM,
|
|
22
|
+
outputDim: SHARED_OUTPUT_DIM,
|
|
23
|
+
modelUrl: "bundled://biped_humanoid_v2.onnx"
|
|
24
|
+
},
|
|
25
|
+
quadruped_dog_v2: {
|
|
26
|
+
id: "quadruped_dog_v2",
|
|
27
|
+
label: "Quadruped Dog v2 (4-contact PFNN)",
|
|
28
|
+
skeletonType: "quadruped",
|
|
29
|
+
jointCount: 28,
|
|
30
|
+
inputDim: INPUT_DIM,
|
|
31
|
+
outputDim: SHARED_OUTPUT_DIM,
|
|
32
|
+
modelUrl: "bundled://quadruped_dog_v2.onnx"
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
var BIPED_JOINTS = [
|
|
36
|
+
"root",
|
|
37
|
+
"pelvis",
|
|
38
|
+
"spine_01",
|
|
39
|
+
"spine_02",
|
|
40
|
+
"spine_03",
|
|
41
|
+
"neck_01",
|
|
42
|
+
"head",
|
|
43
|
+
"clavicle_l",
|
|
44
|
+
"upper_arm_l",
|
|
45
|
+
"lower_arm_l",
|
|
46
|
+
"hand_l",
|
|
47
|
+
"clavicle_r",
|
|
48
|
+
"upper_arm_r",
|
|
49
|
+
"lower_arm_r",
|
|
50
|
+
"hand_r",
|
|
51
|
+
"thigh_l",
|
|
52
|
+
"calf_l",
|
|
53
|
+
"foot_l",
|
|
54
|
+
"ball_l",
|
|
55
|
+
"thigh_r",
|
|
56
|
+
"calf_r",
|
|
57
|
+
"foot_r",
|
|
58
|
+
"ball_r",
|
|
59
|
+
"center_of_mass"
|
|
60
|
+
];
|
|
61
|
+
var QUADRUPED_JOINTS = [
|
|
62
|
+
"root",
|
|
63
|
+
"spine_01",
|
|
64
|
+
"spine_02",
|
|
65
|
+
"spine_03",
|
|
66
|
+
"neck_01",
|
|
67
|
+
"head",
|
|
68
|
+
"front_upper_arm_l",
|
|
69
|
+
"front_lower_arm_l",
|
|
70
|
+
"front_foot_l",
|
|
71
|
+
"front_upper_arm_r",
|
|
72
|
+
"front_lower_arm_r",
|
|
73
|
+
"front_foot_r",
|
|
74
|
+
"rear_thigh_l",
|
|
75
|
+
"rear_calf_l",
|
|
76
|
+
"rear_foot_l",
|
|
77
|
+
"rear_thigh_r",
|
|
78
|
+
"rear_calf_r",
|
|
79
|
+
"rear_foot_r",
|
|
80
|
+
"tail_01",
|
|
81
|
+
"tail_02",
|
|
82
|
+
"tail_03",
|
|
83
|
+
"front_left_toe",
|
|
84
|
+
"front_right_toe",
|
|
85
|
+
"rear_left_toe",
|
|
86
|
+
"rear_right_toe",
|
|
87
|
+
"center_of_mass",
|
|
88
|
+
"jaw",
|
|
89
|
+
"left_ear"
|
|
90
|
+
];
|
|
91
|
+
function encodeInputTensor(input) {
|
|
92
|
+
const data = new Float32Array(INPUT_DIM);
|
|
93
|
+
let offset = 0;
|
|
94
|
+
data[offset++] = input.targetVelocity.x;
|
|
95
|
+
data[offset++] = input.targetVelocity.y;
|
|
96
|
+
data[offset++] = input.targetVelocity.z;
|
|
97
|
+
const tn = input.terrainNormal ?? { x: 0, y: 1, z: 0 };
|
|
98
|
+
data[offset++] = tn.x;
|
|
99
|
+
data[offset++] = tn.y;
|
|
100
|
+
data[offset++] = tn.z;
|
|
101
|
+
data[offset++] = input.energyEfficiency ?? 1;
|
|
102
|
+
const trajectory = chunkMYY4PMWX_cjs.projectLinearTrajectory(input.targetVelocity);
|
|
103
|
+
const speed = chunkMYY4PMWX_cjs.magnitude(input.targetVelocity);
|
|
104
|
+
const velDir = speed > 1e-6 ? { x: input.targetVelocity.x / speed, z: input.targetVelocity.z / speed } : { x: 0, z: 0 };
|
|
105
|
+
for (let i = 0; i < TRAJ_SAMPLES; i++) {
|
|
106
|
+
const pt = trajectory[i] ?? [0, 0, 0];
|
|
107
|
+
data[offset++] = pt[0];
|
|
108
|
+
data[offset++] = pt[2];
|
|
109
|
+
data[offset++] = velDir.x;
|
|
110
|
+
data[offset++] = velDir.z;
|
|
111
|
+
const phaseLinear = (input.currentPhase + (i + 1) * 0.04) % 1;
|
|
112
|
+
data[offset++] = phaseLinear;
|
|
113
|
+
}
|
|
114
|
+
const p = input.currentPhase * 2 * Math.PI;
|
|
115
|
+
data[offset++] = Math.sin(p);
|
|
116
|
+
data[offset++] = Math.cos(p);
|
|
117
|
+
data[offset++] = Math.sin(2 * p);
|
|
118
|
+
data[offset++] = Math.cos(2 * p);
|
|
119
|
+
return { data, shape: [1, INPUT_DIM] };
|
|
120
|
+
}
|
|
121
|
+
var GAIT_LABELS = [
|
|
122
|
+
"idle",
|
|
123
|
+
"walk",
|
|
124
|
+
"trot",
|
|
125
|
+
"run",
|
|
126
|
+
"crouch"
|
|
127
|
+
];
|
|
128
|
+
function decodeOutputTensor(output, skeletonType, prevPhase) {
|
|
129
|
+
const d = output.data;
|
|
130
|
+
const trajectory = [];
|
|
131
|
+
for (let i = 0; i < chunkMYY4PMWX_cjs.TRAJECTORY_HORIZON_FRAMES; i++) {
|
|
132
|
+
trajectory.push([d[i * 3] ?? 0, d[i * 3 + 1] ?? 0, d[i * 3 + 2] ?? 0]);
|
|
133
|
+
}
|
|
134
|
+
const phaseBase = 36;
|
|
135
|
+
const sinP = d[phaseBase] ?? 0;
|
|
136
|
+
const cosP = d[phaseBase + 1] ?? 1;
|
|
137
|
+
const rawPhase = (Math.atan2(sinP, cosP) / (2 * Math.PI) + 1) % 1;
|
|
138
|
+
const maxAdvance = 0.15;
|
|
139
|
+
const delta = (rawPhase - prevPhase + 1) % 1;
|
|
140
|
+
const phase = (prevPhase + Math.min(delta, maxAdvance)) % 1;
|
|
141
|
+
const contactBase = 40;
|
|
142
|
+
const sigmoid = (x) => 1 / (1 + Math.exp(-x));
|
|
143
|
+
const lf = sigmoid(d[contactBase] ?? 0) > 0.5;
|
|
144
|
+
const rf = sigmoid(d[contactBase + 1] ?? 0) > 0.5;
|
|
145
|
+
const lh = sigmoid(d[contactBase + 2] ?? 0) > 0.5;
|
|
146
|
+
const rh = sigmoid(d[contactBase + 3] ?? 0) > 0.5;
|
|
147
|
+
const contactFeatures = { leftFoot: lf, rightFoot: rf };
|
|
148
|
+
if (skeletonType === "quadruped") {
|
|
149
|
+
contactFeatures["leftHand"] = lh;
|
|
150
|
+
contactFeatures["rightHand"] = rh;
|
|
151
|
+
}
|
|
152
|
+
const stability = Math.max(0, Math.min(1, sigmoid(d[44] ?? 2)));
|
|
153
|
+
let maxLogit = -Infinity;
|
|
154
|
+
let gaitIdx = 0;
|
|
155
|
+
for (let i = 0; i < 5; i++) {
|
|
156
|
+
const logit = d[45 + i] ?? 0;
|
|
157
|
+
if (logit > maxLogit) {
|
|
158
|
+
maxLogit = logit;
|
|
159
|
+
gaitIdx = i;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
const gait = GAIT_LABELS[gaitIdx] ?? "idle";
|
|
163
|
+
const joints = {};
|
|
164
|
+
const names = skeletonType === "biped" ? BIPED_JOINTS : QUADRUPED_JOINTS;
|
|
165
|
+
for (const name of names) {
|
|
166
|
+
joints[name] = { position: [0, 0, 0], rotation: [0, 0, 0, 1] };
|
|
167
|
+
}
|
|
168
|
+
return {
|
|
169
|
+
pose: { joints, timestamp: Date.now() },
|
|
170
|
+
phase,
|
|
171
|
+
trajectory,
|
|
172
|
+
stability,
|
|
173
|
+
contactFeatures,
|
|
174
|
+
gait,
|
|
175
|
+
kineticEnergyProxy: 0
|
|
176
|
+
};
|
|
177
|
+
}
|
|
178
|
+
var OnnxMotionMatchingEngine = class {
|
|
179
|
+
constructor(modelId, options = {}) {
|
|
180
|
+
this.loaded = false;
|
|
181
|
+
this._phase = 0;
|
|
182
|
+
this.modelId = modelId;
|
|
183
|
+
const desc = BUNDLED_MODELS[modelId];
|
|
184
|
+
if (!desc) {
|
|
185
|
+
throw new Error(
|
|
186
|
+
`OnnxMotionMatchingEngine: unknown modelId "${modelId}". Available: ${Object.keys(BUNDLED_MODELS).join(", ")}`
|
|
187
|
+
);
|
|
188
|
+
}
|
|
189
|
+
this.descriptor = desc;
|
|
190
|
+
this.adapter = options.adapter ?? chunkXJAN7CZG_cjs.createPureJsInferenceAdapter(desc.inputDim, desc.outputDim);
|
|
191
|
+
}
|
|
192
|
+
async load() {
|
|
193
|
+
await this.adapter.load(this.descriptor.modelUrl);
|
|
194
|
+
this.loaded = true;
|
|
195
|
+
this._phase = 0;
|
|
196
|
+
}
|
|
197
|
+
infer(input) {
|
|
198
|
+
if (!this.loaded) {
|
|
199
|
+
throw new Error(`OnnxMotionMatchingEngine(${this.modelId}): call load() before infer()`);
|
|
200
|
+
}
|
|
201
|
+
const inputTensor = encodeInputTensor(input);
|
|
202
|
+
const outputTensor = this._runSync(inputTensor);
|
|
203
|
+
const result = decodeOutputTensor(outputTensor, this.descriptor.skeletonType, this._phase);
|
|
204
|
+
this._phase = result.phase;
|
|
205
|
+
return result;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Async inference path — use when the adapter is WebGPU/ONNX Runtime Web.
|
|
209
|
+
* The sync `infer()` method falls through to a blocking stub when the
|
|
210
|
+
* adapter doesn't support synchronous execution.
|
|
211
|
+
*/
|
|
212
|
+
async inferAsync(input) {
|
|
213
|
+
if (!this.loaded) {
|
|
214
|
+
throw new Error(`OnnxMotionMatchingEngine(${this.modelId}): call load() before inferAsync()`);
|
|
215
|
+
}
|
|
216
|
+
const inputTensor = encodeInputTensor(input);
|
|
217
|
+
const response = await this.adapter.run({
|
|
218
|
+
inputs: { motion_input: inputTensor },
|
|
219
|
+
outputs: ["motion_output"]
|
|
220
|
+
});
|
|
221
|
+
const outputTensor = response.outputs["motion_output"] ?? {
|
|
222
|
+
data: new Float32Array(OUTPUT_DIM)};
|
|
223
|
+
const result = decodeOutputTensor(outputTensor, this.descriptor.skeletonType, this._phase);
|
|
224
|
+
this._phase = result.phase;
|
|
225
|
+
return result;
|
|
226
|
+
}
|
|
227
|
+
dispose() {
|
|
228
|
+
this.adapter.dispose();
|
|
229
|
+
this.loaded = false;
|
|
230
|
+
this._phase = 0;
|
|
231
|
+
}
|
|
232
|
+
// ── private helpers ─────────────────────────────────────────────────────
|
|
233
|
+
/**
|
|
234
|
+
* Synchronous forward pass.
|
|
235
|
+
*
|
|
236
|
+
* If the adapter exposes a synchronous `runSync` (PureJsInferenceAdapter,
|
|
237
|
+
* NoOpInferenceAdapter), we run a REAL forward pass and return its output.
|
|
238
|
+
* For async-only adapters (onnxruntime-node/web) there is no honest
|
|
239
|
+
* synchronous result — callers must use `inferAsync()` — so we throw rather
|
|
240
|
+
* than silently fabricate a zero tensor (the prior OVERCLAIMED behavior,
|
|
241
|
+
* deep-ratchet 2026-05-29).
|
|
242
|
+
*/
|
|
243
|
+
_runSync(inputTensor) {
|
|
244
|
+
if (typeof this.adapter.runSync === "function") {
|
|
245
|
+
const response = this.adapter.runSync({
|
|
246
|
+
inputs: { motion_input: inputTensor },
|
|
247
|
+
outputs: ["motion_output"]
|
|
248
|
+
});
|
|
249
|
+
return response.outputs["motion_output"] ?? {
|
|
250
|
+
data: new Float32Array(OUTPUT_DIM),
|
|
251
|
+
shape: [1, OUTPUT_DIM]
|
|
252
|
+
};
|
|
253
|
+
}
|
|
254
|
+
throw new Error(
|
|
255
|
+
`OnnxMotionMatchingEngine(${this.modelId}): adapter "${this.adapter.name}" has no synchronous run path. Use inferAsync() with this adapter, or inject a synchronous adapter (PureJsInferenceAdapter) for infer().`
|
|
256
|
+
);
|
|
257
|
+
}
|
|
258
|
+
};
|
|
259
|
+
async function batchInferAsync(engine, batch) {
|
|
260
|
+
const start = performance.now();
|
|
261
|
+
const results = await Promise.all(batch.agents.map((a) => engine.inferAsync(a)));
|
|
262
|
+
const batchMs = performance.now() - start;
|
|
263
|
+
return { results, batchMs, agentCount: batch.agents.length };
|
|
264
|
+
}
|
|
265
|
+
async function createOnnxMotionMatchingEngine(modelId, options = {}) {
|
|
266
|
+
const engine = new OnnxMotionMatchingEngine(modelId, options);
|
|
267
|
+
await engine.load();
|
|
268
|
+
return engine;
|
|
269
|
+
}
|
|
270
|
+
function listBundledModels() {
|
|
271
|
+
return Object.values(BUNDLED_MODELS);
|
|
272
|
+
}
|
|
273
|
+
|
|
274
|
+
// src/traits/engines/noise.ts
|
|
275
|
+
function noise(t, seed) {
|
|
276
|
+
const n = Math.sin(t * 12.9898 + seed * 78.233) * 43758.5453;
|
|
277
|
+
return (n - Math.floor(n)) * 2 - 1;
|
|
278
|
+
}
|
|
279
|
+
function smoothNoise(t, seed) {
|
|
280
|
+
const floor = Math.floor(t);
|
|
281
|
+
const frac = t - floor;
|
|
282
|
+
const smooth = frac * frac * (3 - 2 * frac);
|
|
283
|
+
return noise(floor, seed) + smooth * (noise(floor + 1, seed) - noise(floor, seed));
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
// src/traits/engines/cloth-verlet.ts
|
|
287
|
+
function buildClothConstraints(resolution, positions) {
|
|
288
|
+
const constraints = [];
|
|
289
|
+
for (let i = 0; i < resolution; i++) {
|
|
290
|
+
for (let j = 0; j < resolution; j++) {
|
|
291
|
+
const idx = i * resolution + j;
|
|
292
|
+
if (j < resolution - 1) {
|
|
293
|
+
const right = idx + 1;
|
|
294
|
+
const dx = positions[idx * 3] - positions[right * 3];
|
|
295
|
+
const dy = positions[idx * 3 + 1] - positions[right * 3 + 1];
|
|
296
|
+
const dz = positions[idx * 3 + 2] - positions[right * 3 + 2];
|
|
297
|
+
constraints.push([idx, right, Math.sqrt(dx * dx + dy * dy + dz * dz)]);
|
|
298
|
+
}
|
|
299
|
+
if (i < resolution - 1) {
|
|
300
|
+
const below = idx + resolution;
|
|
301
|
+
const dx = positions[idx * 3] - positions[below * 3];
|
|
302
|
+
const dy = positions[idx * 3 + 1] - positions[below * 3 + 1];
|
|
303
|
+
const dz = positions[idx * 3 + 2] - positions[below * 3 + 2];
|
|
304
|
+
constraints.push([idx, below, Math.sqrt(dx * dx + dy * dy + dz * dz)]);
|
|
305
|
+
}
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
return constraints;
|
|
309
|
+
}
|
|
310
|
+
function stepClothVerlet(state, config, delta) {
|
|
311
|
+
const positions = state.positions;
|
|
312
|
+
const prev = state.prevPositions;
|
|
313
|
+
const pinned = state.pinned;
|
|
314
|
+
const constraints = state.constraints;
|
|
315
|
+
const dampingFactor = 1 - config.damping;
|
|
316
|
+
const count = positions.length / 3;
|
|
317
|
+
const gravity = -9.81 * config.gravityScale * delta * delta;
|
|
318
|
+
const windX = smoothNoise(state.time * 0.5, 0) * config.windResponse * delta;
|
|
319
|
+
const windZ = smoothNoise(state.time * 0.7, 1) * config.windResponse * delta;
|
|
320
|
+
for (let i = 0; i < count; i++) {
|
|
321
|
+
if (pinned.has(i)) continue;
|
|
322
|
+
const ix = i * 3;
|
|
323
|
+
const iy = ix + 1;
|
|
324
|
+
const iz = ix + 2;
|
|
325
|
+
const cx = positions[ix];
|
|
326
|
+
const cy = positions[iy];
|
|
327
|
+
const cz = positions[iz];
|
|
328
|
+
const vx = (cx - prev[ix]) * dampingFactor;
|
|
329
|
+
const vy = (cy - prev[iy]) * dampingFactor;
|
|
330
|
+
const vz = (cz - prev[iz]) * dampingFactor;
|
|
331
|
+
prev[ix] = cx;
|
|
332
|
+
prev[iy] = cy;
|
|
333
|
+
prev[iz] = cz;
|
|
334
|
+
positions[ix] = cx + vx + windX;
|
|
335
|
+
positions[iy] = cy + vy + gravity;
|
|
336
|
+
positions[iz] = cz + vz + windZ;
|
|
337
|
+
}
|
|
338
|
+
const iterations = Math.ceil(config.stiffness * 5);
|
|
339
|
+
for (let iter = 0; iter < iterations; iter++) {
|
|
340
|
+
for (const [a, b, restLen] of constraints) {
|
|
341
|
+
const ax = positions[a * 3];
|
|
342
|
+
const ay = positions[a * 3 + 1];
|
|
343
|
+
const az = positions[a * 3 + 2];
|
|
344
|
+
const bx = positions[b * 3];
|
|
345
|
+
const by = positions[b * 3 + 1];
|
|
346
|
+
const bz = positions[b * 3 + 2];
|
|
347
|
+
const dx = bx - ax;
|
|
348
|
+
const dy = by - ay;
|
|
349
|
+
const dz = bz - az;
|
|
350
|
+
const dist = Math.sqrt(dx * dx + dy * dy + dz * dz);
|
|
351
|
+
if (dist < 1e-4) continue;
|
|
352
|
+
const diff = (dist - restLen) / dist * 0.5;
|
|
353
|
+
const ox = dx * diff;
|
|
354
|
+
const oy = dy * diff;
|
|
355
|
+
const oz = dz * diff;
|
|
356
|
+
const aPin = pinned.has(a);
|
|
357
|
+
const bPin = pinned.has(b);
|
|
358
|
+
if (!aPin && !bPin) {
|
|
359
|
+
positions[a * 3] += ox;
|
|
360
|
+
positions[a * 3 + 1] += oy;
|
|
361
|
+
positions[a * 3 + 2] += oz;
|
|
362
|
+
positions[b * 3] -= ox;
|
|
363
|
+
positions[b * 3 + 1] -= oy;
|
|
364
|
+
positions[b * 3 + 2] -= oz;
|
|
365
|
+
} else if (!aPin) {
|
|
366
|
+
positions[a * 3] += ox * 2;
|
|
367
|
+
positions[a * 3 + 1] += oy * 2;
|
|
368
|
+
positions[a * 3 + 2] += oz * 2;
|
|
369
|
+
} else if (!bPin) {
|
|
370
|
+
positions[b * 3] -= ox * 2;
|
|
371
|
+
positions[b * 3 + 1] -= oy * 2;
|
|
372
|
+
positions[b * 3 + 2] -= oz * 2;
|
|
373
|
+
}
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
Object.defineProperty(exports, "MOTION_DATA_SCHEMA_VERSION", {
|
|
379
|
+
enumerable: true,
|
|
380
|
+
get: function () { return chunkMYY4PMWX_cjs.MOTION_DATA_SCHEMA_VERSION; }
|
|
381
|
+
});
|
|
382
|
+
Object.defineProperty(exports, "NullMotionMatchingEngine", {
|
|
383
|
+
enumerable: true,
|
|
384
|
+
get: function () { return chunkMYY4PMWX_cjs.NullMotionMatchingEngine; }
|
|
385
|
+
});
|
|
386
|
+
Object.defineProperty(exports, "SYNTHETIC_WALK_JOINTS", {
|
|
387
|
+
enumerable: true,
|
|
388
|
+
get: function () { return chunkMYY4PMWX_cjs.SYNTHETIC_WALK_JOINTS; }
|
|
389
|
+
});
|
|
390
|
+
Object.defineProperty(exports, "SyntheticWalkCycleEngine", {
|
|
391
|
+
enumerable: true,
|
|
392
|
+
get: function () { return chunkMYY4PMWX_cjs.SyntheticWalkCycleEngine; }
|
|
393
|
+
});
|
|
394
|
+
Object.defineProperty(exports, "TRAJECTORY_FRAME_DT", {
|
|
395
|
+
enumerable: true,
|
|
396
|
+
get: function () { return chunkMYY4PMWX_cjs.TRAJECTORY_FRAME_DT; }
|
|
397
|
+
});
|
|
398
|
+
Object.defineProperty(exports, "TRAJECTORY_HORIZON_FRAMES", {
|
|
399
|
+
enumerable: true,
|
|
400
|
+
get: function () { return chunkMYY4PMWX_cjs.TRAJECTORY_HORIZON_FRAMES; }
|
|
401
|
+
});
|
|
402
|
+
Object.defineProperty(exports, "buildSyntheticBipedPose", {
|
|
403
|
+
enumerable: true,
|
|
404
|
+
get: function () { return chunkMYY4PMWX_cjs.buildSyntheticBipedPose; }
|
|
405
|
+
});
|
|
406
|
+
Object.defineProperty(exports, "classifyGait", {
|
|
407
|
+
enumerable: true,
|
|
408
|
+
get: function () { return chunkMYY4PMWX_cjs.classifyGait; }
|
|
409
|
+
});
|
|
410
|
+
Object.defineProperty(exports, "createNullMotionMatchingEngine", {
|
|
411
|
+
enumerable: true,
|
|
412
|
+
get: function () { return chunkMYY4PMWX_cjs.createNullMotionMatchingEngine; }
|
|
413
|
+
});
|
|
414
|
+
Object.defineProperty(exports, "createSyntheticWalkCycleEngine", {
|
|
415
|
+
enumerable: true,
|
|
416
|
+
get: function () { return chunkMYY4PMWX_cjs.createSyntheticWalkCycleEngine; }
|
|
417
|
+
});
|
|
418
|
+
Object.defineProperty(exports, "inferenceFrameToTensor", {
|
|
419
|
+
enumerable: true,
|
|
420
|
+
get: function () { return chunkMYY4PMWX_cjs.inferenceFrameToTensor; }
|
|
421
|
+
});
|
|
422
|
+
Object.defineProperty(exports, "magnitude", {
|
|
423
|
+
enumerable: true,
|
|
424
|
+
get: function () { return chunkMYY4PMWX_cjs.magnitude; }
|
|
425
|
+
});
|
|
426
|
+
Object.defineProperty(exports, "projectLinearTrajectory", {
|
|
427
|
+
enumerable: true,
|
|
428
|
+
get: function () { return chunkMYY4PMWX_cjs.projectLinearTrajectory; }
|
|
429
|
+
});
|
|
430
|
+
Object.defineProperty(exports, "validateMotionCapture", {
|
|
431
|
+
enumerable: true,
|
|
432
|
+
get: function () { return chunkMYY4PMWX_cjs.validateMotionCapture; }
|
|
433
|
+
});
|
|
434
|
+
Object.defineProperty(exports, "validateTrainingCorpus", {
|
|
435
|
+
enumerable: true,
|
|
436
|
+
get: function () { return chunkMYY4PMWX_cjs.validateTrainingCorpus; }
|
|
437
|
+
});
|
|
438
|
+
Object.defineProperty(exports, "validateTrainingFrame", {
|
|
439
|
+
enumerable: true,
|
|
440
|
+
get: function () { return chunkMYY4PMWX_cjs.validateTrainingFrame; }
|
|
441
|
+
});
|
|
442
|
+
Object.defineProperty(exports, "BUNDLED_MODEL_SEED", {
|
|
443
|
+
enumerable: true,
|
|
444
|
+
get: function () { return chunkXJAN7CZG_cjs.BUNDLED_MODEL_SEED; }
|
|
445
|
+
});
|
|
446
|
+
Object.defineProperty(exports, "HIDDEN_DIM", {
|
|
447
|
+
enumerable: true,
|
|
448
|
+
get: function () { return chunkXJAN7CZG_cjs.HIDDEN_DIM; }
|
|
449
|
+
});
|
|
450
|
+
Object.defineProperty(exports, "NoOpInferenceAdapter", {
|
|
451
|
+
enumerable: true,
|
|
452
|
+
get: function () { return chunkXJAN7CZG_cjs.NoOpInferenceAdapter; }
|
|
453
|
+
});
|
|
454
|
+
Object.defineProperty(exports, "OnnxNodeInferenceAdapter", {
|
|
455
|
+
enumerable: true,
|
|
456
|
+
get: function () { return chunkXJAN7CZG_cjs.OnnxNodeInferenceAdapter; }
|
|
457
|
+
});
|
|
458
|
+
Object.defineProperty(exports, "PHASE_CONTROL_POINTS", {
|
|
459
|
+
enumerable: true,
|
|
460
|
+
get: function () { return chunkXJAN7CZG_cjs.PHASE_CONTROL_POINTS; }
|
|
461
|
+
});
|
|
462
|
+
Object.defineProperty(exports, "PfnnNetwork", {
|
|
463
|
+
enumerable: true,
|
|
464
|
+
get: function () { return chunkXJAN7CZG_cjs.PfnnNetwork; }
|
|
465
|
+
});
|
|
466
|
+
Object.defineProperty(exports, "PureJsInferenceAdapter", {
|
|
467
|
+
enumerable: true,
|
|
468
|
+
get: function () { return chunkXJAN7CZG_cjs.PureJsInferenceAdapter; }
|
|
469
|
+
});
|
|
470
|
+
Object.defineProperty(exports, "add", {
|
|
471
|
+
enumerable: true,
|
|
472
|
+
get: function () { return chunkXJAN7CZG_cjs.add; }
|
|
473
|
+
});
|
|
474
|
+
Object.defineProperty(exports, "createBundledPfnn", {
|
|
475
|
+
enumerable: true,
|
|
476
|
+
get: function () { return chunkXJAN7CZG_cjs.createBundledPfnn; }
|
|
477
|
+
});
|
|
478
|
+
Object.defineProperty(exports, "createNoOpInferenceAdapter", {
|
|
479
|
+
enumerable: true,
|
|
480
|
+
get: function () { return chunkXJAN7CZG_cjs.createNoOpInferenceAdapter; }
|
|
481
|
+
});
|
|
482
|
+
Object.defineProperty(exports, "createOnnxNodeInferenceAdapter", {
|
|
483
|
+
enumerable: true,
|
|
484
|
+
get: function () { return chunkXJAN7CZG_cjs.createOnnxNodeInferenceAdapter; }
|
|
485
|
+
});
|
|
486
|
+
Object.defineProperty(exports, "createPureJsInferenceAdapter", {
|
|
487
|
+
enumerable: true,
|
|
488
|
+
get: function () { return chunkXJAN7CZG_cjs.createPureJsInferenceAdapter; }
|
|
489
|
+
});
|
|
490
|
+
Object.defineProperty(exports, "createTensor", {
|
|
491
|
+
enumerable: true,
|
|
492
|
+
get: function () { return chunkXJAN7CZG_cjs.createTensor; }
|
|
493
|
+
});
|
|
494
|
+
Object.defineProperty(exports, "eluInPlace", {
|
|
495
|
+
enumerable: true,
|
|
496
|
+
get: function () { return chunkXJAN7CZG_cjs.eluInPlace; }
|
|
497
|
+
});
|
|
498
|
+
Object.defineProperty(exports, "matmul", {
|
|
499
|
+
enumerable: true,
|
|
500
|
+
get: function () { return chunkXJAN7CZG_cjs.matmul; }
|
|
501
|
+
});
|
|
502
|
+
Object.defineProperty(exports, "resolveOnnxModelPath", {
|
|
503
|
+
enumerable: true,
|
|
504
|
+
get: function () { return chunkXJAN7CZG_cjs.resolveOnnxModelPath; }
|
|
505
|
+
});
|
|
506
|
+
exports.BUNDLED_MODELS = BUNDLED_MODELS;
|
|
507
|
+
exports.INPUT_DIM = INPUT_DIM;
|
|
508
|
+
exports.OUTPUT_DIM = OUTPUT_DIM;
|
|
509
|
+
exports.OnnxMotionMatchingEngine = OnnxMotionMatchingEngine;
|
|
510
|
+
exports.batchInferAsync = batchInferAsync;
|
|
511
|
+
exports.buildClothConstraints = buildClothConstraints;
|
|
512
|
+
exports.createOnnxMotionMatchingEngine = createOnnxMotionMatchingEngine;
|
|
513
|
+
exports.decodeOutputTensor = decodeOutputTensor;
|
|
514
|
+
exports.encodeInputTensor = encodeInputTensor;
|
|
515
|
+
exports.listBundledModels = listBundledModels;
|
|
516
|
+
exports.noise = noise;
|
|
517
|
+
exports.smoothNoise = smoothNoise;
|
|
518
|
+
exports.stepClothVerlet = stepClothVerlet;
|
|
519
|
+
//# sourceMappingURL=index.cjs.map
|
|
520
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @holoscript/core/traits/engines — motion-matching engine surface type declarations
|
|
3
|
+
* Auto-generated stub — sources in packages/core/src/traits/engines/
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
// motion-matching
|
|
7
|
+
export interface Vec3 { x: number; y: number; z: number; }
|
|
8
|
+
|
|
9
|
+
export interface SkeletonPose {
|
|
10
|
+
joints: Record<string, { position: [number, number, number]; rotation: [number, number, number, number]; }>;
|
|
11
|
+
timestamp: number;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export interface ContactFeatures {
|
|
15
|
+
leftFoot: boolean;
|
|
16
|
+
rightFoot: boolean;
|
|
17
|
+
[extra: string]: boolean;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export type Gait = 'idle' | 'walk' | 'trot' | 'run' | 'crouch';
|
|
21
|
+
|
|
22
|
+
export interface MotionInferenceInput {
|
|
23
|
+
targetVelocity: Vec3;
|
|
24
|
+
currentPhase: number;
|
|
25
|
+
delta: number;
|
|
26
|
+
terrainNormal?: Vec3;
|
|
27
|
+
energyEfficiency?: number;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export interface MotionInferenceResult {
|
|
31
|
+
pose: SkeletonPose;
|
|
32
|
+
phase: number;
|
|
33
|
+
trajectory: Array<[number, number, number]>;
|
|
34
|
+
stability: number;
|
|
35
|
+
contactFeatures: ContactFeatures;
|
|
36
|
+
gait: Gait;
|
|
37
|
+
kineticEnergyProxy: number;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export interface MotionMatchingEngine {
|
|
41
|
+
readonly modelId: string;
|
|
42
|
+
readonly loaded: boolean;
|
|
43
|
+
load(): Promise<void>;
|
|
44
|
+
infer(input: MotionInferenceInput): MotionInferenceResult;
|
|
45
|
+
dispose(): void;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export type MotionMatchingEngineFactory = (modelId: string) => MotionMatchingEngine;
|
|
49
|
+
export declare const TRAJECTORY_HORIZON_FRAMES: number;
|
|
50
|
+
export declare const TRAJECTORY_FRAME_DT: number;
|
|
51
|
+
export declare function magnitude(v: Vec3): number;
|
|
52
|
+
export declare function classifyGait(speed: number, energyEfficiency: number): Gait;
|
|
53
|
+
export declare function projectLinearTrajectory(velocity: Vec3): Array<[number, number, number]>;
|
|
54
|
+
export declare class NullMotionMatchingEngine implements MotionMatchingEngine {
|
|
55
|
+
readonly modelId: string;
|
|
56
|
+
readonly loaded: boolean;
|
|
57
|
+
load(): Promise<void>;
|
|
58
|
+
infer(input: MotionInferenceInput): MotionInferenceResult;
|
|
59
|
+
dispose(): void;
|
|
60
|
+
}
|
|
61
|
+
export declare function createNullMotionMatchingEngine(modelId: string): MotionMatchingEngine;
|
|
62
|
+
|
|
63
|
+
// onnx-adapter
|
|
64
|
+
export type ExecutionProvider = 'webgpu' | 'wasm' | 'cpu' | 'cuda';
|
|
65
|
+
export type TensorShape = readonly number[];
|
|
66
|
+
export interface Float32Tensor { data: Float32Array; shape: TensorShape; }
|
|
67
|
+
export interface InferenceRequest { inputs: Record<string, Float32Tensor>; [key: string]: any; }
|
|
68
|
+
export interface InferenceResponse { outputs: Record<string, Float32Tensor>; [key: string]: any; }
|
|
69
|
+
export interface InferenceAdapter {
|
|
70
|
+
run(req: InferenceRequest): Promise<InferenceResponse>;
|
|
71
|
+
dispose?(): void;
|
|
72
|
+
[key: string]: any;
|
|
73
|
+
}
|
|
74
|
+
export declare class NoOpInferenceAdapter implements InferenceAdapter {
|
|
75
|
+
run(req: InferenceRequest): Promise<InferenceResponse>;
|
|
76
|
+
[key: string]: any;
|
|
77
|
+
}
|
|
78
|
+
export declare function createNoOpInferenceAdapter(): InferenceAdapter;
|
|
79
|
+
|
|
80
|
+
// synthetic-walk-cycle
|
|
81
|
+
export declare const SYNTHETIC_WALK_JOINTS: string[];
|
|
82
|
+
export declare function buildSyntheticBipedPose(phase: number, speed: number): Record<string, { position: [number, number, number]; rotation: [number, number, number, number]; }>;
|
|
83
|
+
export declare class SyntheticWalkCycleEngine implements MotionMatchingEngine {
|
|
84
|
+
readonly modelId: string;
|
|
85
|
+
readonly loaded: boolean;
|
|
86
|
+
load(): Promise<void>;
|
|
87
|
+
infer(input: MotionInferenceInput): MotionInferenceResult;
|
|
88
|
+
dispose(): void;
|
|
89
|
+
}
|
|
90
|
+
export declare function createSyntheticWalkCycleEngine(modelId?: string): MotionMatchingEngine;
|
|
91
|
+
|
|
92
|
+
// motion-data-schema
|
|
93
|
+
export declare const MOTION_DATA_SCHEMA_VERSION: 1;
|
|
94
|
+
export interface TrainingFrame { joints: SkeletonPose['joints']; contacts?: ContactFeatures; timestamp?: number; [key: string]: any; }
|
|
95
|
+
export interface InferenceFrame { targetVelocity: Vec3; currentPhase: number; delta: number; timestamp?: number; [key: string]: any; }
|
|
96
|
+
export interface MotionCapture { frames: TrainingFrame[]; fps: number; [key: string]: any; }
|
|
97
|
+
export interface TrainingCorpus { captures: MotionCapture[]; [key: string]: any; }
|
|
98
|
+
export declare function validateTrainingFrame(frame: TrainingFrame): void;
|
|
99
|
+
export declare function validateMotionCapture(capture: MotionCapture): void;
|
|
100
|
+
export declare function validateTrainingCorpus(corpus: TrainingCorpus): void;
|
|
101
|
+
export declare function inferenceFrameToTensor(frame: InferenceFrame, ...args: any[]): Float32Array;
|
|
102
|
+
|
|
103
|
+
// cloth-verlet
|
|
104
|
+
export interface ClothVerletState { positions: Float32Array; prevPositions: Float32Array; velocities?: Float32Array; [key: string]: any; }
|
|
105
|
+
export interface ClothVerletConfig { gravity?: Vec3; damping?: number; iterations?: number; stiffness?: number; [key: string]: any; }
|
|
106
|
+
export declare function buildClothConstraints(...args: any[]): any;
|
|
107
|
+
export declare function stepClothVerlet(state: ClothVerletState, config?: ClothVerletConfig, ...args: any[]): ClothVerletState;
|
|
108
|
+
|
|
109
|
+
// noise
|
|
110
|
+
export declare function noise(t: number, seed: number): number;
|
|
111
|
+
export declare function smoothNoise(t: number, seed: number): number;
|