@uptimizr/dashboard 0.4.7 → 0.4.8
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/out/404.html +1 -1
- package/out/__next.__PAGE__.txt +9 -9
- package/out/__next._full.txt +10 -10
- package/out/__next._tree.txt +1 -1
- package/out/_next/static/chunks/{209sxygecny37.js → 0-6mdj5wxsfid.js} +1 -1
- package/out/_next/static/chunks/{0ybs1u66q26su.js → 0-qthfqvm1jyj.js} +1 -1
- package/out/_next/static/chunks/01viyuclp2gm9.js +1 -0
- package/out/_next/static/chunks/02aym4t2hgo5c.js +1 -0
- package/out/_next/static/chunks/02ic9b5ejugow.js +1 -0
- package/out/_next/static/chunks/03p70i4c7qt0v.js +1 -0
- package/out/_next/static/chunks/{33i36o_l69sm5.js → 03pjr-ivdicng.js} +1 -1
- package/out/_next/static/chunks/041a06-lxipy5.js +1 -0
- package/out/_next/static/chunks/{1zm6eo861i3c8.js → 06dzkwetqis-5.js} +1 -1
- package/out/_next/static/chunks/{3ipx7xbxchsq9.js → 06kvanz5-fo52.js} +1 -1
- package/out/_next/static/chunks/07y8ke_iy59dn.js +1 -0
- package/out/_next/static/chunks/09jukc-4jl735.js +1 -0
- package/out/_next/static/chunks/{35sne1llxnc-m.js → 09khmdgez3t0a.js} +18 -18
- package/out/_next/static/chunks/{02qk_wmkf9at-.js → 0_dca4876jshu.js} +38 -38
- package/out/_next/static/chunks/0axcgnl5qzr6e.js +1 -0
- package/out/_next/static/chunks/0ay4fjomijs3n.js +1 -0
- package/out/_next/static/chunks/0c7fy79wlccat.js +1 -0
- package/out/_next/static/chunks/0cqe4-l3imct3.js +1 -0
- package/out/_next/static/chunks/0cssvelju788j.js +1 -0
- package/out/_next/static/chunks/{0-_j1khfoib6l.js → 0ctain5xq2wsd.js} +12 -12
- package/out/_next/static/chunks/{22yqh0zlo_vwr.js → 0df-dr3otg_4w.js} +1 -1
- package/out/_next/static/chunks/{26y9sv8_-ykxf.js → 0endw997j7ao9.js} +1 -1
- package/out/_next/static/chunks/0ev_pbit1v_qg.js +1 -0
- package/out/_next/static/chunks/0eyw9oiwipywb.js +1 -0
- package/out/_next/static/chunks/0fkzbuo1tex4u.js +1 -0
- package/out/_next/static/chunks/0govas0u0t4w3.js +1 -0
- package/out/_next/static/chunks/{0grasqqf5dw7r.js → 0guzhnususp3-.js} +2 -2
- package/out/_next/static/chunks/0h7bq_ysu17q7.js +3 -0
- package/out/_next/static/chunks/0hneh_3xzlo28.js +1 -0
- package/out/_next/static/chunks/0iaqwme19z_0s.js +1 -0
- package/out/_next/static/chunks/0ibmar10xndpn.js +1 -0
- package/out/_next/static/chunks/0ii8mqoteppgh.js +11 -0
- package/out/_next/static/chunks/{1uh9zgsy69g92.js → 0ip6v64di_l6x.js} +1 -1
- package/out/_next/static/chunks/{267prao6fyt22.js → 0ixymgjgz3grn.js} +10 -10
- package/out/_next/static/chunks/0kuah8g7lt5ox.js +1 -0
- package/out/_next/static/chunks/0l3k4j19vxm17.js +1 -0
- package/out/_next/static/chunks/0l6hg0ohwh9-m.js +1 -0
- package/out/_next/static/chunks/0m4um4ylhlfan.js +1 -0
- package/out/_next/static/chunks/0mj837d4h0ddq.js +1 -0
- package/out/_next/static/chunks/0nyn-f4905o91.js +1 -0
- package/out/_next/static/chunks/0og6i9rsgkuif.js +1 -0
- package/out/_next/static/chunks/0os1x-fxzgnxs.js +1 -0
- package/out/_next/static/chunks/0otnra7mp0hog.js +1 -0
- package/out/_next/static/chunks/{1gttu-n9am66k.js → 0oyf2xzv8ofkk.js} +21 -21
- package/out/_next/static/chunks/0qvsy3gcqjm12.js +1 -0
- package/out/_next/static/chunks/{1qg1l7t00nyib.js → 0rl4ddh2vgxyl.js} +14 -14
- package/out/_next/static/chunks/0rwpttmsmqvn_.js +1 -0
- package/out/_next/static/chunks/0so3wjp9ch93y.js +1 -0
- package/out/_next/static/chunks/{43fp64xnfy646.js → 0te4g160_rb5d.js} +1 -1
- package/out/_next/static/chunks/0uby-zvu799ef.js +1 -0
- package/out/_next/static/chunks/{3h6akt2uu05ku.js → 0uvn0op2mlr2u.js} +12 -12
- package/out/_next/static/chunks/0vwj4hxjm0igv.js +1 -0
- package/out/_next/static/chunks/{1m9zc5gm-327d.js → 0w7c30w07uct2.js} +10 -10
- package/out/_next/static/chunks/0wm38z3u2133a.js +1 -0
- package/out/_next/static/chunks/0y7yk5al7_p8q.js +4 -0
- package/out/_next/static/chunks/0ycr0gi6fn6bt.js +1 -0
- package/out/_next/static/chunks/0ywvahq9t0tki.js +1 -0
- package/out/_next/static/chunks/0zh6nslagkby-.js +1 -0
- package/out/_next/static/chunks/{3vbamaoiuk9yj.js → 0zo8xa0nej3ex.js} +1 -1
- package/out/_next/static/chunks/{2of8q0kaeqpf0.js → 0zsir95gpf3xw.js} +1 -1
- package/out/_next/static/chunks/0zu6ryyj0ig-j.js +3 -0
- package/out/_next/static/chunks/{2c721vfva711t.js → 1-jv8k10q_1uw.js} +1 -1
- package/out/_next/static/chunks/1-s5ioie9a94e.js +1 -0
- package/out/_next/static/chunks/{13zcn4lv0qj76.js → 1-yos1h0qws5e.js} +11 -11
- package/out/_next/static/chunks/10o7brc3x027r.js +1 -0
- package/out/_next/static/chunks/{060iult6f68_e.js → 10pae4gb9i929.js} +29 -29
- package/out/_next/static/chunks/13p93itm8a3ym.js +1 -0
- package/out/_next/static/chunks/{0btmk0wmekl02.js → 147s8i_lktp4_.js} +2 -2
- package/out/_next/static/chunks/{3njwfothmmg7u.js → 14tgo5xt_3j4w.js} +1 -1
- package/out/_next/static/chunks/1699hx-vlak0n.js +22 -0
- package/out/_next/static/chunks/16d6n9e77rqti.js +1 -0
- package/out/_next/static/chunks/{3zs7l4362msjd.js → 16f3d5dv83rsr.js} +1 -1
- package/out/_next/static/chunks/16i_tpwn_cmr-.js +1 -0
- package/out/_next/static/chunks/{1by60_b14x-3o.js → 16rfr165nbha0.js} +1 -1
- package/out/_next/static/chunks/{0zqgq0lwtz9tn.js → 16sl51pvzo4tf.js} +1 -1
- package/out/_next/static/chunks/{2n-pveub8b_5t.js → 1760s-32qpwgg.js} +1 -1
- package/out/_next/static/chunks/{1u8snlm6a7uhi.js → 18kq07c5xy_4g.js} +4 -4
- package/out/_next/static/chunks/{1rcdimhu0qhlu.js → 190tbzt861ao3.js} +39 -39
- package/out/_next/static/chunks/19bhv6cupnnyj.js +1 -0
- package/out/_next/static/chunks/1_14pn2wwebxy.js +1 -0
- package/out/_next/static/chunks/{3huu0tqmxwowu.js → 1_kikmeubh0wq.js} +30 -30
- package/out/_next/static/chunks/1ay3z6agelsvz.js +1 -0
- package/out/_next/static/chunks/1b-fi3bfmpe31.js +1 -0
- package/out/_next/static/chunks/1bae3tqv53x9_.js +1 -0
- package/out/_next/static/chunks/1bf421g4peccx.js +2 -0
- package/out/_next/static/chunks/1bfony5qsc5tp.js +1 -0
- package/out/_next/static/chunks/{1e8_jl2cxd3rp.js → 1ddt0ot7kl8vq.js} +40 -40
- package/out/_next/static/chunks/1emz2vjkgck4z.js +1 -0
- package/out/_next/static/chunks/1eogzzw8i1wsg.js +1 -0
- package/out/_next/static/chunks/{2apihn9ra2ufp.js → 1g9p2h1-31q8o.js} +1 -1
- package/out/_next/static/chunks/1gcz1k1v1woca.js +1 -0
- package/out/_next/static/chunks/{3v-0c2aj6c0on.js → 1h8lyicgqhpxa.js} +1 -1
- package/out/_next/static/chunks/{3772oce1n3t_g.js → 1hot663akaepl.js} +1 -1
- package/out/_next/static/chunks/1i7pgl3ks5ye0.js +1 -0
- package/out/_next/static/chunks/{2sys9nj8lo3uk.js → 1i8sk_qgpdjhs.js} +1 -1
- package/out/_next/static/chunks/{30bhz7czzs4mf.js → 1kk3ct7pkpf3b.js} +1 -1
- package/out/_next/static/chunks/{33hp-khdfohdq.js → 1kq9o8del67le.js} +1 -1
- package/out/_next/static/chunks/{3d-i_skta_wes.js → 1l7tzyx2mumlq.js} +1 -1
- package/out/_next/static/chunks/1n_uwed9o--go.js +1 -0
- package/out/_next/static/chunks/1o351eldttogn.js +1 -0
- package/out/_next/static/chunks/1ogs4_aj84bfn.js +1 -0
- package/out/_next/static/chunks/{0sw-8gxbg4x0l.js → 1p206txlluipi.js} +18 -18
- package/out/_next/static/chunks/1p2bt1w845v6c.js +1 -0
- package/out/_next/static/chunks/1p3rgz4aef1gk.js +1 -0
- package/out/_next/static/chunks/{41b5gpyqbj58m.js → 1qcgdx9yl0gfx.js} +4 -4
- package/out/_next/static/chunks/1ql3mm2w5r-m8.js +1 -0
- package/out/_next/static/chunks/1qvcyuyshi3ll.js +53 -0
- package/out/_next/static/chunks/1r0yyg5a_0knc.js +1 -0
- package/out/_next/static/chunks/{15o4_2t-l3rj5.js → 1sa6qiidtcyk2.js} +1 -1
- package/out/_next/static/chunks/1t-9vrdrsi8le.js +1 -0
- package/out/_next/static/chunks/{1rlfg62jxqj3z.js → 1t97zo0tlpbnz.js} +1 -1
- package/out/_next/static/chunks/1te2tinzqnwck.js +1 -0
- package/out/_next/static/chunks/{3sa_hlx3konc7.js → 1trt-m2nrck0v.js} +1 -1
- package/out/_next/static/chunks/1ty9jpwr3o_st.js +1 -0
- package/out/_next/static/chunks/1u6w6veke8rze.js +1 -0
- package/out/_next/static/chunks/1u900urmrbv73.js +1 -0
- package/out/_next/static/chunks/{3_dgblylldcgb.js → 1vz2gd8k74lpi.js} +1 -1
- package/out/_next/static/chunks/1wkpl9bfb0wn7.js +1 -0
- package/out/_next/static/chunks/1wrly9a9c3teq.js +1 -0
- package/out/_next/static/chunks/1x0m05155yy4e.js +1 -0
- package/out/_next/static/chunks/{3xl-op0hwxytg.js → 1xf1wfow43ekc.js} +5 -5
- package/out/_next/static/chunks/1y10o40v9odam.js +1 -0
- package/out/_next/static/chunks/{2s6kpclh6ie7o.js → 1y_zykt3fpen4.js} +29 -29
- package/out/_next/static/chunks/1ye6xtbm16pg4.js +1 -0
- package/out/_next/static/chunks/{1t5oynmttpfsw.js → 1z6_57k5h31u7.js} +1 -1
- package/out/_next/static/chunks/{0lep3_bqwfuin.js → 1zboqft0h6mop.js} +1 -1
- package/out/_next/static/chunks/{43v4y2gu5z9_h.js → 1zr3c351x0ri5.js} +1 -1
- package/out/_next/static/chunks/2-5p2lcedvrli.js +1 -0
- package/out/_next/static/chunks/206hxrq60f1_e.js +1 -0
- package/out/_next/static/chunks/20r05k3-studj.js +1 -0
- package/out/_next/static/chunks/22gs24kj2du56.js +1 -0
- package/out/_next/static/chunks/22x5pd1gyp7sf.js +1 -0
- package/out/_next/static/chunks/{2a07so920b6aa.js → 22z-2t_yp1jzs.js} +1 -1
- package/out/_next/static/chunks/{30n4y_uu8chbh.js → 23hmfdw6z5zfy.js} +30 -30
- package/out/_next/static/chunks/23y1krqnc-8sm.js +1 -0
- package/out/_next/static/chunks/{3f8qelpscqfym.js → 24tbkj1qkux88.js} +2 -2
- package/out/_next/static/chunks/{2ao-3jzz7yw3p.js → 26cmri51v7497.js} +11 -11
- package/out/_next/static/chunks/27jalbk9zu-2b.js +1 -0
- package/out/_next/static/chunks/285d2s9096ryc.js +1 -0
- package/out/_next/static/chunks/296ykep2nvppv.js +1 -0
- package/out/_next/static/chunks/29nehg5cal-ug.js +1 -0
- package/out/_next/static/chunks/2_a56_k3x7to6.js +1 -0
- package/out/_next/static/chunks/2a-0l6eb1blh3.js +4 -0
- package/out/_next/static/chunks/{3qn6r8-0u6dij.js → 2a31-txop1jzg.js} +38 -38
- package/out/_next/static/chunks/2bse5vll1o-x0.js +1 -0
- package/out/_next/static/chunks/2ct40spu9wfj7.js +1 -0
- package/out/_next/static/chunks/{2kok6zedeeltw.js → 2ept01b7t-e03.js} +1 -1
- package/out/_next/static/chunks/{3w59kt5ztyvoq.js → 2ey5dqelco_g5.js} +1 -1
- package/out/_next/static/chunks/2fd_009hw7y0m.js +1 -0
- package/out/_next/static/chunks/{0fd-0i1yt23kz.js → 2ftz9kaxrsgxh.js} +1 -1
- package/out/_next/static/chunks/2gefdnozflr7p.js +1 -0
- package/out/_next/static/chunks/{2izok2otbk8-2.js → 2gs-u1n5uv7iz.js} +37 -37
- package/out/_next/static/chunks/{2r96kyeehsji9.js → 2hizqql79u-54.js} +1 -1
- package/out/_next/static/chunks/2iqf2dpdg_vfl.js +1 -0
- package/out/_next/static/chunks/2j7z127s_ycjd.js +1 -0
- package/out/_next/static/chunks/2kax7uslfxdnx.js +31 -0
- package/out/_next/static/chunks/2lh_w9rzy3vek.js +1 -0
- package/out/_next/static/chunks/{0rracz73p38mo.js → 2ln1na26qwp-3.js} +9 -9
- package/out/_next/static/chunks/2n08l1q5o_27e.js +1 -0
- package/out/_next/static/chunks/2n7268gyd9z-6.js +1 -0
- package/out/_next/static/chunks/2nq9cgjmtqwvp.js +1 -0
- package/out/_next/static/chunks/{005bbq_px7lke.js → 2oj8qc_pv14nk.js} +2 -2
- package/out/_next/static/chunks/2q24e72-olbe8.js +1 -0
- package/out/_next/static/chunks/2qc4hscs26cro.js +1 -0
- package/out/_next/static/chunks/{0gf-ztg86zd80.js → 2qe46redkqhfg.js} +1 -1
- package/out/_next/static/chunks/2qmfe0mqw150h.js +1 -0
- package/out/_next/static/chunks/2qtc0nbl_521e.js +1 -0
- package/out/_next/static/chunks/{0e1jfrmioeuws.js → 2rofu6gu1xzuq.js} +1 -1
- package/out/_next/static/chunks/2tdi94rkq739i.js +1 -0
- package/out/_next/static/chunks/2u_2sacqa9xa7.js +1 -0
- package/out/_next/static/chunks/2ujqz6088shm5.js +1 -0
- package/out/_next/static/chunks/{1l_3oidssbhns.js → 2urh9qafp3fiw.js} +17 -17
- package/out/_next/static/chunks/{05v-nubi896jg.js → 2v06n4z8wsmn9.js} +1 -1
- package/out/_next/static/chunks/2vp-5skbk1nfu.js +1 -0
- package/out/_next/static/chunks/2vu973j_n6cpx.js +1 -0
- package/out/_next/static/chunks/{37cnbm5ft1mqf.js → 2wwra56rehfcj.js} +1 -1
- package/out/_next/static/chunks/2xpwr97h2asal.js +1 -0
- package/out/_next/static/chunks/3000-0b8n9t_2.js +1 -0
- package/out/_next/static/chunks/30t3203d7p2da.js +1 -0
- package/out/_next/static/chunks/31kto7-dxkt3z.js +1 -0
- package/out/_next/static/chunks/{2lsvk7xcfkarc.js → 32oflcl79d8mu.js} +1 -1
- package/out/_next/static/chunks/32ovg81ae0l03.js +1 -0
- package/out/_next/static/chunks/{0z9erbl3llr_b.js → 331kthnvoma7n.js} +16 -16
- package/out/_next/static/chunks/{0q75860p8u_ii.js → 337kn1mn34rc6.js} +1 -1
- package/out/_next/static/chunks/{2tc3e-iqv71y_.js → 33xug8kf0-a1o.js} +1 -1
- package/out/_next/static/chunks/{1-ogak5u00kwa.js → 34dcb7_flbrvo.js} +1 -1
- package/out/_next/static/chunks/34zotyeqrz_nq.js +1 -0
- package/out/_next/static/chunks/351wsmi75l8db.js +1 -0
- package/out/_next/static/chunks/{15jlgfcaeaki9.js → 36yv-ialtpx98.js} +1 -1
- package/out/_next/static/chunks/37hwasxtee5e0.js +1 -0
- package/out/_next/static/chunks/37t0iclgxes05.js +1 -0
- package/out/_next/static/chunks/{1q4lkgxfnqnew.js → 37xnvnx1jxfaf.js} +1 -1
- package/out/_next/static/chunks/{2z_iab7ozohhq.js → 38w74ixqt-9co.js} +16 -16
- package/out/_next/static/chunks/{2h249uvhh2sij.js → 39t2x_9zd2rst.js} +10 -10
- package/out/_next/static/chunks/{0thw099xk3_0p.js → 39v73timmzwny.js} +2 -2
- package/out/_next/static/chunks/{2n3xu_wbvtj7h.js → 3_xqc3658d8sw.js} +12 -12
- package/out/_next/static/chunks/3ba8eudvlczwe.js +1 -0
- package/out/_next/static/chunks/{2q6l-xdqzgmpf.js → 3buezhxqc8n6n.js} +1 -1
- package/out/_next/static/chunks/{1zt1xxovnjhkm.js → 3c5iwwj-fhbue.js} +1 -1
- package/out/_next/static/chunks/{2urx6fow8c8c9.js → 3d8ot2tw6yqfq.js} +12 -12
- package/out/_next/static/chunks/3dc057ffe7ij-.js +1 -0
- package/out/_next/static/chunks/3djnlzwj9869o.js +1 -0
- package/out/_next/static/chunks/{2y8i7_nxm4r05.js → 3fuqxjjf8o1v9.js} +5 -5
- package/out/_next/static/chunks/{0z004fn14pbcu.js → 3gt6rzg9qw-an.js} +1 -1
- package/out/_next/static/chunks/{1tgj55b305g4h.js → 3h_05w5j8x538.js} +1 -1
- package/out/_next/static/chunks/{3j9xvdz55bi4p.js → 3hkhd1_k8xohv.js} +33 -33
- package/out/_next/static/chunks/{42ymanq326mo7.js → 3ijcc5tfisfnj.js} +1 -1
- package/out/_next/static/chunks/3j0dbpd9zop3p.js +1 -0
- package/out/_next/static/chunks/{1zkd8v-qka--j.js → 3ju83xk-ca7ma.js} +21 -21
- package/out/_next/static/chunks/3jxhl4apmhbm1.js +13 -0
- package/out/_next/static/chunks/{302qk2fjdrthp.js → 3la99oz_0p0r6.js} +5 -5
- package/out/_next/static/chunks/3n1b34fd5fdrh.js +1 -0
- package/out/_next/static/chunks/{2j120dkh7q3uf.js → 3nq_hq4x3rn3r.js} +1 -1
- package/out/_next/static/chunks/3pgb1kkqrdl9t.js +1 -0
- package/out/_next/static/chunks/3pik_-jj-zkfl.js +1 -0
- package/out/_next/static/chunks/{2w99knknr5i8c.js → 3q38kdbzd2nbd.js} +1 -1
- package/out/_next/static/chunks/3q5zl4ks17au2.js +1 -0
- package/out/_next/static/chunks/{2uo6vm7mfgrbf.js → 3qr10445lte-n.js} +1 -1
- package/out/_next/static/chunks/3r-8bnguvxsyo.js +1 -0
- package/out/_next/static/chunks/3sg56j8boe-3o.js +1 -0
- package/out/_next/static/chunks/{2q8yg63br2jc9.js → 3u7zj1-jdg781.js} +1 -1
- package/out/_next/static/chunks/{32_c4mbb6j1l6.js → 3wj5dmf6cywz8.js} +22 -22
- package/out/_next/static/chunks/{3oqxl46ukaojj.js → 3wr_oijfsq8lr.js} +11 -11
- package/out/_next/static/chunks/3xu0dh1ikzwj2.js +1 -0
- package/out/_next/static/chunks/3y5tpixt23-fl.js +1 -0
- package/out/_next/static/chunks/40gjf-_jt8upu.js +5 -0
- package/out/_next/static/chunks/41f12o_5lf-i9.js +1 -0
- package/out/_next/static/chunks/42ma8lqduohlc.js +1 -0
- package/out/_next/static/chunks/{0ai0zgbgjqb92.js → 43usshq2nc125.js} +1 -1
- package/out/_next/static/chunks/{0hajwk2yd-rwr.js → 44bl4ufopbmyh.js} +1 -1
- package/out/_next/static/chunks/44iutzkw9r21x.js +1 -0
- package/out/_next/static/chunks/turbopack-1xrxa3noq196-.js +1 -0
- package/out/_not-found/__next._full.txt +8 -8
- package/out/_not-found/__next._not-found.__PAGE__.txt +7 -7
- package/out/_not-found/__next._tree.txt +1 -1
- package/out/_not-found.html +1 -1
- package/out/_not-found.txt +8 -8
- package/out/index.html +1 -1
- package/out/index.txt +10 -10
- package/package.json +9 -9
- package/out/_next/static/chunks/00fbhtmui-yxg.js +0 -1
- package/out/_next/static/chunks/017pn-pen381_.js +0 -1
- package/out/_next/static/chunks/01vov6inx1zzt.js +0 -1
- package/out/_next/static/chunks/03bd5plut08tg.js +0 -1
- package/out/_next/static/chunks/03dwfqmo73w_z.js +0 -1
- package/out/_next/static/chunks/03sn4419dam-h.js +0 -5
- package/out/_next/static/chunks/05ere0-228syf.js +0 -1
- package/out/_next/static/chunks/05h8u5lrypn5m.js +0 -1
- package/out/_next/static/chunks/05z79zh625ezu.js +0 -1
- package/out/_next/static/chunks/08lvtnv7b1cxp.js +0 -1
- package/out/_next/static/chunks/0_v2luu_qmeid.js +0 -1
- package/out/_next/static/chunks/0boov9mwycanf.js +0 -1
- package/out/_next/static/chunks/0d8x8m2x6ca_m.js +0 -1
- package/out/_next/static/chunks/0dmrdrwtd093b.js +0 -1
- package/out/_next/static/chunks/0e7nlxmneb2j_.js +0 -1
- package/out/_next/static/chunks/0es97pusfxupl.js +0 -1
- package/out/_next/static/chunks/0fxdyvb1w23d1.js +0 -1
- package/out/_next/static/chunks/0fxhc24djjcgq.js +0 -1
- package/out/_next/static/chunks/0hk1wg7h4araz.js +0 -1
- package/out/_next/static/chunks/0j74ipw4fps-n.js +0 -1
- package/out/_next/static/chunks/0kj-vckdn7t5p.js +0 -1
- package/out/_next/static/chunks/0lbs5xdyjuzuo.js +0 -1
- package/out/_next/static/chunks/0mp0jh1gj7290.js +0 -1
- package/out/_next/static/chunks/0ngpoj2g5i4kz.js +0 -1
- package/out/_next/static/chunks/0nhljhguceh66.js +0 -1
- package/out/_next/static/chunks/0p6z73afb9dj2.js +0 -1
- package/out/_next/static/chunks/0p9zfmidzqkps.js +0 -1
- package/out/_next/static/chunks/0sx-6rf3eteqn.js +0 -1
- package/out/_next/static/chunks/0u85f0dhb4i8e.js +0 -1
- package/out/_next/static/chunks/0uk7kigzm4vi2.js +0 -31
- package/out/_next/static/chunks/0ulufxnsrou61.js +0 -1
- package/out/_next/static/chunks/0xa9dyg6ezzyd.js +0 -2
- package/out/_next/static/chunks/0xvrfvur0p534.js +0 -1
- package/out/_next/static/chunks/0ydfhk-p6zvm0.js +0 -1
- package/out/_next/static/chunks/0zcsxvcvog9ue.js +0 -1
- package/out/_next/static/chunks/10_5p5-xf2aoo.js +0 -1
- package/out/_next/static/chunks/118qlrzdwpfmo.js +0 -1
- package/out/_next/static/chunks/11km5p4gd0ut4.js +0 -1
- package/out/_next/static/chunks/120rl4l29q9xs.js +0 -1
- package/out/_next/static/chunks/129m5i93ltoym.js +0 -1
- package/out/_next/static/chunks/12n73o884lyyl.js +0 -1
- package/out/_next/static/chunks/175st2ogkg_1o.js +0 -1
- package/out/_next/static/chunks/19rsodtu91ja_.js +0 -1
- package/out/_next/static/chunks/1a2ouhup611bz.js +0 -1
- package/out/_next/static/chunks/1cyq7i39885sl.js +0 -1
- package/out/_next/static/chunks/1d9it6yocgt54.js +0 -1
- package/out/_next/static/chunks/1dp1s1t-y7gal.js +0 -1
- package/out/_next/static/chunks/1dr7gh6xgypl8.js +0 -1
- package/out/_next/static/chunks/1dt30s_sp8415.js +0 -1
- package/out/_next/static/chunks/1f1rek_fxk3of.js +0 -1
- package/out/_next/static/chunks/1f2mna0k5efeq.js +0 -1
- package/out/_next/static/chunks/1gfz3sxwkkg3d.js +0 -1
- package/out/_next/static/chunks/1gr35qeguuws0.js +0 -1
- package/out/_next/static/chunks/1imi0xwi9hd99.js +0 -1
- package/out/_next/static/chunks/1ka5v5zu0cstt.js +0 -1
- package/out/_next/static/chunks/1n9nhz-6azcp3.js +0 -3
- package/out/_next/static/chunks/1ncqwe81t_9_x.js +0 -1
- package/out/_next/static/chunks/1nix_lulkpklo.js +0 -1
- package/out/_next/static/chunks/1ntqovuz2c217.js +0 -1
- package/out/_next/static/chunks/1pgs-98tfkq9_.js +0 -1
- package/out/_next/static/chunks/1q2z0aeopo8t8.js +0 -1
- package/out/_next/static/chunks/1ses023uud001.js +0 -1
- package/out/_next/static/chunks/1t9i20i5-f8ze.js +0 -1
- package/out/_next/static/chunks/1ug4k-1zhr63a.js +0 -1
- package/out/_next/static/chunks/1vrpzlif-z_p0.js +0 -1
- package/out/_next/static/chunks/1vurgl6oz2qey.js +0 -17
- package/out/_next/static/chunks/1w-qc09n9ijtq.js +0 -1
- package/out/_next/static/chunks/1ycqxcht6x54p.js +0 -1
- package/out/_next/static/chunks/1zj4307ugq0qz.js +0 -1
- package/out/_next/static/chunks/1zm52cjrfrq7c.js +0 -1
- package/out/_next/static/chunks/1zp9363yfhpom.js +0 -1
- package/out/_next/static/chunks/2-3hk_db5fpok.js +0 -1
- package/out/_next/static/chunks/2-bv9a_0zgw1f.js +0 -1
- package/out/_next/static/chunks/216uiih3_vdfd.js +0 -1
- package/out/_next/static/chunks/21kfpd_bityxt.js +0 -1
- package/out/_next/static/chunks/24ecas0m9tao7.js +0 -3
- package/out/_next/static/chunks/24pq9210rng3f.js +0 -1
- package/out/_next/static/chunks/26skkagvj1z96.js +0 -1
- package/out/_next/static/chunks/2701xfv_07wz_.js +0 -1
- package/out/_next/static/chunks/271333m8y3k0e.js +0 -1
- package/out/_next/static/chunks/29rkmguzky-bp.js +0 -1
- package/out/_next/static/chunks/2a2oy8ryz2tsk.js +0 -1
- package/out/_next/static/chunks/2apnpj0-fs9ks.js +0 -1
- package/out/_next/static/chunks/2b481pitl4k85.js +0 -1
- package/out/_next/static/chunks/2bettxaqt3d2p.js +0 -1
- package/out/_next/static/chunks/2d2kl_m64j9cb.js +0 -1
- package/out/_next/static/chunks/2droqjmvmgj13.js +0 -1
- package/out/_next/static/chunks/2dxbvwbbgpzoq.js +0 -1
- package/out/_next/static/chunks/2eqbsut829r5l.js +0 -1
- package/out/_next/static/chunks/2f3_mzxjh3gso.js +0 -1
- package/out/_next/static/chunks/2fsde0jwi5qtt.js +0 -1
- package/out/_next/static/chunks/2j2ynchpqh34-.js +0 -1
- package/out/_next/static/chunks/2kj6pzs_wap1v.js +0 -1
- package/out/_next/static/chunks/2lnj9jruy4nrv.js +0 -1
- package/out/_next/static/chunks/2ofwtw6p08sfz.js +0 -1
- package/out/_next/static/chunks/2phl5ta4iim7l.js +0 -12
- package/out/_next/static/chunks/2r5qgieqldcd9.js +0 -1
- package/out/_next/static/chunks/2r7y401cvjc1s.js +0 -1
- package/out/_next/static/chunks/2rmc6ru7mc-kg.js +0 -1
- package/out/_next/static/chunks/2w2k1gveljyb7.js +0 -1
- package/out/_next/static/chunks/2w_ptlw-ad8-9.js +0 -4
- package/out/_next/static/chunks/2ws1s9d52ayv8.js +0 -1
- package/out/_next/static/chunks/2x7enks3ydgai.js +0 -1
- package/out/_next/static/chunks/2ydub0t01728d.js +0 -1
- package/out/_next/static/chunks/3-m_vzabs1uez.js +0 -1
- package/out/_next/static/chunks/3527r3jo5fj3i.js +0 -1
- package/out/_next/static/chunks/355dg8yaa94hr.js +0 -1
- package/out/_next/static/chunks/35ntbr_c-yx44.js +0 -1
- package/out/_next/static/chunks/36enkx1skkv2-.js +0 -4
- package/out/_next/static/chunks/38xdo3cifphut.js +0 -1
- package/out/_next/static/chunks/3beawo-qwuk8k.js +0 -1
- package/out/_next/static/chunks/3cj_6sl9kr3e9.js +0 -1
- package/out/_next/static/chunks/3df_l2we755bb.js +0 -1
- package/out/_next/static/chunks/3eve5y7fpzx2h.js +0 -1
- package/out/_next/static/chunks/3ewgyb4y19w-3.js +0 -1
- package/out/_next/static/chunks/3f3789eh18_oy.js +0 -1
- package/out/_next/static/chunks/3g3-e9m1en45q.js +0 -1
- package/out/_next/static/chunks/3i239y-1hbkm-.js +0 -1
- package/out/_next/static/chunks/3kp8qmhoi24oz.js +0 -1
- package/out/_next/static/chunks/3ksq69yq-40_r.js +0 -1
- package/out/_next/static/chunks/3qye1lytea2i8.js +0 -1
- package/out/_next/static/chunks/3rlp9yr75liz7.js +0 -1
- package/out/_next/static/chunks/3tyo643l62h3m.js +0 -1
- package/out/_next/static/chunks/3tz2tpqa9uvwm.js +0 -1
- package/out/_next/static/chunks/3utpc-fc6_y0f.js +0 -1
- package/out/_next/static/chunks/3v6nxa28rxngq.js +0 -1
- package/out/_next/static/chunks/3vv99btjc-mky.js +0 -1
- package/out/_next/static/chunks/3x02lxdo28u9i.js +0 -1
- package/out/_next/static/chunks/3ydnxyc4rvad_.js +0 -1
- package/out/_next/static/chunks/3ylg4gfetwgxw.js +0 -1
- package/out/_next/static/chunks/3zdtteq-r2fs5.js +0 -62
- package/out/_next/static/chunks/3zkwt0gybqtgm.js +0 -1
- package/out/_next/static/chunks/40etabvml_71y.js +0 -1
- package/out/_next/static/chunks/417jkzz0slv9m.js +0 -1
- package/out/_next/static/chunks/41u2-5jayyajf.js +0 -22
- package/out/_next/static/chunks/42gcpy51w7lk1.js +0 -1
- package/out/_next/static/chunks/44cer242u-f8v.js +0 -1
- package/out/_next/static/chunks/44zi0gl0a6a8w.js +0 -1
- package/out/_next/static/chunks/turbopack-0n2o5_bkskckx.js +0 -1
- /package/out/_next/static/{A1hxMz783bIWo0Q9qqV3L → 4r0L0ZMJeBwOJCVDsvvZ4}/_buildManifest.js +0 -0
- /package/out/_next/static/{A1hxMz783bIWo0Q9qqV3L → 4r0L0ZMJeBwOJCVDsvvZ4}/_clientMiddlewareManifest.js +0 -0
- /package/out/_next/static/{A1hxMz783bIWo0Q9qqV3L → 4r0L0ZMJeBwOJCVDsvvZ4}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,23797,e=>{"use strict";var r=e.i(25044),t=e.i(54058),a=e.i(83915),i=e.i(38267),n=e.i(95057),o=e.i(69337),f=e.i(48585),s=e.i(23275),l=e.i(32614),c=e.i(71184),_=e.i(10486);let m="openpbrFragmentSamplersDeclaration",d=`#include<samplerFragmentDeclaration>(_DEFINENAME_,BASE_COLOR,_VARYINGNAME_,BaseColor,_SAMPLERNAME_,baseColor)
|
|
2
2
|
#include<samplerFragmentDeclaration>(_DEFINENAME_,BASE_WEIGHT,_VARYINGNAME_,BaseWeight,_SAMPLERNAME_,baseWeight)
|
|
3
3
|
#include<samplerFragmentDeclaration>(_DEFINENAME_,BASE_DIFFUSE_ROUGHNESS,_VARYINGNAME_,BaseDiffuseRoughness,_SAMPLERNAME_,baseDiffuseRoughness)
|
|
4
4
|
#include<samplerFragmentDeclaration>(_DEFINENAME_,BASE_METALNESS,_VARYINGNAME_,BaseMetalness,_SAMPLERNAME_,baseMetalness)
|
|
@@ -50,7 +50,7 @@ var blueNoiseSamplerSampler: sampler;var blueNoiseSampler: texture_2d<f32>;
|
|
|
50
50
|
#ifdef IBL_CDF_FILTERING
|
|
51
51
|
var icdfSamplerSampler: sampler;var icdfSampler: texture_2d<f32>;
|
|
52
52
|
#endif
|
|
53
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[m]||(r.ShaderStore.IncludesShadersStoreWGSL[m]=d);var u=e.i(
|
|
53
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[m]||(r.ShaderStore.IncludesShadersStoreWGSL[m]=d);var u=e.i(53872),g=e.i(96045),p=e.i(69288),v=e.i(36953),S=e.i(1658),E=e.i(65503),h=e.i(54826),I=e.i(32777),R=e.i(76262),T=e.i(71896),N=e.i(51292),A=e.i(96528),b=e.i(93496),L=e.i(31989),F=e.i(72165),D=e.i(86165),O=e.i(71714),C=e.i(55143),P=e.i(99205),G=e.i(92668),x=e.i(56878),M=e.i(31278);let y="openpbrNormalMapFragmentMainFunctions",W=`#if defined(GEOMETRY_NORMAL) || defined(GEOMETRY_COAT_NORMAL) || defined(ANISOTROPIC) || defined(FUZZ) || defined(DETAIL)
|
|
54
54
|
#if defined(TANGENT) && defined(NORMAL)
|
|
55
55
|
varying vTBN0: vec3f;varying vTBN1: vec3f;varying vTBN2: vec3f;
|
|
56
56
|
#endif
|
|
@@ -123,7 +123,7 @@ return -texCoordOffset;
|
|
|
123
123
|
#endif
|
|
124
124
|
}
|
|
125
125
|
#endif
|
|
126
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[z]||(r.ShaderStore.IncludesShadersStoreWGSL[z]=U);var w=e.i(
|
|
126
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[z]||(r.ShaderStore.IncludesShadersStoreWGSL[z]=U);var w=e.i(71047),X=e.i(47622);let H="openpbrConductorReflectance",V=`#define pbr_inline
|
|
127
127
|
fn conductorReflectance(baseColor: vec3f,specularColor: vec3f,specularWeight: f32)->ReflectanceParams
|
|
128
128
|
{var outParams: ReflectanceParams;
|
|
129
129
|
#if (CONDUCTOR_SPECULAR_MODEL==CONDUCTOR_SPECULAR_MODEL_OPENPBR)
|
|
@@ -133,7 +133,7 @@ outParams.coloredF0=baseColor;outParams.coloredF90=vec3f(1.0f);
|
|
|
133
133
|
#endif
|
|
134
134
|
outParams.F0=1.0f;outParams.F90=1.0f;return outParams;}`;r.ShaderStore.IncludesShadersStoreWGSL[H]||(r.ShaderStore.IncludesShadersStoreWGSL[H]=V);let B="openpbrAmbientOcclusionFunctions",k=`fn compute_specular_occlusion(n_dot_v: f32,metallic: f32,ambient_occlusion: f32,roughness: f32)->f32
|
|
135
135
|
{let specular_occlusion: f32=saturate(pow(n_dot_v+ambient_occlusion,exp2(-16.0*roughness-1.0))-1.0+ambient_occlusion);return mix(specular_occlusion,1.0,metallic*square(1.0-roughness));}
|
|
136
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[B]||(r.ShaderStore.IncludesShadersStoreWGSL[B]=k);var Y=e.i(
|
|
136
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[B]||(r.ShaderStore.IncludesShadersStoreWGSL[B]=k);var Y=e.i(41690),Z=e.i(32923);let j="openpbrVolumeFunctions",q=`struct OpenPBRHomogeneousVolume {extinction_coeff: vec3f,
|
|
137
137
|
ss_albedo: vec3f,
|
|
138
138
|
multi_scatter_color: vec3f,
|
|
139
139
|
absorption_coeff: vec3f,
|
|
@@ -190,7 +190,7 @@ let filter_samples_scale: f32=samples_scale(pixels_to_projective(overscan_size_i
|
|
|
190
190
|
return vec3f(select(unconvolved_irradiance.r,irradiance_sum.r/weight_sum.r,weight_sum.r>=1e-5f),
|
|
191
191
|
select(unconvolved_irradiance.g,irradiance_sum.g/weight_sum.g,weight_sum.g>=1e-5f),
|
|
192
192
|
select(unconvolved_irradiance.b,irradiance_sum.b/weight_sum.b,weight_sum.b>=1e-5f));}
|
|
193
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[j]||(r.ShaderStore.IncludesShadersStoreWGSL[j]=q);var K=e.i(
|
|
193
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[j]||(r.ShaderStore.IncludesShadersStoreWGSL[j]=q);var K=e.i(63122),Q=e.i(61444);let J="openpbrNormalMapFragment",$=`var uvOffset: vec2f= vec2f(0.0,0.0);
|
|
194
194
|
#if defined(GEOMETRY_NORMAL) || defined(GEOMETRY_COAT_NORMAL) || defined(PARALLAX) || defined(DETAIL)
|
|
195
195
|
#ifdef NORMALXYSCALE
|
|
196
196
|
var normalScale: f32=1.0;
|
|
@@ -384,7 +384,7 @@ let detailRoughness: f32=mix(0.5f,detailColor.b,vDetailInfos.w);let loLerp: f32=
|
|
|
384
384
|
#ifdef USE_GLTF_STYLE_ANISOTROPY
|
|
385
385
|
let baseAlpha: f32=specular_roughness*specular_roughness;let roughnessT: f32=mix(baseAlpha,1.0f,specular_roughness_anisotropy*specular_roughness_anisotropy);let roughnessB: f32=baseAlpha;specular_roughness_anisotropy=1.0f-roughnessB/max(roughnessT,0.00001f);specular_roughness=sqrt(roughnessT/sqrt(2.0f/(1.0f+(1.0f-specular_roughness_anisotropy)*(1.0f-specular_roughness_anisotropy))));
|
|
386
386
|
#endif
|
|
387
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[et]||(r.ShaderStore.IncludesShadersStoreWGSL[et]=ea);var ei=e.i(
|
|
387
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[et]||(r.ShaderStore.IncludesShadersStoreWGSL[et]=ea);var ei=e.i(24095),en=e.i(24186);let eo="openpbrCoatLayerData",ef=`var coat_weight: f32=0.0f;var coat_color: vec3f=vec3f(1.0f);var coat_roughness: f32=0.0f;var coat_roughness_anisotropy: f32=0.0f;var coat_ior: f32=1.6f;var coat_darkening: f32=1.0f;var geometry_coat_tangent: vec2f=vec2f(1.0f,0.0f);
|
|
388
388
|
#ifdef COAT_WEIGHT
|
|
389
389
|
var coatWeightFromTexture: vec4f=TEXRD(coatWeightSampler,coatWeightSamplerSampler,fragmentInputs.vCoatWeightUV+uvOffset);
|
|
390
390
|
#endif
|
|
@@ -486,7 +486,7 @@ fuzz_roughness*=fuzzRoughnessFromTexture.r;
|
|
|
486
486
|
#ifdef AMBIENT_OCCLUSION
|
|
487
487
|
var ambientOcclusionFromTexture: vec3f=TEXRD(ambientOcclusionSampler,ambientOcclusionSamplerSampler,fragmentInputs.vAmbientOcclusionUV+uvOffset).rgb;ambient_occlusion=vec3f(ambientOcclusionFromTexture.r*uniforms.vAmbientOcclusionInfos.y+(1.0f-uniforms.vAmbientOcclusionInfos.y));
|
|
488
488
|
#endif
|
|
489
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[em]||(r.ShaderStore.IncludesShadersStoreWGSL[em]=ed);var eu=e.i(
|
|
489
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[em]||(r.ShaderStore.IncludesShadersStoreWGSL[em]=ed);var eu=e.i(44053);let eg="openpbrBackgroundTransmission",ep=`var slab_translucent_background: vec4f=vec4f(0.,0.,0.,1.);
|
|
490
490
|
#ifdef REFRACTED_BACKGROUND
|
|
491
491
|
{let refractionLOD: f32=min(transmission_roughness,0.8)*uniforms.vBackgroundRefractionInfos.x;let lodTexelSize: f32=pow(2.0f,refractionLOD-uniforms.vBackgroundRefractionInfos.x);
|
|
492
492
|
#ifdef DISPERSION
|
|
@@ -1066,7 +1066,7 @@ total_direct_diffuse+=slab_diffuse;
|
|
|
1066
1066
|
#endif
|
|
1067
1067
|
let material_dielectric_base: vec3f=mix(slab_diffuse*base_color.rgb,slab_translucent,surface_translucency_weight);let material_dielectric_gloss: vec3f=material_dielectric_base*(1.0f-specularFresnel)+slab_glossy*specularColoredFresnel;let material_base_substrate: vec3f=mix(material_dielectric_gloss,slab_metal,base_metalness);let material_coated_base: vec3f=layer(material_base_substrate,slab_coat,coatFresnel,coatAbsorption,vec3f(1.0f));material_surface_direct+=layer(material_coated_base,slab_fuzz,fuzzFresnel*fuzz_weight,vec3f(1.0f),fuzz_color);}
|
|
1068
1068
|
#endif
|
|
1069
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[eI]||(r.ShaderStore.IncludesShadersStoreWGSL[eI]=eR);var eT=e.i(
|
|
1069
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[eI]||(r.ShaderStore.IncludesShadersStoreWGSL[eI]=eR);var eT=e.i(60240),eN=e.i(56821),eA=e.i(92520);let eb="openpbrBlockPrePass",eL=`#if SCENE_MRT_COUNT>0
|
|
1070
1070
|
var writeGeometryInfo: f32=select(0.0,1.0,finalColor.a>ALPHATESTVALUE);var fragData: array<vec4<f32>,SCENE_MRT_COUNT>;
|
|
1071
1071
|
#ifdef PREPASS_POSITION
|
|
1072
1072
|
fragData[PREPASS_POSITION_INDEX]= vec4f(fragmentInputs.vPositionW,writeGeometryInfo);
|
|
@@ -1156,7 +1156,7 @@ fragmentOutputs.fragData6=fragData[6];
|
|
|
1156
1156
|
fragmentOutputs.fragData7=fragData[7];
|
|
1157
1157
|
#endif
|
|
1158
1158
|
#endif
|
|
1159
|
-
`;r.ShaderStore.IncludesShadersStoreWGSL[eb]||(r.ShaderStore.IncludesShadersStoreWGSL[eb]=eL);var eF=e.i(
|
|
1159
|
+
`;r.ShaderStore.IncludesShadersStoreWGSL[eb]||(r.ShaderStore.IncludesShadersStoreWGSL[eb]=eL);var eF=e.i(81920),eD=e.i(96645);let eO="openpbrPixelShader",eC=`#define OPENPBR_FRAGMENT_SHADER
|
|
1160
1160
|
#define CUSTOM_FRAGMENT_BEGIN
|
|
1161
1161
|
#include<prePassDeclaration>[SCENE_MRT_COUNT]
|
|
1162
1162
|
#include<oitDeclaration>
|
|
@@ -1384,4 +1384,4 @@ if (fragDepth==nearestDepth) {fragmentOutputs.frontColor=vec4f(fragmentOutputs.f
|
|
|
1384
1384
|
#define CUSTOM_FRAGMENT_MAIN_END
|
|
1385
1385
|
#endif
|
|
1386
1386
|
}
|
|
1387
|
-
`;for(let e of(r.ShaderStore.ShadersStoreWGSL[eO]||(r.ShaderStore.ShadersStoreWGSL[eO]=eC),[t.prePassDeclarationWGSL,a.oitDeclarationWGSL,i.sceneUboDeclarationWGSL,n.meshUboDeclarationWGSL,o.openpbrUboDeclarationWGSL,f.mainUVVaryingDeclarationWGSL,s.pbrFragmentExtraDeclarationWGSL,l.lightUboDeclarationWGSL,c.samplerFragmentDeclarationWGSL,_.pbrFragmentReflectionDeclarationWGSL,{name:m,shader:d},u.imageProcessingDeclarationWGSL,g.clipPlaneFragmentDeclarationWGSL,p.logDepthDeclarationWGSL,v.fogFragmentDeclarationWGSL,S.textureRepetitionFunctionsWGSL,E.helperFunctionsWGSL,h.subSurfaceScatteringFunctionsWGSL,I.importanceSamplingWGSL,R.pbrHelperFunctionsWGSL,T.imageProcessingFunctionsWGSL,N.shadowsFragmentFunctionsWGSL,A.harmonicsFunctionsWGSL,b.ltcHelperFunctionsWGSL,L.pbrDirectLightingSetupFunctionsWGSL,F.pbrDirectLightingFalloffFunctionsWGSL,D.pbrBRDFFunctionsWGSL,O.hdrFilteringFunctionsWGSL,C.clusteredLightingFunctionsWGSL,P.pbrBlockReflectance0WGSL,G.pbrClusteredLightingFunctionsWGSL,x.pbrDirectLightingFunctionsWGSL,M.pbrIBLFunctionsWGSL,{name:y,shader:W},{name:z,shader:U},w.reflectionFunctionWGSL,X.openpbrDielectricReflectanceWGSL,{name:H,shader:V},{name:B,shader:k},Y.openpbrGeometryInfoWGSL,Z.openpbrIblFunctionsWGSL,{name:j,shader:q},K.clipPlaneFragmentWGSL,Q.pbrBlockNormalGeometricWGSL,{name:J,shader:$},{name:ee,shader:er},{name:et,shader:ea},ei.openpbrTransmissionLayerDataWGSL,en.openpbrSubsurfaceLayerDataWGSL,{name:eo,shader:ef},{name:es,shader:el},{name:ec,shader:e_},{name:em,shader:ed},eu.depthPrePassWGSL,{name:eg,shader:ep},{name:ev,shader:eS},{name:eE,shader:eh},{name:eI,shader:eR},eT.logDepthFragmentWGSL,eN.fogFragmentWGSL,eA.pbrBlockImageProcessingWGSL,{name:eb,shader:eL},eF.oitFragmentWGSL,eD.pbrDebugWGSL]))r.ShaderStore.IncludesShadersStoreWGSL[e.name]||(r.ShaderStore.IncludesShadersStoreWGSL[e.name]=e.shader);e.s(["openpbrPixelShaderWGSL",0,{name:eO,shader:eC}],
|
|
1387
|
+
`;for(let e of(r.ShaderStore.ShadersStoreWGSL[eO]||(r.ShaderStore.ShadersStoreWGSL[eO]=eC),[t.prePassDeclarationWGSL,a.oitDeclarationWGSL,i.sceneUboDeclarationWGSL,n.meshUboDeclarationWGSL,o.openpbrUboDeclarationWGSL,f.mainUVVaryingDeclarationWGSL,s.pbrFragmentExtraDeclarationWGSL,l.lightUboDeclarationWGSL,c.samplerFragmentDeclarationWGSL,_.pbrFragmentReflectionDeclarationWGSL,{name:m,shader:d},u.imageProcessingDeclarationWGSL,g.clipPlaneFragmentDeclarationWGSL,p.logDepthDeclarationWGSL,v.fogFragmentDeclarationWGSL,S.textureRepetitionFunctionsWGSL,E.helperFunctionsWGSL,h.subSurfaceScatteringFunctionsWGSL,I.importanceSamplingWGSL,R.pbrHelperFunctionsWGSL,T.imageProcessingFunctionsWGSL,N.shadowsFragmentFunctionsWGSL,A.harmonicsFunctionsWGSL,b.ltcHelperFunctionsWGSL,L.pbrDirectLightingSetupFunctionsWGSL,F.pbrDirectLightingFalloffFunctionsWGSL,D.pbrBRDFFunctionsWGSL,O.hdrFilteringFunctionsWGSL,C.clusteredLightingFunctionsWGSL,P.pbrBlockReflectance0WGSL,G.pbrClusteredLightingFunctionsWGSL,x.pbrDirectLightingFunctionsWGSL,M.pbrIBLFunctionsWGSL,{name:y,shader:W},{name:z,shader:U},w.reflectionFunctionWGSL,X.openpbrDielectricReflectanceWGSL,{name:H,shader:V},{name:B,shader:k},Y.openpbrGeometryInfoWGSL,Z.openpbrIblFunctionsWGSL,{name:j,shader:q},K.clipPlaneFragmentWGSL,Q.pbrBlockNormalGeometricWGSL,{name:J,shader:$},{name:ee,shader:er},{name:et,shader:ea},ei.openpbrTransmissionLayerDataWGSL,en.openpbrSubsurfaceLayerDataWGSL,{name:eo,shader:ef},{name:es,shader:el},{name:ec,shader:e_},{name:em,shader:ed},eu.depthPrePassWGSL,{name:eg,shader:ep},{name:ev,shader:eS},{name:eE,shader:eh},{name:eI,shader:eR},eT.logDepthFragmentWGSL,eN.fogFragmentWGSL,eA.pbrBlockImageProcessingWGSL,{name:eb,shader:eL},eF.oitFragmentWGSL,eD.pbrDebugWGSL]))r.ShaderStore.IncludesShadersStoreWGSL[e.name]||(r.ShaderStore.IncludesShadersStoreWGSL[e.name]=e.shader);e.s(["openpbrPixelShaderWGSL",0,{name:eO,shader:eC}],23797)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,28215,8781,e=>{"use strict";var t=e.i(56173),i=e.i(24617),n=e.i(76197);class o{constructor(e,t,i){this.name=e,this.from=t,this.to=i}clone(){return new o(this.name,this.from,this.to)}}e.s(["AnimationRange",0,o],8781);var a=e.i(43384),r=e.i(92953),s=e.i(5369),l=e.i(69552),u=e.i(68282);let c=Object.freeze(new t.Quaternion(0,0,0,0)),h=Object.freeze(t.Vector3.Zero()),T=Object.freeze(t.Vector2.Zero()),m=Object.freeze(r.Size.Zero()),A=Object.freeze(i.Color3.Black()),p=Object.freeze(new i.Color4(0,0,0,0)),_={key:0,repeatCount:0,loopMode:2};class d{static _PrepareAnimation(e,n,o,a,s,l,u,c){let h;if(!isNaN(parseFloat(s))&&isFinite(s)?h=d.ANIMATIONTYPE_FLOAT:s instanceof t.Quaternion?h=d.ANIMATIONTYPE_QUATERNION:s instanceof t.Vector3?h=d.ANIMATIONTYPE_VECTOR3:s instanceof t.Vector2?h=d.ANIMATIONTYPE_VECTOR2:s instanceof i.Color3?h=d.ANIMATIONTYPE_COLOR3:s instanceof i.Color4?h=d.ANIMATIONTYPE_COLOR4:s instanceof r.Size&&(h=d.ANIMATIONTYPE_SIZE),void 0==h)return null;let T=new d(e,n,o,h,u);return T.setKeys([{frame:0,value:s},{frame:a,value:l}]),void 0!==c&&T.setEasingFunction(c),T}get runtimeAnimations(){return this._runtimeAnimations}get hasRunningRuntimeAnimations(){for(let e of this._runtimeAnimations)if(!e.isStopped())return!0;return!1}constructor(e,t,i,n,o,a){this.name=e,this.targetProperty=t,this.framePerSecond=i,this.dataType=n,this.loopMode=o,this.enableBlending=a,this._easingFunction=null,this._runtimeAnimations=[],this._events=[],this.blendingSpeed=.01,this._ranges={},this._coreAnimation=null,this.targetPropertyPath=t.split("."),this.dataType=n,this.loopMode=void 0===o?d.ANIMATIONLOOPMODE_CYCLE:o,this.uniqueId=d._UniqueIdGenerator++}toString(e){let t="Name: "+this.name+", property: "+this.targetProperty;if(t+=", datatype: "+["Float","Vector3","Quaternion","Matrix","Color3","Vector2"][this.dataType],t+=", nKeys: "+(this._keys?this._keys.length:"none"),t+=", nRanges: "+(this._ranges?Object.keys(this._ranges).length:"none"),e){t+=", Ranges: {";let e=!0;for(let i in this._ranges)e||(t+=", "),e=!1,t+=i;t+="}"}return t}addEvent(e){this._events.push(e),this._events.sort((e,t)=>e.frame-t.frame)}removeEvents(e){for(let t=0;t<this._events.length;t++)this._events[t].frame===e&&(this._events.splice(t,1),t--)}getEvents(){return this._events}createRange(e,t,i){this._ranges[e]||(this._ranges[e]=new o(e,t,i))}deleteRange(e,t=!0){let i=this._ranges[e];if(i){if(t){let e=i.from,t=i.to;for(let i=this._keys.length-1;i>=0;i--)this._keys[i].frame>=e&&this._keys[i].frame<=t&&this._keys.splice(i,1)}this._ranges[e]=null}}getRange(e){return this._ranges[e]}getKeys(){return this._keys}getHighestFrame(){let e=0;for(let t=0,i=this._keys.length;t<i;t++)e<this._keys[t].frame&&(e=this._keys[t].frame);return e}getEasingFunction(){return this._easingFunction}setEasingFunction(e){this._easingFunction=e}floatInterpolateFunction(e,t,i){return(0,n.Lerp)(e,t,i)}floatInterpolateFunctionWithTangents(e,t,i,o,a){return(0,n.Hermite)(e,t,i,o,a)}quaternionInterpolateFunction(e,i,n){return t.Quaternion.Slerp(e,i,n)}quaternionInterpolateFunctionWithTangents(e,i,n,o,a){return t.Quaternion.Hermite(e,i,n,o,a).normalize()}vector3InterpolateFunction(e,i,n){return t.Vector3.Lerp(e,i,n)}vector3InterpolateFunctionWithTangents(e,i,n,o,a){return t.Vector3.Hermite(e,i,n,o,a)}vector2InterpolateFunction(e,i,n){return t.Vector2.Lerp(e,i,n)}vector2InterpolateFunctionWithTangents(e,i,n,o,a){return t.Vector2.Hermite(e,i,n,o,a)}sizeInterpolateFunction(e,t,i){return r.Size.Lerp(e,t,i)}color3InterpolateFunction(e,t,n){return i.Color3.Lerp(e,t,n)}color3InterpolateFunctionWithTangents(e,t,n,o,a){return i.Color3.Hermite(e,t,n,o,a)}color4InterpolateFunction(e,t,n){return i.Color4.Lerp(e,t,n)}color4InterpolateFunctionWithTangents(e,t,n,o,a){return i.Color4.Hermite(e,t,n,o,a)}_getKeyValue(e){return"function"==typeof e?e():e}evaluate(e){return _.key=0,this._interpolate(e,_)}_interpolate(e,t,i=!1){let n;if(t.loopMode===d.ANIMATIONLOOPMODE_CONSTANT&&t.repeatCount>0)return t.highLimitValue.clone?t.highLimitValue.clone():t.highLimitValue;let o=this._keys;if(this._coreAnimation)n=this._coreAnimation._key;else{let a=o.length;for(n=t.key;n>=0&&e<o[n].frame;)--n;for(;n+1<=a-1&&e>=o[n+1].frame;)++n;if(t.key=n,n<0)return i?void 0:this._getKeyValue(o[0].value);if(n+1>a-1)return i?void 0:this._getKeyValue(o[a-1].value);this._key=n}let a=o[n],r=o[n+1];if(i&&(e===a.frame||e===r.frame))return;let s=this._getKeyValue(a.value),l=this._getKeyValue(r.value);if(1===a.interpolation)if(r.frame>e)return s;else return l;let u=void 0!==a.outTangent&&void 0!==r.inTangent,_=r.frame-a.frame,O=(e-a.frame)/_,M=a.easingFunction||this.getEasingFunction();switch(M&&(O=M.ease(O)),this.dataType){case d.ANIMATIONTYPE_FLOAT:{let e=u?this.floatInterpolateFunctionWithTangents(s,a.outTangent*_,l,r.inTangent*_,O):this.floatInterpolateFunction(s,l,O);switch(t.loopMode){case d.ANIMATIONLOOPMODE_CYCLE:case d.ANIMATIONLOOPMODE_CONSTANT:case d.ANIMATIONLOOPMODE_YOYO:return e;case d.ANIMATIONLOOPMODE_RELATIVE:case d.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return(t.offsetValue??0)*t.repeatCount+e}break}case d.ANIMATIONTYPE_QUATERNION:{let e=u?this.quaternionInterpolateFunctionWithTangents(s,a.outTangent.scale(_),l,r.inTangent.scale(_),O):this.quaternionInterpolateFunction(s,l,O);switch(t.loopMode){case d.ANIMATIONLOOPMODE_CYCLE:case d.ANIMATIONLOOPMODE_CONSTANT:case d.ANIMATIONLOOPMODE_YOYO:break;case d.ANIMATIONLOOPMODE_RELATIVE:case d.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return e.addInPlace((t.offsetValue||c).scale(t.repeatCount))}return e}case d.ANIMATIONTYPE_VECTOR3:{let e=u?this.vector3InterpolateFunctionWithTangents(s,a.outTangent.scale(_),l,r.inTangent.scale(_),O):this.vector3InterpolateFunction(s,l,O);switch(t.loopMode){case d.ANIMATIONLOOPMODE_CYCLE:case d.ANIMATIONLOOPMODE_CONSTANT:case d.ANIMATIONLOOPMODE_YOYO:return e;case d.ANIMATIONLOOPMODE_RELATIVE:case d.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return e.add((t.offsetValue||h).scale(t.repeatCount))}break}case d.ANIMATIONTYPE_VECTOR2:{let e=u?this.vector2InterpolateFunctionWithTangents(s,a.outTangent.scale(_),l,r.inTangent.scale(_),O):this.vector2InterpolateFunction(s,l,O);switch(t.loopMode){case d.ANIMATIONLOOPMODE_CYCLE:case d.ANIMATIONLOOPMODE_CONSTANT:case d.ANIMATIONLOOPMODE_YOYO:return e;case d.ANIMATIONLOOPMODE_RELATIVE:case d.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return e.add((t.offsetValue||T).scale(t.repeatCount))}break}case d.ANIMATIONTYPE_SIZE:switch(t.loopMode){case d.ANIMATIONLOOPMODE_CYCLE:case d.ANIMATIONLOOPMODE_CONSTANT:case d.ANIMATIONLOOPMODE_YOYO:return this.sizeInterpolateFunction(s,l,O);case d.ANIMATIONLOOPMODE_RELATIVE:case d.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return this.sizeInterpolateFunction(s,l,O).add((t.offsetValue||m).scale(t.repeatCount))}break;case d.ANIMATIONTYPE_COLOR3:{let e=u?this.color3InterpolateFunctionWithTangents(s,a.outTangent.scale(_),l,r.inTangent.scale(_),O):this.color3InterpolateFunction(s,l,O);switch(t.loopMode){case d.ANIMATIONLOOPMODE_CYCLE:case d.ANIMATIONLOOPMODE_CONSTANT:case d.ANIMATIONLOOPMODE_YOYO:return e;case d.ANIMATIONLOOPMODE_RELATIVE:case d.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return e.add((t.offsetValue||A).scale(t.repeatCount))}break}case d.ANIMATIONTYPE_COLOR4:{let e=u?this.color4InterpolateFunctionWithTangents(s,a.outTangent.scale(_),l,r.inTangent.scale(_),O):this.color4InterpolateFunction(s,l,O);switch(t.loopMode){case d.ANIMATIONLOOPMODE_CYCLE:case d.ANIMATIONLOOPMODE_CONSTANT:case d.ANIMATIONLOOPMODE_YOYO:return e;case d.ANIMATIONLOOPMODE_RELATIVE:case d.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return e.add((t.offsetValue||p).scale(t.repeatCount))}break}case d.ANIMATIONTYPE_MATRIX:switch(t.loopMode){case d.ANIMATIONLOOPMODE_CYCLE:case d.ANIMATIONLOOPMODE_CONSTANT:case d.ANIMATIONLOOPMODE_YOYO:if(d.AllowMatricesInterpolation)return this.matrixInterpolateFunction(s,l,O,t.workValue);return s;case d.ANIMATIONLOOPMODE_RELATIVE:case d.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT:return s}}return 0}matrixInterpolateFunction(e,i,n,o){return d.AllowMatrixDecomposeForInterpolation?o?(t.Matrix.DecomposeLerpToRef(e,i,n,o),o):t.Matrix.DecomposeLerp(e,i,n):o?(t.Matrix.LerpToRef(e,i,n,o),o):t.Matrix.Lerp(e,i,n)}clone(e=!1){let t=new d(this.name,this.targetPropertyPath.join("."),this.framePerSecond,this.dataType,this.loopMode);if(t.enableBlending=this.enableBlending,t.blendingSpeed=this.blendingSpeed,this._keys&&t.setKeys(this._keys,!1,e),this._ranges)for(let e in t._ranges={},this._ranges){let i=this._ranges[e];i&&(t._ranges[e]=i.clone())}return t}setKeys(e,t=!1,i=!1){if(t)this._keys=e;else if(this._keys=e.slice(0),i)for(let e=0;e<this._keys.length;e++){let t=this._keys[e];this._keys[e]={frame:t.frame,value:t.value.clone?t.value.clone():t.value,inTangent:t.inTangent&&t.inTangent.clone?t.inTangent.clone():t.inTangent,outTangent:t.outTangent&&t.outTangent.clone?t.outTangent.clone():t.outTangent,interpolation:t.interpolation,lockedTangent:t.lockedTangent,easingFunction:t.easingFunction}}}createKeyForFrame(e){_.key=0;let t=this._interpolate(e,_,!0);if(!t)return this._keys[_.key].frame===e?_.key:_.key+1;let i={frame:e,value:t.clone?t.clone():t};return this._keys.splice(_.key+1,0,i),_.key+1}serialize(){let e={};e.name=this.name,e.property=this.targetProperty,e.framePerSecond=this.framePerSecond,e.dataType=this.dataType,e.loopBehavior=this.loopMode,e.enableBlending=this.enableBlending,e.blendingSpeed=this.blendingSpeed;let t=this.dataType;e.keys=[];let i=this.getKeys();for(let n=0;n<i.length;n++){let o=i[n],a={};switch(a.frame=o.frame,t){case d.ANIMATIONTYPE_FLOAT:a.values=[o.value],void 0!==o.inTangent&&a.values.push(o.inTangent),void 0!==o.outTangent&&(void 0===o.inTangent&&a.values.push(void 0),a.values.push(o.outTangent)),void 0!==o.interpolation&&(void 0===o.inTangent&&a.values.push(void 0),void 0===o.outTangent&&a.values.push(void 0),a.values.push(o.interpolation));break;case d.ANIMATIONTYPE_QUATERNION:case d.ANIMATIONTYPE_MATRIX:case d.ANIMATIONTYPE_VECTOR3:case d.ANIMATIONTYPE_COLOR3:case d.ANIMATIONTYPE_COLOR4:a.values=o.value.asArray(),void 0!=o.inTangent&&a.values.push(o.inTangent.asArray()),void 0!=o.outTangent&&(void 0===o.inTangent&&a.values.push(void 0),a.values.push(o.outTangent.asArray())),void 0!==o.interpolation&&(void 0===o.inTangent&&a.values.push(void 0),void 0===o.outTangent&&a.values.push(void 0),a.values.push(o.interpolation))}e.keys.push(a)}for(let t in e.ranges=[],this._ranges){let i=this._ranges[t];if(!i)continue;let n={};n.name=t,n.from=i.from,n.to=i.to,e.ranges.push(n)}return e}static _UniversalLerp(e,t,i){let n=e.constructor;return n.Lerp?n.Lerp(e,t,i):n.Slerp?n.Slerp(e,t,i):e.toFixed?e*(1-i)+i*t:t}}function O(e,i,n,o=!1,a){let r,s=e;(r="object"==typeof i?i:{referenceFrame:i??0,range:n,cloneOriginalAnimation:o,clonedAnimationName:a}).cloneOriginalAnimation&&((s=e.clone()).name=r.clonedAnimationName||s.name);let l=s.getKeys();if(!l.length)return s;let u=r.referenceFrame&&r.referenceFrame>=0?r.referenceFrame:0,c=0,h=l[0],T=l.length-1,m=l[T],A={referenceValue:h.value,referencePosition:t.TmpVectors.Vector3[0],referenceQuaternion:t.TmpVectors.Quaternion[0],referenceScaling:t.TmpVectors.Vector3[1],keyPosition:t.TmpVectors.Vector3[2],keyQuaternion:t.TmpVectors.Quaternion[1],keyScaling:t.TmpVectors.Vector3[3]},p=h.frame,M=m.frame;if(r.range){let e=s.getRange(r.range);e&&(p=e.from,M=e.to)}else p=r.fromFrame??p,M=r.toFrame??M;p!==h.frame&&(c=s.createKeyForFrame(p)),M!==m.frame&&(T=s.createKeyForFrame(M));let g=s.getKeys();if(1===g.length){let e=s._getKeyValue(g[0].value);A.referenceValue=e.clone?e.clone():e}else if(u<=h.frame){let e=s._getKeyValue(h.value);A.referenceValue=e.clone?e.clone():e}else if(u>=m.frame){let e=s._getKeyValue(m.value);A.referenceValue=e.clone?e.clone():e}else{_.key=0;let e=s._interpolate(u,_);A.referenceValue=e.clone?e.clone():e}s.dataType===d.ANIMATIONTYPE_QUATERNION?A.referenceValue.normalize().conjugateInPlace():s.dataType===d.ANIMATIONTYPE_MATRIX&&(A.referenceValue.decompose(A.referenceScaling,A.referenceQuaternion,A.referencePosition),A.referenceQuaternion.normalize().conjugateInPlace());let f=Number.MAX_VALUE,I=r.clipKeys?[]:null;for(let e=c;e<=T;e++){let i=g[e];if((I||r.cloneOriginalAnimation)&&(i={frame:i.frame,value:i.value.clone?i.value.clone():i.value,inTangent:i.inTangent,outTangent:i.outTangent,interpolation:i.interpolation,lockedTangent:i.lockedTangent,easingFunction:i.easingFunction},I&&(f===Number.MAX_VALUE&&(f=i.frame),i.frame-=f,I.push(i))),!e||s.dataType===d.ANIMATIONTYPE_FLOAT||i.value!==h.value)switch(s.dataType){case d.ANIMATIONTYPE_MATRIX:i.value.decompose(A.keyScaling,A.keyQuaternion,A.keyPosition),A.keyPosition.subtractInPlace(A.referencePosition),A.keyScaling.divideInPlace(A.referenceScaling),A.referenceQuaternion.multiplyToRef(A.keyQuaternion,A.keyQuaternion),t.Matrix.ComposeToRef(A.keyScaling,A.keyQuaternion,A.keyPosition,i.value);break;case d.ANIMATIONTYPE_QUATERNION:A.referenceValue.multiplyToRef(i.value,i.value);break;case d.ANIMATIONTYPE_VECTOR2:case d.ANIMATIONTYPE_VECTOR3:case d.ANIMATIONTYPE_COLOR3:case d.ANIMATIONTYPE_COLOR4:i.value.subtractToRef(A.referenceValue,i.value);break;case d.ANIMATIONTYPE_SIZE:i.value.width-=A.referenceValue.width,i.value.height-=A.referenceValue.height;break;default:i.value-=A.referenceValue}}return I&&s.setKeys(I,!0),s}function M(e,t,i,n){let o=new d(e+"Animation",e,i,t,d.ANIMATIONLOOPMODE_CONSTANT);return o.setEasingFunction(n),o}function g(e,t,i,n,o,a,r,s,l,u,c){let h=d._PrepareAnimation(e,i,n,o,a,r,s,l);return h&&(t.getScene&&(c=t.getScene()),c)?c.beginDirectAnimation(t,[h],0,o,h.loopMode!==d.ANIMATIONLOOPMODE_CONSTANT,1,u):null}function f(e,t,i,n,o,a,r,s,l,u,c){let h=d._PrepareAnimation(e,n,o,a,r,s,l,u);return h?t.getScene().beginDirectHierarchyAnimation(t,i,[h],0,a,1===h.loopMode,1,c):null}function I(e,t,i,n,o,a,r,s,l,u){let c=d._PrepareAnimation(e,i,n,o,a,r,s,l);return c?(t.animations.push(c),t.getScene().beginAnimation(t,0,o,1===c.loopMode,1,u)):null}function N(e,t,i,n,o,a,r,s=null,l=!0,u){if(r<=0)return i[e]=t,s&&s(),null;let c=r/1e3*o;return a.setKeys(u??[{frame:0,value:i[e].clone?i[e].clone():i[e]},{frame:c,value:t}]),i.animations||(i.animations=[]),i.animations.push(a),n.beginAnimation(i,0,c,!1,1,s??void 0,void 0,l)}function y(e,t){l.SerializationHelper.AppendSerializedAnimations(e,t)}function R(e){let n,o,a=new d(e.name,e.property,e.framePerSecond,e.dataType,e.loopBehavior),r=e.dataType,s=[];for(e.enableBlending&&(a.enableBlending=e.enableBlending),e.blendingSpeed&&(a.blendingSpeed=e.blendingSpeed),o=0;o<e.keys.length;o++){let a,l,u,c=e.keys[o];switch(r){case d.ANIMATIONTYPE_FLOAT:n=c.values[0],c.values.length>=2&&(a=c.values[1]),c.values.length>=3&&(l=c.values[2]),c.values.length>=4&&(u=c.values[3]);break;case d.ANIMATIONTYPE_QUATERNION:if(n=t.Quaternion.FromArray(c.values),c.values.length>=8){let e=t.Quaternion.FromArray(c.values.slice(4,8));e.equals(t.Quaternion.Zero())||(a=e)}if(c.values.length>=12){let e=t.Quaternion.FromArray(c.values.slice(8,12));e.equals(t.Quaternion.Zero())||(l=e)}c.values.length>=13&&(u=c.values[12]);break;case d.ANIMATIONTYPE_MATRIX:n=t.Matrix.FromArray(c.values),c.values.length>=17&&(u=c.values[16]);break;case d.ANIMATIONTYPE_COLOR3:n=i.Color3.FromArray(c.values),c.values[3]&&(a=i.Color3.FromArray(c.values[3])),c.values[4]&&(l=i.Color3.FromArray(c.values[4])),c.values[5]&&(u=c.values[5]);break;case d.ANIMATIONTYPE_COLOR4:n=i.Color4.FromArray(c.values),c.values[4]&&(a=i.Color4.FromArray(c.values[4])),c.values[5]&&(l=i.Color4.FromArray(c.values[5])),c.values[6]&&(u=c.values[6]);break;case d.ANIMATIONTYPE_VECTOR3:default:n=t.Vector3.FromArray(c.values),c.values[3]&&(a=t.Vector3.FromArray(c.values[3])),c.values[4]&&(l=t.Vector3.FromArray(c.values[4])),c.values[5]&&(u=c.values[5])}let h={};h.frame=c.frame,h.value=n,void 0!=a&&(h.inTangent=a),void 0!=l&&(h.outTangent=l),void 0!=u&&(h.interpolation=u),s.push(h)}if(a.setKeys(s),e.ranges)for(o=0;o<e.ranges.length;o++)n=e.ranges[o],a.createRange(n.name,n.from,n.to);return a}async function E(e,t){return await new Promise((i,n)=>{let o=new s.WebRequest;o.addEventListener("readystatechange",()=>{if(4==o.readyState)if(200==o.status){let t=JSON.parse(o.responseText);if(t.animations&&(t=t.animations),t.length){let e=[];for(let i of t)e.push(R(i));i(e)}else{let n=R(t);e&&(n.name=e),i(n)}}else n("Unable to load the animation")}),o.open("GET",t),o.send()})}async function x(e){let t=this?.SnippetUrl??d.SnippetUrl;return await new Promise((i,n)=>{let o=new s.WebRequest;o.addEventListener("readystatechange",()=>{if(4==o.readyState)if(200==o.status){let t=JSON.parse(JSON.parse(o.responseText).jsonPayload);if(t.animations){let n=JSON.parse(t.animations),o=[];for(let t of n.animations){let i=R(t);i.snippetId=e,o.push(i)}i(o)}else{let n=R(JSON.parse(t.animation));n.snippetId=e,i(n)}}else n("Unable to load the snippet "+e)}),o.open("GET",t+"/"+e.replace(/#/g,"/")),o.send()})}d._UniqueIdGenerator=0,d.AllowMatricesInterpolation=!1,d.AllowMatrixDecomposeForInterpolation=!0,d.InheritOriginalValueFromActiveAnimations=!1,d.SnippetUrl="https://snippet.babylonjs.com",d.ANIMATIONTYPE_FLOAT=0,d.ANIMATIONTYPE_VECTOR3=1,d.ANIMATIONTYPE_QUATERNION=2,d.ANIMATIONTYPE_MATRIX=3,d.ANIMATIONTYPE_COLOR3=4,d.ANIMATIONTYPE_COLOR4=7,d.ANIMATIONTYPE_VECTOR2=5,d.ANIMATIONTYPE_SIZE=6,d.ANIMATIONLOOPMODE_RELATIVE=0,d.ANIMATIONLOOPMODE_CYCLE=1,d.ANIMATIONLOOPMODE_CONSTANT=2,d.ANIMATIONLOOPMODE_YOYO=4,d.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT=5;let v=!1;e.s(["Animation",0,d,"AnimationCreateAnimation",0,M,"AnimationMakeAnimationAdditive",0,O,"AnimationParse",0,R,"RegisterAnimation",0,function(){v||(v=!0,d.Parse=R,d.ParseFromFileAsync=E,d.ParseFromSnippetAsync=x,d.CreateFromSnippetAsync=x,d.CreateAnimation=M,d.CreateAndStartAnimation=g,d.CreateAndStartHierarchyAnimation=f,d.CreateMergeAndStartAnimation=I,d.MakeAnimationAdditive=O,d.TransitionTo=N,d.AppendSerializedAnimations=y,(0,u.RegisterClass)("BABYLON.Animation",d),a.Node._AnimationRangeFactory=(e,t,i)=>new o(e,t,i))},"_StaticOffsetValueColor3",0,A,"_StaticOffsetValueColor4",0,p,"_StaticOffsetValueQuaternion",0,c,"_StaticOffsetValueSize",0,m,"_StaticOffsetValueVector2",0,T,"_StaticOffsetValueVector3",0,h],28215)},97372,e=>{"use strict";var t,i=e.i(56173),n=e.i(81978),o=e.i(43384),a=e.i(49399);class r extends o.Node{get _matrix(){return this._compose(),this._localMatrix}set _matrix(e){(e.updateFlag!==this._localMatrix.updateFlag||this._needToCompose)&&(this._needToCompose=!1,this._localMatrix.copyFrom(e),this._markAsDirtyAndDecompose())}constructor(e,t,n=null,o=null,a=null,r=null,s=null){super(e,t.getScene(),!1),this.name=e,this.children=[],this.animations=[],this._index=null,this._scalingDeterminant=1,this._needToDecompose=!0,this._needToCompose=!1,this._linkedTransformNode=null,this._waitingTransformNodeId=null,this._waitingTransformNodeUniqueId=null,this._skeleton=t,this._localMatrix=o?.clone()??i.Matrix.Identity(),this._restMatrix=a??this._localMatrix.clone(),this._bindMatrix=r??this._localMatrix.clone(),this._index=s,this._absoluteMatrix=new i.Matrix,this._absoluteBindMatrix=new i.Matrix,this._absoluteInverseBindMatrix=new i.Matrix,this._finalMatrix=new i.Matrix,t.bones.push(this),this.setParent(n,!1),this._updateAbsoluteBindMatrices()}getClassName(){return"Bone"}getSkeleton(){return this._skeleton}get parent(){return this._parentNode}getParent(){return this.parent}getChildren(){return this.children}getIndex(){return null===this._index?this.getSkeleton().bones.indexOf(this):this._index}set parent(e){this.setParent(e)}setParent(e,t=!0){if(this.parent!==e){if(this.parent){let e=this.parent.children.indexOf(this);-1!==e&&this.parent.children.splice(e,1)}this._parentNode=e,this.parent&&this.parent.children.push(this),t&&this._updateAbsoluteBindMatrices(),this.markAsDirty()}}getLocalMatrix(){return this._compose(),this._localMatrix}getBindMatrix(){return this._bindMatrix}getBaseMatrix(){return this.getBindMatrix()}getRestMatrix(){return this._restMatrix}getRestPose(){return this.getRestMatrix()}setRestMatrix(e){this._restMatrix.copyFrom(e)}setRestPose(e){this.setRestMatrix(e)}getBindPose(){return this.getBindMatrix()}setBindMatrix(e){this.updateMatrix(e)}setBindPose(e){this.setBindMatrix(e)}getFinalMatrix(){return this._finalMatrix}getWorldMatrix(){return this.getFinalMatrix()}returnToRest(){if(this._linkedTransformNode){let e=i.TmpVectors.Vector3[0],t=i.TmpVectors.Quaternion[0],n=i.TmpVectors.Vector3[1];this.getRestMatrix().decompose(e,t,n),this._linkedTransformNode.position.copyFrom(n),this._linkedTransformNode.rotationQuaternion=this._linkedTransformNode.rotationQuaternion??i.Quaternion.Identity(),this._linkedTransformNode.rotationQuaternion.copyFrom(t),this._linkedTransformNode.scaling.copyFrom(e)}else this._matrix=this._restMatrix}getAbsoluteInverseBindMatrix(){return this._absoluteInverseBindMatrix}getInvertedAbsoluteTransform(){return this.getAbsoluteInverseBindMatrix()}getAbsoluteMatrix(){return this._skeleton.computeAbsoluteMatrices(),this._absoluteMatrix}getAbsoluteTransform(){return this.getAbsoluteMatrix()}linkTransformNode(e){this._linkedTransformNode&&this._skeleton._numBonesWithLinkedTransformNode--,this._linkedTransformNode=e,this._linkedTransformNode&&this._skeleton._numBonesWithLinkedTransformNode++}getTransformNode(){return this._linkedTransformNode}get position(){return this._decompose(),this._localPosition}set position(e){this._decompose(),this._localPosition.copyFrom(e),this._markAsDirtyAndCompose()}get rotation(){return this.getRotation()}set rotation(e){this.setRotation(e)}get rotationQuaternion(){return this._decompose(),this._localRotation}set rotationQuaternion(e){this.setRotationQuaternion(e)}get scaling(){return this.getScale()}set scaling(e){this.setScale(e)}get animationPropertiesOverride(){return this._skeleton.animationPropertiesOverride}_decompose(){this._needToDecompose&&(this._needToDecompose=!1,this._localScaling||(this._localScaling=i.Vector3.Zero(),this._localRotation=i.Quaternion.Zero(),this._localPosition=i.Vector3.Zero()),this._localMatrix.decompose(this._localScaling,this._localRotation,this._localPosition))}_compose(){if(this._needToCompose){if(!this._localScaling){this._needToCompose=!1;return}this._needToCompose=!1,i.Matrix.ComposeToRef(this._localScaling,this._localRotation,this._localPosition,this._localMatrix)}}updateMatrix(e,t=!0,i=!0){this._bindMatrix.copyFrom(e),t&&this._updateAbsoluteBindMatrices(),i?this._matrix=e:this.markAsDirty()}_updateAbsoluteBindMatrices(e,t=!0){if(e||(e=this._bindMatrix),this.parent?e.multiplyToRef(this.parent._absoluteBindMatrix,this._absoluteBindMatrix):this._absoluteBindMatrix.copyFrom(e),this._absoluteBindMatrix.invertToRef(this._absoluteInverseBindMatrix),t)for(let e=0;e<this.children.length;e++)this.children[e]._updateAbsoluteBindMatrices();this._scalingDeterminant=0>this._absoluteBindMatrix.determinant()?-1:1}markAsDirty(){return this._currentRenderId++,this._childUpdateId++,this._skeleton._markAsDirty(),this}_markAsDirtyAndCompose(){this.markAsDirty(),this._needToCompose=!0}_markAsDirtyAndDecompose(){this.markAsDirty(),this._needToDecompose=!0}_updatePosition(e,t=0,n,o=!0){let a=this.getLocalMatrix();if(0==t)o?(a.addAtIndex(12,e.x),a.addAtIndex(13,e.y),a.addAtIndex(14,e.z)):a.setTranslationFromFloats(e.x,e.y,e.z);else{let t=r._TmpMats[0],s=r._TmpVecs[0];this.parent?(t.copyFrom(this.parent.getAbsoluteMatrix()),n&&t.multiplyToRef(n.getWorldMatrix(),t)):i.Matrix.IdentityToRef(t),o&&t.setTranslationFromFloats(0,0,0),t.invert(),i.Vector3.TransformCoordinatesToRef(e,t,s),o?(a.addAtIndex(12,s.x),a.addAtIndex(13,s.y),a.addAtIndex(14,s.z)):a.setTranslationFromFloats(s.x,s.y,s.z)}this._markAsDirtyAndDecompose()}translate(e,t=0,i){this._updatePosition(e,t,i,!0)}setPosition(e,t=0,i){this._updatePosition(e,t,i,!1)}setAbsolutePosition(e,t){this.setPosition(e,1,t)}scale(e,t,n,o=!1){let a=this.getLocalMatrix(),s=r._TmpMats[0];for(let o of(i.Matrix.ScalingToRef(e,t,n,s),s.multiplyToRef(a,a),s.invert(),this.children)){let i=o.getLocalMatrix();i.multiplyToRef(s,i),i.multiplyAtIndex(12,e),i.multiplyAtIndex(13,t),i.multiplyAtIndex(14,n),o._markAsDirtyAndDecompose()}if(this._markAsDirtyAndDecompose(),o)for(let i of this.children)i.scale(e,t,n,o)}setScale(e){this._decompose(),this._localScaling.copyFrom(e),this._markAsDirtyAndCompose()}getScale(){return this._decompose(),this._localScaling}getScaleToRef(e){this._decompose(),e.copyFrom(this._localScaling)}setYawPitchRoll(e,t,n,o=0,a){if(0===o){let s=r._TmpQuat;i.Quaternion.RotationYawPitchRollToRef(e,t,n,s),this.setRotationQuaternion(s,o,a);return}let s=r._TmpMats[0];if(!this._getAbsoluteInverseMatrixUnscaledToRef(s,a))return;let l=r._TmpMats[1];i.Matrix.RotationYawPitchRollToRef(e,t,n,l),s.multiplyToRef(l,l),this._rotateWithMatrix(l,o,a)}rotate(e,t,n=0,o){let a=r._TmpMats[0];a.setTranslationFromFloats(0,0,0),i.Matrix.RotationAxisToRef(e,t,a),this._rotateWithMatrix(a,n,o)}setAxisAngle(e,t,n=0,o){if(0===n){let a=r._TmpQuat;i.Quaternion.RotationAxisToRef(e,t,a),this.setRotationQuaternion(a,n,o);return}let a=r._TmpMats[0];if(!this._getAbsoluteInverseMatrixUnscaledToRef(a,o))return;let s=r._TmpMats[1];i.Matrix.RotationAxisToRef(e,t,s),a.multiplyToRef(s,s),this._rotateWithMatrix(s,n,o)}setRotation(e,t=0,i){this.setYawPitchRoll(e.y,e.x,e.z,t,i)}setRotationQuaternion(e,t=0,n){if(0===t){this._decompose(),this._localRotation.copyFrom(e),this._markAsDirtyAndCompose();return}let o=r._TmpMats[0];if(!this._getAbsoluteInverseMatrixUnscaledToRef(o,n))return;let a=r._TmpMats[1];i.Matrix.FromQuaternionToRef(e,a),o.multiplyToRef(a,a),this._rotateWithMatrix(a,t,n)}setRotationMatrix(e,t=0,n){if(0===t){let o=r._TmpQuat;i.Quaternion.FromRotationMatrixToRef(e,o),this.setRotationQuaternion(o,t,n);return}let o=r._TmpMats[0];if(!this._getAbsoluteInverseMatrixUnscaledToRef(o,n))return;let a=r._TmpMats[1];a.copyFrom(e),o.multiplyToRef(e,a),this._rotateWithMatrix(a,t,n)}_rotateWithMatrix(e,t=0,i){let n=this.getLocalMatrix(),o=n.m[12],a=n.m[13],s=n.m[14],l=this.getParent(),u=r._TmpMats[3],c=r._TmpMats[4];l&&1==t?(i?(u.copyFrom(i.getWorldMatrix()),l.getAbsoluteMatrix().multiplyToRef(u,u)):u.copyFrom(l.getAbsoluteMatrix()),c.copyFrom(u),c.invert(),n.multiplyToRef(u,n),n.multiplyToRef(e,n),n.multiplyToRef(c,n)):1==t&&i?(u.copyFrom(i.getWorldMatrix()),c.copyFrom(u),c.invert(),n.multiplyToRef(u,n),n.multiplyToRef(e,n),n.multiplyToRef(c,n)):n.multiplyToRef(e,n),n.setTranslationFromFloats(o,a,s),this._markAsDirtyAndDecompose()}_getAbsoluteInverseMatrixUnscaledToRef(e,t){let n=r._TmpMats[2];return e.copyFrom(this.getAbsoluteMatrix()),t?(e.multiplyToRef(t.getWorldMatrix(),e),i.Matrix.ScalingToRef(t.scaling.x,t.scaling.y,t.scaling.z,n)):i.Matrix.IdentityToRef(n),e.invert(),!isNaN(e.m[0])&&(n.multiplyAtIndex(0,this._scalingDeterminant),e.multiplyToRef(n,e),!0)}getPosition(e=0,t=null){let n=i.Vector3.Zero();return this.getPositionToRef(e,t,n),n}getPositionToRef(e=0,t,i){if(0==e){let e=this.getLocalMatrix();i.x=e.m[12],i.y=e.m[13],i.z=e.m[14]}else{let e=r._TmpMats[0].copyFrom(this.getAbsoluteMatrix());t&&e.multiplyToRef(t.getWorldMatrix(),e),i.x=e.m[12],i.y=e.m[13],i.z=e.m[14]}}getAbsolutePosition(e=null){let t=i.Vector3.Zero();return this.getPositionToRef(1,e,t),t}getAbsolutePositionToRef(e,t){this.getPositionToRef(1,e,t)}computeAbsoluteMatrices(){if(this._compose(),this.parent)this._localMatrix.multiplyToRef(this.parent._absoluteMatrix,this._absoluteMatrix);else{this._absoluteMatrix.copyFrom(this._localMatrix);let e=this._skeleton.getPoseMatrix();e&&this._absoluteMatrix.multiplyToRef(e,this._absoluteMatrix)}let e=this.children,t=e.length;for(let i=0;i<t;i++)e[i].computeAbsoluteMatrices()}computeAbsoluteTransforms(){this.computeAbsoluteMatrices()}getDirection(e,t=null){let n=i.Vector3.Zero();return this.getDirectionToRef(e,t,n),n}getDirectionToRef(e,t=null,n){let o=r._TmpMats[0].copyFrom(this.getAbsoluteMatrix());t&&o.multiplyToRef(t.getWorldMatrix(),o),i.Vector3.TransformNormalToRef(e,o,n),n.normalize()}getRotation(e=0,t=null){let n=i.Vector3.Zero();return this.getRotationToRef(e,t,n),n}getRotationToRef(e=0,t=null,i){let n=r._TmpQuat;this.getRotationQuaternionToRef(e,t,n),n.toEulerAnglesToRef(i)}getRotationQuaternion(e=0,t=null){let n=i.Quaternion.Identity();return this.getRotationQuaternionToRef(e,t,n),n}getRotationQuaternionToRef(e=0,t=null,i){if(0==e)this._decompose(),i.copyFrom(this._localRotation);else{let e=r._TmpMats[0],n=this.getAbsoluteMatrix();t?n.multiplyToRef(t.getWorldMatrix(),e):e.copyFrom(n),e.multiplyAtIndex(0,this._scalingDeterminant),e.multiplyAtIndex(1,this._scalingDeterminant),e.multiplyAtIndex(2,this._scalingDeterminant),e.decompose(void 0,i,void 0)}}getRotationMatrix(e=0,t){let n=i.Matrix.Identity();return this.getRotationMatrixToRef(e,t,n),n}getRotationMatrixToRef(e=0,t,i){if(0==e)this.getLocalMatrix().getRotationMatrixToRef(i);else{let e=r._TmpMats[0],n=this.getAbsoluteMatrix();t?n.multiplyToRef(t.getWorldMatrix(),e):e.copyFrom(n),e.multiplyAtIndex(0,this._scalingDeterminant),e.multiplyAtIndex(1,this._scalingDeterminant),e.multiplyAtIndex(2,this._scalingDeterminant),e.getRotationMatrixToRef(i)}}getAbsolutePositionFromLocal(e,t=null){let n=i.Vector3.Zero();return this.getAbsolutePositionFromLocalToRef(e,t,n),n}getAbsolutePositionFromLocalToRef(e,t=null,n){let o=r._TmpMats[0].copyFrom(this.getAbsoluteMatrix());t&&o.multiplyToRef(t.getWorldMatrix(),o),i.Vector3.TransformCoordinatesToRef(e,o,n)}getLocalPositionFromAbsolute(e,t=null){let n=i.Vector3.Zero();return this.getLocalPositionFromAbsoluteToRef(e,t,n),n}getLocalPositionFromAbsoluteToRef(e,t=null,n){let o=r._TmpMats[0].copyFrom(this.getAbsoluteMatrix());t&&o.multiplyToRef(t.getWorldMatrix(),o),o.invert(),i.Vector3.TransformCoordinatesToRef(e,o,n)}setCurrentPoseAsRest(){this.setRestMatrix(this.getLocalMatrix())}dispose(){this._linkedTransformNode=null;let e=this._skeleton.bones.indexOf(this);if(-1!==e&&this._skeleton.bones.splice(e,1),this._parentNode&&this._parentNode.children){let e=this._parentNode.children,t=e.indexOf(this);-1!==t&&e.splice(t,1)}super.dispose()}}r._TmpVecs=(0,n.BuildArray)(2,i.Vector3.Zero),r._TmpQuat=i.Quaternion.Identity(),r._TmpMats=(0,n.BuildArray)(5,i.Matrix.Identity),(t=r.prototype).copyAnimationRange??(t.copyAnimationRange=(0,a._MissingSideEffect)("Bone","copyAnimationRange")),e.s(["Bone",0,r])}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,63792,e=>{"use strict";var l=e.i(23422),t=e.i(65678),a=e.i(80129),i=e.i(49795),r=e.i(68282);class n extends l.FlowGraphExecutionBlockWithOutSignal{constructor(e){super(e),this.delayIndex=this.registerDataInput("delayIndex",t.RichTypeFlowGraphInteger)}_execute(e,l){let t=(0,a.getNumericValue)(this.delayIndex.getValue(e));if(t<0||isNaN(t)||!isFinite(t))return this._reportError(e,"Invalid delay index");let r=e._getGlobalContextVariable("pendingDelays",[]),n=r[t];n&&(n.dispose(),delete r[t],e._setGlobalContextVariable("pendingDelays",r)),(0,i.MarkDelayInactive)(e,t),this.out._activateSignal(e)}getClassName(){return"FlowGraphCancelDelayBlock"}}let o=!1;e.s(["FlowGraphCancelDelayBlock",0,n,"RegisterFlowGraphCancelDelayBlock",0,function(){o||(o=!0,(0,r.RegisterClass)("FlowGraphCancelDelayBlock",n))}])}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,99373,e=>{"use strict";var t=e.i(56173),r=e.i(76197),a=e.i(81705),o=e.i(33491),l=e.i(24617);class n{constructor(e,t,r,a){this.name=e,this.worldAxisForNormal=t,this.worldAxisForFileX=r,this.worldAxisForFileY=a}}class i{static _NearestPow2Floor(e){return e<=1?1:1<<Math.floor(Math.log2(e))}static ConvertCubeMapTextureToSphericalPolynomial(e){let t,r;if(!e.isCube)return null;e.getScene()?.getEngine().flushFramebuffer();let a=e.getSize().width,o=e._sphericalPolynomialTargetSize,l=o>0?this._NearestPow2Floor(o):0,n=!e.noMipmap&&e._texture?.generateMipMaps===!0,i=l>0&&l<a&&n,f=i?Math.max(0,Math.round(Math.log2(a/l))):0,s=i?Math.max(1,Math.floor(a/Math.pow(2,f))):a,c=e.readPixels(0,f,void 0,!1),u=e.readPixels(1,f,void 0,!1);e.isRenderTarget?(t=e.readPixels(3,f,void 0,!1),r=e.readPixels(2,f,void 0,!1)):(t=e.readPixels(2,f,void 0,!1),r=e.readPixels(3,f,void 0,!1));let A=e.readPixels(4,f,void 0,!1),m=e.readPixels(5,f,void 0,!1),p=e.gammaSpace,F=l>0&&l<a&&!i;return new Promise(e=>{Promise.all([u,c,t,r,A,m]).then(([t,r,o,n,i,f])=>{let c=s;F&&(t=this._DownsampleFace(t,a,l,4),r=this._DownsampleFace(r,a,l,4),o=this._DownsampleFace(o,a,l,4),n=this._DownsampleFace(n,a,l,4),i=this._DownsampleFace(i,a,l,4),f=this._DownsampleFace(f,a,l,4),c=l);let u={size:c,right:r,left:t,up:o,down:n,front:i,back:f,format:5,type:+(t instanceof Float32Array),gammaSpace:p};e(this.ConvertCubeMapToSphericalPolynomial(u))})})}static _AreaElement(e,t){return Math.atan2(e*t,Math.sqrt(e*e+t*t+1))}static _DownsampleFace(e,t,r,a){let o=e instanceof Float32Array?e:Float32Array.from(e),l=r*r*a,n=new Float32Array(l),i=t/r,f=1/(i*i);for(let e=0;e<r;e++){let l=Math.floor(e*i),s=Math.floor((e+1)*i);for(let c=0;c<r;c++){let u=Math.floor(c*i),A=Math.floor((c+1)*i),m=(e*r+c)*a;for(let e=0;e<a;e++){let r=0;for(let n=l;n<s;n++)for(let l=u;l<A;l++)r+=o[(n*t+l)*a+e];n[m+e]=r*f}}}if(e instanceof Float32Array)return n;let s=new e.constructor(l);for(let e=0;e<l;e++)s[e]=n[e]+.5|0;return s}static ConvertCubeMapToSphericalPolynomial(e,t=0){let n=t>0?this._NearestPow2Floor(t):0;if(n>0&&e.size>n){let t=5===e.format?4:3,r={};for(let a of["right","left","up","down","front","back"])r[a]=this._DownsampleFace(e[a],e.size,n,t);e={...e,...r,size:n}}let i=new a.SphericalHarmonics,f=0,s=2/e.size,c=.5*s,u=c-1;for(let t=0;t<6;t++){let a=this._FileFaces[t],n=e[a.name],A=u,m=5===e.format?4:3;for(let t=0;t<e.size;t++){let p=u;for(let u=0;u<e.size;u++){let F=a.worldAxisForFileX.scale(p).add(a.worldAxisForFileY.scale(A)).add(a.worldAxisForNormal);F.normalize();let h=this._AreaElement(p-c,A-c)-this._AreaElement(p-c,A+c)-this._AreaElement(p+c,A-c)+this._AreaElement(p+c,A+c),y=n[t*e.size*m+u*m+0],d=n[t*e.size*m+u*m+1],w=n[t*e.size*m+u*m+2];isNaN(y)&&(y=0),isNaN(d)&&(d=0),isNaN(w)&&(w=0),0===e.type&&(y/=255,d/=255,w/=255),e.gammaSpace&&(y=Math.pow((0,r.Clamp)(y),o.ToLinearSpace),d=Math.pow((0,r.Clamp)(d),o.ToLinearSpace),w=Math.pow((0,r.Clamp)(w),o.ToLinearSpace));let C=this.MAX_HDRI_VALUE;if(this.PRESERVE_CLAMPED_COLORS){let e=Math.max(y,d,w);if(e>C){let t=C/e;y*=t,d*=t,w*=t}}else y=(0,r.Clamp)(y,0,C),d=(0,r.Clamp)(d,0,C),w=(0,r.Clamp)(w,0,C);let _=new l.Color3(y,d,w);i.addLight(F,_,h),f+=h,p+=s}A+=s}}let A=4*Math.PI*6/6/f;return i.scaleInPlace(A),i.convertIncidentRadianceToIrradiance(),i.convertIrradianceToLambertianRadiance(),a.SphericalPolynomial.FromHarmonics(i)}}i._FileFaces=[new n("right",new t.Vector3(1,0,0),new t.Vector3(0,0,-1),new t.Vector3(0,-1,0)),new n("left",new t.Vector3(-1,0,0),new t.Vector3(0,0,1),new t.Vector3(0,-1,0)),new n("up",new t.Vector3(0,1,0),new t.Vector3(1,0,0),new t.Vector3(0,0,1)),new n("down",new t.Vector3(0,-1,0),new t.Vector3(1,0,0),new t.Vector3(0,0,-1)),new n("front",new t.Vector3(0,0,1),new t.Vector3(1,0,0),new t.Vector3(0,-1,0)),new n("back",new t.Vector3(0,0,-1),new t.Vector3(-1,0,0),new t.Vector3(0,-1,0))],i.MAX_HDRI_VALUE=4096,i.PRESERVE_CLAMPED_COLORS=!1,e.s(["CubeMapToSphericalPolynomialTools",0,i])},45389,e=>{"use strict";var t=e.i(76197),r=e.i(8697),a=e.i(99373),o=e.i(61654);function l(e){return e.charCodeAt(0)+(e.charCodeAt(1)<<8)+(e.charCodeAt(2)<<16)+(e.charCodeAt(3)<<24)}let n=l("DXT1"),i=l("DXT3"),f=l("DXT5"),s=l("DX10");class c{static GetDDSInfo(e){let t=new Int32Array(e.buffer,e.byteOffset,31),r=new Int32Array(e.buffer,e.byteOffset,35),a=1;131072&t[2]&&(a=Math.max(1,t[7]));let o=t[21],l=o===s?r[32]:0,c=0;switch(o){case 113:c=2;break;case 116:c=1;break;case s:if(10===l){c=2;break}2===l&&(c=1)}return{width:t[4],height:t[3],mipmapCount:a,isFourCC:(4&t[20])==4,isRGB:(64&t[20])==64,isLuminance:(131072&t[20])==131072,isCube:(512&t[28])==512,isCompressed:o===n||o===i||o===f,dxgiFormat:l,textureType:c}}static _GetHalfFloatAsFloatRGBAArrayBuffer(e,t,r,a,l,n){let i=new Float32Array(a),f=new Uint16Array(l,r),s=0;for(let r=0;r<t;r++)for(let t=0;t<e;t++){let a=(t+r*e)*4;i[s]=(0,o.FromHalfFloat)(f[a]),i[s+1]=(0,o.FromHalfFloat)(f[a+1]),i[s+2]=(0,o.FromHalfFloat)(f[a+2]),c.StoreLODInAlphaChannel?i[s+3]=n:i[s+3]=(0,o.FromHalfFloat)(f[a+3]),s+=4}return i}static _GetHalfFloatRGBAArrayBuffer(e,t,r,a,l,n){if(c.StoreLODInAlphaChannel){let i=new Uint16Array(a),f=new Uint16Array(l,r),s=0;for(let r=0;r<t;r++)for(let t=0;t<e;t++){let a=(t+r*e)*4;i[s]=f[a],i[s+1]=f[a+1],i[s+2]=f[a+2],i[s+3]=(0,o.ToHalfFloat)(n),s+=4}return i}return new Uint16Array(l,r,a)}static _GetFloatRGBAArrayBuffer(e,t,r,a,o,l){if(c.StoreLODInAlphaChannel){let n=new Float32Array(a),i=new Float32Array(o,r),f=0;for(let r=0;r<t;r++)for(let t=0;t<e;t++){let a=(t+r*e)*4;n[f]=i[a],n[f+1]=i[a+1],n[f+2]=i[a+2],n[f+3]=l,f+=4}return n}return new Float32Array(o,r,a)}static _GetFloatAsHalfFloatRGBAArrayBuffer(e,t,r,a,l,n){let i=new Uint16Array(a),f=new Float32Array(l,r),s=0;for(let r=0;r<t;r++)for(let t=0;t<e;t++)i[s]=(0,o.ToHalfFloat)(f[s]),i[s+1]=(0,o.ToHalfFloat)(f[s+1]),i[s+2]=(0,o.ToHalfFloat)(f[s+2]),c.StoreLODInAlphaChannel?i[s+3]=(0,o.ToHalfFloat)(n):i[s+3]=(0,o.ToHalfFloat)(f[s+3]),s+=4;return i}static _GetFloatAsUIntRGBAArrayBuffer(e,r,a,o,l,n){let i=new Uint8Array(o),f=new Float32Array(l,a),s=0;for(let a=0;a<r;a++)for(let r=0;r<e;r++){let o=(r+a*e)*4;i[s]=255*(0,t.Clamp)(f[o]),i[s+1]=255*(0,t.Clamp)(f[o+1]),i[s+2]=255*(0,t.Clamp)(f[o+2]),c.StoreLODInAlphaChannel?i[s+3]=n:i[s+3]=255*(0,t.Clamp)(f[o+3]),s+=4}return i}static _GetHalfFloatAsUIntRGBAArrayBuffer(e,r,a,l,n,i){let f=new Uint8Array(l),s=new Uint16Array(n,a),u=0;for(let a=0;a<r;a++)for(let r=0;r<e;r++){let l=(r+a*e)*4;f[u]=255*(0,t.Clamp)((0,o.FromHalfFloat)(s[l])),f[u+1]=255*(0,t.Clamp)((0,o.FromHalfFloat)(s[l+1])),f[u+2]=255*(0,t.Clamp)((0,o.FromHalfFloat)(s[l+2])),c.StoreLODInAlphaChannel?f[u+3]=i:f[u+3]=255*(0,t.Clamp)((0,o.FromHalfFloat)(s[l+3])),u+=4}return f}static _GetRGBAArrayBuffer(e,t,r,a,o,l,n,i,f){let s=new Uint8Array(a),c=new Uint8Array(o,r),u=0;for(let r=0;r<t;r++)for(let t=0;t<e;t++){let a=(t+r*e)*4;s[u]=c[a+l],s[u+1]=c[a+n],s[u+2]=c[a+i],s[u+3]=c[a+f],u+=4}return s}static _ExtractLongWordOrder(e){return 0===e||255===e||-0x1000000===e?0:1+c._ExtractLongWordOrder(e>>8)}static _GetRGBArrayBuffer(e,t,r,a,o,l,n,i){let f=new Uint8Array(a),s=new Uint8Array(o,r),c=0;for(let r=0;r<t;r++)for(let t=0;t<e;t++){let a=(t+r*e)*3;f[c]=s[a+l],f[c+1]=s[a+n],f[c+2]=s[a+i],c+=3}return f}static _GetLuminanceArrayBuffer(e,t,r,a,o){let l=new Uint8Array(a),n=new Uint8Array(o,r),i=0;for(let r=0;r<t;r++)for(let t=0;t<e;t++){let a=t+r*e;l[i]=n[a],i++}return l}static UploadDDSLevels(e,t,o,l,u,A,m=-1,p,F=!0){let h,y,d,w=null;l.sphericalPolynomial&&(w=[]);let C=!!e.getCaps().s3tc;t.generateMipMaps=u;let _=new Int32Array(o.buffer,o.byteOffset,31),b,B,G,x=0,g,R=0,M=1;if(0x20534444!==_[0])return void r.Logger.Error("Invalid magic number in DDS header");if(!l.isFourCC&&!l.isRGB&&!l.isLuminance)return void r.Logger.Error("Unsupported format, must contain a FourCC, RGB or LUMINANCE code");if(l.isCompressed&&!C)return void r.Logger.Error("Compressed textures are not supported on this platform.");let D=_[22];g=_[1]+4;let T=!1;if(l.isFourCC)switch(b=_[21]){case n:M=8,R=33777;break;case i:M=16,R=33778;break;case f:M=16,R=33779;break;case 113:T=!0,D=64;break;case 116:T=!0,D=128;break;case s:{g+=20;let e=!1;switch(l.dxgiFormat){case 10:T=!0,D=64,e=!0;break;case 2:T=!0,D=128,e=!0;break;case 88:l.isRGB=!0,l.isFourCC=!1,D=32,e=!0}if(e)break}default:r.Logger.Error(["Unsupported FourCC code:",String.fromCharCode(255&b,b>>8&255,b>>16&255,b>>24&255)]);return}let L=c._ExtractLongWordOrder(_[23]),S=c._ExtractLongWordOrder(_[24]),O=c._ExtractLongWordOrder(_[25]),H=c._ExtractLongWordOrder(_[26]);T&&(R=e._getRGBABufferInternalSizedFormat(l.textureType)),y=1,131072&_[2]&&!1!==u&&(y=Math.max(1,_[7]));let P=p||0,U=e.getCaps();for(let r=P;r<A;r++){for(B=_[4],G=_[3],d=0;d<y;++d){if(-1===m||m===d){let a=-1===m?d:0;if(!l.isCompressed&&l.isFourCC){t.format=5,x=B*G*4;let l=null;if(e._badOS||e._badDesktopOS||!U.textureHalfFloat&&!U.textureFloat)128===D?(l=c._GetFloatAsUIntRGBAArrayBuffer(B,G,o.byteOffset+g,x,o.buffer,a),w&&0==a&&w.push(c._GetFloatRGBAArrayBuffer(B,G,o.byteOffset+g,x,o.buffer,a))):64===D&&(l=c._GetHalfFloatAsUIntRGBAArrayBuffer(B,G,o.byteOffset+g,x,o.buffer,a),w&&0==a&&w.push(c._GetHalfFloatAsFloatRGBAArrayBuffer(B,G,o.byteOffset+g,x,o.buffer,a))),t.type=0;else{let e,r=U.textureFloat&&(F&&U.textureFloatLinearFiltering||!F),n=U.textureHalfFloat&&(F&&U.textureHalfFloatLinearFiltering||!F),i=(128===D||64===D&&!n)&&r?1:(64===D||128===D&&!r)&&n?2:0,f=null;if(128===D)switch(i){case 1:e=c._GetFloatRGBAArrayBuffer,f=null;break;case 2:e=c._GetFloatAsHalfFloatRGBAArrayBuffer,f=c._GetFloatRGBAArrayBuffer;break;case 0:e=c._GetFloatAsUIntRGBAArrayBuffer,f=c._GetFloatRGBAArrayBuffer}else switch(i){case 1:e=c._GetHalfFloatAsFloatRGBAArrayBuffer,f=null;break;case 2:e=c._GetHalfFloatRGBAArrayBuffer,f=c._GetHalfFloatAsFloatRGBAArrayBuffer;break;case 0:e=c._GetHalfFloatAsUIntRGBAArrayBuffer,f=c._GetHalfFloatAsFloatRGBAArrayBuffer}t.type=i,l=e(B,G,o.byteOffset+g,x,o.buffer,a),w&&0==a&&w.push(f?f(B,G,o.byteOffset+g,x,o.buffer,a):l)}l&&e._uploadDataToTextureDirectly(t,l,r,a)}else if(l.isRGB)t.type=0,24===D?(t.format=4,x=B*G*3,h=c._GetRGBArrayBuffer(B,G,o.byteOffset+g,x,o.buffer,L,S,O)):(t.format=5,x=B*G*4,h=c._GetRGBAArrayBuffer(B,G,o.byteOffset+g,x,o.buffer,L,S,O,H)),e._uploadDataToTextureDirectly(t,h,r,a);else if(l.isLuminance){let l=e._getUnpackAlignement(),n=B;x=Math.floor((B+l-1)/l)*l*(G-1)+n,h=c._GetLuminanceArrayBuffer(B,G,o.byteOffset+g,x,o.buffer),t.format=1,t.type=0,e._uploadDataToTextureDirectly(t,h,r,a)}else x=Math.max(4,B)/4*Math.max(4,G)/4*M,h=new Uint8Array(o.buffer,o.byteOffset+g,x),t.type=0,e._uploadCompressedDataToTextureDirectly(t,R,B,G,h,r,a)}g+=D?B*G*(D/8):x,B*=.5,G*=.5,B=Math.max(1,B),G=Math.max(1,G)}if(void 0!==p)break}w&&w.length>0?l.sphericalPolynomial=a.CubeMapToSphericalPolynomialTools.ConvertCubeMapToSphericalPolynomial({size:_[4],right:w[0],left:w[1],up:w[2],down:w[3],front:w[4],back:w[5],format:5,type:1,gammaSpace:!1}):l.sphericalPolynomial=void 0}}c.StoreLODInAlphaChannel=!1,e.s(["DDSTools",0,c])}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,45335,64610,51070,10609,e=>{"use strict";let t,i,r,n,s,a,o,l,h,c,u,d,_,f;var g,m=e.i(73403),p=e.i(5207),T=e.i(32866),I=e.i(56173),E=e.i(33491),y=e.i(93663);class M{constructor(e,t,i){this._cameraPosition=t,this._behavior=i,this.activeInput=!1,this.speed=1,this.zoomSpeed=1,this.panSpeed=1,this.rotationXSpeed=1,this.rotationYSpeed=1,this._zoomSpeedMultiplier=1,this._panSpeedMultiplier=1,this.zoomInertia=.9,this.panInertia=.9,this.rotationInertia=.9,this.zoomAccumulatedPixels=0,this.panAccumulatedPixels=new I.Vector3,this.rotationAccumulatedPixels=new I.Vector3,this.zoomDeltaCurrentFrame=0,this.panDeltaCurrentFrame=I.Vector3.Zero(),this.rotationDeltaCurrentFrame=I.Vector3.Zero(),this._zoomVelocity=0,this._panVelocity=new I.Vector3,this.referenceFrameRate=60,this._rotationVelocity=new I.Vector3,this._prevFrameTimeMs=0,this._scene=e}computeCurrentFrameDeltas(){let e=this._scene.getEngine().getDeltaTime(),t=this._getEffectiveDeltaMs(e);if(0===this._zoomVelocity&&0===this.zoomAccumulatedPixels&&0===this._panVelocity.x&&0===this._panVelocity.y&&0===this._panVelocity.z&&0===this.panAccumulatedPixels.x&&0===this.panAccumulatedPixels.y&&0===this.panAccumulatedPixels.z&&0===this._rotationVelocity.x&&0===this._rotationVelocity.y&&0===this._rotationVelocity.z&&0===this.rotationAccumulatedPixels.x&&0===this.rotationAccumulatedPixels.y&&0===this.rotationAccumulatedPixels.z&&!this.activeInput){this.panDeltaCurrentFrame.setAll(0),this.rotationDeltaCurrentFrame.setAll(0),this.zoomDeltaCurrentFrame=0,e>0&&(this._prevFrameTimeMs=e);return}this.panDeltaCurrentFrame.setAll(0),this.rotationDeltaCurrentFrame.setAll(0),this.zoomDeltaCurrentFrame=0,(this.panAccumulatedPixels.lengthSquared()>0||this.rotationAccumulatedPixels.lengthSquared()>0||0!==this.zoomAccumulatedPixels)&&this._behavior?.isInterpolating&&this._behavior.stopAllAnimations(),this._panVelocity.copyFromFloats(this._calculateCurrentVelocity(this._panVelocity.x,this.panAccumulatedPixels.x,this.panInertia),this._calculateCurrentVelocity(this._panVelocity.y,this.panAccumulatedPixels.y,this.panInertia),this._calculateCurrentVelocity(this._panVelocity.z,this.panAccumulatedPixels.z,this.panInertia)),this._panVelocity.scaleToRef(this.speed*this.panSpeed*this._panSpeedMultiplier*t,this.panDeltaCurrentFrame),this._rotationVelocity.copyFromFloats(this._calculateCurrentVelocity(this._rotationVelocity.x,this.rotationAccumulatedPixels.x,this.rotationInertia),this._calculateCurrentVelocity(this._rotationVelocity.y,this.rotationAccumulatedPixels.y,this.rotationInertia),this._calculateCurrentVelocity(this._rotationVelocity.z,this.rotationAccumulatedPixels.z,this.rotationInertia)),this.rotationDeltaCurrentFrame.copyFromFloats(this._rotationVelocity.x*this.speed*this.rotationXSpeed*t,this._rotationVelocity.y*this.speed*this.rotationYSpeed*t,0),this._zoomVelocity=this._calculateCurrentVelocity(this._zoomVelocity,this.zoomAccumulatedPixels,this.zoomInertia),this.zoomDeltaCurrentFrame=this._zoomVelocity*(this.speed*this.zoomSpeed*this._zoomSpeedMultiplier)*t,e>0&&(this._prevFrameTimeMs=e),this.zoomAccumulatedPixels=0,this.panAccumulatedPixels.setAll(0),this.rotationAccumulatedPixels.setAll(0),this.activeInput=!1}resetRotationVelocity(){this._rotationVelocity.setAll(0),this.rotationAccumulatedPixels.setAll(0)}resetPanVelocity(){this._panVelocity.setAll(0),this.panAccumulatedPixels.setAll(0)}resetZoomVelocity(){this._zoomVelocity=0,this.zoomAccumulatedPixels=0}get isInterpolating(){return!!this._behavior?.isInterpolating}getFrameIndependentDecay(e){let t=this._scene.getEngine().getDeltaTime();return Math.pow(e,this._getEffectiveDeltaMs(t)/(1e3/this.referenceFrameRate))}getFrameIndependentInputScale(e){let t=1-e;return t<=0?1:(1-this.getFrameIndependentDecay(e))/t}_getEffectiveDeltaMs(e){return e>0?e:this._prevFrameTimeMs>0?this._prevFrameTimeMs:1e3/this.referenceFrameRate}_calculateCurrentVelocity(e,t,i){let r=e,n=this._scene.getEngine().getDeltaTime(),s=this._getEffectiveDeltaMs(n);if(0===s)return r;let a=this.getFrameIndependentDecay(i);if(r*=a,0!==t||this.activeInput){let e=1-i;r+=t/s*(e>0?(1-a)/e:1)}else 1e-6>Math.abs(r)&&(r=0);return r}}e.s(["CameraMovement",0,M],64610);class S{constructor(e,t){this.inputMap=[],this.handlers=e,this._createDefaultEntries=t,this.resetInputMap()}resolveInteraction(e,t){for(let i of this.inputMap)if(i.source===e&&this._entryMatches(i,t))return i;return null}resetInputMap(){this.inputMap=this._createDefaultEntries?.()??[]}getEntry(e,t,i){let r=this.inputMap;for(let n=0;n<r.length;n++){let s=r[n];if(s.source===e&&s.interaction===t&&this._entryConditionsMatch(s,i))return s}}getEntries(e,t,i){let r=[],n=this.inputMap;for(let s=0;s<n.length;s++){let a=n[s];a.source===e&&a.interaction===t&&this._entryConditionsMatch(a,i)&&r.push(a)}return r}addEntry(e){let t=this._entrySpecificity(e),i=this.inputMap.length;for(let e=0;e<this.inputMap.length;e++)if(this._entrySpecificity(this.inputMap[e])<t){i=e;break}this.inputMap.splice(i,0,e)}setInteraction(e,t,i){let r=this.resolveInteraction(e,t);return r&&this._entryCoversAllConditionsOf(r,t)?r.interaction=i:this.addEntry({source:e,...t??{},interaction:i}),!0}_entryCoversAllConditionsOf(e,t){if(!t)return!0;for(let i of Object.keys(t)){let r=t[i];if(void 0!==r){if("modifiers"===i){let t=e.modifiers??{};for(let e of Object.keys(r))if(void 0!==r[e]&&void 0===t[e])return!1}else if(void 0===e[i])return!1}}return!0}setInteractions(e,t,i){let r=0,n=this.inputMap;for(let s=0;s<n.length;s++){let a=n[s];a.source===e&&this._entryMatches(a,t)&&(a.interaction=i,r++)}return r}_entryMatches(e,t){switch(e.source){case"pointer":if(void 0!==e.button&&e.button!==t?.button)return!1;return this._matchModifiers(e.modifiers,t?.modifiers);case"wheel":return this._matchModifiers(e.modifiers,t?.modifiers);case"touch":if(void 0!==e.touchCount&&e.touchCount!==t?.touchCount)return!1;return!0;case"keyboard":if(void 0!==e.key&&(Array.isArray(e.key)?-1===e.key.indexOf(t?.key??-1):e.key!==t?.key))return!1;return this._matchModifiers(e.modifiers,t?.modifiers)}}_entryConditionsMatch(e,t){if(!t)return!0;switch(e.source){case"pointer":if("button"in t&&e.button!==t.button)return!1;return!("modifiers"in t)||this._entryModifiersMatch(e.modifiers,t.modifiers);case"wheel":return!("modifiers"in t)||this._entryModifiersMatch(e.modifiers,t.modifiers);case"touch":return!("touchCount"in t)||e.touchCount===t.touchCount;case"keyboard":if("key"in t){if(void 0===e.key)return void 0===t.key;if(void 0===t.key||(Array.isArray(e.key)?-1===e.key.indexOf(t.key):e.key!==t.key))return!1}return!("modifiers"in t)||this._entryModifiersMatch(e.modifiers,t.modifiers)}}_entrySpecificity(e){let t=0;return"button"in e&&void 0!==e.button&&t++,"key"in e&&void 0!==e.key&&t++,"touchCount"in e&&void 0!==e.touchCount&&t++,"modifiers"in e&&e.modifiers&&t++,t}_matchModifiers(e,t){return!e||(void 0===e.ctrl||e.ctrl===(t?.ctrl??!1))&&(void 0===e.shift||e.shift===(t?.shift??!1))&&(void 0===e.alt||e.alt===(t?.alt??!1))}_entryModifiersMatch(e,t){return t?void 0===t.ctrl&&void 0===t.shift&&void 0===t.alt?!e||void 0===e.ctrl&&void 0===e.shift&&void 0===e.alt:(void 0===t.ctrl||e?.ctrl===t.ctrl)&&(void 0===t.shift||e?.shift===t.shift)&&(void 0===t.alt||e?.alt===t.alt):!e}}e.s(["InputMapper",0,S],51070);class x extends M{constructor(e,t,i){super(e,t,i),this.input=new S({translate:(e,t,i)=>{this.panAccumulatedPixels.x+=e,this.panAccumulatedPixels.y+=t,this.panAccumulatedPixels.z+=i},rotate:(e,t)=>{this.rotationAccumulatedPixels.x+=e,this.rotationAccumulatedPixels.y+=t}},()=>this._createDefaultInputMap())}_createDefaultInputMap(){return[{source:"pointer",interaction:"rotate"},{source:"keyboard",interaction:"translate"},{source:"keyboard",interaction:"rotate"},{source:"touch",interaction:"rotate"},{source:"touch",interaction:"translate"}]}}let A=I.Matrix.Zero(),R=I.Quaternion.Identity(),D=(s=T.Camera,a=[],o=[],l=[],h=[],c=[],u=[],d=[],_=[],g=class extends s{get inertia(){return this._targetInertia}set inertia(e){this._targetInertia=e,this.movement&&(this.movement.panInertia=e,this.movement.rotationInertia=e)}constructor(e,t,i,r=!0){super(e,t,i,r),this.cameraDirection=new I.Vector3(0,0,0),this.cameraRotation=new I.Vector2(0,0),this._targetInertia=.9,this.updateUpVectorFromRotation=(0,m.__runInitializers)(this,a,!1),this.rotation=((0,m.__runInitializers)(this,o),(0,m.__runInitializers)(this,l,void 0)),this.rotationQuaternion=(0,m.__runInitializers)(this,h),this.speed=(0,m.__runInitializers)(this,c,2),this.noRotationConstraint=((0,m.__runInitializers)(this,u),!1),this.invertRotation=!1,this.inverseRotationSpeed=.2,this._panningEpsilon=E.Epsilon,this._rotationEpsilon=E.Epsilon,this.lockedTarget=(0,m.__runInitializers)(this,d,null),this._currentTarget=((0,m.__runInitializers)(this,_),I.Vector3.Zero()),this._initialFocalDistance=1,this._viewMatrix=I.Matrix.Zero(),this._cameraTransformMatrix=I.Matrix.Zero(),this._cameraRotationMatrix=I.Matrix.Zero(),this._transformedReferencePoint=I.Vector3.Zero(),this._deferredPositionUpdate=new I.Vector3,this._deferredRotationQuaternionUpdate=new I.Quaternion,this._deferredRotationUpdate=new I.Vector3,this._deferredUpdated=!1,this._deferOnly=!1,this._cachedRotationZ=0,this._cachedQuaternionRotationZ=0,this._referencePoint=I.Vector3.Forward(this.getScene().useRightHandedSystem),this.rotation=new I.Vector3(0,this.getScene().useRightHandedSystem?Math.PI:0,0),this.movement=new x(this.getScene(),this.position),this.movement.panInertia=this.inertia,this.movement.rotationInertia=this.inertia}getFrontPosition(e){this.getWorldMatrix();let t=I.TmpVectors.Vector3[0],i=I.TmpVectors.Vector3[1];return i.set(0,0,this._scene.useRightHandedSystem?-1:1),this.getDirectionToRef(i,t),t.scaleInPlace(e),this.globalPosition.add(t)}_getLockedTargetPosition(){if(!this.lockedTarget)return null;if(this.lockedTarget.absolutePosition){let e=this.lockedTarget;e.computeWorldMatrix().getTranslationToRef(e.absolutePosition)}return this.lockedTarget.absolutePosition||this.lockedTarget}storeState(){return this._storedPosition=this.position.clone(),this._storedRotation=this.rotation.clone(),this.rotationQuaternion&&(this._storedRotationQuaternion=this.rotationQuaternion.clone()),super.storeState()}_restoreStateValues(){return!!super._restoreStateValues()&&(this.position=this._storedPosition.clone(),this.rotation=this._storedRotation.clone(),this.rotationQuaternion&&this._storedRotationQuaternion&&(this.rotationQuaternion=this._storedRotationQuaternion.clone()),this.cameraDirection.copyFromFloats(0,0,0),this.cameraRotation.copyFromFloats(0,0),!0)}_initCache(){super._initCache(),this._cache.lockedTarget=new I.Vector3(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE),this._cache.rotation=new I.Vector3(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE),this._cache.rotationQuaternion=new I.Quaternion(Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE,Number.MAX_VALUE)}_updateCache(e){e||super._updateCache();let t=this._getLockedTargetPosition();t?this._cache.lockedTarget?this._cache.lockedTarget.copyFrom(t):this._cache.lockedTarget=t.clone():this._cache.lockedTarget=null,this._cache.rotation.copyFrom(this.rotation),this.rotationQuaternion&&this._cache.rotationQuaternion.copyFrom(this.rotationQuaternion)}_isSynchronizedViewMatrix(){if(!super._isSynchronizedViewMatrix())return!1;let e=this._getLockedTargetPosition();return(this._cache.lockedTarget?this._cache.lockedTarget.equals(e):!e)&&(this.rotationQuaternion?this.rotationQuaternion.equals(this._cache.rotationQuaternion):this._cache.rotation.equals(this.rotation))}_computeLocalCameraSpeed(){let e=this.getEngine();return this.speed*Math.sqrt(e.getDeltaTime()/(100*e.getFps()))}setTarget(e){this.upVector.normalize(),this._initialFocalDistance=e.subtract(this.position).length(),this.position.z===e.z&&(this.position.z+=E.Epsilon),this._referencePoint.normalize().scaleInPlace(this._initialFocalDistance),this.getScene().useRightHandedSystem?I.Matrix.LookAtRHToRef(this.position,e,I.Vector3.UpReadOnly,A):I.Matrix.LookAtLHToRef(this.position,e,I.Vector3.UpReadOnly,A),A.invert();let t=this.rotationQuaternion||R;I.Quaternion.FromRotationMatrixToRef(A,t),t.toEulerAnglesToRef(this.rotation),this.rotation.z=0}get target(){return this.getTarget()}set target(e){this.setTarget(e)}getTarget(){return this._currentTarget}_decideIfNeedsToMove(){return Math.abs(this.cameraDirection.x)>0||Math.abs(this.cameraDirection.y)>0||Math.abs(this.cameraDirection.z)>0}_updatePosition(){if(this.parent){this.parent.getWorldMatrix().invertToRef(I.TmpVectors.Matrix[0]),I.Vector3.TransformNormalToRef(this.cameraDirection,I.TmpVectors.Matrix[0],I.TmpVectors.Vector3[0]),this._deferredPositionUpdate.addInPlace(I.TmpVectors.Vector3[0]),this._deferOnly?this._deferredUpdated=!0:this.position.copyFrom(this._deferredPositionUpdate);return}this._deferredPositionUpdate.addInPlace(this.cameraDirection),this._deferOnly?this._deferredUpdated=!0:this.position.copyFrom(this._deferredPositionUpdate)}_checkInputs(){let e=this.movement,t=0!==this.cameraDirection.x||0!==this.cameraDirection.y||0!==this.cameraDirection.z;e.panAccumulatedPixels.addInPlace(this.cameraDirection),e.rotationAccumulatedPixels.x+=this.cameraRotation.x,e.rotationAccumulatedPixels.y+=this.cameraRotation.y,e.computeCurrentFrameDeltas(),this.cameraDirection.copyFrom(e.panDeltaCurrentFrame),this.cameraRotation.set(e.rotationDeltaCurrentFrame.x,e.rotationDeltaCurrentFrame.y);let i=this.speed*this._panningEpsilon;!t&&Math.abs(this.cameraDirection.x)<i&&Math.abs(this.cameraDirection.y)<i&&Math.abs(this.cameraDirection.z)<i&&(this.cameraDirection.setAll(0),e.resetPanVelocity());let r=this.invertRotation?-this.inverseRotationSpeed:1,n=this._decideIfNeedsToMove(),s=!!(this.cameraRotation.x||this.cameraRotation.y);this._deferredUpdated=!1,this._deferredRotationUpdate.copyFrom(this.rotation),this._deferredPositionUpdate.copyFrom(this.position),this.rotationQuaternion&&this._deferredRotationQuaternionUpdate.copyFrom(this.rotationQuaternion),n&&this._updatePosition(),s&&(this.rotationQuaternion&&this.rotationQuaternion.toEulerAnglesToRef(this._deferredRotationUpdate),this._deferredRotationUpdate.x+=this.cameraRotation.x*r,this._deferredRotationUpdate.y+=this.cameraRotation.y*r,!this.noRotationConstraint&&(this._deferredRotationUpdate.x>1.570796&&(this._deferredRotationUpdate.x=1.570796),this._deferredRotationUpdate.x<-1.570796&&(this._deferredRotationUpdate.x=-1.570796)),this._deferOnly?this._deferredUpdated=!0:this.rotation.copyFrom(this._deferredRotationUpdate),this.rotationQuaternion&&this._deferredRotationUpdate.lengthSquared()&&(I.Quaternion.RotationYawPitchRollToRef(this._deferredRotationUpdate.y,this._deferredRotationUpdate.x,this._deferredRotationUpdate.z,this._deferredRotationQuaternionUpdate),this._deferOnly?this._deferredUpdated=!0:this.rotationQuaternion.copyFrom(this._deferredRotationQuaternionUpdate))),this.cameraDirection.setAll(0),this.cameraRotation.set(0,0),super._checkInputs()}_updateCameraRotationMatrix(){this.rotationQuaternion?this.rotationQuaternion.toRotationMatrix(this._cameraRotationMatrix):I.Matrix.RotationYawPitchRollToRef(this.rotation.y,this.rotation.x,this.rotation.z,this._cameraRotationMatrix)}_rotateUpVectorWithCameraRotationMatrix(){return I.Vector3.TransformNormalToRef(I.Vector3.UpReadOnly,this._cameraRotationMatrix,this.upVector),this}_getViewMatrix(){return this.lockedTarget&&this.setTarget(this._getLockedTargetPosition()),this._updateCameraRotationMatrix(),this.rotationQuaternion&&this._cachedQuaternionRotationZ!=this.rotationQuaternion.z?(this._rotateUpVectorWithCameraRotationMatrix(),this._cachedQuaternionRotationZ=this.rotationQuaternion.z):this._cachedRotationZ!==this.rotation.z&&(this._rotateUpVectorWithCameraRotationMatrix(),this._cachedRotationZ=this.rotation.z),I.Vector3.TransformCoordinatesToRef(this._referencePoint,this._cameraRotationMatrix,this._transformedReferencePoint),this.position.addToRef(this._transformedReferencePoint,this._currentTarget),this.updateUpVectorFromRotation&&(this.rotationQuaternion?y.Axis.Y.rotateByQuaternionToRef(this.rotationQuaternion,this.upVector):(I.Quaternion.FromEulerVectorToRef(this.rotation,R),y.Axis.Y.rotateByQuaternionToRef(R,this.upVector))),this._computeViewMatrix(this.position,this._currentTarget,this.upVector),this._viewMatrix}_computeViewMatrix(e,t,i){if(this.getScene().useRightHandedSystem?I.Matrix.LookAtRHToRef(e,t,i,this._viewMatrix):I.Matrix.LookAtLHToRef(e,t,i,this._viewMatrix),this.parent){let e=this.parent.getWorldMatrix();this._viewMatrix.invert(),this._viewMatrix.multiplyToRef(e,this._viewMatrix),this._viewMatrix.invert(),this._markSyncedWithParent()}}createRigCamera(e,t){if(this.cameraRigMode!==T.Camera.RIG_MODE_NONE){let t=new g(e,this.position.clone(),this.getScene());return t.isRigCamera=!0,t.rigParent=this,this.cameraRigMode===T.Camera.RIG_MODE_VR&&(this.rotationQuaternion||(this.rotationQuaternion=new I.Quaternion),t._cameraRigParams={},t.rotationQuaternion=new I.Quaternion),t.mode=this.mode,t.orthoLeft=this.orthoLeft,t.orthoRight=this.orthoRight,t.orthoTop=this.orthoTop,t.orthoBottom=this.orthoBottom,t}return null}_updateRigCameras(){let e=this._rigCameras[0],t=this._rigCameras[1];switch(this.computeWorldMatrix(),this.cameraRigMode){case T.Camera.RIG_MODE_STEREOSCOPIC_ANAGLYPH:case T.Camera.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_PARALLEL:case T.Camera.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_CROSSEYED:case T.Camera.RIG_MODE_STEREOSCOPIC_OVERUNDER:case T.Camera.RIG_MODE_STEREOSCOPIC_INTERLACED:{let i=this.cameraRigMode===T.Camera.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_CROSSEYED?1:-1,r=this.cameraRigMode===T.Camera.RIG_MODE_STEREOSCOPIC_SIDEBYSIDE_CROSSEYED?-1:1;this._getRigCamPositionAndTarget(this._cameraRigParams.stereoHalfAngle*i,e),this._getRigCamPositionAndTarget(this._cameraRigParams.stereoHalfAngle*r,t);break}case T.Camera.RIG_MODE_VR:e.rotationQuaternion&&t.rotationQuaternion&&this.rotationQuaternion?(e.rotationQuaternion.copyFrom(this.rotationQuaternion),t.rotationQuaternion.copyFrom(this.rotationQuaternion)):(e.rotation.copyFrom(this.rotation),t.rotation.copyFrom(this.rotation)),e.position.copyFrom(this.position),t.position.copyFrom(this.position)}super._updateRigCameras()}_getRigCamPositionAndTarget(e,t){this.getTarget().subtractToRef(this.position,g._TargetFocalPoint),g._TargetFocalPoint.normalize().scaleInPlace(this._initialFocalDistance);let i=g._TargetFocalPoint.addInPlace(this.position);I.Matrix.TranslationToRef(-i.x,-i.y,-i.z,g._TargetTransformMatrix),g._TargetTransformMatrix.multiplyToRef(I.Matrix.RotationAxis(t.upVector,e),g._RigCamTransformMatrix),I.Matrix.TranslationToRef(i.x,i.y,i.z,g._TargetTransformMatrix),g._RigCamTransformMatrix.multiplyToRef(g._TargetTransformMatrix,g._RigCamTransformMatrix),I.Vector3.TransformCoordinatesToRef(this.position,g._RigCamTransformMatrix,t.position),t.setTarget(i)}getClassName(){return"TargetCamera"}},f="function"==typeof Symbol&&Symbol.metadata?Object.create(s[Symbol.metadata]??null):void 0,t=[(0,p.serialize)()],i=[(0,p.serializeAsVector3)()],r=[(0,p.serialize)()],n=[(0,p.serializeAsMeshReference)("lockedTargetId")],(0,m.__esDecorate)(null,null,t,{kind:"field",name:"updateUpVectorFromRotation",static:!1,private:!1,access:{has:e=>"updateUpVectorFromRotation"in e,get:e=>e.updateUpVectorFromRotation,set:(e,t)=>{e.updateUpVectorFromRotation=t}},metadata:f},a,o),(0,m.__esDecorate)(null,null,i,{kind:"field",name:"rotation",static:!1,private:!1,access:{has:e=>"rotation"in e,get:e=>e.rotation,set:(e,t)=>{e.rotation=t}},metadata:f},l,h),(0,m.__esDecorate)(null,null,r,{kind:"field",name:"speed",static:!1,private:!1,access:{has:e=>"speed"in e,get:e=>e.speed,set:(e,t)=>{e.speed=t}},metadata:f},c,u),(0,m.__esDecorate)(null,null,n,{kind:"field",name:"lockedTarget",static:!1,private:!1,access:{has:e=>"lockedTarget"in e,get:e=>e.lockedTarget,set:(e,t)=>{e.lockedTarget=t}},metadata:f},d,_),f&&Object.defineProperty(g,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:f}),g._RigCamTransformMatrix=new I.Matrix,g._TargetTransformMatrix=new I.Matrix,g._TargetFocalPoint=new I.Vector3,g);e.s(["TargetCamera",0,D],45335);var C=e.i(8697),L=e.i(69552),b={};e.s(["CameraInputTypes",0,b,"CameraInputsManager",0,class{constructor(e){this.attachedToElement=!1,this.attached={},this.camera=e,this.checkInputs=()=>{}}add(e){let t=e.getSimpleName();this.attached[t]?C.Logger.Warn("camera input of type "+t+" already exists on camera"):(this.attached[t]=e,e.camera=this.camera,e.checkInputs&&(this.checkInputs=this._addCheckInputs(e.checkInputs.bind(e))),this.attachedToElement&&e.attachControl(this.noPreventDefault))}remove(e){for(let t in this.attached){let i=this.attached[t];if(i===e){i.detachControl(),i.camera=null,delete this.attached[t],this.rebuildInputCheck();return}}}removeByType(e){for(let t in this.attached){let i=this.attached[t];i.getClassName()===e&&(i.detachControl(),i.camera=null,delete this.attached[t],this.rebuildInputCheck())}}_addCheckInputs(e){let t=this.checkInputs;return()=>{t(),e()}}attachInput(e){this.attachedToElement&&e.attachControl(this.noPreventDefault)}attachElement(e=!1){if(!this.attachedToElement)for(let t in e=!T.Camera.ForceAttachControlToAlwaysPreventDefault&&e,this.attachedToElement=!0,this.noPreventDefault=e,this.attached)this.attached[t].attachControl(e)}detachElement(e=!1){for(let t in this.attached)this.attached[t].detachControl(),e&&(this.attached[t].camera=null);this.attachedToElement=!1}rebuildInputCheck(){for(let e in this.checkInputs=()=>{},this.attached){let t=this.attached[e];t.checkInputs&&(this.checkInputs=this._addCheckInputs(t.checkInputs.bind(t)))}}clear(){this.attachedToElement&&this.detachElement(!0),this.attached={},this.attachedToElement=!1,this.checkInputs=()=>{}}serialize(e){let t={};for(let e in this.attached){let i=this.attached[e],r=L.SerializationHelper.Serialize(i);t[i.getClassName()]=r}e.inputsmgr=t}parse(e){let t=e.inputsmgr;if(t)for(let e in this.clear(),t){let i=b[e];if(i){let r=t[e],n=L.SerializationHelper.Parse(()=>new i,r,null);this.add(n)}}else for(let t in this.attached){let i=b[this.attached[t].getClassName()];if(i){let r=L.SerializationHelper.Parse(()=>new i,e,null);this.remove(this.attached[t]),this.add(r)}}}}],10609)},6363,e=>{"use strict";var t=e.i(18405);let i=!1;e.s(["RegisterAbstractEngineDom",0,function(){i||(i=!0,t.AbstractEngine.prototype.getInputElement=function(){return this._renderingCanvas},t.AbstractEngine.prototype.getRenderingCanvasClientRect=function(){return this._renderingCanvas?this._renderingCanvas.getBoundingClientRect():null},t.AbstractEngine.prototype.getInputElementClientRect=function(){return this._renderingCanvas?this.getInputElement().getBoundingClientRect():null},t.AbstractEngine.prototype.getAspectRatio=function(e,t=!1){let i=e.viewport;return this.getRenderWidth(t)*i.width/(this.getRenderHeight(t)*i.height)},t.AbstractEngine.prototype.getScreenAspectRatio=function(){return this.getRenderWidth(!0)/this.getRenderHeight(!0)},t.AbstractEngine.prototype._verifyPointerLock=function(){this._onPointerLockChange?.()})}])},27239,e=>{"use strict";var t=e.i(58724),i=e.i(71829),r=e.i(476),n=e.i(90138),s=e.i(81712),a=e.i(8697),o=e.i(27217),l=e.i(18405),h=e.i(64950),c=e.i(76846),u=e.i(89435),d=e.i(6363),_=e.i(38080);class f extends r.ThinEngine{static get NpmPackage(){return l.AbstractEngine.NpmPackage}static get Version(){return l.AbstractEngine.Version}static get Instances(){return i.EngineStore.Instances}static get LastCreatedEngine(){return i.EngineStore.LastCreatedEngine}static get LastCreatedScene(){return i.EngineStore.LastCreatedScene}static DefaultLoadingScreenFactory(e){return l.AbstractEngine.DefaultLoadingScreenFactory(e)}get _supportsHardwareTextureRescaling(){return!!f._RescalePostProcessFactory}_measureFps(){this._performanceMonitor.sampleFrame(),this._fps=this._performanceMonitor.averageFPS,this._deltaTime=this._performanceMonitor.instantaneousFrameTime||0}get performanceMonitor(){return this._performanceMonitor}constructor(e,t,i,r=!1){if((0,d.RegisterAbstractEngineDom)(),(0,_.RegisterAbstractEngineRenderPass)(),super(e,t,i,r),this._performanceMonitor=new n.PerformanceMonitor,this._drawCalls=new c.PerfCounter,!e)return;this._features.supportRenderPasses=!0}_initGLContext(){super._initGLContext(),this._rescalePostProcess=null}_sharedInit(e){super._sharedInit(e),(0,h._CommonInit)(this,e,this._creationOptions)}resizeImageBitmap(e,t,i){return(0,h.ResizeImageBitmap)(this,e,t,i)}async _createImageBitmapFromSource(e,t){return await (0,h.CreateImageBitmapFromSource)(this,e,t)}switchFullscreen(e){this.isFullscreen?this.exitFullscreen():this.enterFullscreen(e)}enterFullscreen(e){!this.isFullscreen&&(this._pointerLockRequested=e,this._renderingCanvas&&(0,h.RequestFullscreen)(this._renderingCanvas))}exitFullscreen(){this.isFullscreen&&(0,h.ExitFullscreen)()}setDitheringState(e){e?this._gl.enable(this._gl.DITHER):this._gl.disable(this._gl.DITHER)}setRasterizerState(e){e?this._gl.disable(this._gl.RASTERIZER_DISCARD):this._gl.enable(this._gl.RASTERIZER_DISCARD)}setDirectViewport(e,t,i,r){let n=this._cachedViewport;return this._cachedViewport=null,this._viewport(e,t,i,r),n}scissorClear(e,t,i,r,n){this.enableScissor(e,t,i,r),this.clear(n,!0,!0,!0),this.disableScissor()}getVertexShaderSource(e){let t=this._gl.getAttachedShaders(e);return t?this._gl.getShaderSource(t[0]):null}getFragmentShaderSource(e){let t=this._gl.getAttachedShaders(e);return t?this._gl.getShaderSource(t[1]):null}set framebufferDimensionsObject(e){this._framebufferDimensionsObject=e,this._framebufferDimensionsObject&&this.onResizeObservable.notifyObservers(this)}_rebuildBuffers(){for(let e of this.scenes)e.resetCachedMaterial(),e._rebuildGeometries();for(let e of this._virtualScenes)e.resetCachedMaterial(),e._rebuildGeometries();super._rebuildBuffers()}getFontOffset(e){return(0,h.GetFontOffset)(e)}enterPointerlock(){this._renderingCanvas&&(0,h.RequestPointerlock)(this._renderingCanvas)}exitPointerlock(){(0,h.ExitPointerlock)()}beginFrame(){this._measureFps(),super.beginFrame()}_deletePipelineContext(e){e&&e.program&&e.transformFeedback&&(this.deleteTransformFeedback(e.transformFeedback),e.transformFeedback=null),super._deletePipelineContext(e)}createShaderProgram(e,t,i,r,n,s=null){n=n||this._gl,this.onBeforeShaderCompilationObservable.notifyObservers(this);let a=super.createShaderProgram(e,t,i,r,n,s);return this.onAfterShaderCompilationObservable.notifyObservers(this),a}_createShaderProgram(e,t,i,r,n=null){let s=r.createProgram();if(e.program=s,!s)throw Error("Unable to create program");if(r.attachShader(s,t),r.attachShader(s,i),this.webGLVersion>1&&n){let t=this.createTransformFeedback();this.bindTransformFeedback(t),this.setTranformFeedbackVaryings(s,n),e.transformFeedback=t}return r.linkProgram(s),this.webGLVersion>1&&n&&this.bindTransformFeedback(null),e.context=r,e.vertexShader=t,e.fragmentShader=i,e.isParallelCompiled||this._finalizePipelineContext(e),s}_releaseTexture(e){super._releaseTexture(e)}_releaseRenderTargetWrapper(e){for(let t of(super._releaseRenderTargetWrapper(e),this.scenes)){for(let i of t.postProcesses)i._outputTexture===e&&(i._outputTexture=null);for(let i of t.cameras)for(let t of i._postProcesses)t&&t._outputTexture===e&&(t._outputTexture=null)}}_rescaleTexture(e,t,i,r,n){this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MAG_FILTER,this._gl.LINEAR),this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MIN_FILTER,this._gl.LINEAR),this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_WRAP_S,this._gl.CLAMP_TO_EDGE),this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_WRAP_T,this._gl.CLAMP_TO_EDGE);let s=this.createRenderTargetTexture({width:t.width,height:t.height},{generateMipMaps:!1,type:0,samplingMode:2,generateDepthBuffer:!1,generateStencilBuffer:!1});if(!this._rescalePostProcess&&f._RescalePostProcessFactory&&(this._rescalePostProcess=f._RescalePostProcessFactory(this)),this._rescalePostProcess){this._rescalePostProcess.externalTextureSamplerBinding=!0;let a=()=>{this._rescalePostProcess.onApply=function(t){t._bindTexture("textureSampler",e)};let a=i;a||(a=this.scenes[this.scenes.length-1]),a.postProcessManager.directRender([this._rescalePostProcess],s,!0),this._bindTextureDirectly(this._gl.TEXTURE_2D,t,!0),this._gl.copyTexImage2D(this._gl.TEXTURE_2D,0,r,0,0,t.width,t.height,0),this.unBindFramebuffer(s),s.dispose(),n&&n()},o=this._rescalePostProcess.getEffect();o?o.executeWhenCompiled(a):this._rescalePostProcess.onEffectCreatedObservable.addOnce(e=>{e.executeWhenCompiled(a)})}}wrapWebGLTexture(e,i=!1,r=3,n=0,s=0){let a=new o.WebGLHardwareTexture(e,this._gl),l=new t.InternalTexture(this,15,!0);return l._hardwareTexture=a,l.baseWidth=n,l.baseHeight=s,l.width=n,l.height=s,l.isReady=!0,l.useMipMaps=i,this.updateTextureSamplingMode(r,l),l}updateWrappedWebGLTexture(e,t){if(15!==e.source)throw Error("updateWrappedWebGLTexture: target InternalTexture was not produced by wrapWebGLTexture.");for(let t of this._renderTargetWrapperCache)if(t.textures?.includes(e)){if(t.isMulti)throw Error("updateWrappedWebGLTexture: wrapped texture is part of a multi render-target; not supported. Dispose and re-wrap.");if(t._depthStencilTexture)throw Error("updateWrappedWebGLTexture: wrapped texture's render-target wrapper has a depth/stencil texture; not supported. Dispose and re-wrap.")}for(let i in e._hardwareTexture=new o.WebGLHardwareTexture(t,this._gl),e.isReady=!0,e._cachedCoordinatesMode=null,e._cachedWrapU=null,e._cachedWrapV=null,e._cachedWrapR=null,e._cachedAnisotropicFilteringLevel=null,this._boundTexturesCache)this._boundTexturesCache[i]===e&&(this._boundTexturesCache[i]=null);this.updateTextureSamplingMode(e.samplingMode,e);let i=this._gl;for(let r of this._renderTargetWrapperCache){if(r.texture!==e)continue;let n=r.samples,s=n>1;r._framebuffer&&i.deleteFramebuffer(r._framebuffer),!s&&r._depthStencilBuffer&&(i.deleteRenderbuffer(r._depthStencilBuffer),r._depthStencilBuffer=null);let a=this._currentFramebuffer,o=i.createFramebuffer();this._bindUnboundFramebuffer(o),i.framebufferTexture2D(i.FRAMEBUFFER,i.COLOR_ATTACHMENT0,i.TEXTURE_2D,t,0),s||(r._depthStencilBuffer=this._setupFramebufferDepthAttachments(r._generateStencilBuffer,r._generateDepthBuffer,r.width,r.height)),this._bindUnboundFramebuffer(a),r._framebuffer=o,s&&(r._samples=1,this.updateRenderTargetTextureSampleCount(r,n))}}_uploadImageToTexture(e,t,i=0,r=0){let n=this._gl,s=this._getWebGLTextureType(e.type),a=this._getInternalFormat(e.format),o=this._getRGBABufferInternalSizedFormat(e.type,a),l=e.isCube?n.TEXTURE_CUBE_MAP:n.TEXTURE_2D;this._bindTextureDirectly(l,e,!0),this._unpackFlipY(e.invertY);let h=n.TEXTURE_2D;e.isCube&&(h=n.TEXTURE_CUBE_MAP_POSITIVE_X+i),n.texImage2D(h,r,o,a,s,t),this._bindTextureDirectly(l,null,!0)}updateTextureComparisonFunction(e,t){if(1===this.webGLVersion)return void a.Logger.Error("WebGL 1 does not support texture comparison.");let i=this._gl;e.isCube?(this._bindTextureDirectly(this._gl.TEXTURE_CUBE_MAP,e,!0),0===t?(i.texParameteri(i.TEXTURE_CUBE_MAP,i.TEXTURE_COMPARE_FUNC,515),i.texParameteri(i.TEXTURE_CUBE_MAP,i.TEXTURE_COMPARE_MODE,i.NONE)):(i.texParameteri(i.TEXTURE_CUBE_MAP,i.TEXTURE_COMPARE_FUNC,t),i.texParameteri(i.TEXTURE_CUBE_MAP,i.TEXTURE_COMPARE_MODE,i.COMPARE_REF_TO_TEXTURE)),this._bindTextureDirectly(this._gl.TEXTURE_CUBE_MAP,null)):(this._bindTextureDirectly(this._gl.TEXTURE_2D,e,!0),0===t?(i.texParameteri(i.TEXTURE_2D,i.TEXTURE_COMPARE_FUNC,515),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_COMPARE_MODE,i.NONE)):(i.texParameteri(i.TEXTURE_2D,i.TEXTURE_COMPARE_FUNC,t),i.texParameteri(i.TEXTURE_2D,i.TEXTURE_COMPARE_MODE,i.COMPARE_REF_TO_TEXTURE)),this._bindTextureDirectly(this._gl.TEXTURE_2D,null)),e._comparisonFunction=t}createInstancesBuffer(e){let t=this._gl.createBuffer();if(!t)throw Error("Unable to create instance buffer");let i=new s.WebGLDataBuffer(t);return i.capacity=e,this.bindArrayBuffer(i),this._gl.bufferData(this._gl.ARRAY_BUFFER,e,this._gl.DYNAMIC_DRAW),i.references=1,i}deleteInstancesBuffer(e){this._gl.deleteBuffer(e)}async _clientWaitAsync(e,t=0,i=10){let r=this._gl;return await new Promise((n,s)=>{(0,u._RetryWithInterval)(()=>{let i=r.clientWaitSync(e,t,0);if(i==r.WAIT_FAILED)throw Error("clientWaitSync failed");return i!=r.TIMEOUT_EXPIRED},n,s,i)})}_readPixelsAsync(e,t,i,r,n,s,a){if(this._webGLVersion<2)throw Error("_readPixelsAsync only work on WebGL2+");let o=this._gl,l=o.createBuffer();o.bindBuffer(o.PIXEL_PACK_BUFFER,l),o.bufferData(o.PIXEL_PACK_BUFFER,a.byteLength,o.STREAM_READ),o.readPixels(e,t,i,r,n,s,0),o.bindBuffer(o.PIXEL_PACK_BUFFER,null);let h=o.fenceSync(o.SYNC_GPU_COMMANDS_COMPLETE,0);return h?(o.flush(),this._clientWaitAsync(h,0,10).then(()=>(o.deleteSync(h),o.bindBuffer(o.PIXEL_PACK_BUFFER,l),o.getBufferSubData(o.PIXEL_PACK_BUFFER,0,a),o.bindBuffer(o.PIXEL_PACK_BUFFER,null),o.deleteBuffer(l),a))):null}dispose(){this.hideLoadingUI?.(),this._rescalePostProcess&&this._rescalePostProcess.dispose(),(0,h._CommonDispose)(this,this._renderingCanvas),super.dispose()}}f.ALPHA_DISABLE=0,f.ALPHA_ADD=1,f.ALPHA_COMBINE=2,f.ALPHA_SUBTRACT=3,f.ALPHA_MULTIPLY=4,f.ALPHA_MAXIMIZED=5,f.ALPHA_ONEONE=6,f.ALPHA_PREMULTIPLIED=7,f.ALPHA_PREMULTIPLIED_PORTERDUFF=8,f.ALPHA_INTERPOLATE=9,f.ALPHA_SCREENMODE=10,f.DELAYLOADSTATE_NONE=0,f.DELAYLOADSTATE_LOADED=1,f.DELAYLOADSTATE_LOADING=2,f.DELAYLOADSTATE_NOTLOADED=4,f.NEVER=512,f.ALWAYS=519,f.LESS=513,f.EQUAL=514,f.LEQUAL=515,f.GREATER=516,f.GEQUAL=518,f.NOTEQUAL=517,f.KEEP=7680,f.REPLACE=7681,f.INCR=7682,f.DECR=7683,f.INVERT=5386,f.INCR_WRAP=34055,f.DECR_WRAP=34056,f.TEXTURE_CLAMP_ADDRESSMODE=0,f.TEXTURE_WRAP_ADDRESSMODE=1,f.TEXTURE_MIRROR_ADDRESSMODE=2,f.TEXTUREFORMAT_ALPHA=0,f.TEXTUREFORMAT_LUMINANCE=1,f.TEXTUREFORMAT_LUMINANCE_ALPHA=2,f.TEXTUREFORMAT_RGB=4,f.TEXTUREFORMAT_RGBA=5,f.TEXTUREFORMAT_RED=6,f.TEXTUREFORMAT_R=6,f.TEXTUREFORMAT_R16_UNORM=33322,f.TEXTUREFORMAT_RG16_UNORM=33324,f.TEXTUREFORMAT_RGB16_UNORM=32852,f.TEXTUREFORMAT_RGBA16_UNORM=32859,f.TEXTUREFORMAT_R16_SNORM=36760,f.TEXTUREFORMAT_RG16_SNORM=36761,f.TEXTUREFORMAT_RGB16_SNORM=36762,f.TEXTUREFORMAT_RGBA16_SNORM=36763,f.TEXTUREFORMAT_RG=7,f.TEXTUREFORMAT_RED_INTEGER=8,f.TEXTUREFORMAT_R_INTEGER=8,f.TEXTUREFORMAT_RG_INTEGER=9,f.TEXTUREFORMAT_RGB_INTEGER=10,f.TEXTUREFORMAT_RGBA_INTEGER=11,f.TEXTURETYPE_UNSIGNED_BYTE=0,f.TEXTURETYPE_UNSIGNED_INT=0,f.TEXTURETYPE_FLOAT=1,f.TEXTURETYPE_HALF_FLOAT=2,f.TEXTURETYPE_BYTE=3,f.TEXTURETYPE_SHORT=4,f.TEXTURETYPE_UNSIGNED_SHORT=5,f.TEXTURETYPE_INT=6,f.TEXTURETYPE_UNSIGNED_INTEGER=7,f.TEXTURETYPE_UNSIGNED_SHORT_4_4_4_4=8,f.TEXTURETYPE_UNSIGNED_SHORT_5_5_5_1=9,f.TEXTURETYPE_UNSIGNED_SHORT_5_6_5=10,f.TEXTURETYPE_UNSIGNED_INT_2_10_10_10_REV=11,f.TEXTURETYPE_UNSIGNED_INT_24_8=12,f.TEXTURETYPE_UNSIGNED_INT_10F_11F_11F_REV=13,f.TEXTURETYPE_UNSIGNED_INT_5_9_9_9_REV=14,f.TEXTURETYPE_FLOAT_32_UNSIGNED_INT_24_8_REV=15,f.TEXTURE_NEAREST_SAMPLINGMODE=1,f.TEXTURE_BILINEAR_SAMPLINGMODE=2,f.TEXTURE_TRILINEAR_SAMPLINGMODE=3,f.TEXTURE_NEAREST_NEAREST_MIPLINEAR=8,f.TEXTURE_LINEAR_LINEAR_MIPNEAREST=11,f.TEXTURE_LINEAR_LINEAR_MIPLINEAR=3,f.TEXTURE_NEAREST_NEAREST_MIPNEAREST=4,f.TEXTURE_NEAREST_LINEAR_MIPNEAREST=5,f.TEXTURE_NEAREST_LINEAR_MIPLINEAR=6,f.TEXTURE_NEAREST_LINEAR=7,f.TEXTURE_NEAREST_NEAREST=1,f.TEXTURE_LINEAR_NEAREST_MIPNEAREST=9,f.TEXTURE_LINEAR_NEAREST_MIPLINEAR=10,f.TEXTURE_LINEAR_LINEAR=2,f.TEXTURE_LINEAR_NEAREST=12,f.TEXTURE_EXPLICIT_MODE=0,f.TEXTURE_SPHERICAL_MODE=1,f.TEXTURE_PLANAR_MODE=2,f.TEXTURE_CUBIC_MODE=3,f.TEXTURE_PROJECTION_MODE=4,f.TEXTURE_SKYBOX_MODE=5,f.TEXTURE_INVCUBIC_MODE=6,f.TEXTURE_EQUIRECTANGULAR_MODE=7,f.TEXTURE_FIXED_EQUIRECTANGULAR_MODE=8,f.TEXTURE_FIXED_EQUIRECTANGULAR_MIRRORED_MODE=9,f.SCALEMODE_FLOOR=1,f.SCALEMODE_NEAREST=2,f.SCALEMODE_CEILING=3,e.s(["Engine",0,f])},69194,e=>{"use strict";var t=e.i(68282);class i{constructor(e){this.value=this._toInt(e)}_toInt(e){return 0|e}add(e){return new i(this.value+e.value)}subtract(e){return new i(this.value-e.value)}multiply(e){return new i(Math.imul(this.value,e.value))}divide(e){return new i(this.value/e.value)}getClassName(){return i.ClassName}equals(e){return this.value===e.value}static FromValue(e){return new i(e)}toString(){return this.value.toString()}}i.ClassName="FlowGraphInteger";let r=!1;e.s(["FlowGraphInteger",0,i,"RegisterFlowGraphInteger",0,function(){r||(r=!0,(0,t.RegisterClass)("FlowGraphInteger",i))}])},63369,e=>{"use strict";var t,i;(i=t||(t={})).Animation="Animation",i.AnimationGroup="AnimationGroup",i.Mesh="Mesh",i.Material="Material",i.Camera="Camera",i.Light="Light",e.s(["GetFlowGraphAssetWithType",0,function(e,t,i,r){switch(t){case"Animation":return r?e.animations.find(e=>e.uniqueId===i)??null:e.animations[i]??null;case"AnimationGroup":return r?e.animationGroups.find(e=>e.uniqueId===i)??null:e.animationGroups[i]??null;case"Mesh":return r?e.meshes.find(e=>e.uniqueId===i)??null:e.meshes[i]??null;case"Material":return r?e.materials.find(e=>e.uniqueId===i)??null:e.materials[i]??null;case"Camera":return r?e.cameras.find(e=>e.uniqueId===i)??null:e.cameras[i]??null;case"Light":return r?e.lights.find(e=>e.uniqueId===i)??null:e.lights[i]??null;default:return null}}])},68166,e=>{"use strict";var t=e.i(23422);class i extends t.FlowGraphExecutionBlockWithOutSignal{constructor(e,t){if(super(e),this._eventsSignalOutputs={},this.done=this._registerSignalOutput("done"),t)for(const e of t)this._eventsSignalOutputs[e]=this._registerSignalOutput(e+"Event")}_executeOnTick(e){}_startPendingTasks(e){e._getExecutionVariable(this,"_initialized",!1)&&(this._cancelPendingTasks(e),this._resetAfterCanceled(e)),this._preparePendingTasks(e),e._addPendingBlock(this),this.out._activateSignal(e),e._setExecutionVariable(this,"_initialized",!0)}_resetAfterCanceled(e){e._deleteExecutionVariable(this,"_initialized"),e._removePendingBlock(this)}}e.s(["FlowGraphAsyncExecutionBlock",0,i])},60699,e=>{"use strict";var t=e.i(70081),i=e.i(45213),r=e.i(97991),n=e.i(24667);class s extends i.FlowGraphConnection{constructor(e,t,i,n,s=n.defaultValue,a=!1){super(e,t,i),this.richType=n,this._defaultValue=s,this._optional=a,this._isDisabled=!1,this._lastValue=null,this.dataTransformer=null,this.onValueChangedObservable=new r.Observable}get optional(){return this._optional}get isDisabled(){return this._isDisabled}set isDisabled(e){this._isDisabled!==e&&(this._isDisabled=e,this._isDisabled&&this.disconnectFromAll())}_isSingularConnection(){return 0===this.connectionType}setValue(e,t){t._getConnectionValue(this)!==e&&(t._setConnectionValue(this,e),this.onValueChangedObservable.notifyObservers(e))}resetToDefaultValue(e){e._setConnectionValue(this,this._defaultValue)}_reresolveDefaultValueForScene(e){let t,i=this._defaultValue;if(!i||"object"!=typeof i)return;if("function"==typeof i.getClassName&&"function"==typeof i.getScene){if(i.getScene()===e)return;t={id:i.id,name:i.name,className:i.getClassName(),uniqueId:i.uniqueId}}else{if("string"!=typeof i.className||!i.id&&!i.name||void 0!==i.value)return;t=i}let r=(0,n.GetSceneNodeFromSerializedReference)(t,e);r&&(this._defaultValue=r)}connectTo(e){this._isDisabled||super.connectTo(e)}_getValueOrDefault(e){let t=e._getConnectionValue(this)??this._defaultValue;return this.dataTransformer?this.dataTransformer(t):t}getValue(e){if(1===this.connectionType){e._notifyExecuteNode(this._ownerBlock),this._ownerBlock._updateOutputs(e);let t=this._getValueOrDefault(e);return this._lastValue=t,this.richType.typeTransformer?this.richType.typeTransformer(t):t}let t=this.isConnected()?this._connectedPoint[0].getValue(e):this._getValueOrDefault(e);return this._lastValue=t,this.richType.typeTransformer?this.richType.typeTransformer(t):t}_getLastValue(){return this._lastValue}getClassName(){return"FlowGraphDataConnection"}serialize(e={}){super.serialize(e),e.richType={},this.richType.serialize(e.richType),e.optional=this._optional,(0,n.defaultValueSerializationFunction)("defaultValue",this._defaultValue,e)}}e.s(["FlowGraphBlock",0,class{constructor(e){this.config=e,this.uniqueId=(0,t.RandomGUID)(),this.name=this.config?.name??this.getClassName(),this.dataInputs=[],this.dataOutputs=[]}_updateOutputs(e){}registerDataInput(e,t,i){let r=new s(e,0,this,t,i);return this.dataInputs.push(r),r}registerDataOutput(e,t,i){let r=new s(e,1,this,t,i);return this.dataOutputs.push(r),r}getDataInput(e){return this.dataInputs.find(t=>t.name===e)}getDataOutput(e){return this.dataOutputs.find(t=>t.name===e)}serialize(e={},t=n.defaultValueSerializationFunction){if(e.uniqueId=this.uniqueId,e.config={},this.config){let i=this.config;for(let r of Object.keys(i))t(r,i[r],e.config)}for(let t of(e.dataInputs=[],e.dataOutputs=[],e.className=this.getClassName(),this.dataInputs)){let i={};t.serialize(i),e.dataInputs.push(i)}for(let t of this.dataOutputs){let i={};t.serialize(i),e.dataOutputs.push(i)}}deserialize(e){}_log(e,t,i){e.logger?.addLogItem({action:t,payload:i,className:this.getClassName(),uniqueId:this.uniqueId})}getClassName(){return"FlowGraphBlock"}}],60699)},45213,e=>{"use strict";var t,i,r=e.i(70081);(t=i||(i={}))[t.Input=0]="Input",t[t.Output=1]="Output",e.s(["FlowGraphConnection",0,class{constructor(e,t,i){this._ownerBlock=i,this._connectedPoint=[],this.uniqueId=(0,r.RandomGUID)(),this.connectedPointIds=[],this.name=e,this._connectionType=t}get connectionType(){return this._connectionType}_isSingularConnection(){return!0}isConnected(){return this._connectedPoint.length>0}connectTo(e){if(this._connectionType===e._connectionType)throw Error(`Cannot connect two points of type ${this.connectionType}`);if(this._isSingularConnection()&&this._connectedPoint.length>0||e._isSingularConnection()&&e._connectedPoint.length>0)throw Error("Max number of connections for point reached");this._connectedPoint.push(e),e._connectedPoint.push(this)}disconnectFrom(e,t=!0){let i=this._connectedPoint.indexOf(e),r=e._connectedPoint.indexOf(this);-1!==i&&-1!==r&&(t&&this._connectedPoint.splice(i,1),e._connectedPoint.splice(r,1))}disconnectFromAll(){for(let e of this._connectedPoint)this.disconnectFrom(e,!1);this._connectedPoint.length=0}dispose(){for(let e of this._connectedPoint)this.disconnectFrom(e)}serialize(e={}){for(let t of(e.uniqueId=this.uniqueId,e.name=this.name,e._connectionType=this._connectionType,e.connectedPointIds=[],e.className=this.getClassName(),this._connectedPoint))e.connectedPointIds.push(t.uniqueId)}getClassName(){return"FGConnection"}deserialize(e){this.uniqueId=e.uniqueId,this.name=e.name,this._connectionType=e._connectionType,this.connectedPointIds=e.connectedPointIds}}])},49795,e=>{"use strict";let t="activeDelayIndices";e.s(["IsDelayActive",0,function(e,i){return e._getGlobalContextVariable(t,null)?.has(i)??!1},"MarkDelayActive",0,function(e,i){let r;(!(r=e._getGlobalContextVariable(t,null))&&(r=new Set,e._setGlobalContextVariable(t,r)),r).add(i)},"MarkDelayInactive",0,function(e,i){e._getGlobalContextVariable(t,null)?.delete(i)}])},87083,e=>{"use strict";var t=e.i(68166);class i extends t.FlowGraphAsyncExecutionBlock{constructor(e){super(e),this.initPriority=0,this.type="NoTrigger",this._unregisterSignalInput("in")}deserialize(e){let t={...e};t.signalInputs=(e.signalInputs??[]).filter(e=>"in"!==e.name),super.deserialize(t)}_execute(e){e._notifyExecuteNode(this),this.done._activateSignal(e),this.out._activateSignal(e)}_startPendingTasks(e){e._getExecutionVariable(this,"_initialized",!1)&&(this._cancelPendingTasks(e),this._resetAfterCanceled(e)),this._preparePendingTasks(e),e._addPendingBlock(this),e._setExecutionVariable(this,"_initialized",!0)}}e.s(["FlowGraphEventBlock",0,i])},64675,e=>{"use strict";var t=e.i(60699),i=e.i(45213);class r extends i.FlowGraphConnection{constructor(){super(...arguments),this.priority=0,this._lastActivationTime=-1}_isSingularConnection(){return!1}connectTo(e){super.connectTo(e),this._connectedPoint.sort((e,t)=>t.priority-e.priority)}_activateSignal(e){if(this._lastActivationTime=performance.now(),e.logger?.addLogItem({action:"ActivateSignal",className:this._ownerBlock.getClassName(),uniqueId:this._ownerBlock.uniqueId,payload:{connectionType:this.connectionType,name:this.name}}),0===this.connectionType){if(e._shouldBreak(this._ownerBlock,this))return;e._increaseExecutionId(),e._notifyExecuteNode(this._ownerBlock);let t=performance.now();this._ownerBlock._execute(e,this),this._ownerBlock._lastExecutionTime=performance.now()-t}else for(let t of this._connectedPoint)t._activateSignal(e)}}class n extends t.FlowGraphBlock{constructor(e){super(e),this.priority=0,this._lastExecutionTime=-1,this.signalInputs=[],this.signalOutputs=[],this.in=this._registerSignalInput("in"),this.error=this._registerSignalOutput("error")}_registerSignalInput(e){let t=new r(e,0,this);return this.signalInputs.push(t),t}_registerSignalOutput(e){let t=new r(e,1,this);return this.signalOutputs.push(t),t}_unregisterSignalInput(e){let t=this.signalInputs.findIndex(t=>t.name===e);-1!==t&&(this.signalInputs[t].dispose(),this.signalInputs.splice(t,1))}_unregisterSignalOutput(e){let t=this.signalOutputs.findIndex(t=>t.name===e);-1!==t&&(this.signalOutputs[t].dispose(),this.signalOutputs.splice(t,1))}_reportError(e,t){this.error.payload="string"==typeof t?Error(t):t,this.error._activateSignal(e)}getSignalInput(e){return this.signalInputs.find(t=>t.name===e)}getSignalOutput(e){return this.signalOutputs.find(t=>t.name===e)}serialize(e={}){for(let t of(super.serialize(e),e.signalInputs=[],e.signalOutputs=[],this.signalInputs)){let i={};t.serialize(i),e.signalInputs.push(i)}for(let t of this.signalOutputs){let i={};t.serialize(i),e.signalOutputs.push(i)}}deserialize(e){for(let t=0;t<e.signalInputs.length;t++){let i=this.getSignalInput(e.signalInputs[t].name);if(i)i.deserialize(e.signalInputs[t]);else throw Error("Could not find signal input with name "+e.signalInputs[t].name+" in block "+e.className)}for(let t=0;t<e.signalOutputs.length;t++){let i=this.getSignalOutput(e.signalOutputs[t].name);if(i)i.deserialize(e.signalOutputs[t]);else throw Error("Could not find signal output with name "+e.signalOutputs[t].name+" in block "+e.className)}}getClassName(){return"FlowGraphExecutionBlock"}}e.s(["FlowGraphExecutionBlock",0,n],64675)},23422,e=>{"use strict";var t=e.i(64675);class i extends t.FlowGraphExecutionBlock{constructor(e){super(e),this.out=this._registerSignalOutput("out")}}e.s(["FlowGraphExecutionBlockWithOutSignal",0,i])},65678,28111,e=>{"use strict";var t,i,r=e.i(56173),n=e.i(24617),s=e.i(69194);class a{constructor(e=[1,0,0,1]){this._m=e}get m(){return this._m}transformVector(e){return this.transformVectorToRef(e,new r.Vector2)}transformVectorToRef(e,t){return t.x=e.x*this._m[0]+e.y*this._m[2],t.y=e.x*this._m[1]+e.y*this._m[3],t}asArray(){return this.toArray()}toArray(e=[]){for(let t=0;t<4;t++)e[t]=this._m[t];return e}fromArray(e){for(let t=0;t<4;t++)this._m[t]=e[t];return this}multiplyToRef(e,t){let i=e._m,r=this._m,n=t._m;return n[0]=r[0]*i[0]+r[1]*i[2],n[1]=r[0]*i[1]+r[1]*i[3],n[2]=r[2]*i[0]+r[3]*i[2],n[3]=r[2]*i[1]+r[3]*i[3],t}multiply(e){return this.multiplyToRef(e,new a)}divideToRef(e,t){let i=this._m,r=e._m,n=t._m;return n[0]=i[0]/r[0],n[1]=i[1]/r[1],n[2]=i[2]/r[2],n[3]=i[3]/r[3],t}divide(e){return this.divideToRef(e,new a)}addToRef(e,t){let i=this._m,r=e.m,n=t.m;return n[0]=i[0]+r[0],n[1]=i[1]+r[1],n[2]=i[2]+r[2],n[3]=i[3]+r[3],t}add(e){return this.addToRef(e,new a)}subtractToRef(e,t){let i=this._m,r=e.m,n=t.m;return n[0]=i[0]-r[0],n[1]=i[1]-r[1],n[2]=i[2]-r[2],n[3]=i[3]-r[3],t}subtract(e){return this.subtractToRef(e,new a)}transpose(){let e=this._m;return new a([e[0],e[2],e[1],e[3]])}determinant(){let e=this._m;return e[0]*e[3]-e[1]*e[2]}inverse(){let e=this.determinant();if(0===e)throw Error("Matrix is not invertible");let t=this._m,i=1/e;return new a([t[3]*i,-t[1]*i,-t[2]*i,t[0]*i])}equals(e,t=0){let i=this._m,r=e.m;return 0===t?i[0]===r[0]&&i[1]===r[1]&&i[2]===r[2]&&i[3]===r[3]:Math.abs(i[0]-r[0])<t&&Math.abs(i[1]-r[1])<t&&Math.abs(i[2]-r[2])<t&&Math.abs(i[3]-r[3])<t}getClassName(){return"FlowGraphMatrix2D"}toString(){return`FlowGraphMatrix2D(${this._m.join(", ")})`}}class o{constructor(e=[1,0,0,0,1,0,0,0,1]){this._m=e}get m(){return this._m}transformVector(e){return this.transformVectorToRef(e,new r.Vector3)}transformVectorToRef(e,t){let i=this._m;return t.x=e.x*i[0]+e.y*i[3]+e.z*i[6],t.y=e.x*i[1]+e.y*i[4]+e.z*i[7],t.z=e.x*i[2]+e.y*i[5]+e.z*i[8],t}multiplyToRef(e,t){let i=e._m,r=this._m,n=t.m;return n[0]=r[0]*i[0]+r[1]*i[3]+r[2]*i[6],n[1]=r[0]*i[1]+r[1]*i[4]+r[2]*i[7],n[2]=r[0]*i[2]+r[1]*i[5]+r[2]*i[8],n[3]=r[3]*i[0]+r[4]*i[3]+r[5]*i[6],n[4]=r[3]*i[1]+r[4]*i[4]+r[5]*i[7],n[5]=r[3]*i[2]+r[4]*i[5]+r[5]*i[8],n[6]=r[6]*i[0]+r[7]*i[3]+r[8]*i[6],n[7]=r[6]*i[1]+r[7]*i[4]+r[8]*i[7],n[8]=r[6]*i[2]+r[7]*i[5]+r[8]*i[8],t}multiply(e){return this.multiplyToRef(e,new o)}divideToRef(e,t){let i=this._m,r=e.m,n=t.m;return n[0]=i[0]/r[0],n[1]=i[1]/r[1],n[2]=i[2]/r[2],n[3]=i[3]/r[3],n[4]=i[4]/r[4],n[5]=i[5]/r[5],n[6]=i[6]/r[6],n[7]=i[7]/r[7],n[8]=i[8]/r[8],t}divide(e){return this.divideToRef(e,new o)}addToRef(e,t){let i=this._m,r=e.m,n=t.m;return n[0]=i[0]+r[0],n[1]=i[1]+r[1],n[2]=i[2]+r[2],n[3]=i[3]+r[3],n[4]=i[4]+r[4],n[5]=i[5]+r[5],n[6]=i[6]+r[6],n[7]=i[7]+r[7],n[8]=i[8]+r[8],t}add(e){return this.addToRef(e,new o)}subtractToRef(e,t){let i=this._m,r=e.m,n=t.m;return n[0]=i[0]-r[0],n[1]=i[1]-r[1],n[2]=i[2]-r[2],n[3]=i[3]-r[3],n[4]=i[4]-r[4],n[5]=i[5]-r[5],n[6]=i[6]-r[6],n[7]=i[7]-r[7],n[8]=i[8]-r[8],t}subtract(e){return this.subtractToRef(e,new o)}toArray(e=[]){for(let t=0;t<9;t++)e[t]=this._m[t];return e}asArray(){return this.toArray()}fromArray(e){for(let t=0;t<9;t++)this._m[t]=e[t];return this}transpose(){let e=this._m;return new o([e[0],e[3],e[6],e[1],e[4],e[7],e[2],e[5],e[8]])}determinant(){let e=this._m;return e[0]*(e[4]*e[8]-e[5]*e[7])-e[1]*(e[3]*e[8]-e[5]*e[6])+e[2]*(e[3]*e[7]-e[4]*e[6])}inverse(){let e=this.determinant();if(0===e)throw Error("Matrix is not invertible");let t=this._m,i=1/e;return new o([(t[4]*t[8]-t[5]*t[7])*i,(t[2]*t[7]-t[1]*t[8])*i,(t[1]*t[5]-t[2]*t[4])*i,(t[5]*t[6]-t[3]*t[8])*i,(t[0]*t[8]-t[2]*t[6])*i,(t[2]*t[3]-t[0]*t[5])*i,(t[3]*t[7]-t[4]*t[6])*i,(t[1]*t[6]-t[0]*t[7])*i,(t[0]*t[4]-t[1]*t[3])*i])}equals(e,t=0){let i=this._m,r=e.m;return 0===t?i[0]===r[0]&&i[1]===r[1]&&i[2]===r[2]&&i[3]===r[3]&&i[4]===r[4]&&i[5]===r[5]&&i[6]===r[6]&&i[7]===r[7]&&i[8]===r[8]:Math.abs(i[0]-r[0])<t&&Math.abs(i[1]-r[1])<t&&Math.abs(i[2]-r[2])<t&&Math.abs(i[3]-r[3])<t&&Math.abs(i[4]-r[4])<t&&Math.abs(i[5]-r[5])<t&&Math.abs(i[6]-r[6])<t&&Math.abs(i[7]-r[7])<t&&Math.abs(i[8]-r[8])<t}getClassName(){return"FlowGraphMatrix3D"}toString(){return`FlowGraphMatrix3D(${this._m.join(", ")})`}}e.s(["FlowGraphMatrix2D",0,a,"FlowGraphMatrix3D",0,o],28111),(t=i||(i={})).Any="any",t.String="string",t.Number="number",t.Boolean="boolean",t.Object="object",t.Integer="FlowGraphInteger",t.Vector2="Vector2",t.Vector3="Vector3",t.Vector4="Vector4",t.Quaternion="Quaternion",t.Matrix="Matrix",t.Matrix2D="Matrix2D",t.Matrix3D="Matrix3D",t.Color3="Color3",t.Color4="Color4";class l{constructor(e,t,i=-1){this.typeName=e,this.defaultValue=t,this.animationType=i}serialize(e){e.typeName=this.typeName,e.defaultValue=this.defaultValue}}let h=new l("any",void 0),c=new l("string",""),u=new l("number",0,0),d=new l("boolean",!1),_=new l("Vector2",r.Vector2.Zero(),5),f=new l("Vector3",r.Vector3.Zero(),1),g=new l("Vector4",r.Vector4.Zero()),m=new l("Matrix",r.Matrix.Identity(),3),p=new l("Matrix2D",new a),T=new l("Matrix3D",new o),I=new l("Color3",n.Color3.Black(),4),E=new l("Color4",new n.Color4(0,0,0,0),7),y=new l("Quaternion",r.Quaternion.Identity(),2),M=new l("FlowGraphInteger",new s.FlowGraphInteger(0),0),S=!1;e.s(["RegisterFlowGraphRichTypes",0,function(){S||(S=!0,y.typeTransformer=e=>{if(e.getClassName){if("Vector4"===e.getClassName())return r.Quaternion.FromArray(e.asArray());else if("Vector3"===e.getClassName())return r.Quaternion.FromEulerVector(e);else if("Matrix"===e.getClassName())return r.Quaternion.FromRotationMatrix(e)}return e})},"RichTypeAny",0,h,"RichTypeBoolean",0,d,"RichTypeFlowGraphInteger",0,M,"RichTypeMatrix",0,m,"RichTypeMatrix2D",0,p,"RichTypeMatrix3D",0,T,"RichTypeNumber",0,u,"RichTypeQuaternion",0,y,"RichTypeString",0,c,"RichTypeVector2",0,_,"RichTypeVector3",0,f,"RichTypeVector4",0,g,"getAnimationTypeByFlowGraphType",0,function(e){switch(e){case"number":default:return 0;case"Vector2":return 5;case"Vector3":return 1;case"Matrix":return 3;case"Color3":return 4;case"Color4":return 7;case"Quaternion":return 2}},"getRichTypeByAnimationType",0,function(e){switch(e){case 0:return u;case 5:return _;case 1:return f;case 3:return m;case 4:return I;case 7:return E;case 2:return y;default:return h}},"getRichTypeByFlowGraphType",0,function(e){switch(e){case"string":return c;case"number":return u;case"boolean":return d;case"Vector2":return _;case"Vector3":return f;case"Vector4":return g;case"Matrix":return m;case"Color3":return I;case"Color4":return E;case"Quaternion":return y;case"FlowGraphInteger":return M;case"Matrix2D":return p;case"Matrix3D":return T;default:return h}},"getRichTypeFromValue",0,function(e){switch(typeof e){case"string":return c;case"number":return u;case"boolean":return d;case"object":if(e.getClassName)switch(e.getClassName()){case"Vector2":return _;case"Vector3":return f;case"Vector4":return g;case"Matrix":return m;case"Color3":return I;case"Color4":return E;case"Quaternion":return y;case"FlowGraphInteger":return M;case"Matrix2D":return p;case"Matrix3D":return T}return h;default:return h}}],65678)},24667,e=>{"use strict";var t=e.i(8697),i=e.i(24617),r=e.i(56173),n=e.i(69194),s=e.i(65678),a=e.i(28111);function o(e){return"Vector2"===e||"Vector3"===e||"Vector4"===e||"Quaternion"===e||"Color3"===e||"Color4"===e}function l(e,t){if(!e||!e.id&&!e.name)return;let i=t.getNodes().filter(t=>e.id?t.id===e.id:t.name===e.name);if(0===i.length)return;let r=e.type??e.className,n=r?i.filter(e=>e.getClassName()===r):[],s=n.length>0?n:i;return(e.uniqueId?s.find(t=>t.uniqueId===e.uniqueId):void 0)??s[0]}e.s(["GetSceneNodeFromSerializedReference",0,l,"defaultValueParseFunction",0,function e(t,h,c,u){let d,_=h[t],f=_?.type??_?.className,g=l(_,u);if(g)d=g;else if(o(f))d=function(e,t,n=!1){if("Vector2"===e)return r.Vector2.FromArray(t);if("Vector3"===e)return n&&(t[2]*=-1),r.Vector3.FromArray(t);if("Vector4"===e)return r.Vector4.FromArray(t);if("Quaternion"===e)return n&&(t[2]*=-1,t[3]*=-1),r.Quaternion.FromArray(t);if("Color3"===e)return new i.Color3(t[0],t[1],t[2]);else if("Color4"===e)return new i.Color4(t[0],t[1],t[2],t[3]);else throw Error(`Unknown vector class name ${e}`)}(f,_.value);else if("AnimationGroup"===f){let e=u.animationGroups.filter(e=>e.name===_.name);d=1===e.length?e[0]:e.find(e=>e.uniqueId===_.uniqueId)}else d="Matrix"===f?r.Matrix.FromArray(_.value):"Matrix2D"===f?new a.FlowGraphMatrix2D(_.value):"Matrix3D"===f?new a.FlowGraphMatrix3D(_.value):"FlowGraphInteger"===f?n.FlowGraphInteger.FromValue(_.value):"number"===f||"string"===f||"boolean"===f?_.value[0]:_&&void 0!==_.value?_.value:Array.isArray(_)&&_.length>0&&"object"==typeof _[0]&&null!==_[0]&&"eventData"in _[0]?_.reduce((t,i)=>(i.eventData&&(t[i.id]={type:(0,s.getRichTypeByFlowGraphType)(i.type)},void 0!==i.value&&(t[i.id].value=e("value",i,c,u))),t),{}):_;return d},"defaultValueSerializationFunction",0,function(e,i,r){var n;let s=i?.getClassName?.()??"";if(o(s)||"Matrix"===(n=s)||"Matrix2D"===n||"Matrix3D"===n)r[e]={value:i.asArray(),className:s};else if("FlowGraphInteger"===s)r[e]={value:i.value,className:s};else if(s&&(i.id||i.name))r[e]={id:i.id,name:i.name,className:s,uniqueId:i.uniqueId};else if("object"!=typeof i||null===i)r[e]=i;else{if("pathConverter"===e||Object.values(i).some(e=>"function"==typeof e))return;try{r[e]=JSON.parse(JSON.stringify(i))}catch{t.Logger.Warn(`FlowGraph serialization: value for key "${e}" is not JSON-serializable and was skipped.`)}}},"needsPathConverter",0,function(e){return"FlowGraphJsonPointerParserBlock"===e}])},80129,e=>{"use strict";let t=(0,e.i(45735).IsNavigatorAvailable)()&&/(Mac|iPhone|iPod|iPad)/i.test(navigator.platform);function i(e){return"number"==typeof e?e:e.value}e.s(["_AreSameIntegerClass",0,function(e,t){return"FlowGraphInteger"===e&&"FlowGraphInteger"===t},"_AreSameMatrixClass",0,function(e,t){return e===t&&("Matrix"===e||"Matrix2D"===e||"Matrix3D"===e)},"_AreSameVectorOrQuaternionClass",0,function(e,t){return e===t&&("Vector2"===e||"Vector3"===e||"Vector4"===e||"Quaternion"===e)},"_GetClassNameOf",0,function(e){if(e.getClassName)return e.getClassName()},"_IsDescendantOf",0,function e(t,i){return!!(t.parent&&(t.parent===i||e(t.parent,i)))},"_IsMacPlatform",0,t,"getNumericValue",0,i,"isNumeric",0,function(e,t){let r="number"==typeof e||"number"==typeof e?.value;return r&&!t?!isNaN(i(e)):r}])},73037,83362,e=>{"use strict";let t,i,r,n,s,a,o,l;var h,c=e.i(73403),u=e.i(5207),d=e.i(56173),_=e.i(24617),f=e.i(22247),g=e.i(43384),m=e.i(68282);let p=(r=f.Light,n=[],s=[],a=[],o=[],h=class extends r{constructor(e,t,i,r){super(e,i,r),this.groundColor=(0,c.__runInitializers)(this,n,new _.Color3(0,0,0)),this.direction=((0,c.__runInitializers)(this,s),(0,c.__runInitializers)(this,a,void 0)),(0,c.__runInitializers)(this,o),this.direction=t||d.Vector3.Up()}_buildUniformLayout(){this._uniformBuffer.addUniform("vLightData",4),this._uniformBuffer.addUniform("vLightDiffuse",4),this._uniformBuffer.addUniform("vLightSpecular",4),this._uniformBuffer.addUniform("vLightGround",3),this._uniformBuffer.addUniform("shadowsInfo",3),this._uniformBuffer.addUniform("depthValues",2),this._uniformBuffer.create()}getClassName(){return"HemisphericLight"}setDirectionToTarget(e){return this.direction=d.Vector3.Normalize(e.subtract(d.Vector3.Zero())),this.direction}getShadowGenerator(){return null}transferToEffect(e,t){let i=d.Vector3.Normalize(this.direction);return this._uniformBuffer.updateFloat4("vLightData",i.x,i.y,i.z,0,t),this._uniformBuffer.updateColor3("vLightGround",this.groundColor.scale(this.intensity),t),this}transferToNodeMaterialEffect(e,t){let i=d.Vector3.Normalize(this.direction);return e.setFloat3(t,i.x,i.y,i.z),this}computeWorldMatrix(){return this._worldMatrix||(this._worldMatrix=d.Matrix.Identity()),this._worldMatrix}getTypeID(){return f.Light.LIGHTTYPEID_HEMISPHERICLIGHT}prepareLightSpecificDefines(e,t){e["HEMILIGHT"+t]=!0}},l="function"==typeof Symbol&&Symbol.metadata?Object.create(r[Symbol.metadata]??null):void 0,t=[(0,u.serializeAsColor3)()],i=[(0,u.serializeAsVector3)()],(0,c.__esDecorate)(null,null,t,{kind:"field",name:"groundColor",static:!1,private:!1,access:{has:e=>"groundColor"in e,get:e=>e.groundColor,set:(e,t)=>{e.groundColor=t}},metadata:l},n,s),(0,c.__esDecorate)(null,null,i,{kind:"field",name:"direction",static:!1,private:!1,access:{has:e=>"direction"in e,get:e=>e.direction,set:(e,t)=>{e.direction=t}},metadata:l},a,o),l&&Object.defineProperty(h,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:l}),h),T=!1;function I(){T||(T=!0,g.Node.AddNodeConstructor("Light_Type_3",(e,t)=>()=>new p(e,d.Vector3.Zero(),t)),(0,m.RegisterClass)("BABYLON.HemisphericLight",p))}e.s(["HemisphericLight",0,p,"RegisterHemisphericLight",0,I],83362),I(),e.s([],73037)},22247,e=>{"use strict";let t,i,r,n,s,a,o,l,h,c,u,d,_,f,g,m,p,T,I,E,y,M,S,x,A,R,D,C,L,b,v,P,w,B,F,O;var V,N,U=e.i(73403),k=e.i(5207),G=e.i(56173),z=e.i(24617),W=e.i(43384),X=e.i(58607),H=e.i(68282),Y=e.i(76972),Q=e.i(69552);let q=(f=W.Node,g=[],m=[],p=[],T=[],I=[],E=[],y=[],M=[],S=[],x=[],A=[],R=[],D=[],C=[],L=[],b=[],v=[],P=[],w=[],B=[],F=[],V=class extends f{get range(){return this._range}set range(e){this._range=e,this._inverseSquaredRange=1/(this.range*this.range)}get intensityMode(){return this._intensityMode}set intensityMode(e){this._intensityMode=e,this._computePhotometricScale()}get radius(){return this._radius}set radius(e){this._radius=e,this._computePhotometricScale()}get renderPriority(){return(0,U.__classPrivateFieldGet)(this,N,"f")}set renderPriority(e){(0,U.__classPrivateFieldSet)(this,N,e,"f")}get shadowEnabled(){return this._shadowEnabled}set shadowEnabled(e){this._shadowEnabled!==e&&(this._shadowEnabled=e,this._markMeshesAsLightDirty())}get includedOnlyMeshes(){return this._includedOnlyMeshes}set includedOnlyMeshes(e){this._includedOnlyMeshes=e,this._hookArrayForIncludedOnly(e)}get excludedMeshes(){return this._excludedMeshes}set excludedMeshes(e){this._excludedMeshes=e,this._hookArrayForExcluded(e)}get excludeWithLayerMask(){return this._excludeWithLayerMask}set excludeWithLayerMask(e){this._excludeWithLayerMask=e,this._resyncMeshes()}get includeOnlyWithLayerMask(){return this._includeOnlyWithLayerMask}set includeOnlyWithLayerMask(e){this._includeOnlyWithLayerMask=e,this._resyncMeshes()}get lightmapMode(){return this._lightmapMode}set lightmapMode(e){this._lightmapMode!==e&&(this._lightmapMode=e,this._markMeshesAsLightDirty())}getViewMatrix(e){return null}getProjectionMatrix(e,t){return null}constructor(e,t,i){super(e,t,!1),this.diffuse=((0,U.__runInitializers)(this,g),(0,U.__runInitializers)(this,m,new z.Color3(1,1,1))),this.specular=((0,U.__runInitializers)(this,p),(0,U.__runInitializers)(this,T,new z.Color3(1,1,1))),this.falloffType=((0,U.__runInitializers)(this,I),(0,U.__runInitializers)(this,E,V.FALLOFF_DEFAULT)),this.intensity=((0,U.__runInitializers)(this,y),(0,U.__runInitializers)(this,M,1)),this._range=((0,U.__runInitializers)(this,S),Number.MAX_VALUE),this._inverseSquaredRange=0,this._photometricScale=1,this._intensityMode=V.INTENSITYMODE_AUTOMATIC,this._radius=1e-5,this._renderPriority=(0,U.__runInitializers)(this,x,void 0),N.set(this,((0,U.__runInitializers)(this,A),(0,U.__runInitializers)(this,R,0))),this._shadowEnabled=((0,U.__runInitializers)(this,D),(0,U.__runInitializers)(this,C,!0)),this._includedOnlyMeshes=(0,U.__runInitializers)(this,L),this._excludeWithLayerMask=(0,U.__runInitializers)(this,b,0),this._includeOnlyWithLayerMask=((0,U.__runInitializers)(this,v),(0,U.__runInitializers)(this,P,0)),this._lightmapMode=((0,U.__runInitializers)(this,w),(0,U.__runInitializers)(this,B,0)),this._shadowGenerators=((0,U.__runInitializers)(this,F),null),this._excludedMeshesIds=[],this._includedOnlyMeshesIds=[],this._currentViewDepth=0,this._clusteredContainer=null,this._isLight=!0,i||this.getScene().addLight(this),this._uniformBuffer=new X.UniformBuffer(this.getScene().getEngine(),void 0,void 0,e),this._buildUniformLayout(),this.includedOnlyMeshes=[],this.excludedMeshes=[],i||this._resyncMeshes()}transferTexturesToEffect(e,t){return this}_bindLight(e,t,i,r,n=!0){let s=e.toString(),a=!1;if(this._uniformBuffer.bindToEffect(i,"Light"+s),this._renderId!==t.getRenderId()||this._lastUseSpecular!==r||!this._uniformBuffer.useUbo){this._renderId=t.getRenderId(),this._lastUseSpecular=r;let e=this.getScaledIntensity();this.transferToEffect(i,s),this.diffuse.scaleToRef(e,z.TmpColors.Color3[0]),this._uniformBuffer.updateColor4("vLightDiffuse",z.TmpColors.Color3[0],this.range,s),r&&(this.specular.scaleToRef(e,z.TmpColors.Color3[1]),this._uniformBuffer.updateColor4("vLightSpecular",z.TmpColors.Color3[1],this.radius,s)),a=!0}if(this.transferTexturesToEffect(i,s),t.shadowsEnabled&&this.shadowEnabled&&n){let e=this.getShadowGenerator(t.activeCamera)??this.getShadowGenerator();e&&(e.bindShadowLight(s,i),a=!0)}a?this._uniformBuffer.update():this._uniformBuffer.bindUniformBuffer()}getClassName(){return"Light"}toString(e){let t="Name: "+this.name;if(t+=", type: "+["Point","Directional","Spot","Hemispheric","Clustered"][this.getTypeID()],this.animations)for(let i=0;i<this.animations.length;i++)t+=", animation[0]: "+this.animations[i].toString(e);return t}_syncParentEnabledState(){super._syncParentEnabledState(),this.isDisposed()||this._resyncMeshes()}setEnabled(e){super.setEnabled(e),this._resyncMeshes()}getShadowGenerator(e=null){return null===this._shadowGenerators?null:this._shadowGenerators.get(e)??null}getShadowGenerators(){return this._shadowGenerators}getAbsolutePosition(){return G.Vector3.Zero()}canAffectMesh(e){return!e||(!this.includedOnlyMeshes||!(this.includedOnlyMeshes.length>0)||-1!==this.includedOnlyMeshes.indexOf(e))&&(!this.excludedMeshes||!(this.excludedMeshes.length>0)||-1===this.excludedMeshes.indexOf(e))&&(0===this.includeOnlyWithLayerMask||(this.includeOnlyWithLayerMask&e.layerMask)!=0)&&(0===this.excludeWithLayerMask||!(this.excludeWithLayerMask&e.layerMask))}dispose(e,t=!1){if(this._shadowGenerators){let e=this._shadowGenerators.values();for(let t=e.next();!0!==t.done;t=e.next())t.value.dispose();this._shadowGenerators=null}if(this.getScene().stopAnimation(this),this._parentContainer){let e=this._parentContainer.lights.indexOf(this);e>-1&&this._parentContainer.lights.splice(e,1),this._parentContainer=null}for(let e of this.getScene().meshes)e._removeLightSource(this,!0);this._uniformBuffer.dispose(),this.getScene().removeLight(this),super.dispose(e,t)}getTypeID(){return 0}getScaledIntensity(){return this._photometricScale*this.intensity}clone(e,t=null){let i=V.GetConstructorFromName(this.getTypeID(),e,this.getScene());if(!i)return null;let r=Q.SerializationHelper.Clone(i,this);return e&&(r.name=e),t&&(r.parent=t),r.setEnabled(this.isEnabled()),this.onClonedObservable.notifyObservers(r),r}serialize(){let e=Q.SerializationHelper.Serialize(this);if(e.uniqueId=this.uniqueId,e.type=this.getTypeID(),this.parent&&this.parent._serializeAsParent(e),this.excludedMeshes.length>0)for(let t of(e.excludedMeshesIds=[],this.excludedMeshes))e.excludedMeshesIds.push(t.id);if(this.includedOnlyMeshes.length>0)for(let t of(e.includedOnlyMeshesIds=[],this.includedOnlyMeshes))e.includedOnlyMeshesIds.push(t.id);return Q.SerializationHelper.AppendSerializedAnimations(this,e),e.ranges=this.serializeAnimationRanges(),e.isEnabled=this.isEnabled(),e}static GetConstructorFromName(e,t,i){let r=W.Node.Construct("Light_Type_"+e,t,i);return r||null}static Parse(e,t,i=""){let r=V.GetConstructorFromName(e.type,e.name,t);if(!r)return null;let n=Q.SerializationHelper.Parse(r,e,t,i);if(e.excludedMeshesIds&&(n._excludedMeshesIds=e.excludedMeshesIds),e.includedOnlyMeshesIds&&(n._includedOnlyMeshesIds=e.includedOnlyMeshesIds),void 0!==e.parentId&&(n._waitingParentId=e.parentId),void 0!==e.parentInstanceIndex&&(n._waitingParentInstanceIndex=e.parentInstanceIndex),void 0!==e.falloffType&&(n.falloffType=e.falloffType),void 0!==e.lightmapMode&&(n.lightmapMode=e.lightmapMode),e.animations){for(let t=0;t<e.animations.length;t++){let i=e.animations[t],r=(0,H.GetClass)("BABYLON.Animation");r&&n.animations.push(r.Parse(i))}W.Node.ParseAnimationRanges(n,e,t)}return e.autoAnimate&&t.beginAnimation(n,e.autoAnimateFrom,e.autoAnimateTo,e.autoAnimateLoop,e.autoAnimateSpeed||1),void 0!==e.isEnabled&&n.setEnabled(e.isEnabled),n._onParsed(e,t,i),n}_onParsed(e,t,i=""){}_hookArrayForExcluded(e){let t=e.push;e.push=(...i)=>{let r=t.apply(e,i);if(this._clusteredContainer)return r;for(let e of i)e._resyncLightSource(this);return r};let i=e.splice;e.splice=(t,r)=>{let n=i.call(e,t,r??e.length);if(this._clusteredContainer)return n;for(let e of n)e._resyncLightSource(this);return n},this._resyncMeshes()}_hookArrayForIncludedOnly(e){let t=e.push;e.push=(...i)=>{let r=t.apply(e,i);return this._resyncMeshes(),r};let i=e.splice;e.splice=(t,r)=>{let n=i.call(e,t,r??e.length);return this._resyncMeshes(),n},this._resyncMeshes()}_resyncMeshes(){if(!this._clusteredContainer)for(let e of this.getScene().meshes)e._resyncLightSource(this)}_markMeshesAsLightDirty(){for(let e of this.getScene().meshes)-1!==e.lightSources.indexOf(this)&&e._markSubMeshesAsLightDirty()}_computePhotometricScale(){this._photometricScale=this._getPhotometricScale(),this.getScene().resetCachedMaterial()}_getPhotometricScale(){let e=0,t=this.getTypeID(),i=this.intensityMode;switch(i===V.INTENSITYMODE_AUTOMATIC&&(i=t===V.LIGHTTYPEID_DIRECTIONALLIGHT?V.INTENSITYMODE_ILLUMINANCE:V.INTENSITYMODE_LUMINOUSINTENSITY),t){case V.LIGHTTYPEID_POINTLIGHT:case V.LIGHTTYPEID_SPOTLIGHT:switch(i){case V.INTENSITYMODE_LUMINOUSPOWER:e=1/(4*Math.PI);break;case V.INTENSITYMODE_LUMINOUSINTENSITY:e=1;break;case V.INTENSITYMODE_LUMINANCE:e=this.radius*this.radius}break;case V.LIGHTTYPEID_DIRECTIONALLIGHT:switch(i){case V.INTENSITYMODE_ILLUMINANCE:e=1;break;case V.INTENSITYMODE_LUMINANCE:{let t=this.radius;e=2*Math.PI*(1-Math.cos(t=Math.max(t,.001)))}}break;case V.LIGHTTYPEID_HEMISPHERICLIGHT:case V.LIGHTTYPEID_RECT_AREALIGHT:e=1}return e}_reorderLightsInScene(){let e=this.getScene();0!=this._renderPriority&&(e.requireLightSorting=!0),this.getScene().sortLightsByPriority()}areLightTexturesReady(){return!0}_isReady(){return!0}},N=new WeakMap,O="function"==typeof Symbol&&Symbol.metadata?Object.create(f[Symbol.metadata]??null):void 0,t=[(0,k.serializeAsColor3)()],i=[(0,k.serializeAsColor3)()],r=[(0,k.serialize)()],n=[(0,k.serialize)()],s=[(0,k.serialize)()],a=[(0,k.serialize)()],o=[(0,k.serialize)()],l=[(0,k.serialize)()],h=[(0,k.expandToProperty)("_reorderLightsInScene")],c=[(0,k.serialize)("shadowEnabled")],u=[(0,k.serialize)("excludeWithLayerMask")],d=[(0,k.serialize)("includeOnlyWithLayerMask")],_=[(0,k.serialize)("lightmapMode")],(0,U.__esDecorate)(V,null,s,{kind:"getter",name:"range",static:!1,private:!1,access:{has:e=>"range"in e,get:e=>e.range},metadata:O},null,g),(0,U.__esDecorate)(V,null,a,{kind:"getter",name:"intensityMode",static:!1,private:!1,access:{has:e=>"intensityMode"in e,get:e=>e.intensityMode},metadata:O},null,g),(0,U.__esDecorate)(V,null,o,{kind:"getter",name:"radius",static:!1,private:!1,access:{has:e=>"radius"in e,get:e=>e.radius},metadata:O},null,g),(0,U.__esDecorate)(V,null,h,{kind:"accessor",name:"renderPriority",static:!1,private:!1,access:{has:e=>"renderPriority"in e,get:e=>e.renderPriority,set:(e,t)=>{e.renderPriority=t}},metadata:O},R,D),(0,U.__esDecorate)(null,null,t,{kind:"field",name:"diffuse",static:!1,private:!1,access:{has:e=>"diffuse"in e,get:e=>e.diffuse,set:(e,t)=>{e.diffuse=t}},metadata:O},m,p),(0,U.__esDecorate)(null,null,i,{kind:"field",name:"specular",static:!1,private:!1,access:{has:e=>"specular"in e,get:e=>e.specular,set:(e,t)=>{e.specular=t}},metadata:O},T,I),(0,U.__esDecorate)(null,null,r,{kind:"field",name:"falloffType",static:!1,private:!1,access:{has:e=>"falloffType"in e,get:e=>e.falloffType,set:(e,t)=>{e.falloffType=t}},metadata:O},E,y),(0,U.__esDecorate)(null,null,n,{kind:"field",name:"intensity",static:!1,private:!1,access:{has:e=>"intensity"in e,get:e=>e.intensity,set:(e,t)=>{e.intensity=t}},metadata:O},M,S),(0,U.__esDecorate)(null,null,l,{kind:"field",name:"_renderPriority",static:!1,private:!1,access:{has:e=>"_renderPriority"in e,get:e=>e._renderPriority,set:(e,t)=>{e._renderPriority=t}},metadata:O},x,A),(0,U.__esDecorate)(null,null,c,{kind:"field",name:"_shadowEnabled",static:!1,private:!1,access:{has:e=>"_shadowEnabled"in e,get:e=>e._shadowEnabled,set:(e,t)=>{e._shadowEnabled=t}},metadata:O},C,L),(0,U.__esDecorate)(null,null,u,{kind:"field",name:"_excludeWithLayerMask",static:!1,private:!1,access:{has:e=>"_excludeWithLayerMask"in e,get:e=>e._excludeWithLayerMask,set:(e,t)=>{e._excludeWithLayerMask=t}},metadata:O},b,v),(0,U.__esDecorate)(null,null,d,{kind:"field",name:"_includeOnlyWithLayerMask",static:!1,private:!1,access:{has:e=>"_includeOnlyWithLayerMask"in e,get:e=>e._includeOnlyWithLayerMask,set:(e,t)=>{e._includeOnlyWithLayerMask=t}},metadata:O},P,w),(0,U.__esDecorate)(null,null,_,{kind:"field",name:"_lightmapMode",static:!1,private:!1,access:{has:e=>"_lightmapMode"in e,get:e=>e._lightmapMode,set:(e,t)=>{e._lightmapMode=t}},metadata:O},B,F),O&&Object.defineProperty(V,Symbol.metadata,{enumerable:!0,configurable:!0,writable:!0,value:O}),V.FALLOFF_DEFAULT=Y.LightConstants.FALLOFF_DEFAULT,V.FALLOFF_PHYSICAL=Y.LightConstants.FALLOFF_PHYSICAL,V.FALLOFF_GLTF=Y.LightConstants.FALLOFF_GLTF,V.FALLOFF_STANDARD=Y.LightConstants.FALLOFF_STANDARD,V.LIGHTMAP_DEFAULT=Y.LightConstants.LIGHTMAP_DEFAULT,V.LIGHTMAP_SPECULAR=Y.LightConstants.LIGHTMAP_SPECULAR,V.LIGHTMAP_SHADOWSONLY=Y.LightConstants.LIGHTMAP_SHADOWSONLY,V.INTENSITYMODE_AUTOMATIC=Y.LightConstants.INTENSITYMODE_AUTOMATIC,V.INTENSITYMODE_LUMINOUSPOWER=Y.LightConstants.INTENSITYMODE_LUMINOUSPOWER,V.INTENSITYMODE_LUMINOUSINTENSITY=Y.LightConstants.INTENSITYMODE_LUMINOUSINTENSITY,V.INTENSITYMODE_ILLUMINANCE=Y.LightConstants.INTENSITYMODE_ILLUMINANCE,V.INTENSITYMODE_LUMINANCE=Y.LightConstants.INTENSITYMODE_LUMINANCE,V.LIGHTTYPEID_POINTLIGHT=Y.LightConstants.LIGHTTYPEID_POINTLIGHT,V.LIGHTTYPEID_DIRECTIONALLIGHT=Y.LightConstants.LIGHTTYPEID_DIRECTIONALLIGHT,V.LIGHTTYPEID_SPOTLIGHT=Y.LightConstants.LIGHTTYPEID_SPOTLIGHT,V.LIGHTTYPEID_HEMISPHERICLIGHT=Y.LightConstants.LIGHTTYPEID_HEMISPHERICLIGHT,V.LIGHTTYPEID_RECT_AREALIGHT=Y.LightConstants.LIGHTTYPEID_RECT_AREALIGHT,V);e.s(["Light",0,q])},57605,e=>{"use strict";var t,i,r=e.i(17814),n=e.i(97991),s=e.i(17188),a=e.i(71829),o=e.i(8697),l=e.i(75751),h=e.i(20887),c=e.i(31619),u=e.i(70081),d=e.i(18405),_=e.i(5369);async function f(e,t){let i=t.method||"GET";return await new Promise((r,n)=>{let s=new _.WebRequest;s.addEventListener("readystatechange",()=>{if(4==s.readyState)if(200==s.status){let e={};if(t.responseHeaders)for(let i of t.responseHeaders)e[i]=s.getResponseHeader(i)||"";r({response:s.response,headerValues:e})}else n(`Unable to fetch data from ${e}. Error code: ${s.status}`)}),s.open(i,e),s.send()})}(t=i||(i={}))[t.Clean=0]="Clean",t[t.Stop=1]="Stop",t[t.Sync=2]="Sync",t[t.NoSync=3]="NoSync";let g=new n.Observable,m={},p=!1;function T(){return m[".babylon"]}function I(e,t){let i=m[e];return i||(o.Logger.Warn("Unable to find a plugin to load "+e+" files. Trying to use .babylon default plugin. To load from a specific filetype (eg. gltf) see: https://doc.babylonjs.com/features/featuresDeepDive/importers/loadingFileTypes"),t?T():void 0)}function E(e,t,i){let r,n=(r="Unable to load from "+(e.rawData?"binary data":e.url),t?r+=`: ${t}`:i&&(r+=`: ${i}`),r);return new c.RuntimeError(n,c.ErrorCodes.SceneLoaderError,i)}function y(e){return e instanceof Error?e.message:String(e)}function M(e,t){return t instanceof c.RuntimeError&&t.errorCode===c.ErrorCodes.SceneLoaderError?t:E(e,y(t),t)}function S(e,t){if(!(e.importMesh||e.load||e.loadAssetContainer))return e;let i=e=>{let i,r=e((e,t)=>{i={message:e,exception:t}});if(!r)throw E(t,i?.message,i?.exception);return r};return{name:e.name,extensions:e.extensions,importMeshAsync:async(t,r,n,s)=>{let a=[],o=[],l=[];return i(i=>e.importMesh(t,r,n,s,a,o,l,i)),{meshes:a,particleSystems:o,skeletons:l,animationGroups:[],transformNodes:[],geometries:[],lights:[],spriteManagers:[]}},loadAsync:async(t,r,n)=>{i(i=>e.load(t,r,n,i))},loadAssetContainerAsync:async(t,r,n)=>i(i=>e.loadAssetContainer(t,r,n,i))}}function x(e,t,i){let r=y(i);e&&t?e(t,r,i):o.Logger.Error(r)}function A(e){if(e)return t=>{try{e(t)}catch(e){o.Logger.Warn("Error in onProgress callback: "+y(e))}}}async function R(e,t,i,r,n,s){var a,o;let l,c,u,_="data:"===(a=e.url).substring(0,5)?a.substring(5):null;if(e.rawData&&!r)throw Error("When using ArrayBufferView to load data the file extension must be provided.");let p=_||r?"":(-1!==(c=(o=e.url).indexOf("?"))&&(o=o.substring(0,c)),u=o.lastIndexOf("."),o.substring(u,o.length).toLowerCase()),y=r?I(r,!0):_?function(e){for(let t in m){let i=m[t].plugin;if(i.canDirectLoad&&i.canDirectLoad(e))return m[t]}return T()}(e.url):I(p,!1);if(!y&&p){if(e.url&&!e.url.startsWith("blob:")){let t=await f(e.url,{method:"HEAD",responseHeaders:["Content-Type"]}),i=t.headerValues?t.headerValues["Content-Type"]:"";i&&(y=function(e){for(let t in m){let i=m[t];if(i.mimeType===e)return i}}(i))}y||(y=T())}if(!y)throw Error(`No plugin or fallback for ${r??e.url}`);if(s?.[y.plugin.name]?.enabled===!1)throw Error(`The '${y.plugin.name}' plugin is disabled via the loader options passed to the loading operation.`);if(e.rawData&&!y.isBinary)throw Error("Loading from ArrayBufferView can not be used with plugins that don't support binary loading.");if(y.plugin.createPlugin){let t=y.plugin;try{let e=t.createPlugin(s??{});l=e instanceof Promise?await e:e}catch(t){throw E(e,"Error instantiating plugin.",t)}}else l=y.plugin;if(!l)throw Error(`The loader plugin corresponding to the '${r}' file type has not been found. If using es6, please import the plugin you wish to use before.`);if(g.notifyObservers(l),_&&(l.canDirectLoad&&l.canDirectLoad(e.url)||!(0,h.IsBase64DataUrl)(e.url))){if(l.directLoad){let i;try{i=await l.directLoad(t,_)}catch(t){throw E(e,"Error in directLoad of _loadData: "+t,t)}return{plugin:l,data:i}}return{plugin:l,data:_}}let M=y.isBinary;return await new Promise((r,s)=>{let a=null,o=!1,h=l.onDisposeObservable?.add(()=>{o=!0,a&&(a.abort(),a=null),u(E(e,"Loading was aborted because the plugin was disposed."))}),c=()=>{h&&l.onDisposeObservable?.remove(h)},u=e=>{c(),s(e)},_=(i,n)=>{var s;t.isDisposed?u(E(e,"Scene has been disposed")):(s={plugin:l,data:i,responseURL:n},c(),r(s))},f=()=>{if(o)return;let r=(t,i)=>{u(E(e,t?.statusText,i))};if(!l.loadFile&&e.rawData)return void u(E(e,"Plugin does not support loading ArrayBufferView."));try{a=l.loadFile?l.loadFile(t,e.rawData||e.file||e.url,e.rootUrl,_,i,M,r,n):t._loadFile(e.file||e.url,_,i,!0,M,r)}catch(t){u(E(e,void 0,t))}},g=t.getEngine(),m=!e.file&&!e.rawData&&g.enableOfflineSupport;if(m){let i=!1;for(let r of t.disableOfflineSupportExceptionRules)if(r.test(e.url)){i=!0;break}m=!i}if(m&&d.AbstractEngine.OfflineProviderFactory)try{t.offlineProvider=d.AbstractEngine.OfflineProviderFactory(e.url,f,g.disableManifestCheck)}catch(t){u(E(e,void 0,t))}else f()})}function D(e,t){let i,n,s=null,a=null;if(t)if(t.name)i=`file:${t.name}`,n=t.name,s=t;else if(ArrayBuffer.isView(t))i="",n=(0,u.RandomGUID)(),a=t;else if(t.startsWith("data:"))i=t,n="";else if(e){if("/"===t.substring(0,1))return r.Tools.Error("Wrong sceneFilename parameter"),null;i=e+t,n=t}else i=t,n=r.Tools.GetFilename(t),e=r.Tools.GetFolderPath(t);else i=e,n=r.Tools.GetFilename(e),e=r.Tools.GetFolderPath(e);return{url:i,rootUrl:e,name:n,file:s,rawData:a}}function C(e){if("string"==typeof e.extensions)m[e.extensions.toLowerCase()]={plugin:e,isBinary:!1};else{let t=e.extensions;for(let i of Object.keys(t))m[i.toLowerCase()]={plugin:e,isBinary:t[i].isBinary,mimeType:t[i].mimeType}}}async function L(e,t,i){let{meshNames:r,rootUrl:n="",onProgress:s,pluginExtension:a,name:o,pluginOptions:l}=i??{};return await b(r,n,e,t,s,a,o,l)}async function b(e,t,i="",r=a.EngineStore.LastCreatedScene,n,s,o="",l={}){if(!r)throw Error("No scene available to import mesh to");let h=D(t,i);if(!h)throw Error("Cannot load file: a valid scene filename or root url was not provided.");let c={};r.addPendingData(c);let u=A(n);try{let t,{plugin:i,data:n,responseURL:a}=await R(h,r,u,s??null,o,l);i.rewriteRootURL&&(h.rootUrl=i.rewriteRootURL(h.rootUrl,a));try{t=await S(i,h).importMeshAsync(e,r,n,h.rootUrl,u,h.name)}catch(e){throw M(h,e)}return r.loadingPluginName=i.name,r.importedMeshesFiles.push(h.url),t}finally{r.removePendingData(c)}}async function v(e,t="",i=a.EngineStore.LastCreatedEngine,r,n,o="",l={}){if(!i)throw Error("No engine available");let h=new s.Scene(i);try{await P(e,t,h,r,n,o,l)}catch(e){throw h.dispose(),e}return h}async function P(e,t="",i=a.EngineStore.LastCreatedScene,r,n,s="",o={}){if(!i)throw Error("No scene available to append to");let h=D(e,t);if(!h)throw Error("Cannot load file: a valid scene filename or root url was not provided.");let c={};i.addPendingData(c),l.SceneLoaderFlags.ShowLoadingScreen&&!p&&(p=!0,i.getEngine().displayLoadingUI(),i.executeWhenReady(()=>{i.getEngine().hideLoadingUI(),p=!1}));let u=A(r);try{let{plugin:e,data:t}=await R(h,i,u,n??null,s,o);try{await S(e,h).loadAsync(i,t,h.rootUrl,u,h.name)}catch(e){throw M(h,e)}return i.loadingPluginName=e.name,i}finally{i.removePendingData(c)}}async function w(e,t="",i=a.EngineStore.LastCreatedScene,r,n,s="",o={}){if(!i)throw Error("No scene available to load asset container to");let l=D(e,t);if(!l)throw Error("Cannot load file: a valid scene filename or root url was not provided.");let h={};i.addPendingData(h);let c=A(r);try{let e,{plugin:t,data:r}=await R(l,i,c,n??null,s,o),a=S(t,l);if(!a.loadAssetContainerAsync)throw E(l,"LoadAssetContainer is not supported by this plugin. Plugin did not provide a loadAssetContainer or loadAssetContainerAsync method.");try{e=await a.loadAssetContainerAsync(i,r,l.rootUrl,c,l.name)}catch(e){throw M(l,e)}return e.populateRootNodes(),i.loadingPluginName=t.name,e}finally{i.removePendingData(h)}}async function B(e,t,i){let{rootUrl:r="",onProgress:n,pluginExtension:s,name:a,pluginOptions:o}=i??{};return await w(r,e,t,n,s,a,o)}async function F(e,t="",i=a.EngineStore.LastCreatedScene,r=!0,n=0,s=null,o,l,h="",c={}){if(!i)throw Error("No scene available to load animations to");if(r){for(let e of i.animatables)e.reset();for(let e of(i.stopAllAnimations(),i.animationGroups.slice()))e.dispose();for(let e of i.getNodes())e.animations&&(e.animations=[])}else switch(n){case 0:for(let e of i.animationGroups.slice())e.dispose();break;case 1:for(let e of i.animationGroups)e.stop();break;case 2:for(let e of i.animationGroups)e.reset(),e.restart();break;case 3:break;default:throw Error("Unknown animation group loading mode value '"+n+"'")}let u=i.animatables.length,d=await w(e,t,i,o,l,h,c);d.mergeAnimationsTo(i,i.animatables.slice(u),s),d.dispose(),i.onAnimationFileImportedObservable.notifyObservers(i)}class O{static get ForceFullSceneLoadingForIncremental(){return l.SceneLoaderFlags.ForceFullSceneLoadingForIncremental}static set ForceFullSceneLoadingForIncremental(e){l.SceneLoaderFlags.ForceFullSceneLoadingForIncremental=e}static get ShowLoadingScreen(){return l.SceneLoaderFlags.ShowLoadingScreen}static set ShowLoadingScreen(e){l.SceneLoaderFlags.ShowLoadingScreen=e}static get loggingLevel(){return l.SceneLoaderFlags.loggingLevel}static set loggingLevel(e){l.SceneLoaderFlags.loggingLevel=e}static get CleanBoneMatrixWeights(){return l.SceneLoaderFlags.CleanBoneMatrixWeights}static set CleanBoneMatrixWeights(e){l.SceneLoaderFlags.CleanBoneMatrixWeights=e}static GetDefaultPlugin(){return T()}static GetPluginForExtension(e){return I(e,!0)?.plugin}static IsPluginForExtensionAvailable(e){return!!m[e]}static RegisterPlugin(e){C(e)}static ImportMesh(e,t,i,r,n,s,o,l,h,c){let u=r??a.EngineStore.LastCreatedScene;(async()=>{try{let a=await b(e,t,i,r,s,l,h,c);n?.(a.meshes,a.particleSystems,a.skeletons,a.animationGroups,a.transformNodes,a.geometries,a.lights,a.spriteManagers)}catch(e){x(o,u,e)}})()}static async ImportMeshAsync(e,t,i,r,n,s,a){return await b(e,t,i,r,n,s,a)}static Load(e,t,i,r,n,s,o,l){(async()=>{try{let s=await v(e,t,i,n,o,l);r?.(s)}catch(e){x(s,a.EngineStore.LastCreatedScene,e)}})()}static async LoadAsync(e,t,i,r,n,s){return await v(e,t,i,r,n,s)}static Append(e,t,i,r,n,s,o,l){let h=i??a.EngineStore.LastCreatedScene;(async()=>{try{let s=await P(e,t,i,n,o,l);r?.(s)}catch(e){x(s,h,e)}})()}static async AppendAsync(e,t,i,r,n,s){return await P(e,t,i,r,n,s)}static LoadAssetContainer(e,t,i,r,n,s,o,l){let h=i??a.EngineStore.LastCreatedScene;(async()=>{try{let s=await w(e,t,i,n,o,l);r?.(s)}catch(e){x(s,h,e)}})()}static async LoadAssetContainerAsync(e,t,i,r,n,s){return await w(e,t,i,r,n,s)}static ImportAnimations(e,t,i,r,n,s,o,l,h,c,u){let d=i??a.EngineStore.LastCreatedScene;(async()=>{try{await F(e,t,i,r,n,s,l,c,u),o?.(d)}catch(e){x(h,d,e)}})()}static async ImportAnimationsAsync(e,t,i,r,n,s,o,l,h,c,u){let d=i??a.EngineStore.LastCreatedScene;return await F(e,t,d,r,n,s,l,c,u),d}}O.NO_LOGGING=0,O.MINIMAL_LOGGING=1,O.SUMMARY_LOGGING=2,O.DETAILED_LOGGING=3,O.OnPluginActivatedObservable=g,e.s(["ImportMeshAsync",0,L,"LoadAssetContainerAsync",0,B,"RegisterSceneLoaderPlugin",0,C],57605)},30523,e=>{"use strict";var t=e.i(8697);let i=new Map;function r(e,r){var n;n=e,i.delete(n)&&t.Logger.Warn(`Extension with the name '${e}' already exists`),i.set(e,r)}e.s(["_GetCompatibleTextureLoader",0,function(t,n){("image/ktx"===n||"image/ktx2"===n)&&(t=".ktx"),!i.has(t)&&(t.endsWith(".ies")&&r(".ies",async()=>await e.A(22035).then(e=>new e._IESTextureLoader)),t.endsWith(".dds")&&r(".dds",async()=>await e.A(87682).then(e=>new e._DDSTextureLoader)),t.endsWith(".basis")&&r(".basis",async()=>await e.A(25860).then(e=>new e._BasisTextureLoader)),t.endsWith(".env")&&r(".env",async()=>await e.A(48820).then(e=>new e._ENVTextureLoader)),t.endsWith(".hdr")&&r(".hdr",async()=>await e.A(35218).then(e=>new e._HDRTextureLoader)),(t.endsWith(".ktx")||t.endsWith(".ktx2"))&&(r(".ktx",async()=>await e.A(30928).then(e=>new e._KTXTextureLoader)),r(".ktx2",async()=>await e.A(30928).then(e=>new e._KTXTextureLoader))),t.endsWith(".tga")&&r(".tga",async()=>await e.A(58959).then(e=>new e._TGATextureLoader)),t.endsWith(".exr")&&r(".exr",async()=>await e.A(356).then(e=>new e._ExrTextureLoader)));let s=i.get(t);return s?Promise.resolve(s(n)):null}])},3427,e=>{"use strict";(0,e.i(56173).RegisterMathVector)(),e.s([])},88229,e=>{"use strict";var t=e.i(56173),i=e.i(8697),r=e.i(82648),n=e.i(10332),s=e.i(87663),a=e.i(59136),o=e.i(10977),l=e.i(68282);class h extends r.AbstractMesh{constructor(e,t){for(const i of(super(e,t.getScene()),this._indexInSourceMeshInstanceArray=-1,this._distanceToCamera=0,t.addInstance(this),this._sourceMesh=t,this._unIndexed=t._unIndexed,this.position.copyFrom(t.position),this.rotation.copyFrom(t.rotation),this.scaling.copyFrom(t.scaling),t.rotationQuaternion&&(this.rotationQuaternion=t.rotationQuaternion.clone()),this.animations=t.animations.slice(),t.getAnimationRanges()))null!=i&&this.createAnimationRange(i.name,i.from,i.to);if(this.infiniteDistance=t.infiniteDistance,this.setPivotMatrix(t.getPivotMatrix()),t.skeleton||t.morphTargetManager||!t.hasBoundingInfo)this.refreshBoundingInfo(!0,!0);else{const e=t.getBoundingInfo();this.buildBoundingInfo(e.minimum,e.maximum)}this._syncSubMeshes()}getClassName(){return"InstancedMesh"}get lightSources(){return this._sourceMesh._lightSources}_resyncLightSources(){}_resyncLightSource(){}_removeLightSource(){}get receiveShadows(){return this._sourceMesh.receiveShadows}set receiveShadows(e){this._sourceMesh?.receiveShadows!==e&&i.Logger.Warn("Setting receiveShadows on an instanced mesh has no effect")}get material(){return this._sourceMesh.material}set material(e){this._sourceMesh?.material!==e&&i.Logger.Warn("Setting material on an instanced mesh has no effect")}get visibility(){return this._sourceMesh.visibility}set visibility(e){this._sourceMesh?.visibility!==e&&i.Logger.Warn("Setting visibility on an instanced mesh has no effect")}get skeleton(){return this._sourceMesh.skeleton}set skeleton(e){this._sourceMesh?.skeleton!==e&&i.Logger.Warn("Setting skeleton on an instanced mesh has no effect")}get renderingGroupId(){return this._sourceMesh.renderingGroupId}set renderingGroupId(e){this._sourceMesh&&e!==this._sourceMesh.renderingGroupId&&i.Logger.Warn("Note - setting renderingGroupId of an instanced mesh has no effect on the scene")}getTotalVertices(){return this._sourceMesh?this._sourceMesh.getTotalVertices():0}getTotalIndices(){return this._sourceMesh.getTotalIndices()}get sourceMesh(){return this._sourceMesh}get geometry(){return this._sourceMesh._geometry}createInstance(e){return this._sourceMesh.createInstance(e)}isReady(e=!1){return this._sourceMesh.isReady(e,!0)}getVerticesData(e,t,i){return this._sourceMesh.getVerticesData(e,t,i)}copyVerticesData(e,t){this._sourceMesh.copyVerticesData(e,t)}getVertexBuffer(e,t){return this._sourceMesh.getVertexBuffer(e,t)}setVerticesData(e,t,i,r){return this.sourceMesh&&this.sourceMesh.setVerticesData(e,t,i,r),this.sourceMesh}updateVerticesData(e,t,i,r){return this.sourceMesh&&this.sourceMesh.updateVerticesData(e,t,i,r),this.sourceMesh}setIndices(e,t=null){return this.sourceMesh&&this.sourceMesh.setIndices(e,t),this.sourceMesh}isVerticesDataPresent(e){return this._sourceMesh.isVerticesDataPresent(e)}getIndices(){return this._sourceMesh.getIndices()}get _positions(){return this._sourceMesh._positions}refreshBoundingInfo(e=!1,t=!1){if(this.hasBoundingInfo&&this.getBoundingInfo().isLocked)return this;let i=this._sourceMesh.geometry?this._sourceMesh.geometry.boundingBias:null;return this._refreshBoundingInfo(this._sourceMesh._getData("object"==typeof e?e:{applySkeleton:e,applyMorph:t},null,o.VertexBuffer.PositionKind),i),this}_preActivate(){return this._currentLOD&&this._currentLOD._preActivate(),this}_activate(e,t){if(super._activate(e,t),this._sourceMesh.subMeshes||i.Logger.Warn("Instances should only be created for meshes with geometry."),this._currentLOD){if(this._currentLOD._getWorldMatrixDeterminant()>=0!=this._getWorldMatrixDeterminant()>=0)return this._internalAbstractMeshDataInfo._actAsRegularMesh=!0,!0;if(this._internalAbstractMeshDataInfo._actAsRegularMesh=!1,this._currentLOD._registerInstanceForRenderId(this,e),t){if(!this._currentLOD._internalAbstractMeshDataInfo._isActiveIntermediate)return this._currentLOD._internalAbstractMeshDataInfo._onlyForInstancesIntermediate=!0,!0}else if(!this._currentLOD._internalAbstractMeshDataInfo._isActive)return this._currentLOD._internalAbstractMeshDataInfo._onlyForInstances=!0,!0}return!1}_postActivate(){this._sourceMesh.edgesShareWithInstances&&this._sourceMesh._edgesRenderer&&this._sourceMesh._edgesRenderer.isEnabled&&this._sourceMesh._renderingGroup?(this._sourceMesh._renderingGroup._edgesRenderers.pushNoDuplicate(this._sourceMesh._edgesRenderer),this._sourceMesh._edgesRenderer.customInstances.push(this.getWorldMatrix())):this._edgesRenderer&&this._edgesRenderer.isEnabled&&this._sourceMesh._renderingGroup&&this._sourceMesh._renderingGroup._edgesRenderers.push(this._edgesRenderer)}getWorldMatrix(){if(this._currentLOD&&this._currentLOD!==this._sourceMesh&&this._currentLOD.billboardMode!==a.TransformNode.BILLBOARDMODE_NONE&&this._currentLOD._masterMesh!==this){this._billboardWorldMatrix||(this._billboardWorldMatrix=new t.Matrix);let e=this._currentLOD._masterMesh;return this._currentLOD._masterMesh=this,t.TmpVectors.Vector3[7].copyFrom(this._currentLOD.position),this._currentLOD.position.set(0,0,0),this._billboardWorldMatrix.copyFrom(this._currentLOD.computeWorldMatrix(!0)),this._currentLOD.position.copyFrom(t.TmpVectors.Vector3[7]),this._currentLOD._masterMesh=e,this._billboardWorldMatrix}return super.getWorldMatrix()}get isAnInstance(){return!0}getLOD(e){if(!e)return this;let t=this.sourceMesh.getLODLevels();if(t&&0!==t.length){let t=this.getBoundingInfo();this._currentLOD=this.sourceMesh.getLOD(e,t.boundingSphere)}else this._currentLOD=this.sourceMesh;return this._currentLOD}_preActivateForIntermediateRendering(e){return this.sourceMesh._preActivateForIntermediateRendering(e)}_syncSubMeshes(){if(this.releaseSubMeshes(),this._sourceMesh.subMeshes)for(let e=0;e<this._sourceMesh.subMeshes.length;e++)this._sourceMesh.subMeshes[e].clone(this,this._sourceMesh);return this}_generatePointsArray(){return this._sourceMesh._generatePointsArray()}_updateBoundingInfo(){return this.hasBoundingInfo?this.getBoundingInfo().update(this.worldMatrixFromCache):this.buildBoundingInfo(this.absolutePosition,this.absolutePosition,this.worldMatrixFromCache),this._updateSubMeshesBoundingInfo(this.worldMatrixFromCache),this}clone(e,t=null,i,r){let n=(r||this._sourceMesh).createInstance(e);if(s.DeepCopier.DeepCopy(this,n,["name","subMeshes","uniqueId","parent","lightSources","receiveShadows","material","visibility","skeleton","sourceMesh","isAnInstance","facetNb","isFacetDataEnabled","isBlocked","useBones","hasInstances","collider","edgesRenderer","forward","up","right","absolutePosition","absoluteScaling","absoluteRotationQuaternion","isWorldMatrixFrozen","nonUniformScaling","behaviors","worldMatrixFromCache","hasThinInstances","hasBoundingInfo","geometry"],[]),t&&(n.parent=t),!i)for(let e=0;e<this.getScene().meshes.length;e++){let t=this.getScene().meshes[e];t.parent===this&&t.clone(t.name,n)}return n.computeWorldMatrix(!0),this.onClonedObservable.notifyObservers(n),n}dispose(e,t=!1){this._sourceMesh.removeInstance(this),super.dispose(e,t)}_serializeAsParent(e){super._serializeAsParent(e),e.parentId=this._sourceMesh.uniqueId,e.parentInstanceIndex=this._indexInSourceMeshInstanceArray}instantiateHierarchy(e=null,t,i){let r=this.clone("Clone of "+(this.name||this.id),e||this.parent,!0,t&&t.newSourcedMesh);for(let e of(r&&i&&i(this,r),this.getChildTransformNodes(!0)))e.instantiateHierarchy(r,t,i);return r}}let c=!1;e.s(["InstancedMesh",0,h,"RegisterInstancedMesh",0,function(){c||(c=!0,n.Mesh._instancedMeshFactory=(e,t)=>{let i=new h(e,t);if(t.instancedBuffers)for(let e in i.instancedBuffers={},t.instancedBuffers)i.instancedBuffers[e]=t.instancedBuffers[e];return i},n.Mesh.prototype.registerInstancedBuffer=function(e,t){if(this._userInstancedBuffersStorage?.vertexBuffers[e]?.dispose(),this._userInstancedBuffersStorage?.renderPasses)for(let t in this._userInstancedBuffersStorage.renderPasses){let i=this._userInstancedBuffersStorage.renderPasses[t];i[e]?.dispose(),delete i[e]}if(!this.instancedBuffers)for(let e of(this.instancedBuffers={},this.instances))e.instancedBuffers={};for(let i of(this._userInstancedBuffersStorage||(this._userInstancedBuffersStorage={data:{},vertexBuffers:{},strides:{},sizes:{},vertexArrayObjects:this.getEngine().getCaps().vertexArrayObject?{}:void 0}),this.instancedBuffers[e]=null,this._userInstancedBuffersStorage.strides[e]=t,this._userInstancedBuffersStorage.sizes[e]=32*t,this._userInstancedBuffersStorage.data[e]=new Float32Array(this._userInstancedBuffersStorage.sizes[e]),this._userInstancedBuffersStorage.vertexBuffers[e]=this._instanceDataStorage.useMonoDataStorageRenderPass?new o.VertexBuffer(this.getEngine(),this._userInstancedBuffersStorage.data[e],e,!0,!1,t,!0):null,this.instances))i.instancedBuffers[e]=null;this._invalidateInstanceVertexArrayObject(),this._markSubMeshesAsAttributesDirty()},n.Mesh.prototype._processInstancedBuffers=function(e,t){let i,r=e?e.length:0,n=!this._instanceDataStorage.useMonoDataStorageRenderPass;if(n){let e=this._instanceDataStorage.engine.currentRenderPassId;this._userInstancedBuffersStorage.renderPasses||(this._userInstancedBuffersStorage.renderPasses={}),this._userInstancedBuffersStorage.renderPasses[e]||(this._userInstancedBuffersStorage.renderPasses[e]={}),i=this._userInstancedBuffersStorage.renderPasses[e]}for(let s in this.instancedBuffers){let a=this._userInstancedBuffersStorage.sizes[s],l=this._userInstancedBuffersStorage.strides[s],h=(r+1)*l;for(;a<h;)a*=2;this._userInstancedBuffersStorage.data[s].length!=a&&(this._userInstancedBuffersStorage.data[s]=new Float32Array(a),this._userInstancedBuffersStorage.sizes[s]=a,n?i[s]&&(i[s].dispose(),i[s]=null):this._userInstancedBuffersStorage.vertexBuffers[s]&&(this._userInstancedBuffersStorage.vertexBuffers[s].dispose(),this._userInstancedBuffersStorage.vertexBuffers[s]=null));let c=this._userInstancedBuffersStorage.data[s],u=0;if(t){let e=this.instancedBuffers[s]??0;e.toArray?e.toArray(c,u):e.copyToArray?e.copyToArray(c,u):c[u]=e,u+=l}for(let t=0;t<r;t++){let i=e[t].instancedBuffers[s]??0;i.toArray?i.toArray(c,u):i.copyToArray?i.copyToArray(c,u):c[u]=i,u+=l}n?i[s]?i[s].updateDirectly(c,0):(i[s]=new o.VertexBuffer(this.getEngine(),this._userInstancedBuffersStorage.data[s],s,!0,!1,l,!0),this._invalidateInstanceVertexArrayObject()):this._userInstancedBuffersStorage.vertexBuffers[s]?this._userInstancedBuffersStorage.vertexBuffers[s].updateDirectly(c,0):(this._userInstancedBuffersStorage.vertexBuffers[s]=new o.VertexBuffer(this.getEngine(),this._userInstancedBuffersStorage.data[s],s,!0,!1,l,!0),this._invalidateInstanceVertexArrayObject())}},n.Mesh.prototype._invalidateInstanceVertexArrayObject=function(){if(this._userInstancedBuffersStorage&&void 0!==this._userInstancedBuffersStorage.vertexArrayObjects){for(let e in this._userInstancedBuffersStorage.vertexArrayObjects)this.getEngine().releaseVertexArrayObject(this._userInstancedBuffersStorage.vertexArrayObjects[e]);this._userInstancedBuffersStorage.vertexArrayObjects={}}},n.Mesh.prototype._disposeInstanceSpecificData=function(){for(let e in this._instanceDataStorage.renderPasses)this._instanceDataStorage.renderPasses[e].instancesBuffer?.dispose();for(this._instanceDataStorage.renderPasses={},this._instanceDataStorage.dataStorageRenderPass?.instancesBuffer?.dispose();this.instances.length;)this.instances[0].dispose();for(let e in this.instancedBuffers)this._userInstancedBuffersStorage.vertexBuffers[e]&&this._userInstancedBuffersStorage.vertexBuffers[e].dispose();this._invalidateInstanceVertexArrayObject(),this.instancedBuffers={}},(0,l.RegisterClass)("BABYLON.InstancedMesh",h))}])},71567,e=>{"use strict";(0,e.i(10332).RegisterMesh)(),e.s([])},17397,23989,52998,e=>{"use strict";e.s([],23989);var t=e.i(56173),i=e.i(8697),r=e.i(72716),n=e.i(10332),s=e.i(10977);let a="bakedVertexAnimationSettingsInstanced";function o(e){let t=e.bakedVertexAnimationManager?.texture?.getInternalTexture()?._bufferView;return t instanceof Float32Array||t instanceof Uint16Array}let l=!1;function h(){l||(l=!0,n.Mesh.prototype.thinInstanceAdd=function(e,t=!0){if(!this.getScene().getEngine().getCaps().instancedArrays)return i.Logger.Error("Thin Instances are not supported on this device as Instanced Array extension not supported"),-1;this._thinInstanceUpdateBufferSize("matrix",Array.isArray(e)?e.length:1);let r=this._thinInstanceDataStorage.instancesCount;if(Array.isArray(e))for(let i=0;i<e.length;++i)this.thinInstanceSetMatrixAt(this._thinInstanceDataStorage.instancesCount++,e[i],i===e.length-1&&t);else this.thinInstanceSetMatrixAt(this._thinInstanceDataStorage.instancesCount++,e,t);return r},n.Mesh.prototype.thinInstanceAddSelf=function(e=!0){return this.thinInstanceAdd(t.Matrix.IdentityReadOnly,e)},n.Mesh.prototype.thinInstanceRegisterAttribute=function(e,t){e===s.VertexBuffer.ColorKind&&(e=s.VertexBuffer.ColorInstanceKind),this.removeVerticesData(e),this._thinInstanceInitializeUserStorage(),this._userThinInstanceBuffersStorage.strides[e]=t,this._userThinInstanceBuffersStorage.sizes[e]=t*Math.max(32,this._thinInstanceDataStorage.instancesCount),this._userThinInstanceBuffersStorage.data[e]=new Float32Array(this._userThinInstanceBuffersStorage.sizes[e]),this._userThinInstanceBuffersStorage.vertexBuffers[e]=new s.VertexBuffer(this.getEngine(),this._userThinInstanceBuffersStorage.data[e],e,!0,!1,t,!0),this.setVerticesBuffer(this._userThinInstanceBuffersStorage.vertexBuffers[e])},n.Mesh.prototype.thinInstanceSetMatrixAt=function(e,t,i=!0){if(!this._thinInstanceDataStorage.matrixData||e>=this._thinInstanceDataStorage.instancesCount)return!1;let r=this._thinInstanceDataStorage.matrixData;return t.copyToArray(r,16*e),this._thinInstanceDataStorage.worldMatrices&&(this._thinInstanceDataStorage.worldMatrices[e]=t),i&&(this.thinInstanceBufferUpdated("matrix"),this.doNotSyncBoundingInfo||this.thinInstanceRefreshBoundingInfo(!1)),!0},n.Mesh.prototype.thinInstanceSetAttributeAt=function(e,t,i,r=!0){return e===s.VertexBuffer.ColorKind&&(e=s.VertexBuffer.ColorInstanceKind),!!this._userThinInstanceBuffersStorage&&!!this._userThinInstanceBuffersStorage.data[e]&&!(t>=this._thinInstanceDataStorage.instancesCount)&&(this._thinInstanceUpdateBufferSize(e,0),this._userThinInstanceBuffersStorage.data[e].set(i,t*this._userThinInstanceBuffersStorage.strides[e]),r&&this.thinInstanceBufferUpdated(e),!0)},Object.defineProperty(n.Mesh.prototype,"thinInstanceCount",{get:function(){return this._thinInstanceDataStorage.instancesCount},set:function(e){let t=this._thinInstanceDataStorage.matrixData??this.source?._thinInstanceDataStorage.matrixData;e<=(t?t.length/16:0)&&(this._thinInstanceDataStorage.instancesCount=e)},enumerable:!0,configurable:!0}),n.Mesh.prototype._thinInstanceCreateMatrixBuffer=function(e,t,i=!0){let r=new s.Buffer(this.getEngine(),t,!i,16,!1,!0);for(let t=0;t<4;t++)this.setVerticesBuffer(r.createVertexBuffer(e+t,4*t,4));return r},n.Mesh.prototype.thinInstanceSetBuffer=function(e,t,i=0,r=!0){if(i=i||16,"matrix"===e)this._thinInstanceDataStorage.matrixBuffer?.dispose(),this._thinInstanceDataStorage.matrixBuffer=null,this._thinInstanceDataStorage.matrixBufferSize=t?t.length:32*i,this._thinInstanceDataStorage.matrixData=t,this._thinInstanceDataStorage.worldMatrices=null,null!==t?(this._thinInstanceDataStorage.instancesCount=t.length/i,this._thinInstanceDataStorage.matrixBuffer=this._thinInstanceCreateMatrixBuffer("world",t,r),this.doNotSyncBoundingInfo||this.thinInstanceRefreshBoundingInfo(!1)):(this._thinInstanceDataStorage.instancesCount=0,this.doNotSyncBoundingInfo||this.refreshBoundingInfo());else if("previousMatrix"===e)this._thinInstanceDataStorage.previousMatrixBuffer?.dispose(),this._thinInstanceDataStorage.previousMatrixBuffer=null,this._thinInstanceDataStorage.previousMatrixData=t,null!==t&&(this._thinInstanceDataStorage.previousMatrixBuffer=this._thinInstanceCreateMatrixBuffer("previousWorld",t,r));else if("splatIndex"===e&&t){this._thinInstanceInitializeUserStorage(),this._thinInstanceDataStorage.instancesCount=t.length/i,this._userThinInstanceBuffersStorage.data[e]=t,this._userThinInstanceBuffersStorage.strides[e]=i,this._userThinInstanceBuffersStorage.sizes[e]=t.length;let r=new s.Buffer(this.getEngine(),t,!0,16,!1,!0);this._thinInstanceDataStorage.matrixBuffer=r;for(let t=0;t<4;t++)this.setVerticesBuffer(r.createVertexBuffer(e+t,4*t,4))}else e===s.VertexBuffer.ColorKind&&(e=s.VertexBuffer.ColorInstanceKind),null===t?this._userThinInstanceBuffersStorage?.data[e]&&(this.removeVerticesData(e),delete this._userThinInstanceBuffersStorage.data[e],delete this._userThinInstanceBuffersStorage.strides[e],delete this._userThinInstanceBuffersStorage.sizes[e],delete this._userThinInstanceBuffersStorage.vertexBuffers[e]):(this._thinInstanceInitializeUserStorage(),this._userThinInstanceBuffersStorage.data[e]=t,this._userThinInstanceBuffersStorage.strides[e]=i,this._userThinInstanceBuffersStorage.sizes[e]=t.length,this._userThinInstanceBuffersStorage.vertexBuffers[e]=new s.VertexBuffer(this.getEngine(),t,e,!r,!1,i,!0),this.setVerticesBuffer(this._userThinInstanceBuffersStorage.vertexBuffers[e]))},n.Mesh.prototype.thinInstanceBufferUpdated=function(e){"matrix"===e?(this.thinInstanceAllowAutomaticStaticBufferRecreation&&this._thinInstanceDataStorage.matrixBuffer&&!this._thinInstanceDataStorage.matrixBuffer.isUpdatable()&&this._thinInstanceRecreateBuffer(e),this._thinInstanceDataStorage.matrixBuffer?.updateDirectly(this._thinInstanceDataStorage.matrixData,0,this._thinInstanceDataStorage.instancesCount)):"previousMatrix"===e?(this.thinInstanceAllowAutomaticStaticBufferRecreation&&this._thinInstanceDataStorage.previousMatrixBuffer&&!this._thinInstanceDataStorage.previousMatrixBuffer.isUpdatable()&&this._thinInstanceRecreateBuffer(e),this._thinInstanceDataStorage.previousMatrixBuffer?.updateDirectly(this._thinInstanceDataStorage.previousMatrixData,0,this._thinInstanceDataStorage.instancesCount)):"splatIndex"===e?this._thinInstanceDataStorage.matrixBuffer?.updateDirectly(this._userThinInstanceBuffersStorage.data[e],0,this._thinInstanceDataStorage.instancesCount):(e===s.VertexBuffer.ColorKind&&(e=s.VertexBuffer.ColorInstanceKind),this._userThinInstanceBuffersStorage?.vertexBuffers[e]&&(this.thinInstanceAllowAutomaticStaticBufferRecreation&&!this._userThinInstanceBuffersStorage.vertexBuffers[e].isUpdatable()&&this._thinInstanceRecreateBuffer(e),this._userThinInstanceBuffersStorage.vertexBuffers[e].updateDirectly(this._userThinInstanceBuffersStorage.data[e],0)))},n.Mesh.prototype.thinInstancePartialBufferUpdate=function(e,t,i){if("matrix"===e)this._thinInstanceDataStorage.matrixBuffer&&("number"==typeof t?this._thinInstanceDataStorage.matrixBuffer.updateDirectly(new Float32Array(this._thinInstanceDataStorage.matrixData.buffer,this._thinInstanceDataStorage.matrixData.byteOffset+16*i*Float32Array.BYTES_PER_ELEMENT,16*t),16*i):this._thinInstanceDataStorage.matrixBuffer.updateDirectly(t,i));else if(e===s.VertexBuffer.ColorKind&&(e=s.VertexBuffer.ColorInstanceKind),this._userThinInstanceBuffersStorage?.vertexBuffers[e]){let r=this._userThinInstanceBuffersStorage.vertexBuffers[e];if("number"==typeof t){let r=new Float32Array(this._userThinInstanceBuffersStorage.data[e].buffer,this._userThinInstanceBuffersStorage.data[e].byteOffset+i*this._userThinInstanceBuffersStorage.strides[e]*Float32Array.BYTES_PER_ELEMENT,t*this._userThinInstanceBuffersStorage.strides[e]);this._userThinInstanceBuffersStorage.vertexBuffers[e].updateDirectly(r,i*this._userThinInstanceBuffersStorage.strides[e])}else r.updateDirectly(t,i)}},n.Mesh.prototype.thinInstanceGetWorldMatrices=function(){if(!this._thinInstanceDataStorage.matrixData||!this._thinInstanceDataStorage.matrixBuffer)return[];let e=this._thinInstanceDataStorage.matrixData;if(!this._thinInstanceDataStorage.worldMatrices){this._thinInstanceDataStorage.worldMatrices=[];for(let i=0;i<this._thinInstanceDataStorage.instancesCount;++i)this._thinInstanceDataStorage.worldMatrices[i]=t.Matrix.FromArray(e,16*i)}return this._thinInstanceDataStorage.worldMatrices},n.Mesh.prototype.thinInstanceRefreshBoundingInfo=function(e=!1,i=!1,n=!1,l=!1){if(!this._thinInstanceDataStorage.matrixData||!this._thinInstanceDataStorage.matrixBuffer)return;let h=this._thinInstanceDataStorage.boundingVectors;if(e||!this.rawBoundingInfo){if(h.length=0,l&&function(e,i,n){let l=e._userThinInstanceBuffersStorage,h=l?.data[a],c=l?.strides[a];if(!h||!c||c<4||!o(e))return!1;let u=e._thinInstanceDataStorage.matrixData;if(!u)return!1;let d={},_=t.TmpVectors.Vector4[0],f=t.TmpVectors.Vector3[1],g=t.TmpVectors.Vector3[2],m=t.TmpVectors.Vector3[3],p=t.TmpVectors.Vector3[4],T=t.TmpVectors.Vector3[5],I=t.TmpVectors.Vector3[6],E=t.TmpVectors.Matrix[2],y=e.geometry?e.geometry.boundingBias:null,M=e.getTotalVertices();f.setAll(1/0),g.setAll(-1/0),m.setAll(1/0),p.setAll(-1/0);for(let i=0;i<e._thinInstanceDataStorage.instancesCount;++i){let r=i*c;_.set(h[r],h[r+1],h[r+2],h[r+3]);let a=e._getData({applyMorph:n,applyBakedVertexAnimation:!0,bakedVertexAnimationSettings:_,updatePositionsArray:!1,cache:d},null,s.VertexBuffer.PositionKind);if(!a)return!1;T.setAll(1/0),I.setAll(-1/0);for(let e=0;e<3*M;e+=3){let t=a[e],i=a[e+1],r=a[e+2];t<T.x&&(T.x=t),i<T.y&&(T.y=i),r<T.z&&(T.z=r),t>I.x&&(I.x=t),i>I.y&&(I.y=i),r>I.z&&(I.z=r)}y&&(T.x-=T.x*y.x+y.y,T.y-=T.y*y.x+y.y,T.z-=T.z*y.x+y.y,I.x+=I.x*y.x+y.y,I.y+=I.y*y.x+y.y,I.z+=I.z*y.x+y.y),f.minimizeInPlace(T),g.maximizeInPlace(I),t.Matrix.FromArrayToRef(u,16*i,E),y?function(e,i,r,n,s){let a=t.TmpVectors.Vector3[7],o=t.TmpVectors.Vector3[8];for(let l=0;l<2;++l)for(let h=0;h<2;++h)for(let c=0;c<2;++c)a.set(l?i.x:e.x,h?i.y:e.y,c?i.z:e.z),t.Vector3.TransformCoordinatesToRef(a,r,o),n.minimizeInPlace(o),s.maximizeInPlace(o)}(T,I,E,m,p):function(e,i,r,n,s){let a=t.TmpVectors.Vector3[7];for(let o=0;o<3*i;o+=3)t.Vector3.TransformCoordinatesFromFloatsToRef(e[o],e[o+1],e[o+2],r,a),n.minimizeInPlace(a),s.maximizeInPlace(a)}(a,M,E,m,p)}if(!isFinite(f.x)||!isFinite(m.x))return!1;e.getBoundingInfo().reConstruct(m,p),e.rawBoundingInfo=new r.BoundingInfo(f,g);var S=e.rawBoundingInfo;i.length=0;for(let e=0;e<S.boundingBox.vectors.length;++e)i.push(S.boundingBox.vectors[e].clone());return e._updateBoundingInfo(),!0}(this,h,n))return;l&&this.bakedVertexAnimationManager?.isEnabled&&o(this)?this.refreshBoundingInfo({applySkeleton:i,applyMorph:n,applyBakedVertexAnimation:!0,updatePositionsArray:!1}):this.refreshBoundingInfo(i,n);let e=this.getBoundingInfo();this.rawBoundingInfo=new r.BoundingInfo(e.minimum,e.maximum)}let c=this.getBoundingInfo(),u=this._thinInstanceDataStorage.matrixData;if(0===h.length)for(let e=0;e<c.boundingBox.vectors.length;++e)h.push(c.boundingBox.vectors[e].clone());t.TmpVectors.Vector3[0].setAll(1/0),t.TmpVectors.Vector3[1].setAll(-1/0);for(let e=0;e<this._thinInstanceDataStorage.instancesCount;++e){t.Matrix.FromArrayToRef(u,16*e,t.TmpVectors.Matrix[0]);for(let e=0;e<h.length;++e)t.Vector3.TransformCoordinatesToRef(h[e],t.TmpVectors.Matrix[0],t.TmpVectors.Vector3[2]),t.TmpVectors.Vector3[0].minimizeInPlace(t.TmpVectors.Vector3[2]),t.TmpVectors.Vector3[1].maximizeInPlace(t.TmpVectors.Vector3[2])}c.reConstruct(t.TmpVectors.Vector3[0],t.TmpVectors.Vector3[1]),this._updateBoundingInfo()},n.Mesh.prototype._thinInstanceRecreateBuffer=function(e,t=!0){"matrix"===e?(this._thinInstanceDataStorage.matrixBuffer?.dispose(),this._thinInstanceDataStorage.matrixBuffer=this._thinInstanceCreateMatrixBuffer("world",this._thinInstanceDataStorage.matrixData,t)):"previousMatrix"===e?this._scene.needsPreviousWorldMatrices&&(this._thinInstanceDataStorage.previousMatrixBuffer?.dispose(),this._thinInstanceDataStorage.previousMatrixBuffer=this._thinInstanceCreateMatrixBuffer("previousWorld",this._thinInstanceDataStorage.previousMatrixData??this._thinInstanceDataStorage.matrixData,t)):(e===s.VertexBuffer.ColorKind&&(e=s.VertexBuffer.ColorInstanceKind),this._userThinInstanceBuffersStorage.vertexBuffers[e]?.dispose(),this._userThinInstanceBuffersStorage.vertexBuffers[e]=new s.VertexBuffer(this.getEngine(),this._userThinInstanceBuffersStorage.data[e],e,!t,!1,this._userThinInstanceBuffersStorage.strides[e],!0),this.setVerticesBuffer(this._userThinInstanceBuffersStorage.vertexBuffers[e]))},n.Mesh.prototype._thinInstanceUpdateBufferSize=function(e,t=1){e===s.VertexBuffer.ColorKind&&(e=s.VertexBuffer.ColorInstanceKind);let i="matrix"===e;if(!i&&(!this._userThinInstanceBuffersStorage||!this._userThinInstanceBuffersStorage.strides[e]))return;let r=i?16:this._userThinInstanceBuffersStorage.strides[e],n=i?this._thinInstanceDataStorage.matrixBufferSize:this._userThinInstanceBuffersStorage.sizes[e],a=i?this._thinInstanceDataStorage.matrixData:this._userThinInstanceBuffersStorage.data[e],o=(this._thinInstanceDataStorage.instancesCount+t)*r,l=n;for(;l<o;)l*=2;if(!a||n!=l){if(a){let e=new Float32Array(l);e.set(a,0),a=e}else a=new Float32Array(l);i?(this._thinInstanceDataStorage.matrixBuffer?.dispose(),this._thinInstanceDataStorage.matrixBuffer=this._thinInstanceCreateMatrixBuffer("world",a,!1),this._thinInstanceDataStorage.matrixData=a,this._thinInstanceDataStorage.matrixBufferSize=l,this._scene.needsPreviousWorldMatrices&&!this._thinInstanceDataStorage.previousMatrixData&&(this._thinInstanceDataStorage.previousMatrixBuffer?.dispose(),this._thinInstanceDataStorage.previousMatrixBuffer=this._thinInstanceCreateMatrixBuffer("previousWorld",a,!1))):(this._userThinInstanceBuffersStorage.vertexBuffers[e]?.dispose(),this._userThinInstanceBuffersStorage.data[e]=a,this._userThinInstanceBuffersStorage.sizes[e]=l,this._userThinInstanceBuffersStorage.vertexBuffers[e]=new s.VertexBuffer(this.getEngine(),a,e,!0,!1,r,!0),this.setVerticesBuffer(this._userThinInstanceBuffersStorage.vertexBuffers[e]))}},n.Mesh.prototype._thinInstanceInitializeUserStorage=function(){this._userThinInstanceBuffersStorage||(this._userThinInstanceBuffersStorage={data:{},sizes:{},vertexBuffers:{},strides:{}})},n.Mesh.prototype._disposeThinInstanceSpecificData=function(){this._thinInstanceDataStorage?.matrixBuffer&&(this._thinInstanceDataStorage.matrixBuffer.dispose(),this._thinInstanceDataStorage.matrixBuffer=null),this._thinInstanceDataStorage?.previousMatrixBuffer&&(this._thinInstanceDataStorage.previousMatrixBuffer.dispose(),this._thinInstanceDataStorage.previousMatrixBuffer=null)})}e.s(["RegisterThinInstanceMesh",0,h],52998),h(),e.s([],17397)},70081,e=>{"use strict";e.s(["RandomGUID",0,function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,e=>{let t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})}])},8697,e=>{"use strict";class t{static _CheckLimit(e,i){let r=t._LogLimitOutputs[e];return r?r.current++:(r={limit:i,current:1},t._LogLimitOutputs[e]=r),r.current<=r.limit}static _GenerateLimitMessage(e,i=1){let r=t._LogLimitOutputs[e];if(!r||!t.MessageLimitReached)return;let n=this._Levels[i];r.current===r.limit&&t[n.name](t.MessageLimitReached.replace(/%LIMIT%/g,""+r.limit).replace(/%TYPE%/g,n.name??""))}static _AddLogEntry(e){t._LogCache=e+t._LogCache,t.OnNewCacheEntry&&t.OnNewCacheEntry(e)}static _FormatMessage(e){let t=e=>e<10?"0"+e:""+e,i=new Date;return"["+t(i.getHours())+":"+t(i.getMinutes())+":"+t(i.getSeconds())+"]: "+e}static _LogDisabled(e,t){}static _LogEnabled(e=1,i,r){let n=Array.isArray(i)?i[0]:i;if(void 0!==r&&!t._CheckLimit(n,r))return;let s=t._FormatMessage(n),a=this._Levels[e],o=Array.isArray(i)?i.slice(1):[];a.logFunc&&a.logFunc("BJS - "+s,...o);let l=`<div style='color:${a.color}'>${s}</div><br>`;t._AddLogEntry(l),t._GenerateLimitMessage(n,e)}static get LogCache(){return t._LogCache}static ClearLogCache(){t._LogCache="",t._LogLimitOutputs={},t.errorsCount=0}static set LogLevels(e){for(let i of(t.Log=t._LogDisabled,t.Warn=t._LogDisabled,t.Error=t._LogDisabled,[t.MessageLogLevel,t.WarningLogLevel,t.ErrorLogLevel]))(e&i)===i&&(t[this._Levels[i].name]=t._LogEnabled.bind(t,i))}}t.NoneLogLevel=0,t.MessageLogLevel=1,t.WarningLogLevel=2,t.ErrorLogLevel=4,t.AllLogLevel=7,t.MessageLimitReached="Too many %TYPE%s (%LIMIT%), no more %TYPE%s will be reported for this message.",t._LogCache="",t._LogLimitOutputs={},t._Levels=[{},{color:"white",logFunc:console.log,name:"Log"},{color:"orange",logFunc:console.warn,name:"Warn"},{},{color:"red",logFunc:console.error,name:"Error"}],t.errorsCount=0,t.Log=t._LogEnabled.bind(t,t.MessageLogLevel),t.Warn=t._LogEnabled.bind(t,t.WarningLogLevel),t.Error=t._LogEnabled.bind(t,t.ErrorLogLevel),e.s(["Logger",0,t])},90138,64950,e=>{"use strict";var t=e.i(2103);class i{constructor(e){this._samples=Array(e),this.reset()}add(e){let t;if(this.isSaturated()){let e=this._samples[this._pos];t=e-this.average,this.average-=t/(this._sampleCount-1),this._m2-=t*(e-this.average)}else this._sampleCount++;t=e-this.average,this.average+=t/this._sampleCount,this._m2+=t*(e-this.average),this.variance=this._m2/(this._sampleCount-1),this._samples[this._pos]=e,this._pos++,this._pos%=this._samples.length}history(e){if(e>=this._sampleCount||e>=this._samples.length)return 0;let t=this._wrapPosition(this._pos-1);return this._samples[this._wrapPosition(t-e)]}isSaturated(){return this._sampleCount>=this._samples.length}reset(){this.average=0,this.variance=0,this._sampleCount=0,this._pos=0,this._m2=0}_wrapPosition(e){let t=this._samples.length;return(e%t+t)%t}}e.s(["PerformanceMonitor",0,class{constructor(e=30){this._enabled=!0,this._rollingFrameTime=new i(e)}sampleFrame(e=t.PrecisionDate.Now){if(this._enabled){if(null!=this._lastFrameTimeMs){let t=e-this._lastFrameTimeMs;this._rollingFrameTime.add(t)}this._lastFrameTimeMs=e}}get averageFrameTime(){return this._rollingFrameTime.average}get averageFrameTimeVariance(){return this._rollingFrameTime.variance}get instantaneousFrameTime(){return this._rollingFrameTime.history(0)}get averageFPS(){return 1e3/this._rollingFrameTime.average}get instantaneousFPS(){let e=this._rollingFrameTime.history(0);return 0===e?0:1e3/e}get isSaturated(){return this._rollingFrameTime.isSaturated()}enable(){this._enabled=!0}disable(){this._enabled=!1,this._lastFrameTimeMs=null}get isEnabled(){return this._enabled}reset(){this._lastFrameTimeMs=null,this._rollingFrameTime.reset()}}],90138);var r=e.i(45735),n=e.i(18405),s=e.i(71829);function a(e){return Number.isFinite(e.ascent)&&Number.isFinite(e.height)&&Number.isFinite(e.descent)&&e.height>0}async function o(e,t,i){return await new Promise((r,n)=>{let s=new Image;s.onload=()=>{s.decode().then(()=>{e.createImageBitmap(s,i).then(e=>{r(e)})})},s.onerror=()=>{n(`Error loading image ${s.src}`)},s.src=t})}function l(e){if(e.requestPointerLock){let t=e.requestPointerLock();t instanceof Promise?t.then(()=>{e.focus()}).catch(()=>{}):e.focus()}}e.s(["CreateImageBitmapFromSource",0,o,"ExitFullscreen",0,function(){let e=document;document.exitFullscreen?document.exitFullscreen():e.webkitCancelFullScreen&&e.webkitCancelFullScreen()},"ExitPointerlock",0,function(){document.exitPointerLock&&document.exitPointerLock()},"GetFontOffset",0,function(e){var t;let i,n,s,o,l=function(e){let t,i;if(!(0,r.IsDocumentAvailable)()||!document.body)return null;let n=document.createElement("span");n.textContent="Hg",n.style.font=e;let s=document.createElement("div");s.style.display="inline-block",s.style.width="1px",s.style.height="0px",s.style.verticalAlign="bottom";let o=document.createElement("div");o.style.whiteSpace="nowrap",o.appendChild(n),o.appendChild(s),document.body.appendChild(o);try{i=s.getBoundingClientRect().top-n.getBoundingClientRect().top,s.style.verticalAlign="baseline",t=s.getBoundingClientRect().top-n.getBoundingClientRect().top}finally{document.body.removeChild(o)}let l={ascent:t,height:i,descent:i-t};return a(l)?l:null}(e);if(l)return l;let h=function(e){let t=null;try{"u">typeof OffscreenCanvas?t=new OffscreenCanvas(64,64):(0,r.IsDocumentAvailable)()&&"function"==typeof document.createElement&&((t=document.createElement("canvas")).width=64,t.height=64);let i=t?.getContext("2d");if(!i)return null;i.font=e;let n=i.measureText("Hg"),s=Number(n.actualBoundingBoxAscent??n.fontBoundingBoxAscent),o=Number(n.actualBoundingBoxDescent??n.fontBoundingBoxDescent),l={ascent:s,height:s+o,descent:o};return a(l)?l:null}catch{return null}finally{let e=t;"function"==typeof e?.dispose&&e.dispose()}}(e);return h||(s=.8*(n=Math.max(1,(t=e,(i=/(?:^|\s)([0-9]+(?:\.[0-9]+)?)px(?:\/|\s|$)/.exec(String(t||"")))?Number(i[1]):16))),{ascent:s,height:s+(o=.2*n),descent:o})},"RequestFullscreen",0,function(e){let t=e.requestFullscreen||e.webkitRequestFullscreen;t&&t.call(e)},"RequestPointerlock",0,l,"ResizeImageBitmap",0,function(e,t,i,r){let n=e.createCanvas(i,r).getContext("2d");if(!n)throw Error("Unable to get 2d context for resizeImageBitmap");return n.drawImage(t,0,0),n.getImageData(0,0,i,r).data},"_CommonDispose",0,function(e,t){1===s.EngineStore.Instances.length&&n.AbstractEngine.audioEngine&&(n.AbstractEngine.audioEngine.dispose(),n.AbstractEngine.audioEngine=null);let i=e.getHostWindow();i&&"function"==typeof i.removeEventListener&&(i.removeEventListener("blur",e._onBlur),i.removeEventListener("focus",e._onFocus)),t&&(t.removeEventListener("focus",e._onCanvasFocus),t.removeEventListener("blur",e._onCanvasBlur),t.removeEventListener("pointerout",e._onCanvasPointerOut),t.removeEventListener("contextmenu",e._onCanvasContextMenu)),(0,r.IsDocumentAvailable)()&&(document.removeEventListener("fullscreenchange",e._onFullscreenChange),document.removeEventListener("mozfullscreenchange",e._onFullscreenChange),document.removeEventListener("webkitfullscreenchange",e._onFullscreenChange),document.removeEventListener("msfullscreenchange",e._onFullscreenChange),document.removeEventListener("pointerlockchange",e._onPointerLockChange),document.removeEventListener("mspointerlockchange",e._onPointerLockChange),document.removeEventListener("mozpointerlockchange",e._onPointerLockChange),document.removeEventListener("webkitpointerlockchange",e._onPointerLockChange))},"_CommonInit",0,function(e,t,i){e._onCanvasFocus=()=>{e.onCanvasFocusObservable.notifyObservers(e)},e._onCanvasBlur=()=>{e.onCanvasBlurObservable.notifyObservers(e)},e._onCanvasContextMenu=t=>{e.disableContextMenu&&t.preventDefault()},t.addEventListener("focus",e._onCanvasFocus),t.addEventListener("blur",e._onCanvasBlur),t.addEventListener("contextmenu",e._onCanvasContextMenu),e._onBlur=()=>{e.disablePerformanceMonitorInBackground&&e.performanceMonitor.disable(),e._windowIsBackground=!0},e._onFocus=()=>{e.disablePerformanceMonitorInBackground&&e.performanceMonitor.enable(),e._windowIsBackground=!1},e._onCanvasPointerOut=i=>{document.elementFromPoint(i.clientX,i.clientY)!==t&&e.onCanvasPointerOutObservable.notifyObservers(i)};let s=e.getHostWindow();s&&"function"==typeof s.addEventListener&&(s.addEventListener("blur",e._onBlur),s.addEventListener("focus",e._onFocus)),t.addEventListener("pointerout",e._onCanvasPointerOut),!i.doNotHandleTouchAction&&t&&t.setAttribute&&(t.setAttribute("touch-action","none"),t.style.touchAction="none",t.style.webkitTapHighlightColor="transparent"),!n.AbstractEngine.audioEngine&&i.audioEngine&&n.AbstractEngine.AudioEngineFactory&&(n.AbstractEngine.audioEngine=n.AbstractEngine.AudioEngineFactory(e.getRenderingCanvas(),e.getAudioContext(),e.getAudioDestination())),(0,r.IsDocumentAvailable)()&&(e._onFullscreenChange=()=>{e.isFullscreen=!!document.fullscreenElement,e.isFullscreen&&e._pointerLockRequested&&t&&l(t)},document.addEventListener("fullscreenchange",e._onFullscreenChange,!1),document.addEventListener("webkitfullscreenchange",e._onFullscreenChange,!1),e._onPointerLockChange=()=>{e.isPointerLock=document.pointerLockElement===t},document.addEventListener("pointerlockchange",e._onPointerLockChange,!1),document.addEventListener("webkitpointerlockchange",e._onPointerLockChange,!1)),e.enableOfflineSupport=void 0!==n.AbstractEngine.OfflineProviderFactory,e._deterministicLockstep=!!i.deterministicLockstep,e._lockstepMaxSteps=i.lockstepMaxSteps||0,e._timeStep=i.timeStep||1/60}],64950)},54616,e=>{"use strict";class t{constructor(e){this._pendingActions=[],this._workerInfos=e.map(e=>({workerPromise:Promise.resolve(e),idle:!0}))}dispose(){for(let e of this._workerInfos)e.workerPromise.then(e=>{e.terminate()});this._workerInfos.length=0,this._pendingActions.length=0}push(e){this._executeOnIdleWorker(e)||this._pendingActions.push(e)}_executeOnIdleWorker(e){for(let t of this._workerInfos)if(t.idle)return this._execute(t,e),!0;return!1}_execute(e,t){e.idle=!1,e.workerPromise.then(i=>{t(i,()=>{let t=this._pendingActions.shift();t?this._execute(e,t):e.idle=!0})})}}class i extends t{constructor(e,t,r=i.DefaultOptions){super([]),this._maxWorkers=e,this._createWorkerAsync=t,this._options=r}push(e){if(!this._executeOnIdleWorker(e))if(this._workerInfos.length<this._maxWorkers){let t={workerPromise:this._createWorkerAsync(),idle:!1};this._workerInfos.push(t),this._execute(t,e)}else this._pendingActions.push(e)}_execute(e,t){e.timeoutId&&(clearTimeout(e.timeoutId),delete e.timeoutId),super._execute(e,(i,r)=>{t(i,()=>{r(),e.idle&&(e.timeoutId=setTimeout(()=>{e.workerPromise.then(e=>{e.terminate()});let t=this._workerInfos.indexOf(e);-1!==t&&this._workerInfos.splice(t,1)},this._options.idleTimeElapsedBeforeRelease))})})}}i.DefaultOptions={idleTimeElapsedBeforeRelease:1e3},e.s(["AutoReleaseWorkerPool",0,i])},98687,27746,e=>{"use strict";var t=e.i(60699),i=e.i(65678);(0,i.RegisterFlowGraphRichTypes)(),e.s([],27746);class r extends t.FlowGraphBlock{constructor(e){super(e);const t=e.glTF,r=t?.animations?.map(e=>e._babylonAnimationGroup)||[];this.animationGroups=this.registerDataOutput("animationGroups",i.RichTypeAny,r);const n=t?.nodes?.map(e=>e._babylonTransformNode)||[];this.nodes=this.registerDataOutput("nodes",i.RichTypeAny,n)}getClassName(){return"FlowGraphGLTFDataProvider"}}e.s(["FlowGraphGLTFDataProvider",0,r],98687)}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,15099,t=>{"use strict";var e=t.i(23422),o=t.i(65678),u=t.i(68282);class i extends e.FlowGraphExecutionBlockWithOutSignal{constructor(t){super(t),this.sound=this.registerDataInput("sound",o.RichTypeAny),this.volume=this.registerDataInput("volume",o.RichTypeNumber,1)}_execute(t,e){let o=this.sound.getValue(t);if(!o){this._reportError(t,"No sound provided"),this.out._activateSignal(t);return}o.volume=this.volume.getValue(t),this.out._activateSignal(t)}getClassName(){return"FlowGraphSetSoundVolumeBlock"}}let l=!1;t.s(["FlowGraphSetSoundVolumeBlock",0,i,"RegisterFlowGraphSetSoundVolumeBlock",0,function(){l||(l=!0,(0,u.RegisterClass)("FlowGraphSetSoundVolumeBlock",i))}])}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,28803,e=>{"use strict";var t=e.i(65678),i=e.i(82600),l=e.i(56173),a=e.i(68282);class s extends i.FlowGraphCachedOperationBlock{constructor(e){super(t.RichTypeVector3,e),this.body=this.registerDataInput("body",t.RichTypeAny)}_doOperation(e){let t=this.body.getValue(e);if(!t)return;let i=e._getExecutionVariable(this,"_cachedVelocity",null);return i||(i=new l.Vector3,e._setExecutionVariable(this,"_cachedVelocity",i)),t.getLinearVelocityToRef(i),i}getClassName(){return"FlowGraphGetLinearVelocityBlock"}}let o=!1;e.s(["FlowGraphGetLinearVelocityBlock",0,s,"RegisterFlowGraphGetLinearVelocityBlock",0,function(){o||(o=!0,(0,a.RegisterClass)("FlowGraphGetLinearVelocityBlock",s))}])},82600,e=>{"use strict";var t=e.i(60699),i=e.i(65678);let l="cachedOperationValue",a="cachedExecutionId";class s extends t.FlowGraphBlock{constructor(e,t){super(t),this._outputRichType=e,this.value=this.registerDataOutput("value",e),this.isValid=this.registerDataOutput("isValid",i.RichTypeBoolean)}_getInvalidOutputValue(e){let t=this._outputRichType.defaultValue,i=t?.clone;return"function"==typeof i?i.call(t):t}_updateOutputs(e){let t=e._getExecutionVariable(this,a,-1),i=e._getExecutionVariable(this,l,null);if(null!=i&&t===e.executionId)this.isValid.setValue(!0,e),this.value.setValue(i,e);else try{let t=this._doOperation(e);if(null==t)return void this._setInvalid(e);e._setExecutionVariable(this,l,t),e._setExecutionVariable(this,a,e.executionId),this.value.setValue(t,e),this.isValid.setValue(!0,e)}catch(t){this._setInvalid(e)}}_setInvalid(e){this.isValid.setValue(!1,e),this.value.setValue(this._getInvalidOutputValue(e),e)}}e.s(["FlowGraphCachedOperationBlock",0,s])}]);
|