@holoscript/core 6.0.4 → 6.1.2
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 +21 -0
- package/README.md +3 -3
- package/bin/holoscript.cjs +3 -0
- package/dist/GLTFPipeline-SFIORFJU.js +16 -0
- package/dist/GLTFPipeline-VNNDPONV.cjs +37 -0
- package/dist/{HoloScriptPlusParser-BN6KVRCM.js → HoloScriptPlusParser-7FBIFUFC.js} +6 -5
- package/dist/{HoloScriptPlusParser-NC5FE6AL.cjs → HoloScriptPlusParser-A2W7OCN2.cjs} +17 -16
- package/dist/HoloScriptPlusParser-F2Z56FJR.js +10 -0
- package/dist/HoloScriptPlusParser-WKHRIH6T.cjs +27 -0
- package/dist/{USDZExporter-UWGWNMMD.cjs → USDZExporter-3FWJ25JI.cjs} +344 -16
- package/dist/{USDZExporter-NTMBNTDB.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-5OEOHAAW.cjs → chunk-27MPVJVZ.cjs} +64 -28
- package/dist/{chunk-RVYPEYPX.js → chunk-2A7FURVO.js} +44 -8
- package/dist/{chunk-XCWFGZAA.js → chunk-2B7WVIDZ.js} +11 -8
- package/dist/{chunk-NDQNIJEH.js → chunk-2BSMSUCE.js} +250 -24
- package/dist/chunk-2HLIGOKU.cjs +5546 -0
- package/dist/{chunk-EONILVMF.js → chunk-2M2DPHKB.js} +4 -4
- package/dist/{chunk-G7CT3EMP.cjs → chunk-2YSNA2F2.cjs} +319 -47
- package/dist/{chunk-IWI6J7FX.js → chunk-33XCOVE3.js} +5 -5
- package/dist/chunk-3FOKASKO.cjs +348 -0
- package/dist/{chunk-DXJQDCFL.js → chunk-4C57PR42.js} +3 -3
- package/dist/{chunk-MPXBVFHQ.js → chunk-4N4SXXWF.js} +4 -3
- package/dist/chunk-4PDEPEQW.cjs +41 -0
- package/dist/chunk-4R6HPSHJ.js +2176 -0
- package/dist/chunk-4R6SBXDB.js +45 -0
- package/dist/chunk-4SY77NA4.cjs +413 -0
- package/dist/{chunk-YCXFCXDS.js → chunk-4UUKPCY4.js} +668 -110
- package/dist/{chunk-LGGRPKTV.cjs → chunk-52ULD552.cjs} +114 -35
- package/dist/{chunk-L4G4RLXX.js → chunk-5CKA5SXU.js} +438 -22
- 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-KED34ILP.js → chunk-6ASWLXXN.js} +21 -9
- package/dist/chunk-6CTRH7HT.cjs +1985 -0
- package/dist/{chunk-CAUCGUEA.cjs → chunk-6EX3I5P4.cjs} +6 -6
- package/dist/chunk-6FGQNDR4.js +5731 -0
- package/dist/{chunk-72EQECGT.cjs → chunk-6KMK2UXT.cjs} +122 -46
- package/dist/{chunk-G4VZTCIB.js → chunk-6L4VE27M.js} +33 -23
- package/dist/{chunk-ATSKSYVE.cjs → chunk-6S6TKNEA.cjs} +6478 -1738
- package/dist/chunk-77V4GTCA.js +596 -0
- package/dist/{chunk-ZP4D3CSX.cjs → chunk-7AD52FRS.cjs} +16 -16
- package/dist/chunk-A6KINLZJ.js +236 -0
- package/dist/chunk-AIA52I7T.cjs +543 -0
- package/dist/chunk-AIX25INK.cjs +602 -0
- package/dist/{chunk-B5TCIAPQ.cjs → chunk-AO4I2Z7M.cjs} +17 -18
- package/dist/{chunk-Q5SJOGHQ.cjs → chunk-BPICAGBV.cjs} +324 -199
- package/dist/chunk-BRQJKJGT.cjs +20 -0
- package/dist/{chunk-3FXV5S25.cjs → chunk-C37BHB7N.cjs} +6 -3
- package/dist/{chunk-XUTX5CBW.js → chunk-CBJY23VL.js} +3 -3
- package/dist/chunk-CIWWXYHZ.cjs +50 -0
- package/dist/{chunk-XXINBTZK.cjs → chunk-DIL6DDDN.cjs} +101 -45
- package/dist/chunk-DMXC24WV.js +404 -0
- package/dist/{chunk-PMGODDJA.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-UPJBDCVF.js → chunk-EMMC5CSQ.js} +12 -8
- package/dist/{chunk-GGHSW2NN.js → chunk-EOBB6A4B.js} +6389 -1718
- package/dist/chunk-EOFNVCM6.js +325 -0
- package/dist/{chunk-FHQVYCH2.js → chunk-ER4GATIU.js} +7 -7
- 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-T36DDXSF.js → chunk-FXKTYFYA.js} +150 -25
- package/dist/chunk-G2LS3RFO.js +623 -0
- package/dist/chunk-GCMWDSBZ.cjs +729 -0
- package/dist/chunk-GJNCFRJU.cjs +125 -0
- package/dist/{chunk-Q4QX3AET.cjs → chunk-GMP623FG.cjs} +16 -13
- package/dist/{chunk-XD6IYDUX.js → chunk-GN3KDX4W.js} +119 -43
- package/dist/{chunk-QLEAOI3Q.cjs → chunk-GQYKQSTC.cjs} +10 -10
- package/dist/chunk-GTU2Z2WW.cjs +262 -0
- package/dist/chunk-GZG4KA4E.js +529 -0
- package/dist/{chunk-BND3ST2K.cjs → chunk-H3MGK7TX.cjs} +42 -32
- package/dist/{chunk-XRKWN5PL.cjs → chunk-H5DZIHJP.cjs} +14 -18
- package/dist/{chunk-Z34RLXRA.cjs → chunk-HANL7K2Q.cjs} +65 -50
- package/dist/{chunk-3SAK5KFL.cjs → chunk-HCCQLAA4.cjs} +2 -11
- package/dist/{chunk-LXJ4667L.cjs → chunk-HGVXZDSK.cjs} +108 -20
- package/dist/{chunk-3FJCK5XA.js → chunk-HRODTEEO.js} +30 -10
- package/dist/{chunk-HQUEA5R6.cjs → chunk-HZCQO4JM.cjs} +6 -6
- package/dist/{chunk-S565K7NK.js → chunk-I2O7TW6B.js} +12 -8
- package/dist/chunk-IHESJZSW.js +4490 -0
- package/dist/{chunk-FSF7EQVA.cjs → chunk-IRWWS72C.cjs} +63 -22
- package/dist/{chunk-5O6TQC6M.cjs → chunk-IVIA7K75.cjs} +689 -127
- package/dist/chunk-IVY74O6C.js +247 -0
- package/dist/chunk-J32ZJZJH.js +554 -0
- package/dist/chunk-J56PTA46.cjs +639 -0
- package/dist/chunk-JD7CIZ33.js +1949 -0
- package/dist/{chunk-T7LEXZUZ.cjs → chunk-JIYN45TV.cjs} +14 -15
- package/dist/{chunk-FFKU7BTK.cjs → chunk-KHPCJRI3.cjs} +24 -21
- package/dist/chunk-KKFZ3B6J.cjs +557 -0
- package/dist/chunk-KPJL34Y7.cjs +186 -0
- package/dist/{chunk-HE7ULERA.cjs → chunk-KQTPCYTG.cjs} +128 -44
- package/dist/{chunk-OFKWH2IP.js → chunk-KX76JUQY.js} +3 -3
- package/dist/{chunk-33LSUQDD.cjs → chunk-L63H3SQ4.cjs} +43 -31
- package/dist/{chunk-K6EKD26I.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-XWPNTWDN.cjs → chunk-MJVIRCUV.cjs} +31 -27
- package/dist/{chunk-SDAMZIRE.js → chunk-MSMIFMBL.js} +135 -18
- package/dist/{chunk-56IF4NTA.js → chunk-MXFUTKCO.js} +18 -18
- package/dist/{chunk-6UEHYZ7V.cjs → chunk-MXJ5SS53.cjs} +447 -31
- package/dist/chunk-MYY4PMWX.cjs +264 -0
- package/dist/chunk-N75IH2HY.js +258 -0
- package/dist/{chunk-GVUR45UF.cjs → chunk-NG77ATEW.cjs} +7 -6
- package/dist/chunk-NW5G5FBQ.js +215 -0
- package/dist/{chunk-E3FWRT3Z.js → chunk-OEFY723R.js} +28 -13
- package/dist/chunk-OEV5RMZO.cjs +3042 -0
- package/dist/{chunk-X4ZF6CNE.cjs → chunk-OIQYIIO3.cjs} +7 -7
- package/dist/{chunk-2CWOLHTE.js → chunk-OL46QLBJ.js} +3 -11
- package/dist/chunk-OPZ7XDDI.js +487 -0
- package/dist/chunk-OSYNRVOV.cjs +243 -0
- package/dist/{chunk-TEWCN33Y.js → chunk-P7YIA5LN.js} +91 -7
- package/dist/chunk-PGANYCAG.cjs +220 -0
- package/dist/{chunk-CS2EMTGF.js → chunk-QAVXL2IH.js} +62 -21
- package/dist/{chunk-T4NKMBDL.js → chunk-QCCBXSCE.js} +1666 -756
- package/dist/{chunk-F4IULT7N.js → chunk-QPOQ7VPI.js} +16 -13
- package/dist/{chunk-6XSERL6L.js → chunk-QTPMJRGS.js} +3108 -2827
- package/dist/{chunk-F3HH56EB.cjs → chunk-QWNQ523V.cjs} +1730 -823
- package/dist/{chunk-R7MA7QWV.js → chunk-R3IVNY6P.js} +102 -23
- package/dist/chunk-R75BSDH7.cjs +50 -0
- package/dist/chunk-RAXUF5DF.cjs +2196 -0
- package/dist/{chunk-BF2235SI.cjs → chunk-RMHC2VG7.cjs} +2876 -2592
- package/dist/chunk-RUXGBKPS.cjs +4517 -0
- package/dist/{chunk-UERJ3YJV.js → chunk-S5IFXW6E.js} +113 -9
- package/dist/{chunk-27LWW5FU.cjs → chunk-S6YWHCKV.cjs} +5 -5
- package/dist/{chunk-WB4Z63GG.js → chunk-SIEXCILW.js} +3 -3
- package/dist/{chunk-CLYEIWA5.cjs → chunk-SLU6UPJI.cjs} +5 -3
- package/dist/{chunk-LZ266PCM.cjs → chunk-T5J7ZKP3.cjs} +446 -60
- 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-CDPGV4DN.js → chunk-U4NBQJBY.js} +14 -15
- package/dist/{chunk-NOZZ46QU.js → chunk-UD3DSHZM.js} +10 -14
- package/dist/chunk-UDMYRFDZ.js +3038 -0
- package/dist/{chunk-WDW67DZB.cjs → chunk-UOIGFQXC.cjs} +90 -68
- package/dist/{chunk-BU7VWW2K.js → chunk-URG2SJLK.js} +14 -15
- package/dist/{chunk-EQV4R3EV.cjs → chunk-V73NPPTM.cjs} +152 -35
- package/dist/chunk-VECQYRXL.js +474 -0
- package/dist/chunk-VEXPG4WN.js +1989 -0
- package/dist/{chunk-LDP5OK6G.js → chunk-VMLKSV26.js} +5 -5
- package/dist/{chunk-5BGSECRJ.cjs → chunk-VSK7W3O5.cjs} +47 -27
- package/dist/chunk-VVKVQZI6.js +55 -0
- package/dist/{chunk-YQK5JNFK.js → chunk-W55Z7QIX.js} +103 -15
- package/dist/{chunk-KSGXLT74.cjs → chunk-W6P2GBHH.cjs} +3 -3
- package/dist/{chunk-IBDG74G2.cjs → chunk-W6RW64BB.cjs} +7 -7
- package/dist/chunk-WDT3JTGM.cjs +483 -0
- package/dist/{chunk-HPS76H7Q.js → chunk-WKX5AMOY.js} +3 -3
- package/dist/chunk-WNNE3PO3.js +34 -0
- package/dist/{chunk-XG23EUQX.cjs → chunk-WRLUBRKS.cjs} +538 -312
- package/dist/{chunk-IFNQFCTM.js → chunk-WRNEH5MO.js} +79 -8
- package/dist/{chunk-54FHG2MX.js → chunk-WRWEX5ZF.js} +7 -4
- package/dist/{chunk-KCQ5NDYC.cjs → chunk-X3GJPRVK.cjs} +154 -80
- package/dist/{chunk-7AGYRWKW.cjs → chunk-XFXGA5IW.cjs} +126 -22
- package/dist/{chunk-TQSZUOW5.cjs → chunk-XHIV6326.cjs} +4 -4
- package/dist/chunk-XJAN7CZG.cjs +432 -0
- package/dist/chunk-XL6INWKT.js +121 -0
- package/dist/{chunk-E3UALNFA.js → chunk-XMWZG36H.js} +4 -4
- package/dist/{chunk-BKIGPPVM.js → chunk-XSFNHP2E.js} +6 -3
- package/dist/{chunk-H5Z7NASB.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-V3NN3HPP.js → chunk-YIMN575O.js} +437 -52
- package/dist/chunk-YIVFJNYV.js +176 -0
- package/dist/{chunk-MD6KDHVE.cjs → chunk-YKGPCZEE.cjs} +10 -10
- package/dist/chunk-YQELFNJV.js +39 -0
- package/dist/chunk-Z5XMPRNC.cjs +5390 -0
- package/dist/{chunk-3FYZOR7S.cjs → chunk-ZDSYWBIE.cjs} +18 -18
- package/dist/{chunk-6TZPZCOJ.cjs → chunk-ZKSS47EV.cjs} +24 -19
- package/dist/chunk-ZUL5AVTX.cjs +1993 -0
- package/dist/chunk-ZXBZVXDW.js +5386 -0
- package/dist/{chunk-DMG7C4H2.js → chunk-ZZ7RO2UQ.js} +312 -44
- package/dist/cli/holoscript-runner.cjs +200 -204
- package/dist/cli/holoscript-runner.js +144 -148
- package/dist/codebase/index.cjs +1 -1
- package/dist/codebase/index.js +1 -1
- package/dist/compiler/agent-inference.cjs +10 -7
- package/dist/compiler/agent-inference.js +6 -3
- package/dist/compiler/android-xr.cjs +12 -7
- package/dist/compiler/android-xr.js +10 -5
- package/dist/compiler/android.cjs +12 -8
- package/dist/compiler/android.js +10 -6
- package/dist/compiler/ar.cjs +9 -6
- package/dist/compiler/ar.js +7 -4
- package/dist/compiler/babylon.cjs +12 -8
- package/dist/compiler/babylon.js +11 -7
- 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 +155 -152
- package/dist/compiler/domain-block-utils.js +7 -4
- package/dist/compiler/dtdl.cjs +10 -7
- package/dist/compiler/dtdl.js +7 -4
- package/dist/compiler/gltf-pipeline.cjs +9 -9
- package/dist/compiler/gltf-pipeline.js +2 -2
- package/dist/compiler/godot.cjs +9 -6
- package/dist/compiler/godot.js +8 -5
- package/dist/compiler/incremental.cjs +12 -7
- package/dist/compiler/incremental.js +7 -2
- package/dist/compiler/index.cjs +3550 -268
- package/dist/compiler/index.d.ts +404 -21
- package/dist/compiler/index.js +3280 -138
- package/dist/compiler/ios.cjs +11 -8
- package/dist/compiler/ios.js +9 -6
- 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 -10
- package/dist/compiler/multi-layer.js +13 -9
- package/dist/compiler/nodetoy.cjs +5 -5
- package/dist/compiler/nodetoy.js +2 -2
- package/dist/compiler/openxr.cjs +10 -6
- package/dist/compiler/openxr.js +9 -5
- package/dist/compiler/playcanvas.cjs +10 -7
- package/dist/compiler/playcanvas.js +9 -6
- package/dist/compiler/r3f.cjs +17 -13
- package/dist/compiler/r3f.d.ts +22 -0
- package/dist/compiler/r3f.js +12 -8
- 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 -7
- package/dist/compiler/sdf.js +8 -5
- package/dist/compiler/semantic-scene.cjs +1 -1
- package/dist/compiler/semantic-scene.js +1 -1
- package/dist/compiler/state.cjs +9 -5
- package/dist/compiler/state.js +7 -3
- package/dist/compiler/trait-composition.cjs +11 -7
- package/dist/compiler/trait-composition.js +7 -3
- package/dist/compiler/unity.cjs +10 -6
- package/dist/compiler/unity.js +9 -5
- package/dist/compiler/unreal.cjs +11 -7
- package/dist/compiler/unreal.js +9 -5
- package/dist/compiler/urdf.cjs +20 -13
- package/dist/compiler/urdf.js +8 -5
- package/dist/compiler/usd-physics.cjs +10 -7
- package/dist/compiler/usd-physics.js +7 -4
- package/dist/compiler/visionos.cjs +10 -6
- package/dist/compiler/visionos.js +9 -5
- package/dist/compiler/vrchat.cjs +10 -7
- package/dist/compiler/vrchat.js +8 -5
- package/dist/compiler/vrr.cjs +10 -7
- package/dist/compiler/vrr.js +8 -5
- package/dist/compiler/wasm.cjs +13 -10
- package/dist/compiler/wasm.js +8 -5
- package/dist/compiler/webgpu.cjs +9 -6
- package/dist/compiler/webgpu.js +8 -5
- package/dist/constants.d.ts +3 -2
- 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.js +5 -3
- package/dist/entries/scripting.cjs +18 -18
- package/dist/entries/scripting.js +8 -8
- 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 +20332 -18121
- package/dist/index.d.ts +1477 -40
- package/dist/index.js +19451 -17638
- 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-PHCWUBPX.cjs → ml-dsa-FSKBTE3W.cjs} +177 -90
- package/dist/{ml-dsa-WYLJHJO6.js → ml-dsa-Z7JDKW4L.js} +158 -71
- 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 -11
- package/dist/parser.d.ts +11 -0
- package/dist/parser.js +10 -8
- package/dist/{playwright-RL6GY4F7.cjs → playwright-3AT3AKTV.cjs} +1985 -1985
- package/dist/{playwright-5OSAPTNH.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.js +545 -0
- package/dist/storage/index.cjs +10 -9
- 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 +22 -1
- 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.js +380 -0
- package/dist/traits/index.cjs +17630 -7881
- package/dist/traits/index.d.ts +197 -0
- package/dist/traits/index.js +16573 -7193
- 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 +29 -0
- package/dist/wot/index.js +4 -0
- package/package.json +153 -61
- package/dist/GLTFPipeline-DEN36VNK.js +0 -12
- package/dist/GLTFPipeline-YPCAK236.cjs +0 -33
- package/dist/chunk-4XSNJCLC.cjs +0 -1859
- package/dist/chunk-A7PIMZGU.js +0 -263
- package/dist/chunk-BWFJEM5A.js +0 -5419
- package/dist/chunk-CBJSLA2E.cjs +0 -5423
- package/dist/chunk-K3JDKWGI.cjs +0 -270
- package/dist/chunk-LSW7P7ML.js +0 -3675
- package/dist/chunk-MEASWI2Y.js +0 -126
- package/dist/chunk-NCUKG4SK.cjs +0 -3075
- package/dist/chunk-Q5JT3YML.cjs +0 -129
- package/dist/chunk-QGKNANZ3.js +0 -3071
- package/dist/chunk-S2N5TNMA.js +0 -1855
- package/dist/chunk-TSH3MSQU.cjs +0 -129
- package/dist/chunk-WGMEAYBG.js +0 -126
- package/dist/chunk-X6SEAXAX.cjs +0 -3681
|
@@ -1,19 +1,26 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
3
|
+
var chunkRMHC2VG7_cjs = require('./chunk-RMHC2VG7.cjs');
|
|
4
|
+
var ans = require('@holoscript/core-types/ans');
|
|
5
5
|
|
|
6
6
|
// src/compiler/AgentInferenceExportTarget.ts
|
|
7
|
-
|
|
7
|
+
chunkRMHC2VG7_cjs.init_CompilerBase();
|
|
8
8
|
var DEFAULT_MODEL_CONFIG = {
|
|
9
9
|
provider: "anthropic",
|
|
10
|
-
|
|
10
|
+
// Default to Opus 4.7 — most capable Claude. Users override per-agent via
|
|
11
|
+
// the `@model` trait. NEVER silently downgrade for cost (per API skill rule).
|
|
12
|
+
name: "claude-opus-4-7",
|
|
11
13
|
temperature: 0.7,
|
|
12
|
-
maxTokens:
|
|
14
|
+
maxTokens: 16e3,
|
|
15
|
+
// bumped from 4096 — current API default guidance
|
|
13
16
|
topP: 0.9,
|
|
14
17
|
topK: 40,
|
|
15
18
|
systemPrompt: "You are a helpful AI agent."
|
|
16
19
|
};
|
|
20
|
+
var ANTHROPIC_MODELS_NO_SAMPLING_PARAMS = /* @__PURE__ */ new Set(["claude-opus-4-7"]);
|
|
21
|
+
function modelAcceptsSamplingParams(modelName) {
|
|
22
|
+
return !ANTHROPIC_MODELS_NO_SAMPLING_PARAMS.has(modelName);
|
|
23
|
+
}
|
|
17
24
|
var AGENT_TRAIT_NAMES = /* @__PURE__ */ new Set([
|
|
18
25
|
"agent",
|
|
19
26
|
"model",
|
|
@@ -30,7 +37,7 @@ var AGENT_TRAIT_NAMES = /* @__PURE__ */ new Set([
|
|
|
30
37
|
"memory",
|
|
31
38
|
"persona"
|
|
32
39
|
]);
|
|
33
|
-
var AgentInferenceCompiler = class extends
|
|
40
|
+
var AgentInferenceCompiler = class extends chunkRMHC2VG7_cjs.CompilerBase {
|
|
34
41
|
constructor(options = {}) {
|
|
35
42
|
super();
|
|
36
43
|
this.compilerName = "AgentInferenceCompiler";
|
|
@@ -39,7 +46,7 @@ var AgentInferenceCompiler = class extends chunkBF2235SI_cjs.CompilerBase {
|
|
|
39
46
|
this.options = {
|
|
40
47
|
language: options.language ?? "typescript",
|
|
41
48
|
defaultProvider: options.defaultProvider ?? "anthropic",
|
|
42
|
-
defaultModel: options.defaultModel ?? "claude-sonnet-4-
|
|
49
|
+
defaultModel: options.defaultModel ?? "claude-sonnet-4-6",
|
|
43
50
|
defaultTemperature: options.defaultTemperature ?? 0.7,
|
|
44
51
|
defaultMaxTokens: options.defaultMaxTokens ?? 4096,
|
|
45
52
|
includeTypes: options.includeTypes ?? true,
|
|
@@ -48,7 +55,7 @@ var AgentInferenceCompiler = class extends chunkBF2235SI_cjs.CompilerBase {
|
|
|
48
55
|
};
|
|
49
56
|
}
|
|
50
57
|
getRequiredCapability() {
|
|
51
|
-
return
|
|
58
|
+
return ans.ANSCapabilityPath.AGENT_INFERENCE;
|
|
52
59
|
}
|
|
53
60
|
/**
|
|
54
61
|
* Compile a HoloScript composition to runnable agent inference scripts.
|
|
@@ -402,8 +409,10 @@ var AgentInferenceCompiler = class extends chunkBF2235SI_cjs.CompilerBase {
|
|
|
402
409
|
lines.push(" const response = await this.client.messages.create({");
|
|
403
410
|
lines.push(` model: ${JSON.stringify(agent.modelConfig.name)},`);
|
|
404
411
|
lines.push(` max_tokens: ${agent.modelConfig.maxTokens},`);
|
|
405
|
-
|
|
406
|
-
|
|
412
|
+
if (modelAcceptsSamplingParams(agent.modelConfig.name)) {
|
|
413
|
+
lines.push(` temperature: ${agent.modelConfig.temperature},`);
|
|
414
|
+
lines.push(` top_p: ${agent.modelConfig.topP},`);
|
|
415
|
+
}
|
|
407
416
|
lines.push(" system: this.systemPrompt,");
|
|
408
417
|
lines.push(" messages: this.messages,");
|
|
409
418
|
if (agent.tools.length > 0) {
|
|
@@ -442,7 +451,9 @@ var AgentInferenceCompiler = class extends chunkBF2235SI_cjs.CompilerBase {
|
|
|
442
451
|
lines.push(" currentResponse = await this.client.messages.create({");
|
|
443
452
|
lines.push(` model: ${JSON.stringify(agent.modelConfig.name)},`);
|
|
444
453
|
lines.push(` max_tokens: ${agent.modelConfig.maxTokens},`);
|
|
445
|
-
|
|
454
|
+
if (modelAcceptsSamplingParams(agent.modelConfig.name)) {
|
|
455
|
+
lines.push(` temperature: ${agent.modelConfig.temperature},`);
|
|
456
|
+
}
|
|
446
457
|
lines.push(" system: this.systemPrompt,");
|
|
447
458
|
lines.push(" messages: this.messages,");
|
|
448
459
|
lines.push(" tools,");
|
|
@@ -544,7 +555,9 @@ var AgentInferenceCompiler = class extends chunkBF2235SI_cjs.CompilerBase {
|
|
|
544
555
|
lines.push(" response = self.client.messages.create(");
|
|
545
556
|
lines.push(` model=${JSON.stringify(agent.modelConfig.name)},`);
|
|
546
557
|
lines.push(` max_tokens=${agent.modelConfig.maxTokens},`);
|
|
547
|
-
|
|
558
|
+
if (modelAcceptsSamplingParams(agent.modelConfig.name)) {
|
|
559
|
+
lines.push(` temperature=${agent.modelConfig.temperature},`);
|
|
560
|
+
}
|
|
548
561
|
lines.push(" system=self.system_prompt,");
|
|
549
562
|
lines.push(" messages=self.messages,");
|
|
550
563
|
if (agent.tools.length > 0) {
|
|
@@ -572,7 +585,9 @@ var AgentInferenceCompiler = class extends chunkBF2235SI_cjs.CompilerBase {
|
|
|
572
585
|
lines.push(" response = self.client.messages.create(");
|
|
573
586
|
lines.push(` model=${JSON.stringify(agent.modelConfig.name)},`);
|
|
574
587
|
lines.push(` max_tokens=${agent.modelConfig.maxTokens},`);
|
|
575
|
-
|
|
588
|
+
if (modelAcceptsSamplingParams(agent.modelConfig.name)) {
|
|
589
|
+
lines.push(` temperature=${agent.modelConfig.temperature},`);
|
|
590
|
+
}
|
|
576
591
|
lines.push(" system=self.system_prompt,");
|
|
577
592
|
lines.push(" messages=self.messages,");
|
|
578
593
|
lines.push(" tools=TOOLS,");
|
|
@@ -608,46 +623,100 @@ var AgentInferenceCompiler = class extends chunkBF2235SI_cjs.CompilerBase {
|
|
|
608
623
|
}
|
|
609
624
|
// ─── Tool Definitions ───────────────────────────────────────────────
|
|
610
625
|
emitToolDefinitions(allTools) {
|
|
626
|
+
const provider = this.options.defaultProvider ?? DEFAULT_MODEL_CONFIG.provider;
|
|
611
627
|
if (this.options.language === "python") {
|
|
612
|
-
return this.emitToolDefinitionsPython(allTools);
|
|
628
|
+
return this.emitToolDefinitionsPython(allTools, provider);
|
|
613
629
|
}
|
|
614
|
-
return this.emitToolDefinitionsTypeScript(allTools);
|
|
630
|
+
return this.emitToolDefinitionsTypeScript(allTools, provider);
|
|
615
631
|
}
|
|
616
|
-
emitToolDefinitionsTypeScript(allTools) {
|
|
632
|
+
emitToolDefinitionsTypeScript(allTools, provider) {
|
|
617
633
|
const lines = [];
|
|
618
634
|
lines.push("/**");
|
|
619
635
|
lines.push(" * Tool definitions for agent inference");
|
|
620
|
-
lines.push(
|
|
636
|
+
lines.push(` * Generated by HoloScript AgentInferenceCompiler (target: ${provider})`);
|
|
621
637
|
lines.push(" */");
|
|
622
638
|
lines.push("");
|
|
623
|
-
|
|
639
|
+
if (provider === "anthropic") {
|
|
640
|
+
lines.push("import Anthropic from '@anthropic-ai/sdk';");
|
|
641
|
+
}
|
|
624
642
|
lines.push("");
|
|
625
643
|
const toolNames = allTools.map((t) => `'${t.name}'`);
|
|
626
644
|
lines.push(`export type ToolName = ${toolNames.join(" | ")};`);
|
|
627
645
|
lines.push("");
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
646
|
+
if (provider === "anthropic") {
|
|
647
|
+
lines.push("export const tools: Anthropic.Tool[] = [");
|
|
648
|
+
for (const tool of allTools) {
|
|
649
|
+
lines.push(" {");
|
|
650
|
+
lines.push(` name: ${JSON.stringify(tool.name)},`);
|
|
651
|
+
lines.push(` description: ${JSON.stringify(tool.description)},`);
|
|
652
|
+
lines.push(" input_schema: {");
|
|
653
|
+
lines.push(" type: 'object' as const,");
|
|
654
|
+
lines.push(" properties: {");
|
|
655
|
+
for (const param of tool.parameters) {
|
|
656
|
+
lines.push(` ${param.name}: {`);
|
|
657
|
+
lines.push(` type: ${JSON.stringify(this.toJsonSchemaType(param.type))},`);
|
|
658
|
+
lines.push(` description: ${JSON.stringify(param.description)},`);
|
|
659
|
+
lines.push(" },");
|
|
660
|
+
}
|
|
661
|
+
lines.push(" },");
|
|
662
|
+
const required = tool.parameters.filter((p) => p.required).map((p) => `'${p.name}'`);
|
|
663
|
+
if (required.length > 0) {
|
|
664
|
+
lines.push(` required: [${required.join(", ")}],`);
|
|
665
|
+
}
|
|
666
|
+
lines.push(" },");
|
|
667
|
+
lines.push(" },");
|
|
641
668
|
}
|
|
642
|
-
lines.push("
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
669
|
+
lines.push("];");
|
|
670
|
+
} else if (provider === "custom") {
|
|
671
|
+
lines.push("export const tools = [");
|
|
672
|
+
for (const tool of allTools) {
|
|
673
|
+
lines.push(" {");
|
|
674
|
+
lines.push(` name: ${JSON.stringify(tool.name)},`);
|
|
675
|
+
lines.push(` description: ${JSON.stringify(tool.description)},`);
|
|
676
|
+
lines.push(" parameters: {");
|
|
677
|
+
lines.push(" type: 'object' as const,");
|
|
678
|
+
lines.push(" properties: {");
|
|
679
|
+
for (const param of tool.parameters) {
|
|
680
|
+
lines.push(` ${param.name}: {`);
|
|
681
|
+
lines.push(` type: ${JSON.stringify(this.toJsonSchemaType(param.type))},`);
|
|
682
|
+
lines.push(` description: ${JSON.stringify(param.description)},`);
|
|
683
|
+
lines.push(" },");
|
|
684
|
+
}
|
|
685
|
+
lines.push(" },");
|
|
686
|
+
const required = tool.parameters.filter((p) => p.required).map((p) => `'${p.name}'`);
|
|
687
|
+
if (required.length > 0) {
|
|
688
|
+
lines.push(` required: [${required.join(", ")}] as const,`);
|
|
689
|
+
}
|
|
690
|
+
lines.push(" },");
|
|
691
|
+
lines.push(" },");
|
|
646
692
|
}
|
|
647
|
-
lines.push("
|
|
648
|
-
|
|
693
|
+
lines.push("] as const;");
|
|
694
|
+
} else {
|
|
695
|
+
lines.push("export const tools = [");
|
|
696
|
+
for (const tool of allTools) {
|
|
697
|
+
lines.push(" {");
|
|
698
|
+
lines.push(" type: 'function' as const,");
|
|
699
|
+
lines.push(` name: ${JSON.stringify(tool.name)},`);
|
|
700
|
+
lines.push(` description: ${JSON.stringify(tool.description)},`);
|
|
701
|
+
lines.push(" parameters: {");
|
|
702
|
+
lines.push(" type: 'object' as const,");
|
|
703
|
+
lines.push(" properties: {");
|
|
704
|
+
for (const param of tool.parameters) {
|
|
705
|
+
lines.push(` ${param.name}: {`);
|
|
706
|
+
lines.push(` type: ${JSON.stringify(this.toJsonSchemaType(param.type))},`);
|
|
707
|
+
lines.push(` description: ${JSON.stringify(param.description)},`);
|
|
708
|
+
lines.push(" },");
|
|
709
|
+
}
|
|
710
|
+
lines.push(" },");
|
|
711
|
+
const required = tool.parameters.filter((p) => p.required).map((p) => `'${p.name}'`);
|
|
712
|
+
if (required.length > 0) {
|
|
713
|
+
lines.push(` required: [${required.join(", ")}] as const,`);
|
|
714
|
+
}
|
|
715
|
+
lines.push(" },");
|
|
716
|
+
lines.push(" },");
|
|
717
|
+
}
|
|
718
|
+
lines.push("] as const;");
|
|
649
719
|
}
|
|
650
|
-
lines.push("];");
|
|
651
720
|
lines.push("");
|
|
652
721
|
lines.push("export async function executeToolCall(");
|
|
653
722
|
lines.push(" name: ToolName,");
|
|
@@ -656,7 +725,7 @@ var AgentInferenceCompiler = class extends chunkBF2235SI_cjs.CompilerBase {
|
|
|
656
725
|
lines.push(" switch (name) {");
|
|
657
726
|
for (const tool of allTools) {
|
|
658
727
|
lines.push(` case ${JSON.stringify(tool.name)}:`);
|
|
659
|
-
lines.push(` //
|
|
728
|
+
lines.push(` // Stub: ${tool.name} (generated dispatcher)`);
|
|
660
729
|
lines.push(` return \`[${tool.name}] called with: \${JSON.stringify(input)}\`;`);
|
|
661
730
|
}
|
|
662
731
|
lines.push(" default:");
|
|
@@ -665,20 +734,24 @@ var AgentInferenceCompiler = class extends chunkBF2235SI_cjs.CompilerBase {
|
|
|
665
734
|
lines.push("}");
|
|
666
735
|
return lines.join("\n");
|
|
667
736
|
}
|
|
668
|
-
emitToolDefinitionsPython(allTools) {
|
|
737
|
+
emitToolDefinitionsPython(allTools, provider) {
|
|
669
738
|
const lines = [];
|
|
670
739
|
lines.push('"""');
|
|
671
740
|
lines.push("Tool definitions for agent inference");
|
|
672
|
-
lines.push(
|
|
741
|
+
lines.push(`Generated by HoloScript AgentInferenceCompiler (target: ${provider})`);
|
|
673
742
|
lines.push('"""');
|
|
674
743
|
lines.push("");
|
|
675
744
|
lines.push("");
|
|
676
745
|
lines.push("TOOLS = [");
|
|
677
746
|
for (const tool of allTools) {
|
|
678
747
|
lines.push(" {");
|
|
748
|
+
if (provider !== "anthropic" && provider !== "custom") {
|
|
749
|
+
lines.push(' "type": "function",');
|
|
750
|
+
}
|
|
679
751
|
lines.push(` "name": ${JSON.stringify(tool.name)},`);
|
|
680
752
|
lines.push(` "description": ${JSON.stringify(tool.description)},`);
|
|
681
|
-
|
|
753
|
+
const paramKey = provider === "anthropic" ? "input_schema" : "parameters";
|
|
754
|
+
lines.push(` ${JSON.stringify(paramKey)}: {`);
|
|
682
755
|
lines.push(' "type": "object",');
|
|
683
756
|
lines.push(' "properties": {');
|
|
684
757
|
for (const param of tool.parameters) {
|
|
@@ -703,7 +776,7 @@ var AgentInferenceCompiler = class extends chunkBF2235SI_cjs.CompilerBase {
|
|
|
703
776
|
lines.push("def execute_tool_call(name: str, tool_input: dict) -> str:");
|
|
704
777
|
for (const tool of allTools) {
|
|
705
778
|
lines.push(` if name == ${JSON.stringify(tool.name)}:`);
|
|
706
|
-
lines.push(` #
|
|
779
|
+
lines.push(` # Stub: ${tool.name} (generated dispatcher)`);
|
|
707
780
|
lines.push(` return f"[${tool.name}] called with: {tool_input}"`);
|
|
708
781
|
}
|
|
709
782
|
lines.push(` return f"Unknown tool: {name}"`);
|
|
@@ -738,7 +811,10 @@ var AgentInferenceCompiler = class extends chunkBF2235SI_cjs.CompilerBase {
|
|
|
738
811
|
build: "tsc"
|
|
739
812
|
},
|
|
740
813
|
dependencies: {
|
|
741
|
-
|
|
814
|
+
// Floor bumped to support adaptive thinking, output_config.effort,
|
|
815
|
+
// and Opus 4.7 sampling-param removal. Keep in sync with
|
|
816
|
+
// packages/llm-provider/package.json to avoid split versions.
|
|
817
|
+
"@anthropic-ai/sdk": "^0.88.0"
|
|
742
818
|
},
|
|
743
819
|
devDependencies: {
|
|
744
820
|
tsx: "^4.0.0",
|
|
@@ -904,5 +980,5 @@ exports.AgentInferenceCompiler = AgentInferenceCompiler;
|
|
|
904
980
|
exports.AgentInferenceExportTarget_default = AgentInferenceExportTarget_default;
|
|
905
981
|
exports.createAgentInferenceCompiler = createAgentInferenceCompiler;
|
|
906
982
|
exports.createPythonAgentInferenceCompiler = createPythonAgentInferenceCompiler;
|
|
907
|
-
//# sourceMappingURL=chunk-
|
|
908
|
-
//# sourceMappingURL=chunk-
|
|
983
|
+
//# sourceMappingURL=chunk-6KMK2UXT.cjs.map
|
|
984
|
+
//# sourceMappingURL=chunk-6KMK2UXT.cjs.map
|
|
@@ -1,13 +1,19 @@
|
|
|
1
|
-
import { init_DomainBlockCompilerMixin, compileDomainBlocks, compileMaterialBlock, materialToWebGPU } from './chunk-
|
|
2
|
-
import { init_CompilerBase, CompilerBase } from './chunk-
|
|
3
|
-
import { __export, __esm } from './chunk-
|
|
4
|
-
import { ANSCapabilityPath } from '@holoscript/
|
|
1
|
+
import { init_DomainBlockCompilerMixin, compileDomainBlocks, compileMaterialBlock, materialToWebGPU } from './chunk-W55Z7QIX.js';
|
|
2
|
+
import { init_CompilerBase, CompilerBase } from './chunk-QTPMJRGS.js';
|
|
3
|
+
import { __export, __esm } from './chunk-OL46QLBJ.js';
|
|
4
|
+
import { ANSCapabilityPath } from '@holoscript/core-types/ans';
|
|
5
5
|
|
|
6
6
|
// src/compiler/WebGPUCompiler.ts
|
|
7
7
|
var WebGPUCompiler_exports = {};
|
|
8
8
|
__export(WebGPUCompiler_exports, {
|
|
9
9
|
WebGPUCompiler: () => WebGPUCompiler
|
|
10
10
|
});
|
|
11
|
+
function isGpuParticleTraitName(name) {
|
|
12
|
+
return typeof name === "string" && (name === "gpu_particle" || name.startsWith("vfx_particle_"));
|
|
13
|
+
}
|
|
14
|
+
function findGpuParticleTrait(traits) {
|
|
15
|
+
return traits?.find((t) => isGpuParticleTraitName(t.name));
|
|
16
|
+
}
|
|
11
17
|
var WebGPUCompiler;
|
|
12
18
|
var init_WebGPUCompiler = __esm({
|
|
13
19
|
"src/compiler/WebGPUCompiler.ts"() {
|
|
@@ -24,7 +30,8 @@ var init_WebGPUCompiler = __esm({
|
|
|
24
30
|
entryPoint: options.entryPoint || "main",
|
|
25
31
|
enableCompute: options.enableCompute ?? true,
|
|
26
32
|
msaa: options.msaa || 4,
|
|
27
|
-
indent: options.indent || " "
|
|
33
|
+
indent: options.indent || " ",
|
|
34
|
+
provenanceHash: options.provenanceHash ?? ""
|
|
28
35
|
};
|
|
29
36
|
}
|
|
30
37
|
getRequiredCapability() {
|
|
@@ -40,6 +47,9 @@ var init_WebGPUCompiler = __esm({
|
|
|
40
47
|
`// Source: composition "${this.escapeStringValue(composition.name, "TypeScript")}"`
|
|
41
48
|
);
|
|
42
49
|
this.emit("// Do not edit manually \u2014 regenerate from .holo source");
|
|
50
|
+
if (this.options.provenanceHash) {
|
|
51
|
+
this.emit(`// Provenance Hash: ${this.options.provenanceHash}`);
|
|
52
|
+
}
|
|
43
53
|
this.emit("");
|
|
44
54
|
this.emitDeviceInit();
|
|
45
55
|
if (composition.environment) this.emitEnvironment(composition.environment);
|
|
@@ -153,7 +163,7 @@ var init_WebGPUCompiler = __esm({
|
|
|
153
163
|
this.emit(`// Object: ${this.escapeStringValue(obj.name, "TypeScript")}`);
|
|
154
164
|
const isGaussianSplat = traits.some((t) => t.name === "gaussian_splat");
|
|
155
165
|
const isPointCloud = traits.some((t) => t.name === "point_cloud");
|
|
156
|
-
const isGpuParticle = traits.some((t) => t.name
|
|
166
|
+
const isGpuParticle = traits.some((t) => isGpuParticleTraitName(t.name));
|
|
157
167
|
if (isModel && modelSrc) {
|
|
158
168
|
this.emit(`const ${v}Model = await assetLoader.load("${modelSrc}");`);
|
|
159
169
|
const pos = this.findObjProp(obj, "position");
|
|
@@ -299,9 +309,9 @@ var init_WebGPUCompiler = __esm({
|
|
|
299
309
|
this.emit("});");
|
|
300
310
|
}
|
|
301
311
|
emitGpuParticleObject(v, obj) {
|
|
302
|
-
const trait = obj.traits
|
|
312
|
+
const trait = findGpuParticleTrait(obj.traits);
|
|
303
313
|
const count = trait?.config?.count || 1e4;
|
|
304
|
-
this.emit(`// GPU Particles (${count})`);
|
|
314
|
+
this.emit(`// GPU Particles (${count}) from @${trait?.name ?? "gpu_particle"}`);
|
|
305
315
|
this.emit(`const ${v}ParticleCount = ${count};`);
|
|
306
316
|
this.emit(`const ${v}ParticleBufA = createStorageBuffer(device, ${v}ParticleCount * 32);`);
|
|
307
317
|
this.emit(`const ${v}ParticleBufB = createStorageBuffer(device, ${v}ParticleCount * 32);`);
|
|
@@ -394,7 +404,7 @@ var init_WebGPUCompiler = __esm({
|
|
|
394
404
|
emitComputeShaders(composition) {
|
|
395
405
|
const gpuObjs = (composition.objects || []).filter(
|
|
396
406
|
(o) => o.traits?.some(
|
|
397
|
-
(t) => t.name
|
|
407
|
+
(t) => isGpuParticleTraitName(t.name) || t.name === "gpu_physics" || t.name === "compute"
|
|
398
408
|
)
|
|
399
409
|
);
|
|
400
410
|
if (gpuObjs.length === 0) return;
|
|
@@ -402,8 +412,8 @@ var init_WebGPUCompiler = __esm({
|
|
|
402
412
|
for (const obj of gpuObjs) {
|
|
403
413
|
const v = this.sanitizeName(obj.name);
|
|
404
414
|
const traits = obj.traits || [];
|
|
405
|
-
if (traits.some((t) => t.name
|
|
406
|
-
const count = traits
|
|
415
|
+
if (traits.some((t) => isGpuParticleTraitName(t.name))) {
|
|
416
|
+
const count = findGpuParticleTrait(traits)?.config?.count || 1e4;
|
|
407
417
|
this.emit(
|
|
408
418
|
`const ${v}ParticleCompute = device.createComputePipeline({ layout: "auto", compute: { module: device.createShaderModule({ code: WGSL_PARTICLE_COMPUTE }), entryPoint: "cs_particle_update" } });`
|
|
409
419
|
);
|
|
@@ -448,7 +458,7 @@ var init_WebGPUCompiler = __esm({
|
|
|
448
458
|
this.emit("struct FIn { @location(0) wNorm: vec3<f32>, @location(1) wPos: vec3<f32> };");
|
|
449
459
|
this.emit("@fragment fn fs_main(i: FIn) -> @location(0) vec4<f32> {");
|
|
450
460
|
this.emit(" let N = normalize(i.wNorm); let L = normalize(vec3<f32>(1.0, 2.0, 1.5));");
|
|
451
|
-
this.emit(" let d = max(dot(N, L), 0.0) * (1.0 - mat.rm
|
|
461
|
+
this.emit(" let d = max(dot(N, L), 0.0) * (1.0 - mat.rm[0] * 0.5);");
|
|
452
462
|
this.emit(" return vec4<f32>(mat.color.rgb * (0.15 + d), mat.color.a); }`;");
|
|
453
463
|
this.emit("");
|
|
454
464
|
this.emit("const WGSL_SPLAT = /* wgsl */`");
|
|
@@ -464,7 +474,7 @@ var init_WebGPUCompiler = __esm({
|
|
|
464
474
|
);
|
|
465
475
|
this.emit(" var q = array<vec2<f32>,4>(vec2(-1,-1),vec2(1,-1),vec2(-1,1),vec2(1,1));");
|
|
466
476
|
this.emit(
|
|
467
|
-
" var o: SO; let s = splats[ii]; o.p = vec4<f32>(s.center.xy + q[vi]*0.01, s.center
|
|
477
|
+
" var o: SO; let s = splats[ii]; o.p = vec4<f32>(s.center.xy + q[vi]*0.01, s.center[2], 1.0);"
|
|
468
478
|
);
|
|
469
479
|
this.emit(" o.c = vec4<f32>(s.sh, s.opacity); o.uv = q[vi]; return o; }");
|
|
470
480
|
this.emit("@fragment fn fs_splat(i: SO) -> @location(0) vec4<f32> {");
|
|
@@ -496,8 +506,8 @@ var init_WebGPUCompiler = __esm({
|
|
|
496
506
|
this.emit(
|
|
497
507
|
"@compute @workgroup_size(64) fn cs_particle_update(@builtin(global_invocation_id) gid: vec3<u32>) {"
|
|
498
508
|
);
|
|
499
|
-
this.emit(" let i = gid
|
|
500
|
-
this.emit(" p.vel
|
|
509
|
+
this.emit(" let i = gid[0]; if (i >= arrayLength(&pin)) { return; } var p = pin[i];");
|
|
510
|
+
this.emit(" p.vel[1] -= 9.81 * dt; p.pos += p.vel * dt; p.life -= dt;");
|
|
501
511
|
this.emit(
|
|
502
512
|
" if (p.life <= 0.0) { p.pos = vec3(0.0); p.vel = vec3(0.0, 5.0, 0.0); p.life = 2.0; }"
|
|
503
513
|
);
|
|
@@ -510,10 +520,10 @@ var init_WebGPUCompiler = __esm({
|
|
|
510
520
|
this.emit(
|
|
511
521
|
"@compute @workgroup_size(64) fn cs_physics_step(@builtin(global_invocation_id) gid: vec3<u32>) {"
|
|
512
522
|
);
|
|
513
|
-
this.emit(" let i = gid
|
|
514
|
-
this.emit(" b.vel
|
|
523
|
+
this.emit(" let i = gid[0]; if (i >= arrayLength(&bodies)) { return; } var b = bodies[i];");
|
|
524
|
+
this.emit(" b.vel[1] -= 9.81 * dt; b.pos += b.vel * dt;");
|
|
515
525
|
this.emit(
|
|
516
|
-
" if (b.pos
|
|
526
|
+
" if (b.pos[1] < 0.0) { b.pos[1] = 0.0; b.vel[1] = -b.vel[1] * 0.6; } bodies[i] = b; }`;"
|
|
517
527
|
);
|
|
518
528
|
this.emit("");
|
|
519
529
|
}
|
|
@@ -529,14 +539,14 @@ var init_WebGPUCompiler = __esm({
|
|
|
529
539
|
this.emit("const enc = device.createCommandEncoder();");
|
|
530
540
|
const gpuObjs = (composition.objects || []).filter(
|
|
531
541
|
(o) => o.traits?.some(
|
|
532
|
-
(t) => t.name
|
|
542
|
+
(t) => isGpuParticleTraitName(t.name) || t.name === "gpu_physics" || t.name === "compute"
|
|
533
543
|
)
|
|
534
544
|
);
|
|
535
545
|
if (gpuObjs.length > 0 && this.options.enableCompute) {
|
|
536
546
|
this.emit("const cp = enc.beginComputePass();");
|
|
537
547
|
for (const obj of gpuObjs) {
|
|
538
548
|
const v = this.sanitizeName(obj.name);
|
|
539
|
-
if (obj.traits?.some((t) => t.name
|
|
549
|
+
if (obj.traits?.some((t) => isGpuParticleTraitName(t.name))) {
|
|
540
550
|
this.emit(
|
|
541
551
|
`cp.setPipeline(${v}ParticleCompute); cp.dispatchWorkgroups(${v}ComputeDispatches);`
|
|
542
552
|
);
|
|
@@ -582,7 +592,7 @@ var init_WebGPUCompiler = __esm({
|
|
|
582
592
|
this.emit(`rp.setPipeline(${v}SplatPipeline); rp.draw(4, ${v}SplatCount.value);`);
|
|
583
593
|
} else if (traits.some((t) => t.name === "point_cloud")) {
|
|
584
594
|
this.emit(`rp.setPipeline(${v}PointPipeline); rp.draw(${v}PointCount.value);`);
|
|
585
|
-
} else if (traits.some((t) => t.name
|
|
595
|
+
} else if (traits.some((t) => isGpuParticleTraitName(t.name))) {
|
|
586
596
|
this.emit(
|
|
587
597
|
`rp.setPipeline(${v}ParticlePipeline); rp.setVertexBuffer(0, ${v}ParticleBufA); rp.draw(${v}ParticleCount);`
|
|
588
598
|
);
|
|
@@ -655,5 +665,5 @@ var init_WebGPUCompiler = __esm({
|
|
|
655
665
|
});
|
|
656
666
|
|
|
657
667
|
export { WebGPUCompiler, WebGPUCompiler_exports, init_WebGPUCompiler };
|
|
658
|
-
//# sourceMappingURL=chunk-
|
|
659
|
-
//# sourceMappingURL=chunk-
|
|
668
|
+
//# sourceMappingURL=chunk-6L4VE27M.js.map
|
|
669
|
+
//# sourceMappingURL=chunk-6L4VE27M.js.map
|