@uptimizr/dashboard 0.4.5 → 0.4.7
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 +19 -5
- package/out/__next._full.txt +11 -11
- package/out/__next._tree.txt +2 -2
- package/out/_next/static/chunks/{3kalvwsf11-ss.js → 0-_j1khfoib6l.js} +119 -115
- package/out/_next/static/chunks/{0-tzsd_n-ywom.js → 005bbq_px7lke.js} +2 -2
- package/out/_next/static/chunks/00fbhtmui-yxg.js +1 -0
- package/out/_next/static/chunks/017pn-pen381_.js +1 -0
- package/out/_next/static/chunks/01vov6inx1zzt.js +1 -0
- package/out/_next/static/chunks/{3d76e_yd8l_0x.js → 02qk_wmkf9at-.js} +211 -211
- package/out/_next/static/chunks/03bd5plut08tg.js +1 -0
- package/out/_next/static/chunks/03dwfqmo73w_z.js +1 -0
- package/out/_next/static/chunks/03sn4419dam-h.js +5 -0
- package/out/_next/static/chunks/05ere0-228syf.js +1 -0
- package/out/_next/static/chunks/{2g_1ov-0j2kwd.js → 05h8u5lrypn5m.js} +1 -1
- package/out/_next/static/chunks/05s0t-besbvu1.css +3 -0
- package/out/_next/static/chunks/{3go-mst7n3udd.js → 05v-nubi896jg.js} +1 -1
- package/out/_next/static/chunks/05z79zh625ezu.js +1 -0
- package/out/_next/static/chunks/{1t2exh89lnazc.js → 060iult6f68_e.js} +504 -571
- package/out/_next/static/chunks/08lvtnv7b1cxp.js +1 -0
- package/out/_next/static/chunks/0_v2luu_qmeid.js +1 -0
- package/out/_next/static/chunks/0ai0zgbgjqb92.js +1 -0
- package/out/_next/static/chunks/0boov9mwycanf.js +1 -0
- package/out/_next/static/chunks/{0av6n_6q6kzo3.js → 0btmk0wmekl02.js} +2 -2
- package/out/_next/static/chunks/0d8x8m2x6ca_m.js +1 -0
- package/out/_next/static/chunks/0dmrdrwtd093b.js +1 -0
- package/out/_next/static/chunks/0e1jfrmioeuws.js +1 -0
- package/out/_next/static/chunks/0e7nlxmneb2j_.js +1 -0
- package/out/_next/static/chunks/0es97pusfxupl.js +1 -0
- package/out/_next/static/chunks/{05uqfgf-hh-p5.js → 0fd-0i1yt23kz.js} +1 -1
- package/out/_next/static/chunks/0fxdyvb1w23d1.js +1 -0
- package/out/_next/static/chunks/0fxhc24djjcgq.js +1 -0
- package/out/_next/static/chunks/0gf-ztg86zd80.js +1 -0
- package/out/_next/static/chunks/{380ivzcfb4o_3.js → 0grasqqf5dw7r.js} +2 -2
- package/out/_next/static/chunks/{0okbyggxe6mx5.js → 0hajwk2yd-rwr.js} +1 -1
- package/out/_next/static/chunks/0hk1wg7h4araz.js +1 -0
- package/out/_next/static/chunks/{1vmpltnr0cyos.js → 0j74ipw4fps-n.js} +1 -1
- package/out/_next/static/chunks/{03zip1uidm6x9.js → 0kj-vckdn7t5p.js} +1 -1
- package/out/_next/static/chunks/0lbs5xdyjuzuo.js +1 -0
- package/out/_next/static/chunks/0lep3_bqwfuin.js +1 -0
- package/out/_next/static/chunks/0mp0jh1gj7290.js +1 -0
- package/out/_next/static/chunks/0ngpoj2g5i4kz.js +1 -0
- package/out/_next/static/chunks/0nhljhguceh66.js +1 -0
- package/out/_next/static/chunks/0p6z73afb9dj2.js +1 -0
- package/out/_next/static/chunks/0p9zfmidzqkps.js +1 -0
- package/out/_next/static/chunks/0q75860p8u_ii.js +1 -0
- package/out/_next/static/chunks/{0-0hui1_v3h8b.js → 0rracz73p38mo.js} +26 -23
- package/out/_next/static/chunks/{3z4suna4kq4j5.js → 0sw-8gxbg4x0l.js} +568 -569
- package/out/_next/static/chunks/0sx-6rf3eteqn.js +1 -0
- package/out/_next/static/chunks/0thw099xk3_0p.js +3 -0
- package/out/_next/static/chunks/0u85f0dhb4i8e.js +1 -0
- package/out/_next/static/chunks/0uk7kigzm4vi2.js +31 -0
- package/out/_next/static/chunks/0ulufxnsrou61.js +1 -0
- package/out/_next/static/chunks/0xa9dyg6ezzyd.js +2 -0
- package/out/_next/static/chunks/0xvrfvur0p534.js +1 -0
- package/out/_next/static/chunks/{35aagg46wp139.js → 0ybs1u66q26su.js} +1 -1
- package/out/_next/static/chunks/0ydfhk-p6zvm0.js +1 -0
- package/out/_next/static/chunks/{29gv2swsp7tzu.js → 0z004fn14pbcu.js} +1 -1
- package/out/_next/static/chunks/{2z9mdtudj8crz.js → 0z9erbl3llr_b.js} +226 -224
- package/out/_next/static/chunks/0zcsxvcvog9ue.js +1 -0
- package/out/_next/static/chunks/0zqgq0lwtz9tn.js +1 -0
- package/out/_next/static/chunks/1-ogak5u00kwa.js +1 -0
- package/out/_next/static/chunks/{1ng-fqh2_n984.js → 10_5p5-xf2aoo.js} +1 -1
- package/out/_next/static/chunks/118qlrzdwpfmo.js +1 -0
- package/out/_next/static/chunks/11km5p4gd0ut4.js +1 -0
- package/out/_next/static/chunks/120rl4l29q9xs.js +1 -0
- package/out/_next/static/chunks/{1ho02fc091nj2.js → 129m5i93ltoym.js} +1 -1
- package/out/_next/static/chunks/12n73o884lyyl.js +1 -0
- package/out/_next/static/chunks/{3n-7bcmfbh299.js → 13zcn4lv0qj76.js} +11 -11
- package/out/_next/static/chunks/15jlgfcaeaki9.js +1 -0
- package/out/_next/static/chunks/{1ux1rpe-n1mai.js → 15o4_2t-l3rj5.js} +1 -1
- package/out/_next/static/chunks/{00o9hr_3hd0r8.js → 175st2ogkg_1o.js} +1 -1
- package/out/_next/static/chunks/19rsodtu91ja_.js +1 -0
- package/out/_next/static/chunks/1a2ouhup611bz.js +1 -0
- package/out/_next/static/chunks/{1solqr18og2ot.js → 1by60_b14x-3o.js} +1 -1
- package/out/_next/static/chunks/1cyq7i39885sl.js +1 -0
- package/out/_next/static/chunks/1d9it6yocgt54.js +1 -0
- package/out/_next/static/chunks/1dp1s1t-y7gal.js +1 -0
- package/out/_next/static/chunks/1dr7gh6xgypl8.js +1 -0
- package/out/_next/static/chunks/{32vaw89wdwv5_.js → 1dt30s_sp8415.js} +1 -1
- package/out/_next/static/chunks/{1t7nl8rx7mabd.js → 1e8_jl2cxd3rp.js} +576 -576
- package/out/_next/static/chunks/1f1rek_fxk3of.js +1 -0
- package/out/_next/static/chunks/1f2mna0k5efeq.js +1 -0
- package/out/_next/static/chunks/1gfz3sxwkkg3d.js +1 -0
- package/out/_next/static/chunks/1gr35qeguuws0.js +1 -0
- package/out/_next/static/chunks/{0g2wngc6oe7fd.js → 1gttu-n9am66k.js} +255 -253
- package/out/_next/static/chunks/1imi0xwi9hd99.js +1 -0
- package/out/_next/static/chunks/1ka5v5zu0cstt.js +1 -0
- package/out/_next/static/chunks/{17aahvhpls1l7.js → 1l_3oidssbhns.js} +298 -231
- package/out/_next/static/chunks/1m9zc5gm-327d.js +112 -0
- package/out/_next/static/chunks/1n9nhz-6azcp3.js +3 -0
- package/out/_next/static/chunks/1ncqwe81t_9_x.js +1 -0
- package/out/_next/static/chunks/1nix_lulkpklo.js +1 -0
- package/out/_next/static/chunks/{141tngxsk32hq.js → 1ntqovuz2c217.js} +1 -1
- package/out/_next/static/chunks/1pgs-98tfkq9_.js +1 -0
- package/out/_next/static/chunks/1q2z0aeopo8t8.js +1 -0
- package/out/_next/static/chunks/{2zpn7010iqgsy.js → 1q4lkgxfnqnew.js} +1 -1
- package/out/_next/static/chunks/{2khh_pmm224k5.js → 1qg1l7t00nyib.js} +97 -300
- package/out/_next/static/chunks/{1qxhgauuomthl.js → 1rcdimhu0qhlu.js} +407 -407
- package/out/_next/static/chunks/1rlfg62jxqj3z.js +1 -0
- package/out/_next/static/chunks/1ses023uud001.js +1 -0
- package/out/_next/static/chunks/1t5oynmttpfsw.js +1 -0
- package/out/_next/static/chunks/{25gf6xn9u1c57.js → 1t9i20i5-f8ze.js} +1 -1
- package/out/_next/static/chunks/{2h5nvlgky7fpa.js → 1tgj55b305g4h.js} +1 -1
- package/out/_next/static/chunks/{255knovck7pv2.js → 1u8snlm6a7uhi.js} +4 -4
- package/out/_next/static/chunks/{04_3ri5emyfcu.js → 1ug4k-1zhr63a.js} +1 -1
- package/out/_next/static/chunks/{3-_08i4_7yhno.js → 1uh9zgsy69g92.js} +1 -1
- package/out/_next/static/chunks/1vrpzlif-z_p0.js +1 -0
- package/out/_next/static/chunks/1vurgl6oz2qey.js +17 -0
- package/out/_next/static/chunks/1w-qc09n9ijtq.js +1 -0
- package/out/_next/static/chunks/1ycqxcht6x54p.js +1 -0
- package/out/_next/static/chunks/{2zyjw8g4tiu51.js → 1zj4307ugq0qz.js} +1 -1
- package/out/_next/static/chunks/{425epvuw3yy-n.js → 1zkd8v-qka--j.js} +169 -174
- package/out/_next/static/chunks/1zm52cjrfrq7c.js +1 -0
- package/out/_next/static/chunks/{267q_eg-c6f6m.js → 1zm6eo861i3c8.js} +1 -1
- package/out/_next/static/chunks/{1e_-_7biavwmb.js → 1zp9363yfhpom.js} +1 -1
- package/out/_next/static/chunks/1zt1xxovnjhkm.js +1 -0
- package/out/_next/static/chunks/2-3hk_db5fpok.js +1 -0
- package/out/_next/static/chunks/2-bv9a_0zgw1f.js +1 -0
- package/out/_next/static/chunks/209sxygecny37.js +1 -0
- package/out/_next/static/chunks/{1ccn725by19i1.js → 216uiih3_vdfd.js} +1 -1
- package/out/_next/static/chunks/21kfpd_bityxt.js +1 -0
- package/out/_next/static/chunks/22yqh0zlo_vwr.js +1 -0
- package/out/_next/static/chunks/24ecas0m9tao7.js +3 -0
- package/out/_next/static/chunks/24pq9210rng3f.js +1 -0
- package/out/_next/static/chunks/{0zf26k6juhlzo.js → 267prao6fyt22.js} +23 -20
- package/out/_next/static/chunks/26skkagvj1z96.js +1 -0
- package/out/_next/static/chunks/26y9sv8_-ykxf.js +1 -0
- package/out/_next/static/chunks/2701xfv_07wz_.js +1 -0
- package/out/_next/static/chunks/{1x99m91nt1m3b.js → 271333m8y3k0e.js} +1 -1
- package/out/_next/static/chunks/29rkmguzky-bp.js +1 -0
- package/out/_next/static/chunks/{077eo-0dhbxz-.js → 2a07so920b6aa.js} +1 -1
- package/out/_next/static/chunks/2a2oy8ryz2tsk.js +1 -0
- package/out/_next/static/chunks/2ao-3jzz7yw3p.js +532 -0
- package/out/_next/static/chunks/2apihn9ra2ufp.js +1 -0
- package/out/_next/static/chunks/2apnpj0-fs9ks.js +1 -0
- package/out/_next/static/chunks/2b481pitl4k85.js +1 -0
- package/out/_next/static/chunks/2bettxaqt3d2p.js +1 -0
- package/out/_next/static/chunks/{1fyh50hjt7hi_.js → 2c721vfva711t.js} +1 -1
- package/out/_next/static/chunks/{442e2l3jzxd-_.js → 2d2kl_m64j9cb.js} +1 -1
- package/out/_next/static/chunks/2droqjmvmgj13.js +1 -0
- package/out/_next/static/chunks/2dxbvwbbgpzoq.js +1 -0
- package/out/_next/static/chunks/2eqbsut829r5l.js +1 -0
- package/out/_next/static/chunks/2f3_mzxjh3gso.js +1 -0
- package/out/_next/static/chunks/2fsde0jwi5qtt.js +1 -0
- package/out/_next/static/chunks/2h249uvhh2sij.js +114 -0
- package/out/_next/static/chunks/{1gvdmbr65lpud.js → 2izok2otbk8-2.js} +505 -505
- package/out/_next/static/chunks/{0yvevihll7sz-.js → 2j120dkh7q3uf.js} +1 -1
- package/out/_next/static/chunks/2j2ynchpqh34-.js +1 -0
- package/out/_next/static/chunks/2kj6pzs_wap1v.js +1 -0
- package/out/_next/static/chunks/{2-p206i_ihx09.js → 2kok6zedeeltw.js} +1 -1
- package/out/_next/static/chunks/2lnj9jruy4nrv.js +1 -0
- package/out/_next/static/chunks/{41yy4p3-rtyz1.js → 2lsvk7xcfkarc.js} +1 -1
- package/out/_next/static/chunks/2n-pveub8b_5t.js +1 -0
- package/out/_next/static/chunks/{00xc-0pj7on2s.js → 2n3xu_wbvtj7h.js} +29 -29
- package/out/_next/static/chunks/{1oljzgz5jistn.js → 2of8q0kaeqpf0.js} +1 -1
- package/out/_next/static/chunks/2ofwtw6p08sfz.js +1 -0
- package/out/_next/static/chunks/2phl5ta4iim7l.js +12 -0
- package/out/_next/static/chunks/2q6l-xdqzgmpf.js +1 -0
- package/out/_next/static/chunks/2q8yg63br2jc9.js +1 -0
- package/out/_next/static/chunks/2r5qgieqldcd9.js +1 -0
- package/out/_next/static/chunks/2r7y401cvjc1s.js +1 -0
- package/out/_next/static/chunks/{22ja7c3gk0_ko.js → 2r96kyeehsji9.js} +1 -1
- package/out/_next/static/chunks/{3gyyjsot8mdav.js → 2rmc6ru7mc-kg.js} +1 -1
- package/out/_next/static/chunks/{1ephzzweysylq.js → 2s6kpclh6ie7o.js} +901 -973
- package/out/_next/static/chunks/{0vso09vdz38sr.js → 2sys9nj8lo3uk.js} +1 -1
- package/out/_next/static/chunks/{0w-hm7g7trtjg.js → 2tc3e-iqv71y_.js} +1 -1
- package/out/_next/static/chunks/2uo6vm7mfgrbf.js +1 -0
- package/out/_next/static/chunks/2urx6fow8c8c9.js +505 -0
- package/out/_next/static/chunks/2w2k1gveljyb7.js +1 -0
- package/out/_next/static/chunks/{22rl_arnzs-ve.js → 2w99knknr5i8c.js} +1 -1
- package/out/_next/static/chunks/2w_ptlw-ad8-9.js +4 -0
- package/out/_next/static/chunks/2ws1s9d52ayv8.js +1 -0
- package/out/_next/static/chunks/2x7enks3ydgai.js +1 -0
- package/out/_next/static/chunks/{2e46-2ubc90do.js → 2y8i7_nxm4r05.js} +5 -5
- package/out/_next/static/chunks/2ydub0t01728d.js +1 -0
- package/out/_next/static/chunks/{309f81l5ucsb_.js → 2z_iab7ozohhq.js} +60 -60
- package/out/_next/static/chunks/3-m_vzabs1uez.js +1 -0
- package/out/_next/static/chunks/{0t89-lfct-7m6.js → 302qk2fjdrthp.js} +5 -5
- package/out/_next/static/chunks/30bhz7czzs4mf.js +1 -0
- package/out/_next/static/chunks/{0tn-9w46cwydp.js → 30n4y_uu8chbh.js} +515 -514
- package/out/_next/static/chunks/{2-hdejef-mpka.js → 32_c4mbb6j1l6.js} +372 -169
- package/out/_next/static/chunks/33hp-khdfohdq.js +1 -0
- package/out/_next/static/chunks/{28ndw4nsw2t_4.js → 33i36o_l69sm5.js} +1 -1
- package/out/_next/static/chunks/3527r3jo5fj3i.js +1 -0
- package/out/_next/static/chunks/355dg8yaa94hr.js +1 -0
- package/out/_next/static/chunks/{11p92pnn5el0v.js → 35ntbr_c-yx44.js} +1 -1
- package/out/_next/static/chunks/{2rjfrjhp4kjev.js → 35sne1llxnc-m.js} +57 -57
- package/out/_next/static/chunks/36enkx1skkv2-.js +4 -0
- package/out/_next/static/chunks/{3-x7522okdy-7.js → 3772oce1n3t_g.js} +1 -1
- package/out/_next/static/chunks/{1rb8wewjbdisv.js → 37cnbm5ft1mqf.js} +1 -1
- package/out/_next/static/chunks/38xdo3cifphut.js +1 -0
- package/out/_next/static/chunks/{1tt1bbry-4f-6.js → 3_dgblylldcgb.js} +1 -1
- package/out/_next/static/chunks/3beawo-qwuk8k.js +1 -0
- package/out/_next/static/chunks/3cj_6sl9kr3e9.js +1 -0
- package/out/_next/static/chunks/3d-i_skta_wes.js +1 -0
- package/out/_next/static/chunks/3df_l2we755bb.js +1 -0
- package/out/_next/static/chunks/{43hwl25uke0l_.js → 3eve5y7fpzx2h.js} +1 -1
- package/out/_next/static/chunks/3ewgyb4y19w-3.js +1 -0
- package/out/_next/static/chunks/3f3789eh18_oy.js +1 -0
- package/out/_next/static/chunks/{1n_gxvu31aofy.js → 3f8qelpscqfym.js} +2 -2
- package/out/_next/static/chunks/3g3-e9m1en45q.js +1 -0
- package/out/_next/static/chunks/{0uxdbfa8gv6tk.js → 3h6akt2uu05ku.js} +29 -29
- package/out/_next/static/chunks/{3w4qettzp7khe.js → 3huu0tqmxwowu.js} +523 -522
- package/out/_next/static/chunks/3i239y-1hbkm-.js +1 -0
- package/out/_next/static/chunks/{1qsut_e3msg0l.js → 3ipx7xbxchsq9.js} +1 -1
- package/out/_next/static/chunks/{2ftp5xmq_w23j.js → 3j9xvdz55bi4p.js} +345 -345
- package/out/_next/static/chunks/3kp8qmhoi24oz.js +1 -0
- package/out/_next/static/chunks/3ksq69yq-40_r.js +1 -0
- package/out/_next/static/chunks/{2x83vs8ns4pww.js → 3njwfothmmg7u.js} +3 -3
- package/out/_next/static/chunks/{0bj_310rugcn1.js → 3oqxl46ukaojj.js} +11 -11
- package/out/_next/static/chunks/{1upkv4ltuh3s5.js → 3qn6r8-0u6dij.js} +352 -352
- package/out/_next/static/chunks/3qye1lytea2i8.js +1 -0
- package/out/_next/static/chunks/3rlp9yr75liz7.js +1 -0
- package/out/_next/static/chunks/{2i82rmjta9ijs.js → 3sa_hlx3konc7.js} +1 -1
- package/out/_next/static/chunks/3tyo643l62h3m.js +1 -0
- package/out/_next/static/chunks/3tz2tpqa9uvwm.js +1 -0
- package/out/_next/static/chunks/{2pbgsq7vvtk8_.js → 3utpc-fc6_y0f.js} +1 -1
- package/out/_next/static/chunks/3v-0c2aj6c0on.js +1 -0
- package/out/_next/static/chunks/3v6nxa28rxngq.js +1 -0
- package/out/_next/static/chunks/{1og49_atcksim.js → 3vbamaoiuk9yj.js} +1 -1
- package/out/_next/static/chunks/3vv99btjc-mky.js +1 -0
- package/out/_next/static/chunks/{1nqojcig-0m3c.js → 3w59kt5ztyvoq.js} +1 -1
- package/out/_next/static/chunks/3x02lxdo28u9i.js +1 -0
- package/out/_next/static/chunks/3xl-op0hwxytg.js +272 -0
- package/out/_next/static/chunks/3ydnxyc4rvad_.js +1 -0
- package/out/_next/static/chunks/3ylg4gfetwgxw.js +1 -0
- package/out/_next/static/chunks/{1-4v8oivkgnyl.js → 3zdtteq-r2fs5.js} +3 -3
- package/out/_next/static/chunks/3zkwt0gybqtgm.js +1 -0
- package/out/_next/static/chunks/{0wq_9f98weoe3.js → 3zs7l4362msjd.js} +1 -1
- package/out/_next/static/chunks/40etabvml_71y.js +1 -0
- package/out/_next/static/chunks/417jkzz0slv9m.js +1 -0
- package/out/_next/static/chunks/41b5gpyqbj58m.js +338 -0
- package/out/_next/static/chunks/41u2-5jayyajf.js +22 -0
- package/out/_next/static/chunks/42gcpy51w7lk1.js +1 -0
- package/out/_next/static/chunks/{1ph0tfo-4hl-f.js → 42ymanq326mo7.js} +1 -1
- package/out/_next/static/chunks/{3w_umk1xtj6to.js → 43fp64xnfy646.js} +1 -1
- package/out/_next/static/chunks/43v4y2gu5z9_h.js +1 -0
- package/out/_next/static/chunks/44cer242u-f8v.js +1 -0
- package/out/_next/static/chunks/{1ozi46t8jajqh.js → 44zi0gl0a6a8w.js} +1 -1
- package/out/_next/static/chunks/turbopack-0n2o5_bkskckx.js +1 -0
- package/out/_not-found/__next._full.txt +12 -12
- package/out/_not-found/__next._not-found.__PAGE__.txt +19 -2
- package/out/_not-found/__next._tree.txt +2 -2
- package/out/_not-found.html +1 -1
- package/out/_not-found.txt +12 -12
- package/out/index.html +1 -1
- package/out/index.txt +11 -11
- package/package.json +15 -15
- package/out/__next._head.txt +0 -6
- package/out/__next._index.txt +0 -5
- package/out/_next/static/chunks/00g5suuoa-_wn.js +0 -1
- package/out/_next/static/chunks/01fh3_bncbe5u.js +0 -1
- package/out/_next/static/chunks/01urdkl1j8o6l.js +0 -1
- package/out/_next/static/chunks/026vw95s88gsy.js +0 -1
- package/out/_next/static/chunks/02eui3ctddbd2.js +0 -1
- package/out/_next/static/chunks/04c4nksb5y9r-.js +0 -1
- package/out/_next/static/chunks/04g-l-_b4payc.js +0 -1
- package/out/_next/static/chunks/04j9pexbmysdy.js +0 -1
- package/out/_next/static/chunks/055baac5e-c2o.js +0 -1
- package/out/_next/static/chunks/05bdni_jrobq1.js +0 -1
- package/out/_next/static/chunks/05o0tb8l_htmw.js +0 -1
- package/out/_next/static/chunks/07z6p262h5hgl.js +0 -1
- package/out/_next/static/chunks/08m_4cihfmik8.js +0 -1
- package/out/_next/static/chunks/08obqw64faj8j.js +0 -1
- package/out/_next/static/chunks/099ilz3dmm1jw.js +0 -1
- package/out/_next/static/chunks/09ppu_k464q-n.js +0 -1
- package/out/_next/static/chunks/0bgcaf2x51kms.js +0 -1
- package/out/_next/static/chunks/0c5d3qn2mb3ew.js +0 -1
- package/out/_next/static/chunks/0dck67in84de0.js +0 -1
- package/out/_next/static/chunks/0dg4wxz-6u5lo.js +0 -1
- package/out/_next/static/chunks/0dva036n8ab62.js +0 -1
- package/out/_next/static/chunks/0erga_bzezbza.js +0 -1
- package/out/_next/static/chunks/0f0-i105odxqd.js +0 -1
- package/out/_next/static/chunks/0gyeqz9pagssf.js +0 -1
- package/out/_next/static/chunks/0i82k-t0fbn8f.js +0 -1
- package/out/_next/static/chunks/0kzw45f61wm3j.js +0 -1
- package/out/_next/static/chunks/0l8bfa2xewq69.js +0 -1
- package/out/_next/static/chunks/0n-zml1gn0o1u.js +0 -1
- package/out/_next/static/chunks/0n92hec_jb_-_.js +0 -1
- package/out/_next/static/chunks/0pv2wirx45e1m.js +0 -1
- package/out/_next/static/chunks/0qxd_8t3nca36.js +0 -1
- package/out/_next/static/chunks/0s1jghzw8jufz.js +0 -1
- package/out/_next/static/chunks/0s84ekz_f9ngx.js +0 -1
- package/out/_next/static/chunks/0ti58h622yo-_.js +0 -2
- package/out/_next/static/chunks/0u8yr4k1y6m2t.js +0 -1
- package/out/_next/static/chunks/0ubxyut5rr600.js +0 -1
- package/out/_next/static/chunks/0wbw9h7rsis2r.js +0 -1
- package/out/_next/static/chunks/0y4e49hpuucdi.js +0 -1
- package/out/_next/static/chunks/1-b44873bjsdw.js +0 -1
- package/out/_next/static/chunks/1-c3a1vnl8v1q.js +0 -1
- package/out/_next/static/chunks/1-xf86jgea22y.js +0 -1
- package/out/_next/static/chunks/10b0qqdnb_nox.js +0 -1
- package/out/_next/static/chunks/12kdmh0h_mboy.js +0 -1
- package/out/_next/static/chunks/14ijcpo72av4r.js +0 -1
- package/out/_next/static/chunks/16hdip1drt8o-.js +0 -1
- package/out/_next/static/chunks/18txc1wwwu9f9.js +0 -1
- package/out/_next/static/chunks/18wa83g0qfh-b.js +0 -1
- package/out/_next/static/chunks/19dp8nr4uygg2.js +0 -5
- package/out/_next/static/chunks/1_8acnu6_-qe-.js +0 -1
- package/out/_next/static/chunks/1__nujzr9e352.js +0 -3
- package/out/_next/static/chunks/1bmyq1b0by7ug.js +0 -1
- package/out/_next/static/chunks/1d1tpj9nm1nhf.js +0 -1
- package/out/_next/static/chunks/1dfwa563iciz3.js +0 -1
- package/out/_next/static/chunks/1di5enkavl9vx.js +0 -4
- package/out/_next/static/chunks/1fwsjnd1y-lx_.js +0 -1
- package/out/_next/static/chunks/1gaexq_suxai0.js +0 -1
- package/out/_next/static/chunks/1gnggc6370ji-.js +0 -1
- package/out/_next/static/chunks/1gtj_l5ame5mw.js +0 -1
- package/out/_next/static/chunks/1hsvckd0sgdgr.js +0 -1
- package/out/_next/static/chunks/1i4f3n_2_3ery.js +0 -1
- package/out/_next/static/chunks/1j7e3qpjuj89a.js +0 -1
- package/out/_next/static/chunks/1mrvp94tietcv.js +0 -1
- package/out/_next/static/chunks/1mvadj46owrck.js +0 -1
- package/out/_next/static/chunks/1nasz7q3tvb53.js +0 -1
- package/out/_next/static/chunks/1o3ggu95lfu6i.js +0 -1
- package/out/_next/static/chunks/1qjsgebn9m-0l.js +0 -1
- package/out/_next/static/chunks/1rr74xxjtckyv.js +0 -1
- package/out/_next/static/chunks/1uu55ejvi7q5u.js +0 -1
- package/out/_next/static/chunks/1xbzxfeq9789f.js +0 -1
- package/out/_next/static/chunks/1ybiu-rkt50_1.js +0 -1
- package/out/_next/static/chunks/20qelrstvz9_n.js +0 -1
- package/out/_next/static/chunks/21at65obnoo8z.js +0 -1
- package/out/_next/static/chunks/21ko5mxfderw0.js +0 -1
- package/out/_next/static/chunks/21muzwu43o8xg.js +0 -1
- package/out/_next/static/chunks/23d-hvrwpixpm.js +0 -1
- package/out/_next/static/chunks/2569rrrffvm2w.js +0 -31
- package/out/_next/static/chunks/29o74k0d6hkdf.js +0 -1
- package/out/_next/static/chunks/2bm95r0011asw.js +0 -1
- package/out/_next/static/chunks/2btabnibkm0db.js +0 -1
- package/out/_next/static/chunks/2c--awgkdcikq.js +0 -1
- package/out/_next/static/chunks/2c2dspoukng-5.js +0 -1
- package/out/_next/static/chunks/2ep7mjbaoeou0.js +0 -1
- package/out/_next/static/chunks/2ezgqm7atphi6.js +0 -1
- package/out/_next/static/chunks/2gfjzq_vjea4w.js +0 -1
- package/out/_next/static/chunks/2h5hase6ewoyc.js +0 -1
- package/out/_next/static/chunks/2hghi41nhdww2.css +0 -3
- package/out/_next/static/chunks/2ies66gmou203.js +0 -1
- package/out/_next/static/chunks/2jenu2eek9viz.js +0 -1
- package/out/_next/static/chunks/2luaj_cf5f19-.js +0 -1
- package/out/_next/static/chunks/2mgmvz66gh5ub.js +0 -1
- package/out/_next/static/chunks/2nwlqtv3vrzcv.js +0 -1
- package/out/_next/static/chunks/2o8k8x5zcepfy.js +0 -1
- package/out/_next/static/chunks/2pcdnd4nzcw4c.js +0 -1
- package/out/_next/static/chunks/2q0rz76kj6h5z.js +0 -1
- package/out/_next/static/chunks/2si5cg3hl5dtf.js +0 -4
- package/out/_next/static/chunks/2uhrhq35bki6u.js +0 -1
- package/out/_next/static/chunks/2wi7y3sfqyqdo.js +0 -3
- package/out/_next/static/chunks/2ymtumj-hfrjo.js +0 -1
- package/out/_next/static/chunks/2zdzgmacaoor9.js +0 -1
- package/out/_next/static/chunks/3-irhmtm1q5qw.js +0 -1
- package/out/_next/static/chunks/3-k74vn9exnb6.js +0 -1
- package/out/_next/static/chunks/31ei992g8gqz9.js +0 -1
- package/out/_next/static/chunks/34845aqksy1dl.js +0 -3
- package/out/_next/static/chunks/34y7nx6qmat06.js +0 -1
- package/out/_next/static/chunks/36rqw8h6ildpl.js +0 -1
- package/out/_next/static/chunks/3a_khw6q6pyh1.js +0 -1
- package/out/_next/static/chunks/3c_31f20z4jrl.js +0 -1
- package/out/_next/static/chunks/3ckp70rgr63u9.js +0 -1
- package/out/_next/static/chunks/3ed24zmt8qfys.js +0 -1
- package/out/_next/static/chunks/3ez20hi1mxw0w.js +0 -1
- package/out/_next/static/chunks/3fdx-rnos5ft-.js +0 -1
- package/out/_next/static/chunks/3fgfbxxb-j_bn.js +0 -4
- package/out/_next/static/chunks/3k-gz8qf-mj-p.js +0 -1
- package/out/_next/static/chunks/3lehc5pujwhsz.js +0 -1
- package/out/_next/static/chunks/3m0ytnc241yfz.js +0 -1
- package/out/_next/static/chunks/3mpe7c3iyxn5h.js +0 -1
- package/out/_next/static/chunks/3mvaub8qjdyuc.js +0 -1
- package/out/_next/static/chunks/3nw7u4bie0-g6.js +0 -1
- package/out/_next/static/chunks/3qatb38-tk_gd.js +0 -1
- package/out/_next/static/chunks/3tdcdi_utmoy_.js +0 -1
- package/out/_next/static/chunks/3tdzweqszru4y.js +0 -1
- package/out/_next/static/chunks/3tt_ir_va6262.js +0 -1
- package/out/_next/static/chunks/3y_51bmdnc0ey.js +0 -1
- package/out/_next/static/chunks/3yr66ufoli71t.js +0 -1
- package/out/_next/static/chunks/41qxc142snm22.js +0 -1
- package/out/_next/static/chunks/43qmngblcab8f.js +0 -1
- package/out/_next/static/chunks/turbopack-3r8yn0j92tqw_.js +0 -1
- package/out/_not-found/__next._head.txt +0 -6
- package/out/_not-found/__next._index.txt +0 -5
- package/out/_not-found/__next._not-found.txt +0 -5
- /package/out/_next/static/{BvOGdrl2Cfw-jVV73WY6a → A1hxMz783bIWo0Q9qqV3L}/_buildManifest.js +0 -0
- /package/out/_next/static/{BvOGdrl2Cfw-jVV73WY6a → A1hxMz783bIWo0Q9qqV3L}/_clientMiddlewareManifest.js +0 -0
- /package/out/_next/static/{BvOGdrl2Cfw-jVV73WY6a → A1hxMz783bIWo0Q9qqV3L}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,85998,e=>{"use strict";var t=e.i(85595),i=e.i(53773),s=e.i(26272),r=e.i(42580),a=e.i(80434),n=e.i(70432),l=e.i(19990),o=e.i(95410),u=e.i(45707),h=e.i(47700),T=e.i(26253);class _ extends h.MaterialDefines{constructor(){super(...arguments),this.BRDF_V_HEIGHT_CORRELATED=!1,this.MS_BRDF_ENERGY_CONSERVATION=!1,this.SPHERICAL_HARMONICS=!1,this.SPECULAR_GLOSSINESS_ENERGY_CONSERVATION=!1,this.MIX_IBL_RADIANCE_WITH_IRRADIANCE=!0,this.LEGACY_SPECULAR_ENERGY_CONSERVATION=!1,this.BASE_DIFFUSE_MODEL=0,this.DIELECTRIC_SPECULAR_MODEL=0,this.CONDUCTOR_SPECULAR_MODEL=0}}class c extends T.MaterialPluginBase{_markAllSubMeshesAsMiscDirty(){this._internalMarkAllSubMeshesAsMiscDirty()}isCompatible(){return!0}constructor(e,t=!0){super(e,"PBRBRDF",90,new _,t),this._useEnergyConservation=c.DEFAULT_USE_ENERGY_CONSERVATION,this.useEnergyConservation=c.DEFAULT_USE_ENERGY_CONSERVATION,this._useSmithVisibilityHeightCorrelated=c.DEFAULT_USE_SMITH_VISIBILITY_HEIGHT_CORRELATED,this.useSmithVisibilityHeightCorrelated=c.DEFAULT_USE_SMITH_VISIBILITY_HEIGHT_CORRELATED,this._useSphericalHarmonics=c.DEFAULT_USE_SPHERICAL_HARMONICS,this.useSphericalHarmonics=c.DEFAULT_USE_SPHERICAL_HARMONICS,this._useSpecularGlossinessInputEnergyConservation=c.DEFAULT_USE_SPECULAR_GLOSSINESS_INPUT_ENERGY_CONSERVATION,this.useSpecularGlossinessInputEnergyConservation=c.DEFAULT_USE_SPECULAR_GLOSSINESS_INPUT_ENERGY_CONSERVATION,this._mixIblRadianceWithIrradiance=c.DEFAULT_MIX_IBL_RADIANCE_WITH_IRRADIANCE,this.mixIblRadianceWithIrradiance=c.DEFAULT_MIX_IBL_RADIANCE_WITH_IRRADIANCE,this._useLegacySpecularEnergyConservation=c.DEFAULT_USE_LEGACY_SPECULAR_ENERGY_CONSERVATION,this.useLegacySpecularEnergyConservation=c.DEFAULT_USE_LEGACY_SPECULAR_ENERGY_CONSERVATION,this._baseDiffuseModel=c.DEFAULT_DIFFUSE_MODEL,this.baseDiffuseModel=c.DEFAULT_DIFFUSE_MODEL,this._dielectricSpecularModel=c.DEFAULT_DIELECTRIC_SPECULAR_MODEL,this.dielectricSpecularModel=c.DEFAULT_DIELECTRIC_SPECULAR_MODEL,this._conductorSpecularModel=c.DEFAULT_CONDUCTOR_SPECULAR_MODEL,this.conductorSpecularModel=c.DEFAULT_CONDUCTOR_SPECULAR_MODEL,this._internalMarkAllSubMeshesAsMiscDirty=e._dirtyCallbacks[16],this._enable(!0)}prepareDefines(e){e.BRDF_V_HEIGHT_CORRELATED=this._useSmithVisibilityHeightCorrelated,e.MS_BRDF_ENERGY_CONSERVATION=this._useEnergyConservation&&this._useSmithVisibilityHeightCorrelated,e.SPHERICAL_HARMONICS=this._useSphericalHarmonics,e.SPECULAR_GLOSSINESS_ENERGY_CONSERVATION=this._useSpecularGlossinessInputEnergyConservation,e.MIX_IBL_RADIANCE_WITH_IRRADIANCE=this._mixIblRadianceWithIrradiance&&!this._material._disableLighting,e.LEGACY_SPECULAR_ENERGY_CONSERVATION=this._useLegacySpecularEnergyConservation,e.BASE_DIFFUSE_MODEL=this._baseDiffuseModel,e.DIELECTRIC_SPECULAR_MODEL=this._dielectricSpecularModel,e.CONDUCTOR_SPECULAR_MODEL=this._conductorSpecularModel}getClassName(){return"PBRBRDFConfiguration"}}c.DEFAULT_USE_ENERGY_CONSERVATION=!0,c.DEFAULT_USE_SMITH_VISIBILITY_HEIGHT_CORRELATED=!0,c.DEFAULT_USE_SPHERICAL_HARMONICS=!0,c.DEFAULT_USE_SPECULAR_GLOSSINESS_INPUT_ENERGY_CONSERVATION=!0,c.DEFAULT_MIX_IBL_RADIANCE_WITH_IRRADIANCE=!0,c.DEFAULT_USE_LEGACY_SPECULAR_ENERGY_CONSERVATION=!0,c.DEFAULT_DIFFUSE_MODEL=0,c.DEFAULT_DIELECTRIC_SPECULAR_MODEL=0,c.DEFAULT_CONDUCTOR_SPECULAR_MODEL=0,(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsMiscDirty")],c.prototype,"useEnergyConservation",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsMiscDirty")],c.prototype,"useSmithVisibilityHeightCorrelated",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsMiscDirty")],c.prototype,"useSphericalHarmonics",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsMiscDirty")],c.prototype,"useSpecularGlossinessInputEnergyConservation",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsMiscDirty")],c.prototype,"mixIblRadianceWithIrradiance",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsMiscDirty")],c.prototype,"useLegacySpecularEnergyConservation",void 0),(0,t.__decorate)([(0,i.serialize)("baseDiffuseModel"),(0,i.expandToProperty)("_markAllSubMeshesAsMiscDirty")],c.prototype,"baseDiffuseModel",void 0),(0,t.__decorate)([(0,i.serialize)("dielectricSpecularModel"),(0,i.expandToProperty)("_markAllSubMeshesAsMiscDirty")],c.prototype,"dielectricSpecularModel",void 0),(0,t.__decorate)([(0,i.serialize)("conductorSpecularModel"),(0,i.expandToProperty)("_markAllSubMeshesAsMiscDirty")],c.prototype,"conductorSpecularModel",void 0);var E=e.i(53692),d=e.i(62844),A=e.i(67298),p=e.i(57135),x=h,R=e.i(25974),S=e.i(24462),m=e.i(69914),f=T,C=h,I=e.i(1682);class M extends C.MaterialDefines{constructor(){super(...arguments),this.CLEARCOAT=!1,this.CLEARCOAT_DEFAULTIOR=!1,this.CLEARCOAT_TEXTURE=!1,this.CLEARCOAT_TEXTURE_ROUGHNESS=!1,this.CLEARCOAT_TEXTUREDIRECTUV=0,this.CLEARCOAT_TEXTURE_ROUGHNESSDIRECTUV=0,this.CLEARCOAT_BUMP=!1,this.CLEARCOAT_BUMPDIRECTUV=0,this.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE=!1,this.CLEARCOAT_REMAP_F0=!1,this.CLEARCOAT_TINT=!1,this.CLEARCOAT_TINT_TEXTURE=!1,this.CLEARCOAT_TINT_TEXTUREDIRECTUV=0,this.CLEARCOAT_TINT_GAMMATEXTURE=!1}}class y extends f.MaterialPluginBase{_markAllSubMeshesAsTexturesDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}isCompatible(){return!0}constructor(e,t=!0){super(e,"PBRClearCoat",100,new M,t),this._isEnabled=!1,this.isEnabled=!1,this.intensity=1,this.roughness=0,this._indexOfRefraction=y._DefaultIndexOfRefraction,this.indexOfRefraction=y._DefaultIndexOfRefraction,this._texture=null,this.texture=null,this._useRoughnessFromMainTexture=!0,this.useRoughnessFromMainTexture=!0,this._textureRoughness=null,this.textureRoughness=null,this._remapF0OnInterfaceChange=!0,this.remapF0OnInterfaceChange=!0,this._bumpTexture=null,this.bumpTexture=null,this._isTintEnabled=!1,this.isTintEnabled=!1,this.tintColor=r.Color3.White(),this.tintColorAtDistance=1,this.tintThickness=1,this._tintTexture=null,this.tintTexture=null,this._internalMarkAllSubMeshesAsTexturesDirty=e._dirtyCallbacks[1]}isReadyForSubMesh(e,t,i){if(!this._isEnabled)return!0;let s=this._material._disableBumpMap;return(!e._areTexturesDirty||!t.texturesEnabled||(!this._texture||!S.MaterialFlags.ClearCoatTextureEnabled||!!this._texture.isReadyOrNotBlocking())&&(!this._textureRoughness||!S.MaterialFlags.ClearCoatTextureEnabled||!!this._textureRoughness.isReadyOrNotBlocking())&&(!i.getCaps().standardDerivatives||!this._bumpTexture||!S.MaterialFlags.ClearCoatBumpTextureEnabled||!!s||!!this._bumpTexture.isReady())&&(!this._isTintEnabled||!this._tintTexture||!S.MaterialFlags.ClearCoatTintTextureEnabled||!!this._tintTexture.isReadyOrNotBlocking()))&&!0}prepareDefinesBeforeAttributes(e,t){this._isEnabled?(e.CLEARCOAT=!0,e.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE=this._useRoughnessFromMainTexture,e.CLEARCOAT_REMAP_F0=this._remapF0OnInterfaceChange,e._areTexturesDirty&&t.texturesEnabled&&(this._texture&&S.MaterialFlags.ClearCoatTextureEnabled?(0,I.PrepareDefinesForMergedUV)(this._texture,e,"CLEARCOAT_TEXTURE"):e.CLEARCOAT_TEXTURE=!1,this._textureRoughness&&S.MaterialFlags.ClearCoatTextureEnabled?(0,I.PrepareDefinesForMergedUV)(this._textureRoughness,e,"CLEARCOAT_TEXTURE_ROUGHNESS"):e.CLEARCOAT_TEXTURE_ROUGHNESS=!1,this._bumpTexture&&S.MaterialFlags.ClearCoatBumpTextureEnabled?(0,I.PrepareDefinesForMergedUV)(this._bumpTexture,e,"CLEARCOAT_BUMP"):e.CLEARCOAT_BUMP=!1,e.CLEARCOAT_DEFAULTIOR=this._indexOfRefraction===y._DefaultIndexOfRefraction,this._isTintEnabled?(e.CLEARCOAT_TINT=!0,this._tintTexture&&S.MaterialFlags.ClearCoatTintTextureEnabled?((0,I.PrepareDefinesForMergedUV)(this._tintTexture,e,"CLEARCOAT_TINT_TEXTURE"),e.CLEARCOAT_TINT_GAMMATEXTURE=this._tintTexture.gammaSpace):e.CLEARCOAT_TINT_TEXTURE=!1):(e.CLEARCOAT_TINT=!1,e.CLEARCOAT_TINT_TEXTURE=!1))):(e.CLEARCOAT=!1,e.CLEARCOAT_TEXTURE=!1,e.CLEARCOAT_TEXTURE_ROUGHNESS=!1,e.CLEARCOAT_BUMP=!1,e.CLEARCOAT_TINT=!1,e.CLEARCOAT_TINT_TEXTURE=!1,e.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE=!1,e.CLEARCOAT_DEFAULTIOR=!1,e.CLEARCOAT_TEXTUREDIRECTUV=0,e.CLEARCOAT_TEXTURE_ROUGHNESSDIRECTUV=0,e.CLEARCOAT_BUMPDIRECTUV=0,e.CLEARCOAT_REMAP_F0=!1,e.CLEARCOAT_TINT_TEXTUREDIRECTUV=0,e.CLEARCOAT_TINT_GAMMATEXTURE=!1)}bindForSubMesh(e,t,i,s){if(!this._isEnabled)return;let r=s.materialDefines,a=this._material.isFrozen,n=this._material._disableBumpMap,l=this._material._invertNormalMapX,o=this._material._invertNormalMapY;if(!e.useUbo||!a||!e.isSync){(this._texture||this._textureRoughness)&&S.MaterialFlags.ClearCoatTextureEnabled&&(e.updateFloat4("vClearCoatInfos",this._texture?.coordinatesIndex??0,this._texture?.level??0,this._textureRoughness?.coordinatesIndex??0,this._textureRoughness?.level??0),this._texture&&(0,I.BindTextureMatrix)(this._texture,e,"clearCoat"),this._textureRoughness&&!r.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE&&(0,I.BindTextureMatrix)(this._textureRoughness,e,"clearCoatRoughness")),this._bumpTexture&&i.getCaps().standardDerivatives&&S.MaterialFlags.ClearCoatTextureEnabled&&!n&&(e.updateFloat2("vClearCoatBumpInfos",this._bumpTexture.coordinatesIndex,this._bumpTexture.level),(0,I.BindTextureMatrix)(this._bumpTexture,e,"clearCoatBump"),t._mirroredCameraPosition?e.updateFloat2("vClearCoatTangentSpaceParams",l?1:-1,o?1:-1):e.updateFloat2("vClearCoatTangentSpaceParams",l?-1:1,o?-1:1)),this._tintTexture&&S.MaterialFlags.ClearCoatTintTextureEnabled&&(e.updateFloat2("vClearCoatTintInfos",this._tintTexture.coordinatesIndex,this._tintTexture.level),(0,I.BindTextureMatrix)(this._tintTexture,e,"clearCoatTint")),e.updateFloat2("vClearCoatParams",this.intensity,this.roughness);let s=1-this._indexOfRefraction,a=1+this._indexOfRefraction,u=Math.pow(-s/a,2),h=1/this._indexOfRefraction;e.updateFloat4("vClearCoatRefractionParams",u,h,s,a),this._isTintEnabled&&(e.updateFloat4("vClearCoatTintParams",this.tintColor.r,this.tintColor.g,this.tintColor.b,Math.max(1e-5,this.tintThickness)),e.updateFloat("clearCoatColorAtDistance",Math.max(1e-5,this.tintColorAtDistance)))}t.texturesEnabled&&(this._texture&&S.MaterialFlags.ClearCoatTextureEnabled&&e.setTexture("clearCoatSampler",this._texture),this._textureRoughness&&!r.CLEARCOAT_USE_ROUGHNESS_FROM_MAINTEXTURE&&S.MaterialFlags.ClearCoatTextureEnabled&&e.setTexture("clearCoatRoughnessSampler",this._textureRoughness),this._bumpTexture&&i.getCaps().standardDerivatives&&S.MaterialFlags.ClearCoatBumpTextureEnabled&&!n&&e.setTexture("clearCoatBumpSampler",this._bumpTexture),this._isTintEnabled&&this._tintTexture&&S.MaterialFlags.ClearCoatTintTextureEnabled&&e.setTexture("clearCoatTintSampler",this._tintTexture))}hasTexture(e){return this._texture===e||this._textureRoughness===e||this._bumpTexture===e||this._tintTexture===e}getActiveTextures(e){this._texture&&e.push(this._texture),this._textureRoughness&&e.push(this._textureRoughness),this._bumpTexture&&e.push(this._bumpTexture),this._tintTexture&&e.push(this._tintTexture)}getAnimatables(e){this._texture&&this._texture.animations&&this._texture.animations.length>0&&e.push(this._texture),this._textureRoughness&&this._textureRoughness.animations&&this._textureRoughness.animations.length>0&&e.push(this._textureRoughness),this._bumpTexture&&this._bumpTexture.animations&&this._bumpTexture.animations.length>0&&e.push(this._bumpTexture),this._tintTexture&&this._tintTexture.animations&&this._tintTexture.animations.length>0&&e.push(this._tintTexture)}dispose(e){e&&(this._texture?.dispose(),this._textureRoughness?.dispose(),this._bumpTexture?.dispose(),this._tintTexture?.dispose())}getClassName(){return"PBRClearCoatConfiguration"}addFallbacks(e,t,i){return e.CLEARCOAT_BUMP&&t.addFallback(i++,"CLEARCOAT_BUMP"),e.CLEARCOAT_TINT&&t.addFallback(i++,"CLEARCOAT_TINT"),e.CLEARCOAT&&t.addFallback(i++,"CLEARCOAT"),i}getSamplers(e){e.push("clearCoatSampler","clearCoatRoughnessSampler","clearCoatBumpSampler","clearCoatTintSampler")}getUniforms(){return{ubo:[{name:"vClearCoatParams",size:2,type:"vec2"},{name:"vClearCoatRefractionParams",size:4,type:"vec4"},{name:"vClearCoatInfos",size:4,type:"vec4"},{name:"clearCoatMatrix",size:16,type:"mat4"},{name:"clearCoatRoughnessMatrix",size:16,type:"mat4"},{name:"vClearCoatBumpInfos",size:2,type:"vec2"},{name:"vClearCoatTangentSpaceParams",size:2,type:"vec2"},{name:"clearCoatBumpMatrix",size:16,type:"mat4"},{name:"vClearCoatTintParams",size:4,type:"vec4"},{name:"clearCoatColorAtDistance",size:1,type:"float"},{name:"vClearCoatTintInfos",size:2,type:"vec2"},{name:"clearCoatTintMatrix",size:16,type:"mat4"}]}}}y._DefaultIndexOfRefraction=1.5,(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],y.prototype,"isEnabled",void 0),(0,t.__decorate)([(0,i.serialize)()],y.prototype,"intensity",void 0),(0,t.__decorate)([(0,i.serialize)()],y.prototype,"roughness",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],y.prototype,"indexOfRefraction",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],y.prototype,"texture",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],y.prototype,"useRoughnessFromMainTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],y.prototype,"textureRoughness",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],y.prototype,"remapF0OnInterfaceChange",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],y.prototype,"bumpTexture",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],y.prototype,"isTintEnabled",void 0),(0,t.__decorate)([(0,i.serializeAsColor3)()],y.prototype,"tintColor",void 0),(0,t.__decorate)([(0,i.serialize)()],y.prototype,"tintColorAtDistance",void 0),(0,t.__decorate)([(0,i.serialize)()],y.prototype,"tintThickness",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],y.prototype,"tintTexture",void 0);var g=T,b=h;class L extends b.MaterialDefines{constructor(){super(...arguments),this.IRIDESCENCE=!1,this.IRIDESCENCE_TEXTURE=!1,this.IRIDESCENCE_TEXTUREDIRECTUV=0,this.IRIDESCENCE_THICKNESS_TEXTURE=!1,this.IRIDESCENCE_THICKNESS_TEXTUREDIRECTUV=0}}class N extends g.MaterialPluginBase{_markAllSubMeshesAsTexturesDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}isCompatible(){return!0}constructor(e,t=!0){super(e,"PBRIridescence",110,new L,t),this._isEnabled=!1,this.isEnabled=!1,this.intensity=1,this.minimumThickness=N._DefaultMinimumThickness,this.maximumThickness=N._DefaultMaximumThickness,this.indexOfRefraction=N._DefaultIndexOfRefraction,this._texture=null,this.texture=null,this._thicknessTexture=null,this.thicknessTexture=null,this._internalMarkAllSubMeshesAsTexturesDirty=e._dirtyCallbacks[1]}isReadyForSubMesh(e,t){return!this._isEnabled||(!e._areTexturesDirty||!t.texturesEnabled||(!this._texture||!S.MaterialFlags.IridescenceTextureEnabled||!!this._texture.isReadyOrNotBlocking())&&(!this._thicknessTexture||!S.MaterialFlags.IridescenceTextureEnabled||!!this._thicknessTexture.isReadyOrNotBlocking()))&&!0}prepareDefinesBeforeAttributes(e,t){this._isEnabled?(e.IRIDESCENCE=!0,e._areTexturesDirty&&t.texturesEnabled&&(this._texture&&S.MaterialFlags.IridescenceTextureEnabled?(0,I.PrepareDefinesForMergedUV)(this._texture,e,"IRIDESCENCE_TEXTURE"):e.IRIDESCENCE_TEXTURE=!1,this._thicknessTexture&&S.MaterialFlags.IridescenceTextureEnabled?(0,I.PrepareDefinesForMergedUV)(this._thicknessTexture,e,"IRIDESCENCE_THICKNESS_TEXTURE"):e.IRIDESCENCE_THICKNESS_TEXTURE=!1)):(e.IRIDESCENCE=!1,e.IRIDESCENCE_TEXTURE=!1,e.IRIDESCENCE_THICKNESS_TEXTURE=!1,e.IRIDESCENCE_TEXTUREDIRECTUV=0,e.IRIDESCENCE_THICKNESS_TEXTUREDIRECTUV=0)}bindForSubMesh(e,t){if(!this._isEnabled)return;let i=this._material.isFrozen;e.useUbo&&i&&e.isSync||((this._texture||this._thicknessTexture)&&S.MaterialFlags.IridescenceTextureEnabled&&(e.updateFloat4("vIridescenceInfos",this._texture?.coordinatesIndex??0,this._texture?.level??0,this._thicknessTexture?.coordinatesIndex??0,this._thicknessTexture?.level??0),this._texture&&(0,I.BindTextureMatrix)(this._texture,e,"iridescence"),this._thicknessTexture&&(0,I.BindTextureMatrix)(this._thicknessTexture,e,"iridescenceThickness")),e.updateFloat4("vIridescenceParams",this.intensity,this.indexOfRefraction,this.minimumThickness,this.maximumThickness)),t.texturesEnabled&&(this._texture&&S.MaterialFlags.IridescenceTextureEnabled&&e.setTexture("iridescenceSampler",this._texture),this._thicknessTexture&&S.MaterialFlags.IridescenceTextureEnabled&&e.setTexture("iridescenceThicknessSampler",this._thicknessTexture))}hasTexture(e){return this._texture===e||this._thicknessTexture===e}getActiveTextures(e){this._texture&&e.push(this._texture),this._thicknessTexture&&e.push(this._thicknessTexture)}getAnimatables(e){this._texture&&this._texture.animations&&this._texture.animations.length>0&&e.push(this._texture),this._thicknessTexture&&this._thicknessTexture.animations&&this._thicknessTexture.animations.length>0&&e.push(this._thicknessTexture)}dispose(e){e&&(this._texture?.dispose(),this._thicknessTexture?.dispose())}getClassName(){return"PBRIridescenceConfiguration"}addFallbacks(e,t,i){return e.IRIDESCENCE&&t.addFallback(i++,"IRIDESCENCE"),i}getSamplers(e){e.push("iridescenceSampler","iridescenceThicknessSampler")}getUniforms(){return{ubo:[{name:"vIridescenceParams",size:4,type:"vec4"},{name:"vIridescenceInfos",size:4,type:"vec4"},{name:"iridescenceMatrix",size:16,type:"mat4"},{name:"iridescenceThicknessMatrix",size:16,type:"mat4"}]}}}N._DefaultMinimumThickness=100,N._DefaultMaximumThickness=400,N._DefaultIndexOfRefraction=1.3,(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],N.prototype,"isEnabled",void 0),(0,t.__decorate)([(0,i.serialize)()],N.prototype,"intensity",void 0),(0,t.__decorate)([(0,i.serialize)()],N.prototype,"minimumThickness",void 0),(0,t.__decorate)([(0,i.serialize)()],N.prototype,"maximumThickness",void 0),(0,t.__decorate)([(0,i.serialize)()],N.prototype,"indexOfRefraction",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],N.prototype,"texture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],N.prototype,"thicknessTexture",void 0);var F=T,O=h;class P extends O.MaterialDefines{constructor(){super(...arguments),this.ANISOTROPIC=!1,this.ANISOTROPIC_TEXTURE=!1,this.ANISOTROPIC_TEXTUREDIRECTUV=0,this.ANISOTROPIC_LEGACY=!1,this.MAINUV1=!1}}class D extends F.MaterialPluginBase{set angle(e){this.direction.x=Math.cos(e),this.direction.y=Math.sin(e)}get angle(){return Math.atan2(this.direction.y,this.direction.x)}_markAllSubMeshesAsTexturesDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}_markAllSubMeshesAsMiscDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsMiscDirty()}isCompatible(){return!0}constructor(e,t=!0){super(e,"PBRAnisotropic",110,new P,t),this._isEnabled=!1,this.isEnabled=!1,this.intensity=1,this.direction=new o.Vector2(1,0),this._texture=null,this.texture=null,this._legacy=!1,this.legacy=!1,this._internalMarkAllSubMeshesAsTexturesDirty=e._dirtyCallbacks[1],this._internalMarkAllSubMeshesAsMiscDirty=e._dirtyCallbacks[16]}isReadyForSubMesh(e,t){return!this._isEnabled||!e._areTexturesDirty||!t.texturesEnabled||!this._texture||!S.MaterialFlags.AnisotropicTextureEnabled||!!this._texture.isReadyOrNotBlocking()}prepareDefinesBeforeAttributes(e,t,i){this._isEnabled?(e.ANISOTROPIC=this._isEnabled,this._isEnabled&&!i.isVerticesDataPresent(u.VertexBuffer.TangentKind)&&(e._needUVs=!0,e.MAINUV1=!0),e._areTexturesDirty&&t.texturesEnabled&&(this._texture&&S.MaterialFlags.AnisotropicTextureEnabled?(0,I.PrepareDefinesForMergedUV)(this._texture,e,"ANISOTROPIC_TEXTURE"):e.ANISOTROPIC_TEXTURE=!1),e._areMiscDirty&&(e.ANISOTROPIC_LEGACY=this._legacy)):(e.ANISOTROPIC=!1,e.ANISOTROPIC_TEXTURE=!1,e.ANISOTROPIC_TEXTUREDIRECTUV=0,e.ANISOTROPIC_LEGACY=!1)}bindForSubMesh(e,t){if(!this._isEnabled)return;let i=this._material.isFrozen;e.useUbo&&i&&e.isSync||(this._texture&&S.MaterialFlags.AnisotropicTextureEnabled&&(e.updateFloat2("vAnisotropyInfos",this._texture.coordinatesIndex,this._texture.level),(0,I.BindTextureMatrix)(this._texture,e,"anisotropy")),e.updateFloat3("vAnisotropy",this.direction.x,this.direction.y,this.intensity)),t.texturesEnabled&&this._texture&&S.MaterialFlags.AnisotropicTextureEnabled&&e.setTexture("anisotropySampler",this._texture)}hasTexture(e){return this._texture===e}getActiveTextures(e){this._texture&&e.push(this._texture)}getAnimatables(e){this._texture&&this._texture.animations&&this._texture.animations.length>0&&e.push(this._texture)}dispose(e){e&&this._texture&&this._texture.dispose()}getClassName(){return"PBRAnisotropicConfiguration"}addFallbacks(e,t,i){return e.ANISOTROPIC&&t.addFallback(i++,"ANISOTROPIC"),i}getSamplers(e){e.push("anisotropySampler")}getUniforms(){return{ubo:[{name:"vAnisotropy",size:3,type:"vec3"},{name:"vAnisotropyInfos",size:2,type:"vec2"},{name:"anisotropyMatrix",size:16,type:"mat4"}]}}parse(e,t,i){super.parse(e,t,i),void 0===e.legacy&&(this.legacy=!0)}}(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],D.prototype,"isEnabled",void 0),(0,t.__decorate)([(0,i.serialize)()],D.prototype,"intensity",void 0),(0,t.__decorate)([(0,i.serializeAsVector2)()],D.prototype,"direction",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],D.prototype,"texture",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsMiscDirty")],D.prototype,"legacy",void 0);var v=T,U=h;class B extends U.MaterialDefines{constructor(){super(...arguments),this.SHEEN=!1,this.SHEEN_TEXTURE=!1,this.SHEEN_GAMMATEXTURE=!1,this.SHEEN_TEXTURE_ROUGHNESS=!1,this.SHEEN_TEXTUREDIRECTUV=0,this.SHEEN_TEXTURE_ROUGHNESSDIRECTUV=0,this.SHEEN_LINKWITHALBEDO=!1,this.SHEEN_ROUGHNESS=!1,this.SHEEN_ALBEDOSCALING=!1,this.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE=!1}}class k extends v.MaterialPluginBase{_markAllSubMeshesAsTexturesDirty(){this._enable(this._isEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}isCompatible(){return!0}constructor(e,t=!0){super(e,"Sheen",120,new B,t),this._isEnabled=!1,this.isEnabled=!1,this._linkSheenWithAlbedo=!1,this.linkSheenWithAlbedo=!1,this.intensity=1,this.color=r.Color3.White(),this._texture=null,this.texture=null,this._useRoughnessFromMainTexture=!0,this.useRoughnessFromMainTexture=!0,this._roughness=null,this.roughness=null,this._textureRoughness=null,this.textureRoughness=null,this._albedoScaling=!1,this.albedoScaling=!1,this._internalMarkAllSubMeshesAsTexturesDirty=e._dirtyCallbacks[1]}isReadyForSubMesh(e,t){return!this._isEnabled||(!e._areTexturesDirty||!t.texturesEnabled||(!this._texture||!S.MaterialFlags.SheenTextureEnabled||!!this._texture.isReadyOrNotBlocking())&&(!this._textureRoughness||!S.MaterialFlags.SheenTextureEnabled||!!this._textureRoughness.isReadyOrNotBlocking()))&&!0}prepareDefinesBeforeAttributes(e,t){this._isEnabled?(e.SHEEN=!0,e.SHEEN_LINKWITHALBEDO=this._linkSheenWithAlbedo,e.SHEEN_ROUGHNESS=null!==this._roughness,e.SHEEN_ALBEDOSCALING=this._albedoScaling,e.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE=this._useRoughnessFromMainTexture,e._areTexturesDirty&&t.texturesEnabled&&(this._texture&&S.MaterialFlags.SheenTextureEnabled?((0,I.PrepareDefinesForMergedUV)(this._texture,e,"SHEEN_TEXTURE"),e.SHEEN_GAMMATEXTURE=this._texture.gammaSpace):e.SHEEN_TEXTURE=!1,this._textureRoughness&&S.MaterialFlags.SheenTextureEnabled?(0,I.PrepareDefinesForMergedUV)(this._textureRoughness,e,"SHEEN_TEXTURE_ROUGHNESS"):e.SHEEN_TEXTURE_ROUGHNESS=!1)):(e.SHEEN=!1,e.SHEEN_TEXTURE=!1,e.SHEEN_TEXTURE_ROUGHNESS=!1,e.SHEEN_LINKWITHALBEDO=!1,e.SHEEN_ROUGHNESS=!1,e.SHEEN_ALBEDOSCALING=!1,e.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE=!1,e.SHEEN_GAMMATEXTURE=!1,e.SHEEN_TEXTUREDIRECTUV=0,e.SHEEN_TEXTURE_ROUGHNESSDIRECTUV=0)}bindForSubMesh(e,t,i,s){if(!this._isEnabled)return;let r=s.materialDefines,a=this._material.isFrozen;e.useUbo&&a&&e.isSync||((this._texture||this._textureRoughness)&&S.MaterialFlags.SheenTextureEnabled&&(e.updateFloat4("vSheenInfos",this._texture?.coordinatesIndex??0,this._texture?.level??0,this._textureRoughness?.coordinatesIndex??0,this._textureRoughness?.level??0),this._texture&&(0,I.BindTextureMatrix)(this._texture,e,"sheen"),this._textureRoughness&&!r.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE&&(0,I.BindTextureMatrix)(this._textureRoughness,e,"sheenRoughness")),e.updateFloat4("vSheenColor",this.color.r,this.color.g,this.color.b,this.intensity),null!==this._roughness&&e.updateFloat("vSheenRoughness",this._roughness)),t.texturesEnabled&&(this._texture&&S.MaterialFlags.SheenTextureEnabled&&e.setTexture("sheenSampler",this._texture),this._textureRoughness&&!r.SHEEN_USE_ROUGHNESS_FROM_MAINTEXTURE&&S.MaterialFlags.SheenTextureEnabled&&e.setTexture("sheenRoughnessSampler",this._textureRoughness))}hasTexture(e){return this._texture===e||this._textureRoughness===e}getActiveTextures(e){this._texture&&e.push(this._texture),this._textureRoughness&&e.push(this._textureRoughness)}getAnimatables(e){this._texture&&this._texture.animations&&this._texture.animations.length>0&&e.push(this._texture),this._textureRoughness&&this._textureRoughness.animations&&this._textureRoughness.animations.length>0&&e.push(this._textureRoughness)}dispose(e){e&&(this._texture?.dispose(),this._textureRoughness?.dispose())}getClassName(){return"PBRSheenConfiguration"}addFallbacks(e,t,i){return e.SHEEN&&t.addFallback(i++,"SHEEN"),i}getSamplers(e){e.push("sheenSampler","sheenRoughnessSampler")}getUniforms(){return{ubo:[{name:"vSheenColor",size:4,type:"vec4"},{name:"vSheenRoughness",size:1,type:"float"},{name:"vSheenInfos",size:4,type:"vec4"},{name:"sheenMatrix",size:16,type:"mat4"},{name:"sheenRoughnessMatrix",size:16,type:"mat4"}]}}}(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],k.prototype,"isEnabled",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],k.prototype,"linkSheenWithAlbedo",void 0),(0,t.__decorate)([(0,i.serialize)()],k.prototype,"intensity",void 0),(0,t.__decorate)([(0,i.serializeAsColor3)()],k.prototype,"color",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],k.prototype,"texture",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],k.prototype,"useRoughnessFromMainTexture",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],k.prototype,"roughness",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],k.prototype,"textureRoughness",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],k.prototype,"albedoScaling",void 0);var H=T,G=h;class z extends G.MaterialDefines{constructor(){super(...arguments),this.SUBSURFACE=!1,this.SS_REFRACTION=!1,this.SS_REFRACTION_USE_INTENSITY_FROM_THICKNESS=!1,this.SS_TRANSLUCENCY=!1,this.SS_TRANSLUCENCY_USE_INTENSITY_FROM_THICKNESS=!1,this.SS_SCATTERING=!1,this.SS_DISPERSION=!1,this.SS_THICKNESSANDMASK_TEXTURE=!1,this.SS_THICKNESSANDMASK_TEXTUREDIRECTUV=0,this.SS_HAS_THICKNESS=!1,this.SS_REFRACTIONINTENSITY_TEXTURE=!1,this.SS_REFRACTIONINTENSITY_TEXTUREDIRECTUV=0,this.SS_TRANSLUCENCYINTENSITY_TEXTURE=!1,this.SS_TRANSLUCENCYINTENSITY_TEXTUREDIRECTUV=0,this.SS_TRANSLUCENCYCOLOR_TEXTURE=!1,this.SS_TRANSLUCENCYCOLOR_TEXTUREDIRECTUV=0,this.SS_TRANSLUCENCYCOLOR_TEXTURE_GAMMA=!1,this.SS_REFRACTIONMAP_3D=!1,this.SS_REFRACTIONMAP_OPPOSITEZ=!1,this.SS_LODINREFRACTIONALPHA=!1,this.SS_GAMMAREFRACTION=!1,this.SS_RGBDREFRACTION=!1,this.SS_LINEARSPECULARREFRACTION=!1,this.SS_LINKREFRACTIONTOTRANSPARENCY=!1,this.SS_ALBEDOFORREFRACTIONTINT=!1,this.SS_ALBEDOFORTRANSLUCENCYTINT=!1,this.SS_USE_LOCAL_REFRACTIONMAP_CUBIC=!1,this.SS_USE_THICKNESS_AS_DEPTH=!1,this.SS_USE_GLTF_TEXTURES=!1,this.SS_APPLY_ALBEDO_AFTER_SUBSURFACE=!1,this.SS_TRANSLUCENCY_LEGACY=!1}}class V extends H.MaterialPluginBase{get scatteringDiffusionProfile(){return this._scene.subSurfaceConfiguration?this._scene.subSurfaceConfiguration.ssDiffusionProfileColors[this._scatteringDiffusionProfileIndex]:null}set scatteringDiffusionProfile(e){this._scene.enableSubSurfaceForPrePass()&&e&&(this._scatteringDiffusionProfileIndex=this._scene.subSurfaceConfiguration.addDiffusionProfile(e))}get volumeIndexOfRefraction(){return this._volumeIndexOfRefraction>=1?this._volumeIndexOfRefraction:this._indexOfRefraction}set volumeIndexOfRefraction(e){e>=1?this._volumeIndexOfRefraction=e:this._volumeIndexOfRefraction=-1}get legacyTransluceny(){return this.legacyTranslucency}set legacyTransluceny(e){this.legacyTranslucency=e}_markAllSubMeshesAsTexturesDirty(){this._enable(this._isRefractionEnabled||this._isTranslucencyEnabled||this._isScatteringEnabled),this._internalMarkAllSubMeshesAsTexturesDirty()}_markScenePrePassDirty(){this._enable(this._isRefractionEnabled||this._isTranslucencyEnabled||this._isScatteringEnabled),this._internalMarkAllSubMeshesAsTexturesDirty(),this._internalMarkScenePrePassDirty()}isCompatible(){return!0}constructor(e,t=!0){super(e,"PBRSubSurface",130,new z,t),this._isRefractionEnabled=!1,this.isRefractionEnabled=!1,this._isTranslucencyEnabled=!1,this.isTranslucencyEnabled=!1,this._isDispersionEnabled=!1,this.isDispersionEnabled=!1,this._isScatteringEnabled=!1,this.isScatteringEnabled=!1,this._scatteringDiffusionProfileIndex=0,this.refractionIntensity=1,this.translucencyIntensity=1,this._useAlbedoToTintRefraction=!1,this.useAlbedoToTintRefraction=!1,this._useAlbedoToTintTranslucency=!1,this.useAlbedoToTintTranslucency=!1,this._thicknessTexture=null,this.thicknessTexture=null,this._refractionTexture=null,this.refractionTexture=null,this._indexOfRefraction=1.5,this.indexOfRefraction=1.5,this._volumeIndexOfRefraction=-1,this._invertRefractionY=!1,this.invertRefractionY=!1,this._linkRefractionWithTransparency=!1,this.linkRefractionWithTransparency=!1,this.minimumThickness=0,this.maximumThickness=1,this.useThicknessAsDepth=!1,this.tintColor=r.Color3.White(),this.tintColorAtDistance=1,this.dispersion=0,this.diffusionDistance=r.Color3.White(),this._useMaskFromThicknessTexture=!1,this.useMaskFromThicknessTexture=!1,this._refractionIntensityTexture=null,this.refractionIntensityTexture=null,this._translucencyIntensityTexture=null,this.translucencyIntensityTexture=null,this.translucencyColor=null,this._translucencyColorTexture=null,this.translucencyColorTexture=null,this._useGltfStyleTextures=!0,this.useGltfStyleTextures=!0,this.applyAlbedoAfterSubSurface=V.DEFAULT_APPLY_ALBEDO_AFTERSUBSURFACE,this.legacyTranslucency=V.DEFAULT_LEGACY_TRANSLUCENCY,this._scene=e.getScene(),this.registerForExtraEvents=!0,this._internalMarkAllSubMeshesAsTexturesDirty=e._dirtyCallbacks[1],this._internalMarkScenePrePassDirty=e._dirtyCallbacks[32]}isReadyForSubMesh(e,t){if(!this._isRefractionEnabled&&!this._isTranslucencyEnabled&&!this._isScatteringEnabled)return!0;if(e._areTexturesDirty&&t.texturesEnabled){if(this._thicknessTexture&&S.MaterialFlags.ThicknessTextureEnabled&&!this._thicknessTexture.isReadyOrNotBlocking()||this._refractionIntensityTexture&&S.MaterialFlags.RefractionIntensityTextureEnabled&&!this._refractionIntensityTexture.isReadyOrNotBlocking()||this._translucencyColorTexture&&S.MaterialFlags.TranslucencyColorTextureEnabled&&!this._translucencyColorTexture.isReadyOrNotBlocking()||this._translucencyIntensityTexture&&S.MaterialFlags.TranslucencyIntensityTextureEnabled&&!this._translucencyIntensityTexture.isReadyOrNotBlocking())return!1;let e=this._getRefractionTexture(t);if(e&&S.MaterialFlags.RefractionTextureEnabled&&!e.isReadyOrNotBlocking())return!1}return!0}prepareDefinesBeforeAttributes(e,t){if(!this._isRefractionEnabled&&!this._isTranslucencyEnabled&&!this._isScatteringEnabled){e.SUBSURFACE=!1,e.SS_DISPERSION=!1,e.SS_TRANSLUCENCY=!1,e.SS_SCATTERING=!1,e.SS_REFRACTION=!1,e.SS_REFRACTION_USE_INTENSITY_FROM_THICKNESS=!1,e.SS_TRANSLUCENCY_USE_INTENSITY_FROM_THICKNESS=!1,e.SS_THICKNESSANDMASK_TEXTURE=!1,e.SS_THICKNESSANDMASK_TEXTUREDIRECTUV=0,e.SS_HAS_THICKNESS=!1,e.SS_REFRACTIONINTENSITY_TEXTURE=!1,e.SS_REFRACTIONINTENSITY_TEXTUREDIRECTUV=0,e.SS_TRANSLUCENCYINTENSITY_TEXTURE=!1,e.SS_TRANSLUCENCYINTENSITY_TEXTUREDIRECTUV=0,e.SS_REFRACTIONMAP_3D=!1,e.SS_REFRACTIONMAP_OPPOSITEZ=!1,e.SS_LODINREFRACTIONALPHA=!1,e.SS_GAMMAREFRACTION=!1,e.SS_RGBDREFRACTION=!1,e.SS_LINEARSPECULARREFRACTION=!1,e.SS_LINKREFRACTIONTOTRANSPARENCY=!1,e.SS_ALBEDOFORREFRACTIONTINT=!1,e.SS_ALBEDOFORTRANSLUCENCYTINT=!1,e.SS_USE_LOCAL_REFRACTIONMAP_CUBIC=!1,e.SS_USE_THICKNESS_AS_DEPTH=!1,e.SS_USE_GLTF_TEXTURES=!1,e.SS_TRANSLUCENCYCOLOR_TEXTURE=!1,e.SS_TRANSLUCENCYCOLOR_TEXTUREDIRECTUV=0,e.SS_TRANSLUCENCYCOLOR_TEXTURE_GAMMA=!1,e.SS_APPLY_ALBEDO_AFTER_SUBSURFACE=!1;return}if(e._areTexturesDirty){if(e.SUBSURFACE=!0,e.SS_DISPERSION=this._isDispersionEnabled,e.SS_TRANSLUCENCY=this._isTranslucencyEnabled,e.SS_TRANSLUCENCY_USE_INTENSITY_FROM_THICKNESS=!1,e.SS_TRANSLUCENCY_LEGACY=this.legacyTranslucency,e.SS_SCATTERING=this._isScatteringEnabled,e.SS_THICKNESSANDMASK_TEXTURE=!1,e.SS_REFRACTIONINTENSITY_TEXTURE=!1,e.SS_TRANSLUCENCYINTENSITY_TEXTURE=!1,e.SS_HAS_THICKNESS=!1,e.SS_USE_GLTF_TEXTURES=!1,e.SS_REFRACTION=!1,e.SS_REFRACTION_USE_INTENSITY_FROM_THICKNESS=!1,e.SS_REFRACTIONMAP_3D=!1,e.SS_GAMMAREFRACTION=!1,e.SS_RGBDREFRACTION=!1,e.SS_LINEARSPECULARREFRACTION=!1,e.SS_REFRACTIONMAP_OPPOSITEZ=!1,e.SS_LODINREFRACTIONALPHA=!1,e.SS_LINKREFRACTIONTOTRANSPARENCY=!1,e.SS_ALBEDOFORREFRACTIONTINT=!1,e.SS_ALBEDOFORTRANSLUCENCYTINT=!1,e.SS_USE_LOCAL_REFRACTIONMAP_CUBIC=!1,e.SS_USE_THICKNESS_AS_DEPTH=!1,e.SS_TRANSLUCENCYCOLOR_TEXTURE=!1,e.SS_APPLY_ALBEDO_AFTER_SUBSURFACE=this.applyAlbedoAfterSubSurface,e._areTexturesDirty&&t.texturesEnabled&&(this._thicknessTexture&&S.MaterialFlags.ThicknessTextureEnabled&&(0,I.PrepareDefinesForMergedUV)(this._thicknessTexture,e,"SS_THICKNESSANDMASK_TEXTURE"),this._refractionIntensityTexture&&S.MaterialFlags.RefractionIntensityTextureEnabled&&(0,I.PrepareDefinesForMergedUV)(this._refractionIntensityTexture,e,"SS_REFRACTIONINTENSITY_TEXTURE"),this._translucencyIntensityTexture&&S.MaterialFlags.TranslucencyIntensityTextureEnabled&&(0,I.PrepareDefinesForMergedUV)(this._translucencyIntensityTexture,e,"SS_TRANSLUCENCYINTENSITY_TEXTURE"),this._translucencyColorTexture&&S.MaterialFlags.TranslucencyColorTextureEnabled&&((0,I.PrepareDefinesForMergedUV)(this._translucencyColorTexture,e,"SS_TRANSLUCENCYCOLOR_TEXTURE"),e.SS_TRANSLUCENCYCOLOR_TEXTURE_GAMMA=this._translucencyColorTexture.gammaSpace)),e.SS_HAS_THICKNESS=this.maximumThickness-this.minimumThickness!=0,e.SS_USE_GLTF_TEXTURES=this._useGltfStyleTextures,e.SS_REFRACTION_USE_INTENSITY_FROM_THICKNESS=this._useMaskFromThicknessTexture&&!this._refractionIntensityTexture,e.SS_TRANSLUCENCY_USE_INTENSITY_FROM_THICKNESS=this._useMaskFromThicknessTexture&&!this._translucencyIntensityTexture,this._isRefractionEnabled&&t.texturesEnabled){let i=this._getRefractionTexture(t);i&&S.MaterialFlags.RefractionTextureEnabled&&(e.SS_REFRACTION=!0,e.SS_REFRACTIONMAP_3D=i.isCube,e.SS_GAMMAREFRACTION=i.gammaSpace,e.SS_RGBDREFRACTION=i.isRGBD,e.SS_LINEARSPECULARREFRACTION=i.linearSpecularLOD,e.SS_REFRACTIONMAP_OPPOSITEZ=this._scene.useRightHandedSystem&&i.isCube?!i.invertZ:i.invertZ,e.SS_LODINREFRACTIONALPHA=i.lodLevelInAlpha,e.SS_LINKREFRACTIONTOTRANSPARENCY=this._linkRefractionWithTransparency,e.SS_ALBEDOFORREFRACTIONTINT=this._useAlbedoToTintRefraction,e.SS_USE_LOCAL_REFRACTIONMAP_CUBIC=i.isCube&&i.boundingBoxSize,e.SS_USE_THICKNESS_AS_DEPTH=this.useThicknessAsDepth)}this._isTranslucencyEnabled&&(e.SS_ALBEDOFORTRANSLUCENCYTINT=this._useAlbedoToTintTranslucency)}}hardBindForSubMesh(e,t,i,s){if(this._isRefractionEnabled||this._isTranslucencyEnabled||this._isScatteringEnabled)if(0===this.maximumThickness&&0===this.minimumThickness)e.updateFloat2("vThicknessParam",0,0);else{s.getRenderingMesh().getWorldMatrix().decompose(o.TmpVectors.Vector3[0]);let t=Math.max(Math.abs(o.TmpVectors.Vector3[0].x),Math.abs(o.TmpVectors.Vector3[0].y),Math.abs(o.TmpVectors.Vector3[0].z));e.updateFloat2("vThicknessParam",this.minimumThickness*t,(this.maximumThickness-this.minimumThickness)*t)}}bindForSubMesh(e,t,i,s){if(!this._isRefractionEnabled&&!this._isTranslucencyEnabled&&!this._isScatteringEnabled)return;let r=s.materialDefines,a=this._material.isFrozen,n=this._material.realTimeFiltering,l=r.LODBASEDMICROSFURACE,o=this._getRefractionTexture(t);if(!e.useUbo||!a||!e.isSync){if(this._thicknessTexture&&S.MaterialFlags.ThicknessTextureEnabled&&(e.updateFloat2("vThicknessInfos",this._thicknessTexture.coordinatesIndex,this._thicknessTexture.level),(0,I.BindTextureMatrix)(this._thicknessTexture,e,"thickness")),this._refractionIntensityTexture&&S.MaterialFlags.RefractionIntensityTextureEnabled&&r.SS_REFRACTIONINTENSITY_TEXTURE&&(e.updateFloat2("vRefractionIntensityInfos",this._refractionIntensityTexture.coordinatesIndex,this._refractionIntensityTexture.level),(0,I.BindTextureMatrix)(this._refractionIntensityTexture,e,"refractionIntensity")),this._translucencyColorTexture&&S.MaterialFlags.TranslucencyColorTextureEnabled&&r.SS_TRANSLUCENCYCOLOR_TEXTURE&&(e.updateFloat2("vTranslucencyColorInfos",this._translucencyColorTexture.coordinatesIndex,this._translucencyColorTexture.level),(0,I.BindTextureMatrix)(this._translucencyColorTexture,e,"translucencyColor")),this._translucencyIntensityTexture&&S.MaterialFlags.TranslucencyIntensityTextureEnabled&&r.SS_TRANSLUCENCYINTENSITY_TEXTURE&&(e.updateFloat2("vTranslucencyIntensityInfos",this._translucencyIntensityTexture.coordinatesIndex,this._translucencyIntensityTexture.level),(0,I.BindTextureMatrix)(this._translucencyIntensityTexture,e,"translucencyIntensity")),o&&S.MaterialFlags.RefractionTextureEnabled){e.updateMatrix("refractionMatrix",o.getRefractionTextureMatrix());let t=1;!o.isCube&&o.depth&&(t=o.depth);let i=o.getSize().width,s=this.volumeIndexOfRefraction;e.updateFloat4("vRefractionInfos",o.level,1/s,t,this._invertRefractionY?-1:1),e.updateFloat4("vRefractionMicrosurfaceInfos",i,o.lodGenerationScale,o.lodGenerationOffset,1/this.indexOfRefraction),n&&e.updateFloat2("vRefractionFilteringInfo",i,Math.log2(i)),o.boundingBoxSize&&(e.updateVector3("vRefractionPosition",o.boundingBoxPosition),e.updateVector3("vRefractionSize",o.boundingBoxSize))}this._isScatteringEnabled&&e.updateFloat("scatteringDiffusionProfile",this._scatteringDiffusionProfileIndex),e.updateColor3("vDiffusionDistance",this.diffusionDistance),e.updateFloat4("vTintColor",this.tintColor.r,this.tintColor.g,this.tintColor.b,Math.max(1e-5,this.tintColorAtDistance)),e.updateColor4("vTranslucencyColor",this.translucencyColor??this.tintColor,0),e.updateFloat3("vSubSurfaceIntensity",this.refractionIntensity,this.translucencyIntensity,0),e.updateFloat("dispersion",this.dispersion)}t.texturesEnabled&&(this._thicknessTexture&&S.MaterialFlags.ThicknessTextureEnabled&&e.setTexture("thicknessSampler",this._thicknessTexture),this._refractionIntensityTexture&&S.MaterialFlags.RefractionIntensityTextureEnabled&&r.SS_REFRACTIONINTENSITY_TEXTURE&&e.setTexture("refractionIntensitySampler",this._refractionIntensityTexture),this._translucencyIntensityTexture&&S.MaterialFlags.TranslucencyIntensityTextureEnabled&&r.SS_TRANSLUCENCYINTENSITY_TEXTURE&&e.setTexture("translucencyIntensitySampler",this._translucencyIntensityTexture),this._translucencyColorTexture&&S.MaterialFlags.TranslucencyColorTextureEnabled&&r.SS_TRANSLUCENCYCOLOR_TEXTURE&&e.setTexture("translucencyColorSampler",this._translucencyColorTexture),o&&S.MaterialFlags.RefractionTextureEnabled&&(l?e.setTexture("refractionSampler",o):(e.setTexture("refractionSampler",o._lodTextureMid||o),e.setTexture("refractionSamplerLow",o._lodTextureLow||o),e.setTexture("refractionSamplerHigh",o._lodTextureHigh||o))))}_getRefractionTexture(e){return this._refractionTexture?this._refractionTexture:this._isRefractionEnabled?e.environmentTexture:null}get disableAlphaBlending(){return this._isRefractionEnabled&&this._linkRefractionWithTransparency}fillRenderTargetTextures(e){S.MaterialFlags.RefractionTextureEnabled&&this._refractionTexture&&this._refractionTexture.isRenderTarget&&e.push(this._refractionTexture)}hasTexture(e){return this._thicknessTexture===e||this._refractionTexture===e||this._refractionIntensityTexture===e||this._translucencyIntensityTexture===e||this._translucencyColorTexture===e}hasRenderTargetTextures(){return!!S.MaterialFlags.RefractionTextureEnabled&&!!this._refractionTexture&&!!this._refractionTexture.isRenderTarget}getActiveTextures(e){this._thicknessTexture&&e.push(this._thicknessTexture),this._refractionTexture&&e.push(this._refractionTexture),this._refractionIntensityTexture&&e.push(this._refractionIntensityTexture),this._translucencyColorTexture&&e.push(this._translucencyColorTexture),this._translucencyIntensityTexture&&e.push(this._translucencyIntensityTexture)}getAnimatables(e){this._thicknessTexture&&this._thicknessTexture.animations&&this._thicknessTexture.animations.length>0&&e.push(this._thicknessTexture),this._refractionTexture&&this._refractionTexture.animations&&this._refractionTexture.animations.length>0&&e.push(this._refractionTexture),this._refractionIntensityTexture&&this._refractionIntensityTexture.animations&&this._refractionIntensityTexture.animations.length>0&&e.push(this._refractionIntensityTexture),this._translucencyColorTexture&&this._translucencyColorTexture.animations&&this._translucencyColorTexture.animations.length>0&&e.push(this._translucencyColorTexture),this._translucencyIntensityTexture&&this._translucencyIntensityTexture.animations&&this._translucencyIntensityTexture.animations.length>0&&e.push(this._translucencyIntensityTexture)}dispose(e){e&&(this._thicknessTexture&&this._thicknessTexture.dispose(),this._refractionTexture&&this._refractionTexture.dispose(),this._refractionIntensityTexture&&this._refractionIntensityTexture.dispose(),this._translucencyColorTexture&&this._translucencyColorTexture.dispose(),this._translucencyIntensityTexture&&this._translucencyIntensityTexture.dispose())}getClassName(){return"PBRSubSurfaceConfiguration"}addFallbacks(e,t,i){return e.SS_SCATTERING&&t.addFallback(i++,"SS_SCATTERING"),e.SS_TRANSLUCENCY&&t.addFallback(i++,"SS_TRANSLUCENCY"),i}getSamplers(e){e.push("thicknessSampler","refractionIntensitySampler","translucencyIntensitySampler","refractionSampler","refractionSamplerLow","refractionSamplerHigh","translucencyColorSampler")}getUniforms(){return{ubo:[{name:"vRefractionMicrosurfaceInfos",size:4,type:"vec4"},{name:"vRefractionFilteringInfo",size:2,type:"vec2"},{name:"vTranslucencyIntensityInfos",size:2,type:"vec2"},{name:"vRefractionInfos",size:4,type:"vec4"},{name:"refractionMatrix",size:16,type:"mat4"},{name:"vThicknessInfos",size:2,type:"vec2"},{name:"vRefractionIntensityInfos",size:2,type:"vec2"},{name:"thicknessMatrix",size:16,type:"mat4"},{name:"refractionIntensityMatrix",size:16,type:"mat4"},{name:"translucencyIntensityMatrix",size:16,type:"mat4"},{name:"vThicknessParam",size:2,type:"vec2"},{name:"vDiffusionDistance",size:3,type:"vec3"},{name:"vTintColor",size:4,type:"vec4"},{name:"vSubSurfaceIntensity",size:3,type:"vec3"},{name:"vRefractionPosition",size:3,type:"vec3"},{name:"vRefractionSize",size:3,type:"vec3"},{name:"scatteringDiffusionProfile",size:1,type:"float"},{name:"dispersion",size:1,type:"float"},{name:"vTranslucencyColor",size:4,type:"vec4"},{name:"vTranslucencyColorInfos",size:2,type:"vec2"},{name:"translucencyColorMatrix",size:16,type:"mat4"}]}}}V.DEFAULT_APPLY_ALBEDO_AFTERSUBSURFACE=!1,V.DEFAULT_LEGACY_TRANSLUCENCY=!1,(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"isRefractionEnabled",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"isTranslucencyEnabled",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"isDispersionEnabled",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markScenePrePassDirty")],V.prototype,"isScatteringEnabled",void 0),(0,t.__decorate)([(0,i.serialize)()],V.prototype,"_scatteringDiffusionProfileIndex",void 0),(0,t.__decorate)([(0,i.serialize)()],V.prototype,"refractionIntensity",void 0),(0,t.__decorate)([(0,i.serialize)()],V.prototype,"translucencyIntensity",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"useAlbedoToTintRefraction",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"useAlbedoToTintTranslucency",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"thicknessTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"refractionTexture",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"indexOfRefraction",void 0),(0,t.__decorate)([(0,i.serialize)()],V.prototype,"_volumeIndexOfRefraction",void 0),(0,t.__decorate)([(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"volumeIndexOfRefraction",null),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"invertRefractionY",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"linkRefractionWithTransparency",void 0),(0,t.__decorate)([(0,i.serialize)()],V.prototype,"minimumThickness",void 0),(0,t.__decorate)([(0,i.serialize)()],V.prototype,"maximumThickness",void 0),(0,t.__decorate)([(0,i.serialize)()],V.prototype,"useThicknessAsDepth",void 0),(0,t.__decorate)([(0,i.serializeAsColor3)()],V.prototype,"tintColor",void 0),(0,t.__decorate)([(0,i.serialize)()],V.prototype,"tintColorAtDistance",void 0),(0,t.__decorate)([(0,i.serialize)()],V.prototype,"dispersion",void 0),(0,t.__decorate)([(0,i.serializeAsColor3)()],V.prototype,"diffusionDistance",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"useMaskFromThicknessTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"refractionIntensityTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"translucencyIntensityTexture",void 0),(0,t.__decorate)([(0,i.serializeAsColor3)()],V.prototype,"translucencyColor",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"translucencyColorTexture",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],V.prototype,"useGltfStyleTextures",void 0),(0,t.__decorate)([(0,i.serialize)()],V.prototype,"applyAlbedoAfterSubSurface",void 0),(0,t.__decorate)([(0,i.serialize)()],V.prototype,"legacyTranslucency",void 0);var X=e.i(22473),Y=e.i(36146),W=e.i(47899),w=e.i(75493),K=e.i(71094),Q=e.i(79757),Z=e.i(67482),j=e.i(33945);let J={effect:null,subMesh:null};class $ extends(0,Q.PrepassDefinesMixin)((0,K.UVDefinesMixin)(x.MaterialDefines)){}class q extends(0,d.ImageProcessingDefinesMixin)($){constructor(e){super(e),this.PBR=!0,this.NUM_SAMPLES="0",this.REALTIME_FILTERING=!1,this.IBL_CDF_FILTERING=!1,this.ALBEDO=!1,this.GAMMAALBEDO=!1,this.ALBEDODIRECTUV=0,this.VERTEXCOLOR=!1,this.BASE_WEIGHT=!1,this.BASE_WEIGHTDIRECTUV=0,this.BASE_DIFFUSE_ROUGHNESS=!1,this.BASE_DIFFUSE_ROUGHNESSDIRECTUV=0,this.BAKED_VERTEX_ANIMATION_TEXTURE=!1,this.AMBIENT=!1,this.AMBIENTDIRECTUV=0,this.AMBIENTINGRAYSCALE=!1,this.OPACITY=!1,this.VERTEXALPHA=!1,this.OPACITYDIRECTUV=0,this.OPACITYRGB=!1,this.ALPHATEST=!1,this.DEPTHPREPASS=!1,this.ALPHABLEND=!1,this.ALPHAFROMALBEDO=!1,this.ALPHATESTVALUE="0.5",this.SPECULAROVERALPHA=!1,this.RADIANCEOVERALPHA=!1,this.ALPHAFRESNEL=!1,this.LINEARALPHAFRESNEL=!1,this.PREMULTIPLYALPHA=!1,this.EMISSIVE=!1,this.EMISSIVEDIRECTUV=0,this.GAMMAEMISSIVE=!1,this.REFLECTIVITY=!1,this.REFLECTIVITY_GAMMA=!1,this.REFLECTIVITYDIRECTUV=0,this.SPECULARTERM=!1,this.MICROSURFACEFROMREFLECTIVITYMAP=!1,this.MICROSURFACEAUTOMATIC=!1,this.LODBASEDMICROSFURACE=!1,this.MICROSURFACEMAP=!1,this.MICROSURFACEMAPDIRECTUV=0,this.METALLICWORKFLOW=!1,this.ROUGHNESSSTOREINMETALMAPALPHA=!1,this.ROUGHNESSSTOREINMETALMAPGREEN=!1,this.METALLNESSSTOREINMETALMAPBLUE=!1,this.AOSTOREINMETALMAPRED=!1,this.METALLIC_REFLECTANCE=!1,this.METALLIC_REFLECTANCE_GAMMA=!1,this.METALLIC_REFLECTANCEDIRECTUV=0,this.METALLIC_REFLECTANCE_USE_ALPHA_ONLY=!1,this.REFLECTANCE=!1,this.REFLECTANCE_GAMMA=!1,this.REFLECTANCEDIRECTUV=0,this.ENVIRONMENTBRDF=!1,this.ENVIRONMENTBRDF_RGBD=!1,this.NORMAL=!1,this.TANGENT=!1,this.BUMP=!1,this.BUMPDIRECTUV=0,this.OBJECTSPACE_NORMALMAP=!1,this.PARALLAX=!1,this.PARALLAX_RHS=!1,this.PARALLAXOCCLUSION=!1,this.NORMALXYSCALE=!0,this.LIGHTMAP=!1,this.LIGHTMAPDIRECTUV=0,this.USELIGHTMAPASSHADOWMAP=!1,this.GAMMALIGHTMAP=!1,this.RGBDLIGHTMAP=!1,this.REFLECTION=!1,this.REFLECTIONMAP_3D=!1,this.REFLECTIONMAP_SPHERICAL=!1,this.REFLECTIONMAP_PLANAR=!1,this.REFLECTIONMAP_CUBIC=!1,this.USE_LOCAL_REFLECTIONMAP_CUBIC=!1,this.REFLECTIONMAP_PROJECTION=!1,this.REFLECTIONMAP_SKYBOX=!1,this.REFLECTIONMAP_EXPLICIT=!1,this.REFLECTIONMAP_EQUIRECTANGULAR=!1,this.REFLECTIONMAP_EQUIRECTANGULAR_FIXED=!1,this.REFLECTIONMAP_MIRROREDEQUIRECTANGULAR_FIXED=!1,this.INVERTCUBICMAP=!1,this.USESPHERICALFROMREFLECTIONMAP=!1,this.USEIRRADIANCEMAP=!1,this.USE_IRRADIANCE_DOMINANT_DIRECTION=!1,this.USESPHERICALINVERTEX=!1,this.REFLECTIONMAP_OPPOSITEZ=!1,this.LODINREFLECTIONALPHA=!1,this.GAMMAREFLECTION=!1,this.RGBDREFLECTION=!1,this.LINEARSPECULARREFLECTION=!1,this.RADIANCEOCCLUSION=!1,this.HORIZONOCCLUSION=!1,this.INSTANCES=!1,this.THIN_INSTANCES=!1,this.INSTANCESCOLOR=!1,this.NUM_BONE_INFLUENCERS=0,this.BonesPerMesh=0,this.BONETEXTURE=!1,this.BONES_VELOCITY_ENABLED=!1,this.NONUNIFORMSCALING=!1,this.MORPHTARGETS=!1,this.MORPHTARGETS_POSITION=!1,this.MORPHTARGETS_NORMAL=!1,this.MORPHTARGETS_TANGENT=!1,this.MORPHTARGETS_UV=!1,this.MORPHTARGETS_UV2=!1,this.MORPHTARGETS_COLOR=!1,this.MORPHTARGETTEXTURE_HASPOSITIONS=!1,this.MORPHTARGETTEXTURE_HASNORMALS=!1,this.MORPHTARGETTEXTURE_HASTANGENTS=!1,this.MORPHTARGETTEXTURE_HASUVS=!1,this.MORPHTARGETTEXTURE_HASUV2S=!1,this.MORPHTARGETTEXTURE_HASCOLORS=!1,this.NUM_MORPH_INFLUENCERS=0,this.MORPHTARGETS_TEXTURE=!1,this.MULTIVIEW=!1,this.ORDER_INDEPENDENT_TRANSPARENCY=!1,this.ORDER_INDEPENDENT_TRANSPARENCY_16BITS=!1,this.USEPHYSICALLIGHTFALLOFF=!1,this.USEGLTFLIGHTFALLOFF=!1,this.TWOSIDEDLIGHTING=!1,this.MIRRORED=!1,this.SHADOWFLOAT=!1,this.CLIPPLANE=!1,this.CLIPPLANE2=!1,this.CLIPPLANE3=!1,this.CLIPPLANE4=!1,this.CLIPPLANE5=!1,this.CLIPPLANE6=!1,this.POINTSIZE=!1,this.FOG=!1,this.LOGARITHMICDEPTH=!1,this.CAMERA_ORTHOGRAPHIC=!1,this.CAMERA_PERSPECTIVE=!1,this.AREALIGHTSUPPORTED=!0,this.FORCENORMALFORWARD=!1,this.SPECULARAA=!1,this.UNLIT=!1,this.DECAL_AFTER_DETAIL=!1,this.TEXTURE_REPETITION_MODE=0,this.DEBUGMODE=0,this.USE_VERTEX_PULLING=!1,this.VERTEX_PULLING_USE_INDEX_BUFFER=!1,this.VERTEX_PULLING_INDEX_BUFFER_32BITS=!1,this.RIGHT_HANDED=!1,this.CLUSTLIGHT_SLICES=0,this.CLUSTLIGHT_BATCH=0,this.rebuild()}reset(){super.reset(),this.ALPHATESTVALUE="0.5",this.PBR=!0,this.NORMALXYSCALE=!0}}class ee extends(0,Z.ImageProcessingMixin)(R.PushMaterial){}class et extends ee{get realTimeFiltering(){return this._realTimeFiltering}set realTimeFiltering(e){this._realTimeFiltering=e,this.markAsDirty(1)}get realTimeFilteringQuality(){return this._realTimeFilteringQuality}set realTimeFilteringQuality(e){this._realTimeFilteringQuality=e,this.markAsDirty(1)}get canRenderToMRT(){return!0}constructor(e,t,i=!1){super(e,t,void 0,i||et.ForceGLSL),this._directIntensity=1,this._emissiveIntensity=1,this._environmentIntensity=1,this._specularIntensity=1,this._lightingInfos=new o.Vector4(this._directIntensity,this._emissiveIntensity,this._environmentIntensity,this._specularIntensity),this._disableBumpMap=!1,this._albedoTexture=null,this._baseWeightTexture=null,this._baseDiffuseRoughnessTexture=null,this._ambientTexture=null,this._ambientTextureStrength=1,this._ambientTextureImpactOnAnalyticalLights=et.DEFAULT_AO_ON_ANALYTICAL_LIGHTS,this._opacityTexture=null,this._reflectionTexture=null,this._emissiveTexture=null,this._reflectivityTexture=null,this._metallicTexture=null,this._metallic=null,this._roughness=null,this._metallicF0Factor=1,this._metallicReflectanceColor=r.Color3.White(),this._useOnlyMetallicFromMetallicReflectanceTexture=!1,this._metallicReflectanceTexture=null,this._reflectanceTexture=null,this._microSurfaceTexture=null,this._bumpTexture=null,this._lightmapTexture=null,this._ambientColor=new r.Color3(0,0,0),this._albedoColor=new r.Color3(1,1,1),this._baseWeight=1,this._baseDiffuseRoughness=null,this._reflectivityColor=new r.Color3(1,1,1),this._reflectionColor=new r.Color3(1,1,1),this._emissiveColor=new r.Color3(0,0,0),this._microSurface=.9,this._useLightmapAsShadowmap=!1,this._useHorizonOcclusion=!0,this._useRadianceOcclusion=!0,this._useAlphaFromAlbedoTexture=!1,this._useSpecularOverAlpha=!0,this._useMicroSurfaceFromReflectivityMapAlpha=!1,this._useRoughnessFromMetallicTextureAlpha=!0,this._useRoughnessFromMetallicTextureGreen=!1,this._useMetallnessFromMetallicTextureBlue=!1,this._useAmbientOcclusionFromMetallicTextureRed=!1,this._useAmbientInGrayScale=!1,this._useAutoMicroSurfaceFromReflectivityMap=!1,this._lightFalloff=et.LIGHTFALLOFF_PHYSICAL,this._useRadianceOverAlpha=!0,this._useObjectSpaceNormalMap=!1,this._useParallax=!1,this._useParallaxOcclusion=!1,this._parallaxScaleBias=.05,this._disableLighting=!1,this._maxSimultaneousLights=4,this._invertNormalMapX=!1,this._invertNormalMapY=!1,this._twoSidedLighting=!1,this._alphaCutOff=.4,this._useAlphaFresnel=!1,this._useLinearAlphaFresnel=!1,this._environmentBRDFTexture=null,this._forceIrradianceInFragment=!1,this._realTimeFiltering=!1,this._realTimeFilteringQuality=8,this._forceNormalForward=!1,this._enableSpecularAntiAliasing=!1,this._renderTargets=new n.SmartArray(16),this._globalAmbientColor=new r.Color3(0,0,0),this._unlit=!1,this._applyDecalMapAfterDetailMap=!1,this._debugMode=0,this._shadersLoaded=!1,this._breakShaderLoadedCheck=!1,this._vertexPullingMetadata=null,this.debugMode=0,this.debugLimit=-1,this.debugFactor=1,this._cacheHasRenderTargetTextures=!1,this.brdf=new c(this),this.clearCoat=new y(this),this.iridescence=new N(this),this.anisotropy=new D(this),this.sheen=new k(this),this.subSurface=new V(this),this.detailMap=new X.DetailMapConfiguration(this),this._attachImageProcessingConfiguration(null),this.getRenderTargetTextures=()=>(this._renderTargets.reset(),S.MaterialFlags.ReflectionTextureEnabled&&this._reflectionTexture&&this._reflectionTexture.isRenderTarget&&this._renderTargets.push(this._reflectionTexture),this._eventInfo.renderTargets=this._renderTargets,this._callbackPluginEventFillRenderTargetTextures(this._eventInfo),this._renderTargets),this._environmentBRDFTexture=(0,s.GetEnvironmentBRDFTexture)(this.getScene()),this.prePassConfiguration=new E.PrePassConfiguration}get hasRenderTargetTextures(){return!!S.MaterialFlags.ReflectionTextureEnabled&&!!this._reflectionTexture&&!!this._reflectionTexture.isRenderTarget||this._cacheHasRenderTargetTextures}get isPrePassCapable(){return!this.disableDepthWrite}getClassName(){return"PBRBaseMaterial"}get _disableAlphaBlending(){return this._transparencyMode===et.PBRMATERIAL_OPAQUE||this._transparencyMode===et.PBRMATERIAL_ALPHATEST||this.subSurface?.disableAlphaBlending}needAlphaBlending(){return this._hasTransparencyMode?this._transparencyModeIsBlend:!this._disableAlphaBlending&&(this.alpha<1||null!=this._opacityTexture||this._shouldUseAlphaFromAlbedoTexture())}needAlphaTesting(){return this._hasTransparencyMode?this._transparencyModeIsTest:!this.subSurface?.disableAlphaBlending&&this._hasAlphaChannel()&&(null==this._transparencyMode||this._transparencyMode===et.PBRMATERIAL_ALPHATEST)}_shouldUseAlphaFromAlbedoTexture(){return null!=this._albedoTexture&&this._albedoTexture.hasAlpha&&this._useAlphaFromAlbedoTexture&&this._transparencyMode!==et.PBRMATERIAL_OPAQUE}_hasAlphaChannel(){return null!=this._albedoTexture&&this._albedoTexture.hasAlpha||null!=this._opacityTexture}getAlphaTestTexture(){return this._albedoTexture}isReadyForSubMesh(e,t,i){this._uniformBufferLayoutBuilt||this.buildUniformLayout();let s=t._drawWrapper;if(s.effect&&this.isFrozen&&s._wasPreviouslyReady&&s._wasPreviouslyUsingInstances===i)return!0;t.materialDefines||(this._callbackPluginEventGeneric(4,this._eventInfo),t.materialDefines=new q(this._eventInfo.defineNames));let r=t.materialDefines;if(this._isReadyForSubMesh(t))return!0;let n=this.getScene(),l=n.getEngine();if(r._areTexturesDirty&&(this._eventInfo.hasRenderTargetTextures=!1,this._callbackPluginEventHasRenderTargetTextures(this._eventInfo),this._cacheHasRenderTargetTextures=this._eventInfo.hasRenderTargetTextures,n.texturesEnabled)){if(this._albedoTexture&&S.MaterialFlags.DiffuseTextureEnabled&&!this._albedoTexture.isReadyOrNotBlocking()||this._baseWeightTexture&&S.MaterialFlags.BaseWeightTextureEnabled&&!this._baseWeightTexture.isReadyOrNotBlocking()||this._baseDiffuseRoughnessTexture&&S.MaterialFlags.BaseDiffuseRoughnessTextureEnabled&&!this._baseDiffuseRoughnessTexture.isReadyOrNotBlocking()||this._ambientTexture&&S.MaterialFlags.AmbientTextureEnabled&&!this._ambientTexture.isReadyOrNotBlocking()||this._opacityTexture&&S.MaterialFlags.OpacityTextureEnabled&&!this._opacityTexture.isReadyOrNotBlocking())return!1;let e=this._getReflectionTexture();if(e&&S.MaterialFlags.ReflectionTextureEnabled){if(!e.isReadyOrNotBlocking())return!1;if(e.irradianceTexture){if(!e.irradianceTexture.isReadyOrNotBlocking())return!1}else if(!e.sphericalPolynomial&&e.getInternalTexture()?._sphericalPolynomialPromise)return!1}if(this._lightmapTexture&&S.MaterialFlags.LightmapTextureEnabled&&!this._lightmapTexture.isReadyOrNotBlocking()||this._emissiveTexture&&S.MaterialFlags.EmissiveTextureEnabled&&!this._emissiveTexture.isReadyOrNotBlocking())return!1;if(S.MaterialFlags.SpecularTextureEnabled){if(this._metallicTexture){if(!this._metallicTexture.isReadyOrNotBlocking())return!1}else if(this._reflectivityTexture&&!this._reflectivityTexture.isReadyOrNotBlocking())return!1;if(this._metallicReflectanceTexture&&!this._metallicReflectanceTexture.isReadyOrNotBlocking()||this._reflectanceTexture&&!this._reflectanceTexture.isReadyOrNotBlocking()||this._microSurfaceTexture&&!this._microSurfaceTexture.isReadyOrNotBlocking())return!1}if(l.getCaps().standardDerivatives&&this._bumpTexture&&S.MaterialFlags.BumpTextureEnabled&&!this._disableBumpMap&&!this._bumpTexture.isReady()||this._environmentBRDFTexture&&S.MaterialFlags.ReflectionTextureEnabled&&!this._environmentBRDFTexture.isReady())return!1}if(this._eventInfo.isReadyForSubMesh=!0,this._eventInfo.defines=r,this._eventInfo.subMesh=t,this._callbackPluginEventIsReadyForSubMesh(this._eventInfo),!this._eventInfo.isReadyForSubMesh||r._areImageProcessingDirty&&this._imageProcessingConfiguration&&!this._imageProcessingConfiguration.isReady())return!1;if(r.AREALIGHTUSED||r.CLUSTLIGHT_BATCH){for(let t=0;t<e.lightSources.length;t++)if(!e.lightSources[t]._isReady())return!1}if(l.getCaps().standardDerivatives||e.isVerticesDataPresent(u.VertexBuffer.NormalKind)||(e.createNormals(!0),a.Logger.Warn("PBRMaterial: Normals have been created for the mesh: "+e.name)),!(0,I.AreLightsTexturesReady)(n,e,this._maxSimultaneousLights,this._disableLighting))return!1;let o=t.effect,h=r._areLightsDisposed,T=this._prepareEffect(e,t.getRenderingMesh(),r,this.onCompiled,this.onError,i,null),_=!1;if(T)if(this._onEffectCreatedObservable&&(J.effect=T,J.subMesh=t,this._onEffectCreatedObservable.notifyObservers(J)),this.allowShaderHotSwapping&&o&&!T.isReady()){if(r.markAsUnprocessed(),_=this.isFrozen,h)return r._areLightsDisposed=!0,!1}else n.resetCachedMaterial(),t.setEffect(T,r,this._materialContext);return!!t.effect&&!!t.effect.isReady()&&(r._renderId=n.getRenderId(),s._wasPreviouslyReady=!_,s._wasPreviouslyUsingInstances=!!i,this._checkScenePerformancePriority(),!0)}isMetallicWorkflow(){return null!=this._metallic||null!=this._roughness||!!this._metallicTexture}_prepareEffect(t,i,s,r=null,a=null,n=null,l=null){if(this._prepareDefines(t,i,s,n,l),!s.isDirty)return null;s.markAsProcessed();let o=this.getScene().getEngine(),h=new m.EffectFallbacks,T=0;s.USESPHERICALINVERTEX&&h.addFallback(T++,"USESPHERICALINVERTEX"),s.FOG&&h.addFallback(T,"FOG"),s.SPECULARAA&&h.addFallback(T,"SPECULARAA"),s.POINTSIZE&&h.addFallback(T,"POINTSIZE"),s.LOGARITHMICDEPTH&&h.addFallback(T,"LOGARITHMICDEPTH"),s.PARALLAX&&h.addFallback(T,"PARALLAX"),s.PARALLAX_RHS&&h.addFallback(T,"PARALLAX_RHS"),s.PARALLAXOCCLUSION&&h.addFallback(T++,"PARALLAXOCCLUSION"),s.ENVIRONMENTBRDF&&h.addFallback(T++,"ENVIRONMENTBRDF"),s.TANGENT&&h.addFallback(T++,"TANGENT"),s.BUMP&&h.addFallback(T++,"BUMP"),T=(0,I.HandleFallbacksForShadows)(s,h,this._maxSimultaneousLights,T),s.SPECULARTERM&&h.addFallback(T++,"SPECULARTERM"),s.USESPHERICALFROMREFLECTIONMAP&&h.addFallback(T++,"USESPHERICALFROMREFLECTIONMAP"),s.USEIRRADIANCEMAP&&h.addFallback(T++,"USEIRRADIANCEMAP"),s.LIGHTMAP&&h.addFallback(T++,"LIGHTMAP"),s.NORMAL&&h.addFallback(T++,"NORMAL"),s.AMBIENT&&h.addFallback(T++,"AMBIENT"),s.EMISSIVE&&h.addFallback(T++,"EMISSIVE"),s.VERTEXCOLOR&&h.addFallback(T++,"VERTEXCOLOR"),s.MORPHTARGETS&&h.addFallback(T++,"MORPHTARGETS"),s.MULTIVIEW&&h.addFallback(0,"MULTIVIEW");let _=[u.VertexBuffer.PositionKind];s.NORMAL&&_.push(u.VertexBuffer.NormalKind),s.TANGENT&&_.push(u.VertexBuffer.TangentKind);for(let e=1;e<=6;++e)s["UV"+e]&&_.push(`uv${1===e?"":e}`);s.VERTEXCOLOR&&_.push(u.VertexBuffer.ColorKind),(0,I.PrepareAttributesForBones)(_,t,s,h),(0,I.PrepareAttributesForInstances)(_,s),(0,I.PrepareAttributesForMorphTargets)(_,t,s),(0,I.PrepareAttributesForBakedVertexAnimation)(_,t,s);let c="pbr",d=["world","view","viewProjection","vEyePosition","vLightsType","vAmbientColor","vAlbedoColor","baseWeight","baseDiffuseRoughness","vReflectivityColor","vMetallicReflectanceFactors","vEmissiveColor","visibility","vFogInfos","vFogColor","pointSize","vAlbedoInfos","vBaseWeightInfos","vBaseDiffuseRoughnessInfos","vAmbientInfos","vOpacityInfos","vEmissiveInfos","vReflectivityInfos","vMetallicReflectanceInfos","vReflectanceInfos","vMicroSurfaceSamplerInfos","vBumpInfos","vLightmapInfos","mBones","albedoMatrix","baseWeightMatrix","baseDiffuseRoughnessMatrix","ambientMatrix","opacityMatrix","emissiveMatrix","reflectivityMatrix","normalMatrix","microSurfaceSamplerMatrix","bumpMatrix","lightmapMatrix","metallicReflectanceMatrix","reflectanceMatrix","vLightingIntensity","logarithmicDepthConstant","vTangentSpaceParams","boneTextureInfo","vDebugMode","morphTargetTextureInfo","morphTargetTextureIndices","cameraInfo","vTextureRepetitionHexTilingParams"],p=["albedoSampler","baseWeightSampler","baseDiffuseRoughnessSampler","reflectivitySampler","ambientSampler","emissiveSampler","bumpSampler","lightmapSampler","opacitySampler","microSurfaceSampler","environmentBrdfSampler","boneSampler","metallicReflectanceSampler","reflectanceSampler","morphTargets","oitDepthSampler","oitFrontColorSampler","areaLightsLTC1Sampler","areaLightsLTC2Sampler"];(0,I.PrepareUniformsAndSamplersForIBL)(d,p,!0);let x=["Material","Scene","Mesh"],R={maxSimultaneousLights:this._maxSimultaneousLights,maxSimultaneousMorphTargets:s.NUM_MORPH_INFLUENCERS};if(this._eventInfo.fallbacks=h,this._eventInfo.fallbackRank=T,this._eventInfo.defines=s,this._eventInfo.uniforms=d,this._eventInfo.attributes=_,this._eventInfo.samplers=p,this._eventInfo.uniformBuffersNames=x,this._eventInfo.customCode=void 0,this._eventInfo.mesh=t,this._eventInfo.indexParameters=R,this._callbackPluginEventGeneric(128,this._eventInfo),w.MaterialHelperGeometryRendering.AddUniformsAndSamplers(d,p),E.PrePassConfiguration.AddUniforms(d),E.PrePassConfiguration.AddSamplers(p),(0,Y.AddClipPlaneUniforms)(d),this._useVertexPulling){let e=i?.geometry;e&&(this._vertexPullingMetadata=(0,W.PrepareVertexPullingUniforms)(e),this._vertexPullingMetadata&&this._vertexPullingMetadata.forEach((e,t)=>{d.push(`vp_${t}_info`)}))}else this._vertexPullingMetadata=null;A.ImageProcessingConfiguration&&(A.ImageProcessingConfiguration.PrepareUniforms(d,s),A.ImageProcessingConfiguration.PrepareSamplers(p,s)),(0,I.PrepareUniformsAndSamplersList)({uniformsNames:d,uniformBuffersNames:x,samplers:p,defines:s,maxSimultaneousLights:this._maxSimultaneousLights,shaderLanguage:this._shaderLanguage});let S={};this.customShaderNameResolve&&(c=this.customShaderNameResolve(c,d,x,p,s,_,S));let f=s.toString(),C=o.createEffect(c,{attributes:_,uniformsNames:d,uniformBuffersNames:x,samplers:p,defines:f,fallbacks:h,onCompiled:r,onError:a,indexParameters:R,processFinalCode:S.processFinalCode,processCodeAfterIncludes:this._eventInfo.customCode,multiTarget:s.PREPASS,shaderLanguage:this._shaderLanguage,extraInitializationsAsync:this._shadersLoaded?void 0:async()=>{1===this.shaderLanguage?await Promise.all([e.A(19572),e.A(24752)]):await Promise.all([e.A(7053),e.A(33250)]),this._shadersLoaded=!0}},o);return this._eventInfo.customCode=void 0,C}_prepareDefines(e,t,i,s=null,r=null){let a=t.hasThinInstances,n=this.getScene(),l=n.getEngine();(0,I.PrepareDefinesForLights)(n,e,i,!0,this._maxSimultaneousLights,this._disableLighting),i._needNormals=!0,(0,I.PrepareDefinesForMultiview)(n,i);let o=this.needAlphaBlendingForMesh(e)&&this.getScene().useOrderIndependentTransparency;if((0,I.PrepareDefinesForPrePass)(n,i,this.canRenderToMRT&&!o),(0,I.PrepareDefinesForOIT)(n,i,o),w.MaterialHelperGeometryRendering.PrepareDefines(l.currentRenderPassId,e,i),i.METALLICWORKFLOW=this.isMetallicWorkflow(),i._areTexturesDirty){i._needUVs=!1;for(let e=1;e<=6;++e)i["MAINUV"+e]=!1;if(n.texturesEnabled){i.ALBEDODIRECTUV=0,i.BASE_WEIGHTDIRECTUV=0,i.BASE_DIFFUSE_ROUGHNESSDIRECTUV=0,i.AMBIENTDIRECTUV=0,i.OPACITYDIRECTUV=0,i.EMISSIVEDIRECTUV=0,i.REFLECTIVITYDIRECTUV=0,i.MICROSURFACEMAPDIRECTUV=0,i.METALLIC_REFLECTANCEDIRECTUV=0,i.REFLECTANCEDIRECTUV=0,i.BUMPDIRECTUV=0,i.LIGHTMAPDIRECTUV=0,l.getCaps().textureLOD&&(i.LODBASEDMICROSFURACE=!0),this._albedoTexture&&S.MaterialFlags.DiffuseTextureEnabled?((0,I.PrepareDefinesForMergedUV)(this._albedoTexture,i,"ALBEDO"),i.GAMMAALBEDO=this._albedoTexture.gammaSpace):i.ALBEDO=!1,this._baseWeightTexture&&S.MaterialFlags.BaseWeightTextureEnabled?(0,I.PrepareDefinesForMergedUV)(this._baseWeightTexture,i,"BASE_WEIGHT"):i.BASE_WEIGHT=!1,this._baseDiffuseRoughnessTexture&&S.MaterialFlags.BaseDiffuseRoughnessTextureEnabled?(0,I.PrepareDefinesForMergedUV)(this._baseDiffuseRoughnessTexture,i,"BASE_DIFFUSE_ROUGHNESS"):i.BASE_DIFFUSE_ROUGHNESS=!1,this._ambientTexture&&S.MaterialFlags.AmbientTextureEnabled?((0,I.PrepareDefinesForMergedUV)(this._ambientTexture,i,"AMBIENT"),i.AMBIENTINGRAYSCALE=this._useAmbientInGrayScale):i.AMBIENT=!1,this._opacityTexture&&S.MaterialFlags.OpacityTextureEnabled?((0,I.PrepareDefinesForMergedUV)(this._opacityTexture,i,"OPACITY"),i.OPACITYRGB=this._opacityTexture.getAlphaFromRGB):i.OPACITY=!1;let e=this._getReflectionTexture(),t=this._forceIrradianceInFragment||this.realTimeFiltering||this._twoSidedLighting||l.getCaps().maxVaryingVectors<=8||null!=this._baseDiffuseRoughnessTexture;(0,I.PrepareDefinesForIBL)(n,e,i,this.realTimeFiltering,this.realTimeFilteringQuality,!t),this._lightmapTexture&&S.MaterialFlags.LightmapTextureEnabled?((0,I.PrepareDefinesForMergedUV)(this._lightmapTexture,i,"LIGHTMAP"),i.USELIGHTMAPASSHADOWMAP=this._useLightmapAsShadowmap,i.GAMMALIGHTMAP=this._lightmapTexture.gammaSpace,i.RGBDLIGHTMAP=this._lightmapTexture.isRGBD):i.LIGHTMAP=!1,this._emissiveTexture&&S.MaterialFlags.EmissiveTextureEnabled?((0,I.PrepareDefinesForMergedUV)(this._emissiveTexture,i,"EMISSIVE"),i.GAMMAEMISSIVE=this._emissiveTexture.gammaSpace):i.EMISSIVE=!1,S.MaterialFlags.SpecularTextureEnabled?(this._metallicTexture?((0,I.PrepareDefinesForMergedUV)(this._metallicTexture,i,"REFLECTIVITY"),i.ROUGHNESSSTOREINMETALMAPALPHA=this._useRoughnessFromMetallicTextureAlpha,i.ROUGHNESSSTOREINMETALMAPGREEN=!this._useRoughnessFromMetallicTextureAlpha&&this._useRoughnessFromMetallicTextureGreen,i.METALLNESSSTOREINMETALMAPBLUE=this._useMetallnessFromMetallicTextureBlue,i.AOSTOREINMETALMAPRED=this._useAmbientOcclusionFromMetallicTextureRed,i.REFLECTIVITY_GAMMA=!1):this._reflectivityTexture?((0,I.PrepareDefinesForMergedUV)(this._reflectivityTexture,i,"REFLECTIVITY"),i.MICROSURFACEFROMREFLECTIVITYMAP=this._useMicroSurfaceFromReflectivityMapAlpha,i.MICROSURFACEAUTOMATIC=this._useAutoMicroSurfaceFromReflectivityMap,i.REFLECTIVITY_GAMMA=this._reflectivityTexture.gammaSpace):i.REFLECTIVITY=!1,this._metallicReflectanceTexture||this._reflectanceTexture?(i.METALLIC_REFLECTANCE_USE_ALPHA_ONLY=this._useOnlyMetallicFromMetallicReflectanceTexture,this._metallicReflectanceTexture?((0,I.PrepareDefinesForMergedUV)(this._metallicReflectanceTexture,i,"METALLIC_REFLECTANCE"),i.METALLIC_REFLECTANCE_GAMMA=this._metallicReflectanceTexture.gammaSpace):i.METALLIC_REFLECTANCE=!1,this._reflectanceTexture&&(!this._metallicReflectanceTexture||this._metallicReflectanceTexture&&this._useOnlyMetallicFromMetallicReflectanceTexture)?((0,I.PrepareDefinesForMergedUV)(this._reflectanceTexture,i,"REFLECTANCE"),i.REFLECTANCE_GAMMA=this._reflectanceTexture.gammaSpace):i.REFLECTANCE=!1):(i.METALLIC_REFLECTANCE=!1,i.REFLECTANCE=!1),this._microSurfaceTexture?(0,I.PrepareDefinesForMergedUV)(this._microSurfaceTexture,i,"MICROSURFACEMAP"):i.MICROSURFACEMAP=!1):(i.REFLECTIVITY=!1,i.MICROSURFACEMAP=!1),l.getCaps().standardDerivatives&&this._bumpTexture&&S.MaterialFlags.BumpTextureEnabled&&!this._disableBumpMap?((0,I.PrepareDefinesForMergedUV)(this._bumpTexture,i,"BUMP"),this._useParallax&&this._albedoTexture&&S.MaterialFlags.DiffuseTextureEnabled?(i.PARALLAX=!0,i.PARALLAX_RHS=n.useRightHandedSystem,i.PARALLAXOCCLUSION=!!this._useParallaxOcclusion):i.PARALLAX=!1,i.OBJECTSPACE_NORMALMAP=this._useObjectSpaceNormalMap):(i.BUMP=!1,i.PARALLAX=!1,i.PARALLAX_RHS=!1,i.PARALLAXOCCLUSION=!1,i.OBJECTSPACE_NORMALMAP=!1),this._environmentBRDFTexture&&S.MaterialFlags.ReflectionTextureEnabled?(i.ENVIRONMENTBRDF=!0,i.ENVIRONMENTBRDF_RGBD=this._environmentBRDFTexture.isRGBD):(i.ENVIRONMENTBRDF=!1,i.ENVIRONMENTBRDF_RGBD=!1),this._shouldUseAlphaFromAlbedoTexture()?i.ALPHAFROMALBEDO=!0:i.ALPHAFROMALBEDO=!1}i.SPECULAROVERALPHA=this._useSpecularOverAlpha,this._lightFalloff===et.LIGHTFALLOFF_STANDARD?(i.USEPHYSICALLIGHTFALLOFF=!1,i.USEGLTFLIGHTFALLOFF=!1):this._lightFalloff===et.LIGHTFALLOFF_GLTF?(i.USEPHYSICALLIGHTFALLOFF=!1,i.USEGLTFLIGHTFALLOFF=!0):(i.USEPHYSICALLIGHTFALLOFF=!0,i.USEGLTFLIGHTFALLOFF=!1),i.RADIANCEOVERALPHA=this._useRadianceOverAlpha,!this.backFaceCulling&&this._twoSidedLighting?i.TWOSIDEDLIGHTING=!0:i.TWOSIDEDLIGHTING=!1,i.MIRRORED=!!n._mirroredCameraPosition,i.SPECULARAA=l.getCaps().standardDerivatives&&this._enableSpecularAntiAliasing}(i._areTexturesDirty||i._areMiscDirty)&&(i.ALPHATESTVALUE=`${this._alphaCutOff}${this._alphaCutOff%1==0?".":""}`,i.PREMULTIPLYALPHA=7===this.alphaMode||8===this.alphaMode,i.ALPHABLEND=this.needAlphaBlendingForMesh(e),i.ALPHAFRESNEL=this._useAlphaFresnel||this._useLinearAlphaFresnel,i.LINEARALPHAFRESNEL=this._useLinearAlphaFresnel),i._areTexturesDirty&&(i.TEXTURE_REPETITION_MODE=l.version>1||l.isWebGPU?this.textureRepetitionMode:0),i._areImageProcessingDirty&&this._imageProcessingConfiguration&&this._imageProcessingConfiguration.prepareDefines(i),i.FORCENORMALFORWARD=this._forceNormalForward,i.RADIANCEOCCLUSION=this._useRadianceOcclusion,i.HORIZONOCCLUSION=this._useHorizonOcclusion,i._areMiscDirty&&((0,I.PrepareDefinesForMisc)(e,n,this._useLogarithmicDepth,this.pointsCloud,this.fogEnabled,this.needAlphaTestingForMesh(e),i,this._applyDecalMapAfterDetailMap,this._useVertexPulling,t,this._isVertexOutputInvariant),i.UNLIT=this._unlit||(this.pointsCloud||this.wireframe)&&!e.isVerticesDataPresent(u.VertexBuffer.NormalKind),i.DEBUGMODE=this._debugMode),(0,I.PrepareDefinesForFrameBoundValues)(n,l,this,i,!!s,r,a),this._eventInfo.defines=i,this._eventInfo.mesh=e,this._callbackPluginEventPrepareDefinesBeforeAttributes(this._eventInfo),(0,I.PrepareDefinesForAttributes)(e,i,!0,!0,!0,this._transparencyMode!==et.PBRMATERIAL_OPAQUE),this._callbackPluginEventPrepareDefines(this._eventInfo)}forceCompilation(e,t,i){let s={clipPlane:!1,useInstances:!1,...i};this._uniformBufferLayoutBuilt||this.buildUniformLayout(),this._callbackPluginEventGeneric(4,this._eventInfo),(()=>{if(this._breakShaderLoadedCheck)return;let i=new q(this._eventInfo.defineNames),r=this._prepareEffect(e,e,i,void 0,void 0,s.useInstances,s.clipPlane);this._onEffectCreatedObservable&&(J.effect=r,J.subMesh=null,this._onEffectCreatedObservable.notifyObservers(J)),r.isReady()?t&&t(this):r.onCompileObservable.add(()=>{t&&t(this)})})()}buildUniformLayout(){let e=this._uniformBuffer;e.addUniform("vAlbedoInfos",2),e.addUniform("vBaseWeightInfos",2),e.addUniform("vBaseDiffuseRoughnessInfos",2),e.addUniform("vAmbientInfos",4),e.addUniform("vOpacityInfos",2),e.addUniform("vEmissiveInfos",2),e.addUniform("vLightmapInfos",2),e.addUniform("vReflectivityInfos",3),e.addUniform("vMicroSurfaceSamplerInfos",2),e.addUniform("vBumpInfos",3),e.addUniform("albedoMatrix",16),e.addUniform("baseWeightMatrix",16),e.addUniform("baseDiffuseRoughnessMatrix",16),e.addUniform("ambientMatrix",16),e.addUniform("opacityMatrix",16),e.addUniform("emissiveMatrix",16),e.addUniform("lightmapMatrix",16),e.addUniform("reflectivityMatrix",16),e.addUniform("microSurfaceSamplerMatrix",16),e.addUniform("bumpMatrix",16),e.addUniform("vTangentSpaceParams",2),e.addUniform("vAlbedoColor",4),e.addUniform("baseWeight",1),e.addUniform("baseDiffuseRoughness",1),e.addUniform("vLightingIntensity",4),e.addUniform("pointSize",1),e.addUniform("vReflectivityColor",4),e.addUniform("vEmissiveColor",3),e.addUniform("vAmbientColor",3),e.addUniform("vDebugMode",2),e.addUniform("vMetallicReflectanceFactors",4),e.addUniform("vMetallicReflectanceInfos",2),e.addUniform("metallicReflectanceMatrix",16),e.addUniform("vReflectanceInfos",2),e.addUniform("reflectanceMatrix",16),e.addUniform("cameraInfo",4),e.addUniform("vTextureRepetitionHexTilingParams",4),(0,I.PrepareUniformLayoutForIBL)(e,!0,!0,!0,!0,!0),super.buildUniformLayout()}bindForSubMesh(e,t,i){let s=this.getScene(),a=i.materialDefines;if(!a)return;let n=i.effect;if(!n)return;this._activeEffect=n,t.getMeshUniformBuffer().bindToEffect(n,"Mesh"),t.transferToEffect(e);let o=s.getEngine();this._uniformBuffer.bindToEffect(n,"Material"),this.prePassConfiguration.bindForSubMesh(this._activeEffect,s,t,e,this.isFrozen),w.MaterialHelperGeometryRendering.Bind(o.currentRenderPassId,this._activeEffect,t,e,this);let u=s.activeCamera;u?this._uniformBuffer.updateFloat4("cameraInfo",u.minZ,u.maxZ,0,0):this._uniformBuffer.updateFloat4("cameraInfo",0,0,0,0);let h=this.textureRepetitionHexTilingParams;this._uniformBuffer.updateFloat4("vTextureRepetitionHexTilingParams",h[0],h[1],h[2],h[3]),this._eventInfo.subMesh=i,this._callbackPluginEventHardBindForSubMesh(this._eventInfo),a.OBJECTSPACE_NORMALMAP&&(e.toNormalMatrix(this._normalMatrix),this.bindOnlyNormalMatrix(this._normalMatrix));let T=this._mustRebind(s,n,i,t.visibility),_=o._features.needToAlwaysBindUniformBuffers;(0,I.BindBonesParameters)(t,this._activeEffect,this.prePassConfiguration),this._vertexPullingMetadata&&(0,W.BindVertexPullingUniforms)(this._activeEffect,this._vertexPullingMetadata);let c=null,E=this._uniformBuffer;if(T){if(this.bindViewProjection(n),c=this._getReflectionTexture(),!E.useUbo||!this.isFrozen||!E.isSync||i._drawWrapper._forceRebindOnNextCall){if(s.texturesEnabled&&(this._albedoTexture&&S.MaterialFlags.DiffuseTextureEnabled&&(E.updateFloat2("vAlbedoInfos",this._albedoTexture.coordinatesIndex,this._albedoTexture.level),(0,I.BindTextureMatrix)(this._albedoTexture,E,"albedo")),this._baseWeightTexture&&S.MaterialFlags.BaseWeightTextureEnabled&&(E.updateFloat2("vBaseWeightInfos",this._baseWeightTexture.coordinatesIndex,this._baseWeightTexture.level),(0,I.BindTextureMatrix)(this._baseWeightTexture,E,"baseWeight")),this._baseDiffuseRoughnessTexture&&S.MaterialFlags.BaseDiffuseRoughnessTextureEnabled&&(E.updateFloat2("vBaseDiffuseRoughnessInfos",this._baseDiffuseRoughnessTexture.coordinatesIndex,this._baseDiffuseRoughnessTexture.level),(0,I.BindTextureMatrix)(this._baseDiffuseRoughnessTexture,E,"baseDiffuseRoughness")),this._ambientTexture&&S.MaterialFlags.AmbientTextureEnabled&&(E.updateFloat4("vAmbientInfos",this._ambientTexture.coordinatesIndex,this._ambientTexture.level,this._ambientTextureStrength,this._ambientTextureImpactOnAnalyticalLights),(0,I.BindTextureMatrix)(this._ambientTexture,E,"ambient")),this._opacityTexture&&S.MaterialFlags.OpacityTextureEnabled&&(E.updateFloat2("vOpacityInfos",this._opacityTexture.coordinatesIndex,this._opacityTexture.level),(0,I.BindTextureMatrix)(this._opacityTexture,E,"opacity")),this._emissiveTexture&&S.MaterialFlags.EmissiveTextureEnabled&&(E.updateFloat2("vEmissiveInfos",this._emissiveTexture.coordinatesIndex,this._emissiveTexture.level),(0,I.BindTextureMatrix)(this._emissiveTexture,E,"emissive")),this._lightmapTexture&&S.MaterialFlags.LightmapTextureEnabled&&(E.updateFloat2("vLightmapInfos",this._lightmapTexture.coordinatesIndex,this._lightmapTexture.level),(0,I.BindTextureMatrix)(this._lightmapTexture,E,"lightmap")),S.MaterialFlags.SpecularTextureEnabled&&(this._metallicTexture?(E.updateFloat3("vReflectivityInfos",this._metallicTexture.coordinatesIndex,this._metallicTexture.level,this._ambientTextureStrength),(0,I.BindTextureMatrix)(this._metallicTexture,E,"reflectivity")):this._reflectivityTexture&&(E.updateFloat3("vReflectivityInfos",this._reflectivityTexture.coordinatesIndex,this._reflectivityTexture.level,1),(0,I.BindTextureMatrix)(this._reflectivityTexture,E,"reflectivity")),this._metallicReflectanceTexture&&(E.updateFloat2("vMetallicReflectanceInfos",this._metallicReflectanceTexture.coordinatesIndex,this._metallicReflectanceTexture.level),(0,I.BindTextureMatrix)(this._metallicReflectanceTexture,E,"metallicReflectance")),this._reflectanceTexture&&a.REFLECTANCE&&(E.updateFloat2("vReflectanceInfos",this._reflectanceTexture.coordinatesIndex,this._reflectanceTexture.level),(0,I.BindTextureMatrix)(this._reflectanceTexture,E,"reflectance")),this._microSurfaceTexture&&(E.updateFloat2("vMicroSurfaceSamplerInfos",this._microSurfaceTexture.coordinatesIndex,this._microSurfaceTexture.level),(0,I.BindTextureMatrix)(this._microSurfaceTexture,E,"microSurfaceSampler"))),this._bumpTexture&&o.getCaps().standardDerivatives&&S.MaterialFlags.BumpTextureEnabled&&!this._disableBumpMap&&(E.updateFloat3("vBumpInfos",this._bumpTexture.coordinatesIndex,this._bumpTexture.level,this._parallaxScaleBias),(0,I.BindTextureMatrix)(this._bumpTexture,E,"bump"),s._mirroredCameraPosition?E.updateFloat2("vTangentSpaceParams",this._invertNormalMapX?1:-1,this._invertNormalMapY?1:-1):E.updateFloat2("vTangentSpaceParams",this._invertNormalMapX?-1:1,this._invertNormalMapY?-1:1)),(0,I.BindIBLParameters)(s,a,E,this._reflectionColor,c,this.realTimeFiltering,!0,!0,!0,!0,!0)),this.pointsCloud&&E.updateFloat("pointSize",this.pointSize),a.METALLICWORKFLOW){r.TmpColors.Color4[0].r=void 0===this._metallic||null===this._metallic?1:this._metallic,r.TmpColors.Color4[0].g=void 0===this._roughness||null===this._roughness?1:this._roughness;let e=this.subSurface?._indexOfRefraction??1.5;r.TmpColors.Color4[0].b=e;let t=Math.pow((e-1)/(e+1),2);r.TmpColors.Color4[0].a=t,E.updateDirectColor4("vReflectivityColor",r.TmpColors.Color4[0]),E.updateColor4("vMetallicReflectanceFactors",this._metallicReflectanceColor,this._metallicF0Factor)}else E.updateColor4("vReflectivityColor",this._reflectivityColor,this._microSurface);E.updateColor3("vEmissiveColor",S.MaterialFlags.EmissiveTextureEnabled?this._emissiveColor:r.Color3.BlackReadOnly),!a.SS_REFRACTION&&this.subSurface?._linkRefractionWithTransparency?E.updateColor4("vAlbedoColor",this._albedoColor,1):E.updateColor4("vAlbedoColor",this._albedoColor,this.alpha),E.updateFloat("baseWeight",this._baseWeight),E.updateFloat("baseDiffuseRoughness",this._baseDiffuseRoughness||0),this._lightingInfos.x=this._directIntensity,this._lightingInfos.y=this._emissiveIntensity,this._lightingInfos.z=this._environmentIntensity*s.environmentIntensity,this._lightingInfos.w=this._specularIntensity,E.updateVector4("vLightingIntensity",this._lightingInfos),s.ambientColor.multiplyToRef(this._ambientColor,this._globalAmbientColor),E.updateColor3("vAmbientColor",this._globalAmbientColor),E.updateFloat2("vDebugMode",this.debugLimit,this.debugFactor)}s.texturesEnabled&&(this._albedoTexture&&S.MaterialFlags.DiffuseTextureEnabled&&E.setTexture("albedoSampler",this._albedoTexture),this._baseWeightTexture&&S.MaterialFlags.BaseWeightTextureEnabled&&E.setTexture("baseWeightSampler",this._baseWeightTexture),this._baseDiffuseRoughnessTexture&&S.MaterialFlags.BaseDiffuseRoughnessTextureEnabled&&E.setTexture("baseDiffuseRoughnessSampler",this._baseDiffuseRoughnessTexture),this._ambientTexture&&S.MaterialFlags.AmbientTextureEnabled&&E.setTexture("ambientSampler",this._ambientTexture),this._opacityTexture&&S.MaterialFlags.OpacityTextureEnabled&&E.setTexture("opacitySampler",this._opacityTexture),(0,I.BindIBLSamplers)(s,a,E,c,this.realTimeFiltering),a.ENVIRONMENTBRDF&&E.setTexture("environmentBrdfSampler",this._environmentBRDFTexture),this._emissiveTexture&&S.MaterialFlags.EmissiveTextureEnabled&&E.setTexture("emissiveSampler",this._emissiveTexture),this._lightmapTexture&&S.MaterialFlags.LightmapTextureEnabled&&E.setTexture("lightmapSampler",this._lightmapTexture),S.MaterialFlags.SpecularTextureEnabled&&(this._metallicTexture?E.setTexture("reflectivitySampler",this._metallicTexture):this._reflectivityTexture&&E.setTexture("reflectivitySampler",this._reflectivityTexture),this._metallicReflectanceTexture&&E.setTexture("metallicReflectanceSampler",this._metallicReflectanceTexture),this._reflectanceTexture&&a.REFLECTANCE&&E.setTexture("reflectanceSampler",this._reflectanceTexture),this._microSurfaceTexture&&E.setTexture("microSurfaceSampler",this._microSurfaceTexture)),this._bumpTexture&&o.getCaps().standardDerivatives&&S.MaterialFlags.BumpTextureEnabled&&!this._disableBumpMap&&E.setTexture("bumpSampler",this._bumpTexture)),this.getScene().useOrderIndependentTransparency&&this.needAlphaBlendingForMesh(t)&&this.getScene().depthPeelingRenderer.bind(n),this._eventInfo.subMesh=i,this._callbackPluginEventBindForSubMesh(this._eventInfo),(0,Y.BindClipPlane)(this._activeEffect,this,s),this.bindEyePosition(n)}else _&&(this._needToBindSceneUbo=!0);(T||!this.isFrozen||_)&&s.lightsEnabled&&!this._disableLighting&&(0,I.BindLights)(s,t,this._activeEffect,a,this._maxSimultaneousLights),(T||!this.isFrozen)&&((s.fogEnabled&&t.applyFog&&s.fogMode!==l.Scene.FOGMODE_NONE||c||this.subSurface.refractionTexture||t.receiveShadows||a.PREPASS||a.CLUSTLIGHT_BATCH)&&this.bindView(n),(0,I.BindFogParameters)(s,t,this._activeEffect,!0),a.NUM_MORPH_INFLUENCERS&&(0,I.BindMorphTargetParameters)(t,this._activeEffect),a.BAKED_VERTEX_ANIMATION_TEXTURE&&t.bakedVertexAnimationManager?.bind(n,a.INSTANCES),this._imageProcessingConfiguration.bind(this._activeEffect),(0,I.BindLogDepth)(a,this._activeEffect,s)),this._afterBind(t,this._activeEffect,i),E.update()}getAnimatables(){let e=super.getAnimatables();return this._albedoTexture&&this._albedoTexture.animations&&this._albedoTexture.animations.length>0&&e.push(this._albedoTexture),this._baseWeightTexture&&this._baseWeightTexture.animations&&this._baseWeightTexture.animations.length>0&&e.push(this._baseWeightTexture),this._baseDiffuseRoughnessTexture&&this._baseDiffuseRoughnessTexture.animations&&this._baseDiffuseRoughnessTexture.animations.length>0&&e.push(this._baseDiffuseRoughnessTexture),this._ambientTexture&&this._ambientTexture.animations&&this._ambientTexture.animations.length>0&&e.push(this._ambientTexture),this._opacityTexture&&this._opacityTexture.animations&&this._opacityTexture.animations.length>0&&e.push(this._opacityTexture),this._reflectionTexture&&this._reflectionTexture.animations&&this._reflectionTexture.animations.length>0&&e.push(this._reflectionTexture),this._emissiveTexture&&this._emissiveTexture.animations&&this._emissiveTexture.animations.length>0&&e.push(this._emissiveTexture),this._metallicTexture&&this._metallicTexture.animations&&this._metallicTexture.animations.length>0?e.push(this._metallicTexture):this._reflectivityTexture&&this._reflectivityTexture.animations&&this._reflectivityTexture.animations.length>0&&e.push(this._reflectivityTexture),this._bumpTexture&&this._bumpTexture.animations&&this._bumpTexture.animations.length>0&&e.push(this._bumpTexture),this._lightmapTexture&&this._lightmapTexture.animations&&this._lightmapTexture.animations.length>0&&e.push(this._lightmapTexture),this._metallicReflectanceTexture&&this._metallicReflectanceTexture.animations&&this._metallicReflectanceTexture.animations.length>0&&e.push(this._metallicReflectanceTexture),this._reflectanceTexture&&this._reflectanceTexture.animations&&this._reflectanceTexture.animations.length>0&&e.push(this._reflectanceTexture),this._microSurfaceTexture&&this._microSurfaceTexture.animations&&this._microSurfaceTexture.animations.length>0&&e.push(this._microSurfaceTexture),e}_getReflectionTexture(){return this._reflectionTexture?this._reflectionTexture:this.getScene().environmentTexture}getActiveTextures(){let e=super.getActiveTextures();return this._albedoTexture&&e.push(this._albedoTexture),this._baseWeightTexture&&e.push(this._baseWeightTexture),this._baseDiffuseRoughnessTexture&&e.push(this._baseDiffuseRoughnessTexture),this._ambientTexture&&e.push(this._ambientTexture),this._opacityTexture&&e.push(this._opacityTexture),this._reflectionTexture&&e.push(this._reflectionTexture),this._emissiveTexture&&e.push(this._emissiveTexture),this._reflectivityTexture&&e.push(this._reflectivityTexture),this._metallicTexture&&e.push(this._metallicTexture),this._metallicReflectanceTexture&&e.push(this._metallicReflectanceTexture),this._reflectanceTexture&&e.push(this._reflectanceTexture),this._microSurfaceTexture&&e.push(this._microSurfaceTexture),this._bumpTexture&&e.push(this._bumpTexture),this._lightmapTexture&&e.push(this._lightmapTexture),e}hasTexture(e){return!!super.hasTexture(e)||this._albedoTexture===e||this._baseWeightTexture===e||this._baseDiffuseRoughnessTexture===e||this._ambientTexture===e||this._opacityTexture===e||this._reflectionTexture===e||this._emissiveTexture===e||this._reflectivityTexture===e||this._metallicTexture===e||this._metallicReflectanceTexture===e||this._reflectanceTexture===e||this._microSurfaceTexture===e||this._bumpTexture===e||this._lightmapTexture===e||!1}setPrePassRenderer(){if(!this.subSurface?.isScatteringEnabled)return!1;let e=this.getScene().enableSubSurfaceForPrePass();return e&&(e.enabled=!0),!0}dispose(e,t){this._breakShaderLoadedCheck=!0,t&&(this._environmentBRDFTexture&&this.getScene().environmentBRDFTexture!==this._environmentBRDFTexture&&this._environmentBRDFTexture.dispose(),this._albedoTexture?.dispose(),this._baseWeightTexture?.dispose(),this._baseDiffuseRoughnessTexture?.dispose(),this._ambientTexture?.dispose(),this._opacityTexture?.dispose(),this._reflectionTexture?.dispose(),this._emissiveTexture?.dispose(),this._metallicTexture?.dispose(),this._reflectivityTexture?.dispose(),this._bumpTexture?.dispose(),this._lightmapTexture?.dispose(),this._metallicReflectanceTexture?.dispose(),this._reflectanceTexture?.dispose(),this._microSurfaceTexture?.dispose()),this._renderTargets.dispose(),this._imageProcessingConfiguration&&this._imageProcessingObserver&&this._imageProcessingConfiguration.onUpdateParameters.remove(this._imageProcessingObserver),super.dispose(e,t)}}et.PBRMATERIAL_OPAQUE=p.Material.MATERIAL_OPAQUE,et.PBRMATERIAL_ALPHATEST=p.Material.MATERIAL_ALPHATEST,et.PBRMATERIAL_ALPHABLEND=p.Material.MATERIAL_ALPHABLEND,et.PBRMATERIAL_ALPHATESTANDBLEND=p.Material.MATERIAL_ALPHATESTANDBLEND,et.DEFAULT_AO_ON_ANALYTICAL_LIGHTS=0,et.LIGHTFALLOFF_PHYSICAL=0,et.LIGHTFALLOFF_GLTF=1,et.LIGHTFALLOFF_STANDARD=2,et.ForceGLSL=!1,(0,t.__decorate)([(0,i.expandToProperty)("_markAllSubMeshesAsMiscDirty")],et.prototype,"debugMode",void 0),Object.getOwnPropertyDescriptor(et.prototype,"decalMap")||Object.defineProperty(et.prototype,"decalMap",(0,j._MissingSideEffectProperty)("PBRBaseMaterial","decalMap"));var ei=e.i(68401),es=e.i(38116);class er extends et{get refractionTexture(){return this.subSurface.refractionTexture}set refractionTexture(e){this.subSurface.refractionTexture=e,e?this.subSurface.isRefractionEnabled=!0:this.subSurface.linkRefractionWithTransparency||(this.subSurface.isRefractionEnabled=!1)}get indexOfRefraction(){return this.subSurface.indexOfRefraction}set indexOfRefraction(e){this.subSurface.indexOfRefraction=e}get invertRefractionY(){return this.subSurface.invertRefractionY}set invertRefractionY(e){this.subSurface.invertRefractionY=e}get linkRefractionWithTransparency(){return this.subSurface.linkRefractionWithTransparency}set linkRefractionWithTransparency(e){this.subSurface.linkRefractionWithTransparency=e,e&&(this.subSurface.isRefractionEnabled=!0)}get usePhysicalLightFalloff(){return this._lightFalloff===et.LIGHTFALLOFF_PHYSICAL}set usePhysicalLightFalloff(e){e!==this.usePhysicalLightFalloff&&(this._markAllSubMeshesAsTexturesDirty(),e?this._lightFalloff=et.LIGHTFALLOFF_PHYSICAL:this._lightFalloff=et.LIGHTFALLOFF_STANDARD)}get useGLTFLightFalloff(){return this._lightFalloff===et.LIGHTFALLOFF_GLTF}set useGLTFLightFalloff(e){e!==this.useGLTFLightFalloff&&(this._markAllSubMeshesAsTexturesDirty(),e?this._lightFalloff=et.LIGHTFALLOFF_GLTF:this._lightFalloff=et.LIGHTFALLOFF_STANDARD)}constructor(e,t,i=!1){super(e,t,i),this.directIntensity=1,this.emissiveIntensity=1,this.environmentIntensity=1,this.specularIntensity=1,this.disableBumpMap=!1,this.ambientTextureStrength=1,this.ambientTextureImpactOnAnalyticalLights=er.DEFAULT_AO_ON_ANALYTICAL_LIGHTS,this.metallicF0Factor=1,this.metallicReflectanceColor=r.Color3.White(),this.useOnlyMetallicFromMetallicReflectanceTexture=!1,this.ambientColor=new r.Color3(0,0,0),this.albedoColor=new r.Color3(1,1,1),this.baseWeight=1,this.reflectivityColor=new r.Color3(1,1,1),this.reflectionColor=new r.Color3(1,1,1),this.emissiveColor=new r.Color3(0,0,0),this.microSurface=1,this.useLightmapAsShadowmap=!1,this.useAlphaFromAlbedoTexture=!1,this.forceAlphaTest=!1,this.alphaCutOff=.4,this.useSpecularOverAlpha=!0,this.useMicroSurfaceFromReflectivityMapAlpha=!1,this.useRoughnessFromMetallicTextureAlpha=!0,this.useRoughnessFromMetallicTextureGreen=!1,this.useMetallnessFromMetallicTextureBlue=!1,this.useAmbientOcclusionFromMetallicTextureRed=!1,this.useAmbientInGrayScale=!1,this.useAutoMicroSurfaceFromReflectivityMap=!1,this.useRadianceOverAlpha=!0,this.useObjectSpaceNormalMap=!1,this.useParallax=!1,this.useParallaxOcclusion=!1,this.parallaxScaleBias=.05,this.disableLighting=!1,this.forceIrradianceInFragment=!1,this.maxSimultaneousLights=4,this.invertNormalMapX=!1,this.invertNormalMapY=!1,this.twoSidedLighting=!1,this.useAlphaFresnel=!1,this.useLinearAlphaFresnel=!1,this.environmentBRDFTexture=null,this.forceNormalForward=!1,this.enableSpecularAntiAliasing=!1,this.useHorizonOcclusion=!0,this.useRadianceOcclusion=!0,this.unlit=!1,this.applyDecalMapAfterDetailMap=!1,this._environmentBRDFTexture=(0,s.GetEnvironmentBRDFTexture)(this.getScene())}getClassName(){return"PBRMaterial"}clone(e,t=!0,i=""){let s=ei.SerializationHelper.Clone(()=>new er(e,this.getScene()),this,{cloneTexturesOnlyOnce:t});return s.id=e,s.name=e,this.stencil.copyTo(s.stencil),this._clonePlugins(s,i),s}serialize(){let e=super.serialize();return e.customType="BABYLON.PBRMaterial",e}static Parse(e,t,i){let s=ei.SerializationHelper.Parse(()=>new er(e.name,t),e,t,i);return e.stencil&&s.stencil.parse(e.stencil,t,i),p.Material._ParsePlugins(e,s,t,i),e.clearCoat&&s.clearCoat.parse(e.clearCoat,t,i),e.anisotropy&&s.anisotropy.parse(e.anisotropy,t,i),e.brdf&&s.brdf.parse(e.brdf,t,i),e.sheen&&s.sheen.parse(e.sheen,t,i),e.subSurface&&s.subSurface.parse(e.subSurface,t,i),e.iridescence&&s.iridescence.parse(e.iridescence,t,i),s}}er.PBRMATERIAL_OPAQUE=et.PBRMATERIAL_OPAQUE,er.PBRMATERIAL_ALPHATEST=et.PBRMATERIAL_ALPHATEST,er.PBRMATERIAL_ALPHABLEND=et.PBRMATERIAL_ALPHABLEND,er.PBRMATERIAL_ALPHATESTANDBLEND=et.PBRMATERIAL_ALPHATESTANDBLEND,er.DEFAULT_AO_ON_ANALYTICAL_LIGHTS=et.DEFAULT_AO_ON_ANALYTICAL_LIGHTS,(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"directIntensity",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"emissiveIntensity",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"environmentIntensity",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"specularIntensity",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"disableBumpMap",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"albedoTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"baseWeightTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"baseDiffuseRoughnessTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"ambientTexture",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"ambientTextureStrength",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"ambientTextureImpactOnAnalyticalLights",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesAndMiscDirty")],er.prototype,"opacityTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"reflectionTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"emissiveTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"reflectivityTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"metallicTexture",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"metallic",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"roughness",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"metallicF0Factor",void 0),(0,t.__decorate)([(0,i.serializeAsColor3)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"metallicReflectanceColor",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useOnlyMetallicFromMetallicReflectanceTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"metallicReflectanceTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"reflectanceTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"microSurfaceTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"bumpTexture",void 0),(0,t.__decorate)([(0,i.serializeAsTexture)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty",null)],er.prototype,"lightmapTexture",void 0),(0,t.__decorate)([(0,i.serializeAsColor3)("ambient"),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"ambientColor",void 0),(0,t.__decorate)([(0,i.serializeAsColor3)("albedo"),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"albedoColor",void 0),(0,t.__decorate)([(0,i.serialize)("baseWeight"),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"baseWeight",void 0),(0,t.__decorate)([(0,i.serialize)("baseDiffuseRoughness"),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"baseDiffuseRoughness",void 0),(0,t.__decorate)([(0,i.serializeAsColor3)("reflectivity"),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"reflectivityColor",void 0),(0,t.__decorate)([(0,i.serializeAsColor3)("reflection"),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"reflectionColor",void 0),(0,t.__decorate)([(0,i.serializeAsColor3)("emissive"),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"emissiveColor",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"microSurface",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useLightmapAsShadowmap",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesAndMiscDirty")],er.prototype,"useAlphaFromAlbedoTexture",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesAndMiscDirty")],er.prototype,"forceAlphaTest",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesAndMiscDirty")],er.prototype,"alphaCutOff",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useSpecularOverAlpha",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useMicroSurfaceFromReflectivityMapAlpha",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useRoughnessFromMetallicTextureAlpha",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useRoughnessFromMetallicTextureGreen",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useMetallnessFromMetallicTextureBlue",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useAmbientOcclusionFromMetallicTextureRed",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useAmbientInGrayScale",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useAutoMicroSurfaceFromReflectivityMap",void 0),(0,t.__decorate)([(0,i.serialize)()],er.prototype,"usePhysicalLightFalloff",null),(0,t.__decorate)([(0,i.serialize)()],er.prototype,"useGLTFLightFalloff",null),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useRadianceOverAlpha",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useObjectSpaceNormalMap",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useParallax",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useParallaxOcclusion",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"parallaxScaleBias",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsLightsDirty")],er.prototype,"disableLighting",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"forceIrradianceInFragment",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsLightsDirty")],er.prototype,"maxSimultaneousLights",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"invertNormalMapX",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"invertNormalMapY",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"twoSidedLighting",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useAlphaFresnel",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useLinearAlphaFresnel",void 0),(0,t.__decorate)([(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"environmentBRDFTexture",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"forceNormalForward",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"enableSpecularAntiAliasing",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useHorizonOcclusion",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsTexturesDirty")],er.prototype,"useRadianceOcclusion",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsMiscDirty")],er.prototype,"unlit",void 0),(0,t.__decorate)([(0,i.serialize)(),(0,i.expandToProperty)("_markAllSubMeshesAsMiscDirty")],er.prototype,"applyDecalMapAfterDetailMap",void 0);let ea=!1;function en(){ea||(ea=!0,(0,A.RegisterImageProcessingConfiguration)(),(0,es.RegisterClass)("BABYLON.PBRMaterial",er))}e.s(["PBRMaterial",0,er,"RegisterPBRMaterial",0,function(){en()},"RegisterPbrMaterial",0,en],85998)}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,4623,t=>{"use strict";t.s([])},32602,t=>{"use strict";var e=t.i(90176),i=t.i(95410),n=t.i(45984);class a{get currentFrame(){return this._currentFrame}get weight(){return this._weight}get currentValue(){return this._currentValue}get targetPath(){return this._targetPath}get target(){return this._currentActiveTarget}get isAdditive(){return this._host&&this._host.isAdditive}constructor(t,e,a,s){if(this._events=[],this._currentFrame=0,this._originalValue=[],this._originalBlendValue=null,this._offsetsCache={},this._highLimitsCache={},this._stopped=!1,this._blendingFactor=0,this._currentValue=null,this._currentActiveTarget=null,this._directTarget=null,this._targetPath="",this._weight=1,this._absoluteFrameOffset=0,this._previousElapsedTime=0,this._yoyoDirection=1,this._previousAbsoluteFrame=0,this._targetIsArray=!1,this._coreRuntimeAnimation=null,this._animation=e,this._target=t,this._scene=a,this._host=s,this._activeTargets=[],e._runtimeAnimations.push(this),this._animationState={key:0,repeatCount:0,loopMode:this._getCorrectLoopMode()},this._animation.dataType===n.Animation.ANIMATIONTYPE_MATRIX&&(this._animationState.workValue=i.Matrix.Zero()),this._keys=this._animation.getKeys(),this._minFrame=this._keys[0].frame,this._maxFrame=this._keys[this._keys.length-1].frame,0!==this._minFrame){const t={frame:0,value:this._keys[0].value};this._keys.splice(0,0,t)}if(this._target instanceof Array){let t=0;for(const e of this._target)this._preparePath(e,t),this._getOriginalValues(t),t++;this._targetIsArray=!0}else this._preparePath(this._target),this._getOriginalValues(),this._targetIsArray=!1,this._directTarget=this._activeTargets[0];const o=e.getEvents();if(o&&o.length>0)for(const t of o)this._events.push(t._clone());this._enableBlending=t&&t.animationPropertiesOverride?t.animationPropertiesOverride.enableBlending:this._animation.enableBlending}_preparePath(t,e=0){let i=this._animation.targetPropertyPath;if(i.length>1){let n=t;for(let t=0;t<i.length-1;t++){let e=i[t];if(void 0===(n=n[e]))throw Error(`Invalid property (${e}) in property path (${i.join(".")})`)}this._targetPath=i[i.length-1],this._activeTargets[e]=n}else this._targetPath=i[0],this._activeTargets[e]=t;if(void 0===this._activeTargets[e][this._targetPath])throw Error(`Invalid property (${this._targetPath}) in property path (${i.join(".")})`)}get animation(){return this._animation}reset(t=!1){if(t)if(this._target instanceof Array){let t=0;for(let e of this._target)void 0!==this._originalValue[t]&&this._setValue(e,this._activeTargets[t],this._originalValue[t],-1,t),t++}else void 0!==this._originalValue[0]&&this._setValue(this._target,this._directTarget,this._originalValue[0],-1,0);this._offsetsCache={},this._highLimitsCache={},this._currentFrame=0,this._blendingFactor=0;for(let t=0;t<this._events.length;t++)this._events[t].isDone=!1}isStopped(){return this._stopped}dispose(){let t=this._animation.runtimeAnimations.indexOf(this);t>-1&&this._animation.runtimeAnimations.splice(t,1)}setValue(t,e){if(this._targetIsArray){for(let i=0;i<this._target.length;i++){let n=this._target[i];this._setValue(n,this._activeTargets[i],t,e,i)}return}this._setValue(this._target,this._directTarget,t,e,0)}_getOriginalValues(t=0){let e,i=this._activeTargets[t];if(n.Animation.InheritOriginalValueFromActiveAnimations){let e=this._scene._activeAnimatables;for(let n=0;n<e.length;n++){let a=e[n]._runtimeAnimations;for(let e=0;e<a.length;e++){let n=a[e];if(n!==this&&n._targetPath===this._targetPath){for(let e=0;e<n._activeTargets.length;e++)if(n._activeTargets[e]===i&&void 0!==n._originalValue[e])return void(n._originalValue[e]&&n._originalValue[e].clone?this._originalValue[t]=n._originalValue[e].clone():this._originalValue[t]=n._originalValue[e])}}}}(e=i.getLocalMatrix&&"_matrix"===this._targetPath?i.getLocalMatrix():i[this._targetPath])&&e.clone?this._originalValue[t]=e.clone():this._originalValue[t]=e}_registerTargetForLateAnimationBinding(t,e){let i=t.target;this._scene._registeredForLateAnimationBindings.pushNoDuplicate(i),i._lateAnimationHolders||(i._lateAnimationHolders={}),i._lateAnimationHolders[t.targetPath]||(i._lateAnimationHolders[t.targetPath]={totalWeight:0,totalAdditiveWeight:0,animations:[],additiveAnimations:[],originalValue:e}),t.isAdditive?(i._lateAnimationHolders[t.targetPath].additiveAnimations.push(t),i._lateAnimationHolders[t.targetPath].totalAdditiveWeight+=t.weight):(i._lateAnimationHolders[t.targetPath].animations.push(t),i._lateAnimationHolders[t.targetPath].totalWeight+=t.weight)}_setValue(t,e,a,s,o){if(this._currentActiveTarget=e,this._weight=s,this._enableBlending&&this._blendingFactor<=1){if(!this._originalBlendValue){let t=e[this._targetPath];t.clone?this._originalBlendValue=t.clone():this._originalBlendValue=t}this._originalBlendValue.m?n.Animation.AllowMatrixDecomposeForInterpolation?this._currentValue?i.Matrix.DecomposeLerpToRef(this._originalBlendValue,a,this._blendingFactor,this._currentValue):this._currentValue=i.Matrix.DecomposeLerp(this._originalBlendValue,a,this._blendingFactor):this._currentValue?i.Matrix.LerpToRef(this._originalBlendValue,a,this._blendingFactor,this._currentValue):this._currentValue=i.Matrix.Lerp(this._originalBlendValue,a,this._blendingFactor):this._currentValue=n.Animation._UniversalLerp(this._originalBlendValue,a,this._blendingFactor);let s=t&&t.animationPropertiesOverride?t.animationPropertiesOverride.blendingSpeed:this._animation.blendingSpeed;this._blendingFactor+=s}else this._currentValue?this._currentValue.copyFrom?this._currentValue.copyFrom(a):this._currentValue=a:a?.clone?this._currentValue=a.clone():this._currentValue=a;-1!==s?this._registerTargetForLateAnimationBinding(this,this._originalValue[o]):this._animationState.loopMode===n.Animation.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT?this._currentValue.addToRef?this._currentValue.addToRef(this._originalValue[o],e[this._targetPath]):e[this._targetPath]=this._originalValue[o]+this._currentValue:e[this._targetPath]=this._currentValue,t.markAsDirty&&t.markAsDirty(this._animation.targetProperty)}_getCorrectLoopMode(){return this._target&&this._target.animationPropertiesOverride?this._target.getClassName?.()==="MorphTarget"&&null==this._target._animationPropertiesOverride?this._animation.loopMode:this._target.animationPropertiesOverride.loopMode:this._animation.loopMode}goToFrame(t,e=-1){let i=this._animation.getKeys();t<i[0].frame?t=i[0].frame:t>i[i.length-1].frame&&(t=i[i.length-1].frame);let n=this._events;if(n.length)for(let e=0;e<n.length;e++)n[e].onlyOnce||(n[e].isDone=n[e].frame<t);this._currentFrame=t;let a=this._animation._interpolate(t,this._animationState);this.setValue(a,e)}_prepareForSpeedRatioChange(t){let e=this._previousElapsedTime*(this._animation.framePerSecond*t)/1e3;this._absoluteFrameOffset=this._previousAbsoluteFrame-e}animate(t,e,i,a,s,o=-1){let r,l,h=this._animation,m=h.targetPropertyPath;if(!m||m.length<1)return this._stopped=!0,!1;let _=!0,g=this._events;if(this._coreRuntimeAnimation)l=i-e,r=this._coreRuntimeAnimation.currentFrame,this._currentFrame=r,this._animationState.repeatCount=this._coreRuntimeAnimation._animationState.repeatCount,this._animationState.highLimitValue=this._coreRuntimeAnimation._animationState.highLimitValue,this._animationState.offsetValue=this._coreRuntimeAnimation._animationState.offsetValue;else{let o;(e<this._minFrame||e>this._maxFrame)&&(e=this._minFrame),(i<this._minFrame||i>this._maxFrame)&&(i=this._maxFrame),l=i-e;let m=t*(h.framePerSecond*s)/1e3+this._absoluteFrameOffset,u=0,d=!1,p=a&&this._animationState.loopMode===n.Animation.ANIMATIONLOOPMODE_YOYO;if(p){let t=Math.sin((m-e)/l*Math.PI);m=Math.abs(t)*l+e;let i=t>=0?1:-1;this._yoyoDirection!==i&&(d=!0),this._yoyoDirection=i}if(this._previousElapsedTime=t,this._previousAbsoluteFrame=m,!a&&i>=e&&(m>=l&&s>0||m<=0&&s<0))_=!1,u=h.evaluate(i);else if(!a&&e>=i&&(m<=l&&s<0||m>=0&&s>0))_=!1,u=h.evaluate(e);else if(this._animationState.loopMode!==n.Animation.ANIMATIONLOOPMODE_CYCLE){let t=i.toString()+e.toString();if(!this._offsetsCache[t]){this._animationState.repeatCount=0,this._animationState.loopMode=n.Animation.ANIMATIONLOOPMODE_CYCLE;let a=h._interpolate(e,this._animationState),s=h._interpolate(i,this._animationState);switch(this._animationState.loopMode=this._getCorrectLoopMode(),h.dataType){case n.Animation.ANIMATIONTYPE_FLOAT:this._offsetsCache[t]=s-a;break;case n.Animation.ANIMATIONTYPE_QUATERNION:case n.Animation.ANIMATIONTYPE_VECTOR3:case n.Animation.ANIMATIONTYPE_VECTOR2:case n.Animation.ANIMATIONTYPE_SIZE:case n.Animation.ANIMATIONTYPE_COLOR3:this._offsetsCache[t]=s.subtract(a)}this._highLimitsCache[t]=s}u=this._highLimitsCache[t],o=this._offsetsCache[t]}if(void 0===o)switch(h.dataType){case n.Animation.ANIMATIONTYPE_FLOAT:o=0;break;case n.Animation.ANIMATIONTYPE_QUATERNION:o=n._StaticOffsetValueQuaternion;break;case n.Animation.ANIMATIONTYPE_VECTOR3:o=n._StaticOffsetValueVector3;break;case n.Animation.ANIMATIONTYPE_VECTOR2:o=n._StaticOffsetValueVector2;break;case n.Animation.ANIMATIONTYPE_SIZE:o=n._StaticOffsetValueSize;break;case n.Animation.ANIMATIONTYPE_COLOR3:o=n._StaticOffsetValueColor3;break;case n.Animation.ANIMATIONTYPE_COLOR4:o=n._StaticOffsetValueColor4}if(this._host&&this._host.syncRoot){let t=this._host.syncRoot,i=(t.masterFrame-t.fromFrame)/(t.toFrame-t.fromFrame);r=e+l*i}else r=m>0&&e>i||m<0&&e<i?_&&0!==l?i+m%l:e:_&&0!==l?e+m%l:i;if(!p&&(s>0&&this.currentFrame>r||s<0&&this.currentFrame<r)||p&&d){this._onLoop();for(let t=0;t<g.length;t++)g[t].onlyOnce||(g[t].isDone=!1);this._animationState.key=s>0?0:h.getKeys().length-1}this._currentFrame=r,this._animationState.repeatCount=0===l?0:m/l|0,this._animationState.highLimitValue=u,this._animationState.offsetValue=o}let u=h._interpolate(r,this._animationState);if(this.setValue(u,o),g.length){for(let t=0;t<g.length;t++)if(l>=0&&r>=g[t].frame&&g[t].frame>=e||l<0&&r<=g[t].frame&&g[t].frame<=e){let e=g[t];e.isDone||(e.onlyOnce&&(g.splice(t,1),t--),e.isDone=!0,e.action(r))}}return _||(this._stopped=!0),_}}var s=t.i(87869);class o{get syncRoot(){return this._syncRoot}get masterFrame(){return 0===this._runtimeAnimations.length?0:this._runtimeAnimations[0].currentFrame}get weight(){return this._weight}set weight(t){if(-1===t){this._weight=-1;return}this._weight=Math.min(Math.max(t,0),1)}get speedRatio(){return this._speedRatio}set speedRatio(t){for(let e=0;e<this._runtimeAnimations.length;e++)this._runtimeAnimations[e]._prepareForSpeedRatioChange(t);this._speedRatio=t,null!==this._goToFrame&&this.goToFrame(this._goToFrame)}get elapsedTime(){return null===this._localDelayOffset?0:this._scene._animationTime-this._localDelayOffset}constructor(t,i,n=0,a=100,s=!1,o=1,r,l,h,m=!1,_=0){this.target=i,this.fromFrame=n,this.toFrame=a,this.loopAnimation=s,this.onAnimationEnd=r,this.onAnimationLoop=h,this.isAdditive=m,this.playOrder=_,this._localDelayOffset=null,this._pausedDelay=null,this._manualJumpDelay=null,this._runtimeAnimations=[],this._paused=!1,this._speedRatio=1,this._weight=-1,this._previousWeight=-1,this._syncRoot=null,this._frameToSyncFromJump=null,this._goToFrame=null,this.disposeOnEnd=!0,this.animationStarted=!1,this.onAnimationEndObservable=new e.Observable,this.onAnimationLoopObservable=new e.Observable,this._scene=t,l&&this.appendAnimations(i,l),this._speedRatio=o,t._activeAnimatables.push(this)}syncWith(t){if(this._syncRoot=t,t){let t=this._scene._activeAnimatables.indexOf(this);t>-1&&(this._scene._activeAnimatables.splice(t,1),this._scene._activeAnimatables.push(this))}return this}getAnimations(){return this._runtimeAnimations}appendAnimations(t,e){for(let i=0;i<e.length;i++){let n=new a(t,e[i],this._scene,this);n._onLoop=()=>{this.onAnimationLoopObservable.notifyObservers(this),this.onAnimationLoop&&this.onAnimationLoop()},this._runtimeAnimations.push(n)}}getAnimationByTargetProperty(t){let e=this._runtimeAnimations;for(let i=0;i<e.length;i++)if(e[i].animation.targetProperty===t)return e[i].animation;return null}getRuntimeAnimationByTargetProperty(t){let e=this._runtimeAnimations;for(let i=0;i<e.length;i++)if(e[i].animation.targetProperty===t)return e[i];return null}reset(){let t=this._runtimeAnimations;for(let e=0;e<t.length;e++)t[e].reset(!0);this._localDelayOffset=null,this._pausedDelay=null}enableBlending(t){let e=this._runtimeAnimations;for(let i=0;i<e.length;i++)e[i].animation.enableBlending=!0,e[i].animation.blendingSpeed=t}disableBlending(){let t=this._runtimeAnimations;for(let e=0;e<t.length;e++)t[e].animation.enableBlending=!1}goToFrame(t,e=!1){let i=this._runtimeAnimations;if(i[0]){let e=i[0].animation.framePerSecond;this._frameToSyncFromJump=this._frameToSyncFromJump??i[0].currentFrame;let n=0===this.speedRatio?0:(t-this._frameToSyncFromJump)/e*1e3/this.speedRatio;this._manualJumpDelay=-n}for(let n=0;n<i.length;n++)i[n].goToFrame(t,e?this._weight:-1);this._goToFrame=t}get paused(){return this._paused}pause(){this._paused||(this._paused=!0)}restart(){this._paused=!1}_raiseOnAnimationEnd(){this.onAnimationEnd&&this.onAnimationEnd(),this.onAnimationEndObservable.notifyObservers(this)}stop(t,e,i=!1,n=!1){if(t||e){let a=this._scene._activeAnimatables.indexOf(this);if(a>-1){let s=this._runtimeAnimations;for(let i=s.length-1;i>=0;i--){let n=s[i];(!t||n.animation.name==t)&&(!e||e(n.target))&&(n.dispose(),s.splice(i,1))}0==s.length&&(i||this._scene._activeAnimatables.splice(a,1),n||this._raiseOnAnimationEnd())}}else{let t=this._scene._activeAnimatables.indexOf(this);if(t>-1){i||this._scene._activeAnimatables.splice(t,1);let e=this._runtimeAnimations;for(let t=0;t<e.length;t++)e[t].dispose();this._runtimeAnimations.length=0,n||this._raiseOnAnimationEnd()}}}async waitAsync(){return await new Promise(t=>{this.onAnimationEndObservable.add(()=>{t(this)},void 0,void 0,this,!0)})}_animate(t){let e;if(this._paused)return this.animationStarted=!1,null===this._pausedDelay&&(this._pausedDelay=t),!0;if(null===this._localDelayOffset?(this._localDelayOffset=t,this._pausedDelay=null):null!==this._pausedDelay&&(this._localDelayOffset+=t-this._pausedDelay,this._pausedDelay=null),null!==this._manualJumpDelay&&(this._localDelayOffset+=this.speedRatio<0?-this._manualJumpDelay:this._manualJumpDelay,this._manualJumpDelay=null,this._frameToSyncFromJump=null),this._goToFrame=null,!o.ProcessPausedAnimatables&&0===this._weight&&0===this._previousWeight)return!0;this._previousWeight=this._weight;let i=!1,n=this._runtimeAnimations;for(e=0;e<n.length;e++){let a=n[e].animate(t-this._localDelayOffset,this.fromFrame,this.toFrame,this.loopAnimation,this._speedRatio,this._weight);i=i||a}if(this.animationStarted=i,!i){if(this.disposeOnEnd)for(e=this._scene._activeAnimatables.indexOf(this),this._scene._activeAnimatables.splice(e,1),e=0;e<n.length;e++)n[e].dispose();this._raiseOnAnimationEnd(),this.disposeOnEnd&&(this.onAnimationEnd=null,this.onAnimationLoop=null,this.onAnimationLoopObservable.clear(),this.onAnimationEndObservable.clear())}return i}}o.ProcessPausedAnimatables=!1;var r=t.i(91682),l=t.i(19990);let h=!1;var m=t.i(70855),_=t.i(12328),g=t.i(87278);class u{getClassName(){return"TargetedAnimation"}constructor(t){this.parent=t,this.uniqueId=g.UniqueIdGenerator.UniqueId}serialize(){let t={};return t.animation=this.animation.serialize(),t.targetId=this.target.id,t.targetUniqueId=this.target.uniqueId,t}}class d{get mask(){return this._mask}set mask(t){this._mask!==t&&(this._mask=t,this.syncWithMask(!0))}syncWithMask(t=!1){if(!this.mask&&!t){this._numActiveAnimatables=this._targetedAnimations.length;return}this._numActiveAnimatables=0;for(let t=0;t<this._animatables.length;++t){let e=this._animatables[t];!this.mask||this.mask.disabled||this.mask.retainsTarget(e.target.name)?(this._numActiveAnimatables++,e.paused&&e.restart()):e.paused||e.pause()}}removeUnmaskedAnimations(){if(this.mask&&!this.mask.disabled){for(let t=0;t<this._animatables.length;++t){let e=this._animatables[t];!this.mask.retainsTarget(e.target.name)&&(e.stop(),this._animatables.splice(t,1),--t)}for(let t=0;t<this._targetedAnimations.length;t++){let e=this._targetedAnimations[t];!this.mask.retainsTarget(e.target.name)&&(this._targetedAnimations.splice(t,1),--t)}}}get from(){return this._from}set from(t){if(this._from!==t){this._from=t;for(let t=0;t<this._animatables.length;t++)this._animatables[t].fromFrame=this._from}}get to(){return this._to}set to(t){if(this._to!==t){this._to=t;for(let t=0;t<this._animatables.length;t++)this._animatables[t].toFrame=this._to}}get isStarted(){return this._isStarted}get isPlaying(){return this._isStarted&&!this._isPaused}get speedRatio(){return this._speedRatio}set speedRatio(t){if(this._speedRatio!==t){this._speedRatio=t;for(let t=0;t<this._animatables.length;t++)this._animatables[t].speedRatio=this._speedRatio}}get loopAnimation(){return this._loopAnimation}set loopAnimation(t){if(this._loopAnimation!==t){this._loopAnimation=t;for(let t=0;t<this._animatables.length;t++)this._animatables[t].loopAnimation=this._loopAnimation}}get isAdditive(){return this._isAdditive}set isAdditive(t){if(this._isAdditive!==t){this._isAdditive=t;for(let t=0;t<this._animatables.length;t++)this._animatables[t].isAdditive=this._isAdditive}}get weight(){return this._weight}set weight(t){this._weight!==t&&(this._weight=t,this.setWeightForAllAnimatables(this._weight))}get targetedAnimations(){return this._targetedAnimations}get animatables(){return this._animatables}get children(){return this._targetedAnimations}get playOrder(){return this._playOrder}set playOrder(t){if(this._playOrder!==t&&(this._playOrder=t,this._animatables.length>0)){for(let t=0;t<this._animatables.length;t++)this._animatables[t].playOrder=this._playOrder;this._scene.sortActiveAnimatables()}}get enableBlending(){return this._enableBlending}set enableBlending(t){if(this._enableBlending!==t&&(this._enableBlending=t,null!==t))for(let e=0;e<this._targetedAnimations.length;++e)this._targetedAnimations[e].animation.enableBlending=t}get blendingSpeed(){return this._blendingSpeed}set blendingSpeed(t){if(this._blendingSpeed!==t&&(this._blendingSpeed=t,null!==t))for(let e=0;e<this._targetedAnimations.length;++e)this._targetedAnimations[e].animation.blendingSpeed=t}getLength(t,e){t=t??this._from,e=e??this._to;let i=this.targetedAnimations[0].animation.framePerSecond*this._speedRatio;return(e-t)/i}getScene(){return this._scene}constructor(t,a=null,_=-1,g=0){this.name=t,this._targetedAnimations=[],this._animatables=[],this._from=Number.MAX_VALUE,this._to=-Number.MAX_VALUE,this._speedRatio=1,this._loopAnimation=!1,this._isAdditive=!1,this._weight=-1,this._playOrder=0,this._enableBlending=null,this._blendingSpeed=null,this._numActiveAnimatables=0,this._shouldStart=!0,this._parentContainer=null,this.onAnimationEndObservable=new e.Observable,this.onAnimationLoopObservable=new e.Observable,this.onAnimationGroupLoopObservable=new e.Observable,this.onAnimationGroupEndObservable=new e.Observable,this.onAnimationGroupPauseObservable=new e.Observable,this.onAnimationGroupPlayObservable=new e.Observable,this.metadata=null,this._mask=null,this._animationLoopFlags=[],this._scene=a||m.EngineStore.LastCreatedScene,this._weight=_,this._playOrder=g,this.uniqueId=this._scene.getUniqueId(),function(){if(!h){var t,e;h=!0,t=l.Scene,(e=r.Bone)&&(e.prototype.copyAnimationRange=function(t,e,i,a=!1,s=null){let o,r,l;0===this.animations.length&&(this.animations.push(new n.Animation(this.name,"_matrix",t.animations[0].framePerSecond,n.Animation.ANIMATIONTYPE_MATRIX,0)),this.animations[0].setKeys([]));let h=t.animations[0].getRange(e);if(!h)return!1;let m=h.from,_=h.to,g=t.animations[0].getKeys(),u=t.length,d=t.getParent(),p=this.getParent(),A=a&&d&&u&&this.length&&u!==this.length,c=A&&p&&d?p.length/d.length:1,f=a&&!p&&s&&(1!==s.x||1!==s.y||1!==s.z),b=this.animations[0].getKeys();for(let t=0,e=g.length;t<e;t++)(o=g[t]).frame>=m&&o.frame<=_&&(a?(l=o.value.clone(),A?(r=l.getTranslation(),l.setTranslation(r.scaleInPlace(c))):f&&s?(r=l.getTranslation(),l.setTranslation(r.multiplyInPlace(s))):l=o.value):l=o.value,b.push({frame:o.frame+i,value:l}));return this.animations[0].createRange(e,m+i,_+i),!0}),t&&(t.prototype._animate=function(t){if(!this.animationsEnabled)return;let e=s.PrecisionDate.Now;if(!this._animationTimeLast){if(this._pendingData.length>0)return;this._animationTimeLast=e}this.deltaTime=void 0!==t?t:this.useConstantAnimationDeltaTime?16:(e-this._animationTimeLast)*this.animationTimeScale,this._animationTimeLast=e;let a=this._activeAnimatables;if(0===a.length)return;this._animationTime+=this.deltaTime;let o=this._animationTime;for(let t=0;t<a.length;t++){let e=a[t];!e._animate(o)&&e.disposeOnEnd&&t--}!function(t){if(t._registeredForLateAnimationBindings.length){for(let e=0;e<t._registeredForLateAnimationBindings.length;e++){let a=t._registeredForLateAnimationBindings.data[e];for(let t in a._lateAnimationHolders){let e=a._lateAnimationHolders[t],s=e.animations[0],o=e.originalValue;if(null==o)continue;let r=n.Animation.AllowMatrixDecomposeForInterpolation&&o.m,l=a[t];if(r)l=function(t){let e;if(0===t.totalWeight&&0===t.totalAdditiveWeight)return t.originalValue;let n=1,a=i.TmpVectors.Vector3[0],s=i.TmpVectors.Vector3[1],o=i.TmpVectors.Quaternion[0],r=0,l=t.animations[0],h=t.originalValue,m=!1;if(t.totalWeight<1)e=1-t.totalWeight,h.decompose(s,o,a);else{if(r=1,n=t.totalWeight,1==(e=l.weight/n))if(!t.totalAdditiveWeight)return l.currentValue;else m=!0;l.currentValue.decompose(s,o,a)}if(!m){s.scaleInPlace(e),a.scaleInPlace(e),o.scaleInPlace(e);for(let l=r;l<t.animations.length;l++){let r=t.animations[l];if(0===r.weight)continue;e=r.weight/n;let h=i.TmpVectors.Vector3[2],m=i.TmpVectors.Vector3[3],_=i.TmpVectors.Quaternion[1];r.currentValue.decompose(m,_,h),m.scaleAndAddToRef(e,s),_.scaleAndAddToRef(i.Quaternion.Dot(o,_)>0?e:-e,o),h.scaleAndAddToRef(e,a)}o.normalize()}for(let e=0;e<t.additiveAnimations.length;e++){let n=t.additiveAnimations[e];if(0===n.weight)continue;let r=i.TmpVectors.Vector3[2],l=i.TmpVectors.Vector3[3],h=i.TmpVectors.Quaternion[1];n.currentValue.decompose(l,h,r),l.multiplyToRef(s,l),i.Vector3.LerpToRef(s,l,n.weight,s),o.multiplyToRef(h,h),i.Quaternion.SlerpToRef(o,h,n.weight,o),r.scaleAndAddToRef(n.weight,a)}let _=l?l._animationState.workValue:i.TmpVectors.Matrix[0].clone();return i.Matrix.ComposeToRef(s,o,a,_),_}(e);else if(void 0!==o.w)l=function(t,e){if(0===t.totalWeight&&0===t.totalAdditiveWeight)return e;let n=t.animations[0],a=t.originalValue,s=e;if(0===t.totalWeight&&t.totalAdditiveWeight>0)s.copyFrom(a);else if(1===t.animations.length){if(i.Quaternion.SlerpToRef(a,n.currentValue,Math.min(1,t.totalWeight),s),0===t.totalAdditiveWeight)return s}else if(t.animations.length>1){let n,o,r=1;if(t.totalWeight<1){let e=1-t.totalWeight;o=[],(n=[]).push(a),o.push(e)}else{if(2===t.animations.length&&(i.Quaternion.SlerpToRef(t.animations[0].currentValue,t.animations[1].currentValue,t.animations[1].weight/t.totalWeight,e),0===t.totalAdditiveWeight))return e;n=[],o=[],r=t.totalWeight}for(let e=0;e<t.animations.length;e++){let i=t.animations[e];n.push(i.currentValue),o.push(i.weight/r)}let l=0;for(let t=0;t<n.length;){if(!t){i.Quaternion.SlerpToRef(n[t],n[t+1],o[t+1]/(o[t]+o[t+1]),e),s=e,l=o[t]+o[t+1],t+=2;continue}l+=o[t],i.Quaternion.SlerpToRef(s,n[t],o[t]/l,s),t++}}for(let e=0;e<t.additiveAnimations.length;e++){let n=t.additiveAnimations[e];0!==n.weight&&(s.multiplyToRef(n.currentValue,i.TmpVectors.Quaternion[0]),i.Quaternion.SlerpToRef(s,i.TmpVectors.Quaternion[0],n.weight,s))}return s}(e,l||i.Quaternion.Identity());else{let t=0,i=1,a=s&&s._animationState.loopMode===n.Animation.ANIMATIONLOOPMODE_RELATIVE_FROM_CURRENT;if(e.totalWeight<1)l=a?o.clone?o.clone():o:s&&o.scale?o.scale(1-e.totalWeight):s?o*(1-e.totalWeight):o.clone?o.clone():o;else if(s){i=e.totalWeight;let n=s.weight/i;l=1!==n?s.currentValue.scale?s.currentValue.scale(n):s.currentValue*n:s.currentValue,a&&(l.addToRef?l.addToRef(o,l):l+=o),t=1}for(let n=t;n<e.animations.length;n++){let t=e.animations[n],a=t.weight/i;a&&(t.currentValue.scaleAndAddToRef?t.currentValue.scaleAndAddToRef(a,l):l+=t.currentValue*a)}for(let t=0;t<e.additiveAnimations.length;t++){let i=e.additiveAnimations[t],n=i.weight;n&&(i.currentValue.scaleAndAddToRef?i.currentValue.scaleAndAddToRef(n,l):l+=i.currentValue*n)}}a[t]=l}a._lateAnimationHolders={}}t._registeredForLateAnimationBindings.reset()}}(this)},t.prototype.sortActiveAnimatables=function(){this._activeAnimatables.sort((t,e)=>t.playOrder-e.playOrder)},t.prototype.beginWeightedAnimation=function(t,e,i,n=1,a,s=1,o,r,l,h,m=!1){let _=this.beginAnimation(t,e,i,a,s,o,r,!1,l,h,m);return _.weight=n,_},t.prototype.beginAnimation=function(t,e,i,n,a=1,s,r,l=!0,h,m,_=!1){if(a<0){let t=e;e=i,i=t,a=-a}e>i&&(a=-a),l&&this.stopAnimation(t,void 0,h),r||(r=new o(this,t,e,i,n,a,s,void 0,m,_));let g=!h||h(t);if(t.animations&&g&&r.appendAnimations(t,t.animations),t.getAnimatables){let o=t.getAnimatables();for(let t=0;t<o.length;t++)this.beginAnimation(o[t],e,i,n,a,s,r,l,h,m)}return r.reset(),r},t.prototype.beginHierarchyAnimation=function(t,e,i,n,a,s=1,o,r,l=!0,h,m,_=!1){let g=t.getDescendants(e),u=[];for(let e of(u.push(this.beginAnimation(t,i,n,a,s,o,r,l,h,void 0,_)),g))u.push(this.beginAnimation(e,i,n,a,s,o,r,l,h,void 0,_));return u},t.prototype.beginDirectAnimation=function(t,e,i,n,a,s=1,r,l,h=!1){if(s<0){let t=i;i=n,n=t,s=-s}return i>n&&(s=-s),new o(this,t,i,n,a,s,r,e,l,h)},t.prototype.beginDirectHierarchyAnimation=function(t,e,i,n,a,s,o,r,l,h=!1){let m=t.getDescendants(e),_=[];for(let e of(_.push(this.beginDirectAnimation(t,i,n,a,s,o,r,l,h)),m))_.push(this.beginDirectAnimation(e,i,n,a,s,o,r,l,h));return _},t.prototype.getAnimatableByTarget=function(t){for(let e=0;e<this._activeAnimatables.length;e++)if(this._activeAnimatables[e].target===t)return this._activeAnimatables[e];return null},t.prototype.getAllAnimatablesByTarget=function(t){let e=[];for(let i=0;i<this._activeAnimatables.length;i++)this._activeAnimatables[i].target===t&&e.push(this._activeAnimatables[i]);return e},t.prototype.stopAnimation=function(t,e,i){for(let n of this.getAllAnimatablesByTarget(t))n.stop(e,i)},t.prototype.stopAllAnimations=function(){if(this._activeAnimatables){for(let t=0;t<this._activeAnimatables.length;t++)this._activeAnimatables[t].stop(void 0,void 0,!0);this._activeAnimatables.length=0}for(let t of this.animationGroups)t.stop()})}}(),this._scene.addAnimationGroup(this)}addTargetedAnimation(t,e){let i=new u(this);i.animation=t,i.target=e;let n=t.getKeys();return this._from>n[0].frame&&(this._from=n[0].frame),this._to<n[n.length-1].frame&&(this._to=n[n.length-1].frame),null!==this._enableBlending&&(t.enableBlending=this._enableBlending),null!==this._blendingSpeed&&(t.blendingSpeed=this._blendingSpeed),this._targetedAnimations.push(i),this._shouldStart=!0,i}removeTargetedAnimation(t){for(let e=this._targetedAnimations.length-1;e>-1;e--)this._targetedAnimations[e].animation===t&&this._targetedAnimations.splice(e,1)}normalize(t=null,e=null){null==t&&(t=this._from),null==e&&(e=this._to);for(let i=0;i<this._targetedAnimations.length;i++){let n=this._targetedAnimations[i].animation.getKeys(),a=n[0],s=n[n.length-1];if(a.frame>t){let e={frame:t,value:a.value,inTangent:a.inTangent,outTangent:a.outTangent,interpolation:a.interpolation};n.splice(0,0,e)}if(s.frame<e){let t={frame:e,value:s.value,inTangent:s.inTangent,outTangent:s.outTangent,interpolation:s.interpolation};n.push(t)}}return this._from=t,this._to=e,this}_processLoop(t,e,i){t.onAnimationLoop=()=>{this.onAnimationLoopObservable.notifyObservers(e),this._animationLoopFlags[i]||(this._animationLoopFlags[i]=!0,this._animationLoopCount++,this._animationLoopCount===this._numActiveAnimatables&&(this.onAnimationGroupLoopObservable.notifyObservers(this),this._animationLoopCount=0,this._animationLoopFlags.length=0))}}start(t=!1,e=1,i,n,a){if(this._isStarted||0===this._targetedAnimations.length)return this;this._loopAnimation=t,this._shouldStart=!1,this._animationLoopCount=0,this._animationLoopFlags.length=0;for(let s=0;s<this._targetedAnimations.length;s++){let o=this._targetedAnimations[s],r=this._scene.beginDirectAnimation(o.target,[o.animation],void 0!==i?i:this._from,void 0!==n?n:this._to,t,e,void 0,void 0,void 0!==a?a:this._isAdditive);r.weight=this._weight,r.playOrder=this._playOrder,r.onAnimationEnd=()=>{this.onAnimationEndObservable.notifyObservers(o),this._checkAnimationGroupEnded(r)},this._processLoop(r,o,s),this._animatables.push(r)}return this.syncWithMask(),this._scene.sortActiveAnimatables(),this._speedRatio=e,this._isStarted=!0,this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}pause(){if(!this._isStarted)return this;this._isPaused=!0;for(let t=0;t<this._animatables.length;t++)this._animatables[t].pause();return this.onAnimationGroupPauseObservable.notifyObservers(this),this}play(t){return this.isStarted&&this._animatables.length&&!this._shouldStart?(void 0!==t&&(this.loopAnimation=t),this.restart()):(this.stop(),this.start(t,this._speedRatio)),this}reset(){if(!this._isStarted)return this.play(),this.goToFrame(0),this.stop(!0),this;for(let t=0;t<this._animatables.length;t++)this._animatables[t].reset();return this}restart(){if(!this._isStarted)return this;for(let t=0;t<this._animatables.length;t++)this._animatables[t].restart();return this.syncWithMask(),this._isPaused=!1,this.onAnimationGroupPlayObservable.notifyObservers(this),this}stop(t=!1){if(!this._isStarted)return this;let e=this._animatables.slice();for(let i=0;i<e.length;i++)e[i].stop(void 0,void 0,!0,t);let i=0;for(let e=0;e<this._scene._activeAnimatables.length;e++){let n=this._scene._activeAnimatables[e];n._runtimeAnimations.length>0?this._scene._activeAnimatables[i++]=n:t&&this._checkAnimationGroupEnded(n,t)}return this._scene._activeAnimatables.length=i,this._isStarted=!1,this}setWeightForAllAnimatables(t){for(let e=0;e<this._animatables.length;e++)this._animatables[e].weight=t;return this}syncAllAnimationsWith(t){for(let e=0;e<this._animatables.length;e++)this._animatables[e].syncWith(t);return this}goToFrame(t,e=!1){if(!this._isStarted)return this;for(let i=0;i<this._animatables.length;i++)this._animatables[i].goToFrame(t,e);return this}getCurrentFrame(){return this.animatables[0]?.masterFrame||0}dispose(){if(this.isStarted&&this.stop(),this._targetedAnimations.length=0,this._animatables.length=0,this._scene.removeAnimationGroup(this),this._parentContainer){let t=this._parentContainer.animationGroups.indexOf(this);t>-1&&this._parentContainer.animationGroups.splice(t,1),this._parentContainer=null}this.onAnimationEndObservable.clear(),this.onAnimationGroupEndObservable.clear(),this.onAnimationGroupPauseObservable.clear(),this.onAnimationGroupPlayObservable.clear(),this.onAnimationLoopObservable.clear(),this.onAnimationGroupLoopObservable.clear()}_checkAnimationGroupEnded(t,e=!1){let i=this._animatables.indexOf(t);i>-1&&this._animatables.splice(i,1),this._animatables.length===this._targetedAnimations.length-this._numActiveAnimatables&&(this._isStarted=!1,e||this.onAnimationGroupEndObservable.notifyObservers(this),this._animatables.length=0)}clone(t,e,i=!1,n=!1){let a=new d(t||this.name,this._scene,this._weight,this._playOrder);for(let t of(a._from=this.from,a._to=this.to,a._speedRatio=this.speedRatio,a._loopAnimation=this.loopAnimation,a._isAdditive=this.isAdditive,a._enableBlending=this.enableBlending,a._blendingSpeed=this.blendingSpeed,a.metadata=this.metadata,a.mask=this.mask,this._targetedAnimations))a.addTargetedAnimation(i?t.animation.clone(n):t.animation,e?e(t.target):t.target);return a}serialize(){let t={};t.name=this.name,t.from=this.from,t.to=this.to,t.speedRatio=this.speedRatio,t.loopAnimation=this.loopAnimation,t.isAdditive=this.isAdditive,t.weight=this.weight,t.playOrder=this.playOrder,t.enableBlending=this.enableBlending,t.blendingSpeed=this.blendingSpeed,t.targetedAnimations=[];for(let e=0;e<this.targetedAnimations.length;e++){let i=this.targetedAnimations[e];t.targetedAnimations[e]=i.serialize()}return _.Tags&&_.Tags.HasTags(this)&&(t.tags=_.Tags.GetTags(this)),this.metadata&&(t.metadata=this.metadata),t}getClassName(){return"AnimationGroup"}toString(t){let e="Name: "+this.name;return e+=", type: "+this.getClassName(),t&&(e+=", from: "+this._from+", to: "+this._to+", isStarted: "+this._isStarted+", speedRatio: "+this._speedRatio+", targetedAnimations length: "+this._targetedAnimations.length+", animatables length: "+this._animatables.length),e}}function p(t,e=!0,i=!1,n){if(0===t.length)return null;n=n??t[0].weight;let a=Number.MAX_VALUE,s=-Number.MAX_VALUE;if(i)for(let e of t)e.from<a&&(a=e.from),e.to>s&&(s=e.to);let o=new d(t[0].name+"_merged",t[0].getScene(),n);for(let n of t){for(let t of(i&&n.normalize(a,s),n.targetedAnimations))o.addTargetedAnimation(t.animation,t.target);e&&n.dispose()}return o}function A(t,e,i){let a=new d(t.name,e,t.weight,t.playOrder);for(let s=0;s<t.targetedAnimations.length;s++){let o=t.targetedAnimations[s],r=(0,n.AnimationParse)(o.animation),l=i?i(o):"influence"===o.animation.property?e.getMorphTargetById(o.targetId):e.getNodeById(o.targetId);l&&a.addTargetedAnimation(r,l)}return _.Tags&&_.Tags.AddTagsTo(a,t.tags),null!==t.from&&null!==t.to&&a.normalize(t.from,t.to),void 0!==t.speedRatio&&(a._speedRatio=t.speedRatio),void 0!==t.loopAnimation&&(a._loopAnimation=t.loopAnimation),void 0!==t.isAdditive&&(a._isAdditive=t.isAdditive),void 0!==t.weight&&(a._weight=t.weight),void 0!==t.playOrder&&(a._playOrder=t.playOrder),void 0!==t.enableBlending&&(a._enableBlending=t.enableBlending),void 0!==t.blendingSpeed&&(a._blendingSpeed=t.blendingSpeed),void 0!==t.metadata&&(a.metadata=t.metadata),a}function c(t,e,i,a=!1,s){let o,r=t;(o="object"==typeof e?e:{referenceFrame:e,range:i,cloneOriginalAnimationGroup:a,clonedAnimationName:s}).cloneOriginalAnimationGroup&&(r=t.clone(o.clonedAnimationGroupName||r.name));let l=r.targetedAnimations;for(let t=0;t<l.length;t++){let e=l[t];e.animation=(0,n.AnimationMakeAnimationAdditive)(e.animation,o)}if(r.isAdditive=!0,o.clipKeys){let t=Number.MAX_VALUE,e=-Number.MAX_VALUE,i=r.targetedAnimations;for(let n=0;n<i.length;n++){let a=i[n].animation.getKeys();t>a[0].frame&&(t=a[0].frame),e<a[a.length-1].frame&&(e=a[a.length-1].frame)}let n=r;n._from=t,n._to=e}return r}function f(t,e,i,n,a){return b(t.clone(n||t.name),e,i,a)}function b(t,e,i,n){return y(t,e,i,n,!1)}function v(t,e,i,n,a){return T(t.clone(n||t.name),e,i,a)}function T(t,e,i,n){return y(t,e,i,n,!0)}function y(t,e,i,n,a=!1){let s=Number.MAX_VALUE,o=-Number.MAX_VALUE,r=t.targetedAnimations;for(let t=0;t<r.length;t++){let l=r[t],h=n?l.animation:l.animation.clone();a&&(h.createKeyForFrame(e),h.createKeyForFrame(i));let m=h.getKeys(),_=[],g=Number.MAX_VALUE;for(let t=0;t<m.length;t++){let n=m[t];if(!a&&t>=e&&t<=i||a&&n.frame>=e&&n.frame<=i){let t={frame:n.frame,value:n.value.clone?n.value.clone():n.value,inTangent:n.inTangent,outTangent:n.outTangent,interpolation:n.interpolation,lockedTangent:n.lockedTangent};g===Number.MAX_VALUE&&(g=t.frame),t.frame-=g,_.push(t)}}if(0===_.length){r.splice(t,1),t--;continue}s>_[0].frame&&(s=_[0].frame),o<_[_.length-1].frame&&(o=_[_.length-1].frame),h.setKeys(_,!0),l.animation=h}return t._from=s,t._to=o,t}let O=!1;t.s(["AnimationGroup",0,d,"AnimationGroupClipFrames",0,v,"AnimationGroupClipFramesInPlace",0,T,"AnimationGroupClipInPlace",0,y,"AnimationGroupClipKeys",0,f,"AnimationGroupClipKeysInPlace",0,b,"AnimationGroupMakeAnimationAdditive",0,c,"AnimationGroupMergeAnimationGroups",0,p,"AnimationGroupParse",0,A,"RegisterAnimationGroup",0,function(){O||(O=!0,d.MergeAnimationGroups=p,d.Parse=A,d.MakeAnimationAdditive=c,d.ClipKeys=f,d.ClipKeysInPlace=b,d.ClipFrames=v,d.ClipFramesInPlace=T,d.ClipInPlace=y)},"TargetedAnimation",0,u],32602)},12305,t=>{"use strict";t.i(4623),(0,t.i(32602).RegisterAnimationGroup)(),t.s([])}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,40553,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(r=>{t(r,()=>{let t=this._pendingActions.shift();t?this._execute(e,t):e.idle=!0})})}}class r extends t{constructor(e,t,s=r.DefaultOptions){super([]),this._maxWorkers=e,this._createWorkerAsync=t,this._options=s}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,(r,s)=>{t(r,()=>{s(),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))})})}}r.DefaultOptions={idleTimeElapsedBeforeRelease:1e3},e.s(["AutoReleaseWorkerPool",0,r])},20614,e=>{"use strict";var t,r,s,o,a,i,n=e.i(80434);class c{constructor(e,t){if(this.data=e,this.isInvalid=!1,!c.IsValid(e)){this.isInvalid=!0,n.Logger.Error("texture missing KTX identifier");return}const r=Uint32Array.BYTES_PER_ELEMENT,s=new DataView(this.data.buffer,this.data.byteOffset+12,13*r),o=0x4030201===s.getUint32(0,!0);if(this.glType=s.getUint32(+r,o),this.glTypeSize=s.getUint32(2*r,o),this.glFormat=s.getUint32(3*r,o),this.glInternalFormat=s.getUint32(4*r,o),this.glBaseInternalFormat=s.getUint32(5*r,o),this.pixelWidth=s.getUint32(6*r,o),this.pixelHeight=s.getUint32(7*r,o),this.pixelDepth=s.getUint32(8*r,o),this.numberOfArrayElements=s.getUint32(9*r,o),this.numberOfFaces=s.getUint32(10*r,o),this.numberOfMipmapLevels=s.getUint32(11*r,o),this.bytesOfKeyValueData=s.getUint32(12*r,o),0!==this.glType){n.Logger.Error("only compressed formats currently supported"),this.isInvalid=!0;return}if(this.numberOfMipmapLevels=Math.max(1,this.numberOfMipmapLevels),0===this.pixelHeight||0!==this.pixelDepth){n.Logger.Error("only 2D textures currently supported"),this.isInvalid=!0;return}if(0!==this.numberOfArrayElements){n.Logger.Error("texture arrays not currently supported"),this.isInvalid=!0;return}if(this.numberOfFaces!==t){n.Logger.Error("number of faces expected"+t+", but found "+this.numberOfFaces),this.isInvalid=!0;return}this.loadType=c.COMPRESSED_2D}uploadLevels(e,t){switch(this.loadType){case c.COMPRESSED_2D:this._upload2DCompressedLevels(e,t);case c.TEX_2D:case c.COMPRESSED_3D:case c.TEX_3D:}}_upload2DCompressedLevels(e,t){let r=c.HEADER_LEN+this.bytesOfKeyValueData,s=this.pixelWidth,o=this.pixelHeight,a=t?this.numberOfMipmapLevels:1;for(let t=0;t<a;t++){let a=new Int32Array(this.data.buffer,this.data.byteOffset+r,1)[0];r+=4;for(let i=0;i<this.numberOfFaces;i++){let n=new Uint8Array(this.data.buffer,this.data.byteOffset+r,a);e.getEngine()._uploadCompressedDataToTextureDirectly(e,e.format,s,o,n,i,t),r+=a,r+=3-(a+3)%4}s=Math.max(1,.5*s),o=Math.max(1,.5*o)}}static IsValid(e){if(e.byteLength>=12){let t=new Uint8Array(e.buffer,e.byteOffset,12);if(171===t[0]&&75===t[1]&&84===t[2]&&88===t[3]&&32===t[4]&&49===t[5]&&49===t[6]&&187===t[7]&&13===t[8]&&10===t[9]&&26===t[10]&&10===t[11])return!0}return!1}}c.HEADER_LEN=64,c.COMPRESSED_2D=0,c.COMPRESSED_3D=1,c.TEX_2D=2,c.TEX_3D=3;var l=e.i(40553),d=e.i(13856);function T(e,t){let r=t?.jsDecoderModule||KTX2DECODER;e&&(e.wasmBaseUrl&&(r.Transcoder.WasmBaseUrl=e.wasmBaseUrl),e.wasmUASTCToASTC&&(r.LiteTranscoder_UASTC_ASTC.WasmModuleURL=e.wasmUASTCToASTC),e.wasmUASTCToBC7&&(r.LiteTranscoder_UASTC_BC7.WasmModuleURL=e.wasmUASTCToBC7),e.wasmUASTCToRGBA_UNORM&&(r.LiteTranscoder_UASTC_RGBA_UNORM.WasmModuleURL=e.wasmUASTCToRGBA_UNORM),e.wasmUASTCToRGBA_SRGB&&(r.LiteTranscoder_UASTC_RGBA_SRGB.WasmModuleURL=e.wasmUASTCToRGBA_SRGB),e.wasmUASTCToR8_UNORM&&(r.LiteTranscoder_UASTC_R8_UNORM.WasmModuleURL=e.wasmUASTCToR8_UNORM),e.wasmUASTCToRG8_UNORM&&(r.LiteTranscoder_UASTC_RG8_UNORM.WasmModuleURL=e.wasmUASTCToRG8_UNORM),e.jsMSCTranscoder&&(r.MSCTranscoder.JSModuleURL=e.jsMSCTranscoder),e.wasmMSCTranscoder&&(r.MSCTranscoder.WasmModuleURL=e.wasmMSCTranscoder),e.wasmZSTDDecoder&&(r.ZSTDDecoder.WasmModuleURL=e.wasmZSTDDecoder)),t&&(t.wasmUASTCToASTC&&(r.LiteTranscoder_UASTC_ASTC.WasmBinary=t.wasmUASTCToASTC),t.wasmUASTCToBC7&&(r.LiteTranscoder_UASTC_BC7.WasmBinary=t.wasmUASTCToBC7),t.wasmUASTCToRGBA_UNORM&&(r.LiteTranscoder_UASTC_RGBA_UNORM.WasmBinary=t.wasmUASTCToRGBA_UNORM),t.wasmUASTCToRGBA_SRGB&&(r.LiteTranscoder_UASTC_RGBA_SRGB.WasmBinary=t.wasmUASTCToRGBA_SRGB),t.wasmUASTCToR8_UNORM&&(r.LiteTranscoder_UASTC_R8_UNORM.WasmBinary=t.wasmUASTCToR8_UNORM),t.wasmUASTCToRG8_UNORM&&(r.LiteTranscoder_UASTC_RG8_UNORM.WasmBinary=t.wasmUASTCToRG8_UNORM),t.jsMSCTranscoder&&(r.MSCTranscoder.JSModule=t.jsMSCTranscoder),t.wasmMSCTranscoder&&(r.MSCTranscoder.WasmBinary=t.wasmMSCTranscoder),t.wasmZSTDDecoder&&(r.ZSTDDecoder.WasmBinary=t.wasmZSTDDecoder))}function _(e){let t;void 0===e&&"u">typeof KTX2DECODER&&(e=KTX2DECODER),onmessage=r=>{if(r.data)switch(r.data.action){case"init":{let s=r.data.urls;s&&(s.jsDecoderModule&&void 0===e&&(importScripts(s.jsDecoderModule),e=KTX2DECODER),T(s)),r.data.wasmBinaries&&T(void 0,{...r.data.wasmBinaries,jsDecoderModule:e}),t=new e.KTX2Decoder,postMessage({action:"init"});break}case"setDefaultDecoderOptions":e.KTX2Decoder.DefaultDecoderOptions=r.data.options;break;case"decode":t.decode(r.data.data,r.data.caps,r.data.options).then(e=>{let t=[];for(let r=0;r<e.mipmaps.length;++r){let s=e.mipmaps[r];s&&s.data&&t.push(s.data.buffer)}postMessage({action:"decoded",success:!0,decodedData:e},t)}).catch(e=>{postMessage({action:"decoded",success:!1,msg:e})})}}}async function u(e,t,r){return await new Promise((s,o)=>{let a=t=>{e.removeEventListener("error",a),e.removeEventListener("message",i),o(t)},i=t=>{"init"===t.data.action&&(e.removeEventListener("error",a),e.removeEventListener("message",i),s(e))};e.addEventListener("error",a),e.addEventListener("message",i),e.postMessage({action:"init",urls:r,wasmBinaries:t})})}(t=o||(o={}))[t.ETC1S=0]="ETC1S",t[t.UASTC4x4=1]="UASTC4x4",(r=a||(a={}))[r.ASTC_4X4_RGBA=0]="ASTC_4X4_RGBA",r[r.ASTC_4x4_RGBA=0]="ASTC_4x4_RGBA",r[r.BC7_RGBA=1]="BC7_RGBA",r[r.BC3_RGBA=2]="BC3_RGBA",r[r.BC1_RGB=3]="BC1_RGB",r[r.PVRTC1_4_RGBA=4]="PVRTC1_4_RGBA",r[r.PVRTC1_4_RGB=5]="PVRTC1_4_RGB",r[r.ETC2_RGBA=6]="ETC2_RGBA",r[r.ETC1_RGB=7]="ETC1_RGB",r[r.RGBA32=8]="RGBA32",r[r.R8=9]="R8",r[r.RG8=10]="RG8",(s=i||(i={}))[s.COMPRESSED_RGBA_BPTC_UNORM_EXT=36492]="COMPRESSED_RGBA_BPTC_UNORM_EXT",s[s.COMPRESSED_RGBA_ASTC_4X4_KHR=37808]="COMPRESSED_RGBA_ASTC_4X4_KHR",s[s.COMPRESSED_RGB_S3TC_DXT1_EXT=33776]="COMPRESSED_RGB_S3TC_DXT1_EXT",s[s.COMPRESSED_RGBA_S3TC_DXT5_EXT=33779]="COMPRESSED_RGBA_S3TC_DXT5_EXT",s[s.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG=35842]="COMPRESSED_RGBA_PVRTC_4BPPV1_IMG",s[s.COMPRESSED_RGB_PVRTC_4BPPV1_IMG=35840]="COMPRESSED_RGB_PVRTC_4BPPV1_IMG",s[s.COMPRESSED_RGBA8_ETC2_EAC=37496]="COMPRESSED_RGBA8_ETC2_EAC",s[s.COMPRESSED_RGB8_ETC2=37492]="COMPRESSED_RGB8_ETC2",s[s.COMPRESSED_RGB_ETC1_WEBGL=36196]="COMPRESSED_RGB_ETC1_WEBGL",s[s.RGBA8Format=32856]="RGBA8Format",s[s.R8Format=33321]="R8Format",s[s.RG8Format=33323]="RG8Format";class R{static GetDefaultNumWorkers(){return"object"==typeof navigator&&navigator.hardwareConcurrency?Math.min(Math.floor(.5*navigator.hardwareConcurrency),4):1}static _Initialize(e){if(R._WorkerPoolPromise||R._DecoderModulePromise)return;let t={wasmBaseUrl:d.Tools.ScriptBaseUrl,jsDecoderModule:d.Tools.GetBabylonScriptURL(this.URLConfig.jsDecoderModule,!0),wasmUASTCToASTC:d.Tools.GetBabylonScriptURL(this.URLConfig.wasmUASTCToASTC,!0),wasmUASTCToBC7:d.Tools.GetBabylonScriptURL(this.URLConfig.wasmUASTCToBC7,!0),wasmUASTCToRGBA_UNORM:d.Tools.GetBabylonScriptURL(this.URLConfig.wasmUASTCToRGBA_UNORM,!0),wasmUASTCToRGBA_SRGB:d.Tools.GetBabylonScriptURL(this.URLConfig.wasmUASTCToRGBA_SRGB,!0),wasmUASTCToR8_UNORM:d.Tools.GetBabylonScriptURL(this.URLConfig.wasmUASTCToR8_UNORM,!0),wasmUASTCToRG8_UNORM:d.Tools.GetBabylonScriptURL(this.URLConfig.wasmUASTCToRG8_UNORM,!0),jsMSCTranscoder:d.Tools.GetBabylonScriptURL(this.URLConfig.jsMSCTranscoder,!0),wasmMSCTranscoder:d.Tools.GetBabylonScriptURL(this.URLConfig.wasmMSCTranscoder,!0),wasmZSTDDecoder:d.Tools.GetBabylonScriptURL(this.URLConfig.wasmZSTDDecoder,!0)};e&&"function"==typeof Worker&&"u">typeof URL?R._WorkerPoolPromise=new Promise(r=>{let s=`${T}(${_})()`,o=URL.createObjectURL(new Blob([s],{type:"application/javascript"}));r(new l.AutoReleaseWorkerPool(e,async()=>await u(new Worker(o),void 0,t)))}):void 0===R._KTX2DecoderModule?R._DecoderModulePromise=d.Tools.LoadBabylonScriptAsync(t.jsDecoderModule).then(()=>(R._KTX2DecoderModule=KTX2DECODER,R._KTX2DecoderModule.MSCTranscoder.UseFromWorkerThread=!1,R._KTX2DecoderModule.WASMMemoryManager.LoadBinariesFromCurrentThread=!0,T(t,R._KTX2DecoderModule),new R._KTX2DecoderModule.KTX2Decoder)):(R._KTX2DecoderModule.MSCTranscoder.UseFromWorkerThread=!1,R._KTX2DecoderModule.WASMMemoryManager.LoadBinariesFromCurrentThread=!0,R._DecoderModulePromise=Promise.resolve(new R._KTX2DecoderModule.KTX2Decoder))}constructor(e,t=R.DefaultNumWorkers){this._engine=e;const r="object"==typeof t&&t.workerPool||R.WorkerPool;if(r)R._WorkerPoolPromise=Promise.resolve(r);else{"object"==typeof t?R._KTX2DecoderModule=t?.binariesAndModulesContainer?.jsDecoderModule:"u">typeof KTX2DECODER&&(R._KTX2DecoderModule=KTX2DECODER);const e="number"==typeof t?t:t.numWorkers??R.DefaultNumWorkers;R._Initialize(e)}}async _uploadAsync(e,t,r){let s=this._engine.getCaps(),o={astc:!!s.astc,bptc:!!s.bptc,s3tc:!!s.s3tc,pvrtc:!!s.pvrtc,etc2:!!s.etc2,etc1:!!s.etc1};if(R._WorkerPoolPromise){let s=await R._WorkerPoolPromise;return await new Promise((a,i)=>{s.push((s,n)=>{let c=e=>{s.removeEventListener("error",c),s.removeEventListener("message",l),i(e),n()},l=e=>{if("decoded"===e.data.action){if(s.removeEventListener("error",c),s.removeEventListener("message",l),e.data.success)try{this._createTexture(e.data.decodedData,t,r),a()}catch(e){i({message:e})}else i({message:e.data.msg});n()}};s.addEventListener("error",c),s.addEventListener("message",l),s.postMessage({action:"setDefaultDecoderOptions",options:R.DefaultDecoderOptions._getKTX2DecoderOptions()});let d=new Uint8Array(e.byteLength);d.set(new Uint8Array(e.buffer,e.byteOffset,e.byteLength)),s.postMessage({action:"decode",data:d,caps:o,options:r},[d.buffer])})})}if(R._DecoderModulePromise){let r=await R._DecoderModulePromise;return R.DefaultDecoderOptions.isDirty&&(R._KTX2DecoderModule.KTX2Decoder.DefaultDecoderOptions=R.DefaultDecoderOptions._getKTX2DecoderOptions()),await new Promise((o,a)=>{r.decode(e,s).then(e=>{this._createTexture(e,t),o()}).catch(e=>{a({message:e})})})}throw Error("KTX2 decoder module is not available")}_createTexture(e,t,r){this._engine._bindTextureDirectly(3553,t),r&&(r.transcodedFormat=e.transcodedFormat,r.isInGammaSpace=e.isInGammaSpace,r.hasAlpha=e.hasAlpha,r.transcoderName=e.transcoderName);let s=!0;switch(e.transcodedFormat){case 32856:t.type=0,t.format=5;break;case 33321:t.type=0,t.format=6;break;case 33323:t.type=0,t.format=7;break;default:t.format=e.transcodedFormat,s=!1}if(t._gammaSpace=e.isInGammaSpace,t.generateMipMaps=e.mipmaps.length>1,t.width=e.mipmaps[0].width,t.height=e.mipmaps[0].height,e.errors)throw Error("KTX2 container - could not transcode the data. "+e.errors);for(let r=0;r<e.mipmaps.length;++r){let o=e.mipmaps[r];if(!o||!o.data)throw Error("KTX2 container - could not transcode one of the image");s?(t.width=o.width,t.height=o.height,this._engine._uploadDataToTextureDirectly(t,o.data,0,r,void 0,!0)):this._engine._uploadCompressedDataToTextureDirectly(t,e.transcodedFormat,o.width,o.height,o.data,0,r)}t._extension=".ktx2",t.isReady=!0,this._engine._bindTextureDirectly(3553,null)}static IsValid(e){if(e.byteLength>=12){let t=new Uint8Array(e.buffer,e.byteOffset,12);if(171===t[0]&&75===t[1]&&84===t[2]&&88===t[3]&&32===t[4]&&50===t[5]&&48===t[6]&&187===t[7]&&13===t[8]&&10===t[9]&&26===t[10]&&10===t[11])return!0}return!1}}function m(e){switch(e){case 35916:return 33776;case 35918:return 33778;case 35919:return 33779;case 37493:return 37492;case 37497:return 37496;case 37495:return 37494;case 37840:return 37808;case 37841:return 37809;case 37842:return 37810;case 37843:return 37811;case 37844:return 37812;case 37845:return 37813;case 37846:return 37814;case 37847:return 37815;case 37848:return 37816;case 37849:return 37817;case 37850:return 37818;case 37851:return 37819;case 37852:return 37820;case 37853:return 37821;case 36493:return 36492}return null}R.URLConfig={jsDecoderModule:"https://cdn.babylonjs.com/babylon.ktx2Decoder.js",wasmUASTCToASTC:null,wasmUASTCToBC7:null,wasmUASTCToRGBA_UNORM:null,wasmUASTCToRGBA_SRGB:null,wasmUASTCToR8_UNORM:null,wasmUASTCToRG8_UNORM:null,jsMSCTranscoder:null,wasmMSCTranscoder:null,wasmZSTDDecoder:null},R.DefaultNumWorkers=R.GetDefaultNumWorkers(),R.DefaultDecoderOptions=new class{constructor(){this._isDirty=!0,this._useRGBAIfOnlyBC1BC3AvailableWhenUASTC=!0,this._ktx2DecoderOptions={}}get isDirty(){return this._isDirty}get useRGBAIfASTCBC7NotAvailableWhenUASTC(){return this._useRGBAIfASTCBC7NotAvailableWhenUASTC}set useRGBAIfASTCBC7NotAvailableWhenUASTC(e){this._useRGBAIfASTCBC7NotAvailableWhenUASTC!==e&&(this._useRGBAIfASTCBC7NotAvailableWhenUASTC=e,this._isDirty=!0)}get useRGBAIfOnlyBC1BC3AvailableWhenUASTC(){return this._useRGBAIfOnlyBC1BC3AvailableWhenUASTC}set useRGBAIfOnlyBC1BC3AvailableWhenUASTC(e){this._useRGBAIfOnlyBC1BC3AvailableWhenUASTC!==e&&(this._useRGBAIfOnlyBC1BC3AvailableWhenUASTC=e,this._isDirty=!0)}get forceRGBA(){return this._forceRGBA}set forceRGBA(e){this._forceRGBA!==e&&(this._forceRGBA=e,this._isDirty=!0)}get forceR8(){return this._forceR8}set forceR8(e){this._forceR8!==e&&(this._forceR8=e,this._isDirty=!0)}get forceRG8(){return this._forceRG8}set forceRG8(e){this._forceRG8!==e&&(this._forceRG8=e,this._isDirty=!0)}get bypassTranscoders(){return this._bypassTranscoders}set bypassTranscoders(e){this._bypassTranscoders!==e&&(this._bypassTranscoders=e,this._isDirty=!0)}_getKTX2DecoderOptions(){if(!this._isDirty)return this._ktx2DecoderOptions;this._isDirty=!1;let e={};return void 0!==this._useRGBAIfASTCBC7NotAvailableWhenUASTC&&(e.useRGBAIfASTCBC7NotAvailableWhenUASTC=this._useRGBAIfASTCBC7NotAvailableWhenUASTC),void 0!==this._forceRGBA&&(e.forceRGBA=this._forceRGBA),void 0!==this._forceR8&&(e.forceR8=this._forceR8),void 0!==this._forceRG8&&(e.forceRG8=this._forceRG8),void 0!==this._bypassTranscoders&&(e.bypassTranscoders=this._bypassTranscoders),this.useRGBAIfOnlyBC1BC3AvailableWhenUASTC&&(e.transcodeFormatDecisionTree={UASTC:{transcodeFormat:[a.BC1_RGB,a.BC3_RGBA],yes:{transcodeFormat:a.RGBA32,engineFormat:32856,roundToMultiple4:!1}}}),this._ktx2DecoderOptions=e,e}},e.s(["_KTXTextureLoader",0,class{constructor(){this.supportCascades=!1}loadCubeData(e,t,r,s){if(Array.isArray(e))return;t._invertVScale=!t.invertY;let o=t.getEngine(),a=new c(e,6),i=m(a.glInternalFormat);null!==i?(t.format=i,t._useSRGBBuffer=o._getUseSRGBBuffer(!0,!t.generateMipMaps),t._gammaSpace=!0):t.format=a.glInternalFormat;let n=a.numberOfMipmapLevels>1&&t.generateMipMaps;o._unpackFlipY(!0),a.uploadLevels(t,t.generateMipMaps),t.width=a.pixelWidth,t.height=a.pixelHeight,o._setCubeMapTextureParams(t,n,a.numberOfMipmapLevels-1),t.isReady=!0,t.onLoadedObservable.notifyObservers(t),t.onLoadedObservable.clear(),s&&s()}loadData(e,t,r,s){if(c.IsValid(e)){t._invertVScale=!t.invertY;let s=new c(e,1),o=m(s.glInternalFormat);null!==o?(t.format=o,t._useSRGBBuffer=t.getEngine()._getUseSRGBBuffer(!0,!t.generateMipMaps),t._gammaSpace=!0):t.format=s.glInternalFormat,r(s.pixelWidth,s.pixelHeight,t.generateMipMaps,!0,()=>{s.uploadLevels(t,t.generateMipMaps)},s.isInvalid)}else R.IsValid(e)?new R(t.getEngine())._uploadAsync(e,t,s).then(()=>{r(t.width,t.height,t.generateMipMaps,!0,()=>{},!1)},e=>{n.Logger.Warn(`Failed to load KTX2 texture data: ${e.message}`),r(0,0,!1,!1,()=>{},!0)}):(n.Logger.Error("texture missing KTX identifier"),r(0,0,!1,!1,()=>{},!0))}}],20614)}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,62619,e=>{"use strict";var t,r,i,n,s,a,l,u,h,o,_,c=e.i(35160);let E=!1;E=!0,c.ThinEngine.prototype.setAlphaMode=function(e,t=!1,r=0){if(this._alphaMode[r]===e){if(!t){let t=0===e;this.depthCullingState.depthMask!==t&&(this.depthCullingState.depthMask=t)}return}let i=0===e;this._alphaState.setAlphaBlend(!i,r),this._alphaState.setAlphaMode(e,r),t||(this.depthCullingState.depthMask=i),this._alphaMode[r]=e};var T=e.i(93298),f=e.i(80434),p=e.i(98551);let d=!1;function g(e,t,r,i){let n,s=1;1===i?n=new Float32Array(t*r*4):2===i?(n=new Uint16Array(t*r*4),s=15360):n=7===i?new Uint32Array(t*r*4):new Uint8Array(t*r*4);for(let i=0;i<t;i++)for(let a=0;a<r;a++){let r=(a*t+i)*3,l=(a*t+i)*4;n[l+0]=e[r+0],n[l+1]=e[r+1],n[l+2]=e[r+2],n[l+3]=s}return n}function R(e){return function(t,r,i,n,s,a,l,u,h=null,o=0){let _=e?this._gl.TEXTURE_3D:this._gl.TEXTURE_2D_ARRAY,c=new T.InternalTexture(this,e?10:11);c.baseWidth=r,c.baseHeight=i,c.baseDepth=n,c.width=r,c.height=i,c.depth=n,c.format=s,c.type=o,c.generateMipMaps=a,c.samplingMode=u,e?c.is3D=!0:c.is2DArray=!0,this._doNotHandleContextLost||(c._bufferView=t),e?this.updateRawTexture3D(c,t,s,l,h,o):this.updateRawTexture2DArray(c,t,s,l,h,o),this._bindTextureDirectly(_,c,!0);let E=this._getSamplingParameters(u,a);return this._gl.texParameteri(_,this._gl.TEXTURE_MAG_FILTER,E.mag),this._gl.texParameteri(_,this._gl.TEXTURE_MIN_FILTER,E.min),a&&this._gl.generateMipmap(_),this._bindTextureDirectly(_,null),this._internalTexturesCache.push(c),c}}function m(e){return function(t,r,i,n,s=null,a=0){let l=e?this._gl.TEXTURE_3D:this._gl.TEXTURE_2D_ARRAY,u=this._getWebGLTextureType(a),h=this._getInternalFormat(i),o=this._getRGBABufferInternalSizedFormat(a,i);this._bindTextureDirectly(l,t,!0),this._unpackFlipY(void 0===n||!!n),this._doNotHandleContextLost||(t._bufferView=r,t.format=i,t.invertY=n,t._compression=s),t.width%4!=0&&this._gl.pixelStorei(this._gl.UNPACK_ALIGNMENT,1),s&&r?this._gl.compressedTexImage3D(l,0,this.getCaps().s3tc[s],t.width,t.height,t.depth,0,r):this._gl.texImage3D(l,0,o,t.width,t.height,t.depth,0,h,u,r),t.generateMipMaps&&this._gl.generateMipmap(l),this._bindTextureDirectly(l,null),t.isReady=!0}}d=!0,c.ThinEngine.prototype.updateRawTexture=function(e,t,r,i,n=null,s=0,a=!1){if(!e)return;let l=this._getRGBABufferInternalSizedFormat(s,r,a),u=this._getInternalFormat(r),h=this._getWebGLTextureType(s);this._bindTextureDirectly(this._gl.TEXTURE_2D,e,!0),this._unpackFlipY(void 0===i||!!i),this._doNotHandleContextLost||(e._bufferView=t,e.format=r,e.type=s,e.invertY=i,e._compression=n),e.width%4!=0&&this._gl.pixelStorei(this._gl.UNPACK_ALIGNMENT,1),n&&t?this._gl.compressedTexImage2D(this._gl.TEXTURE_2D,0,this.getCaps().s3tc[n],e.width,e.height,0,t):this._gl.texImage2D(this._gl.TEXTURE_2D,0,l,e.width,e.height,0,u,h,t),e.generateMipMaps&&this._gl.generateMipmap(this._gl.TEXTURE_2D),this._bindTextureDirectly(this._gl.TEXTURE_2D,null),e.isReady=!0},c.ThinEngine.prototype.createRawTexture=function(e,t,r,i,n,s,a,l=null,u=0,h=0,o=!1){let _=new T.InternalTexture(this,3);_.baseWidth=t,_.baseHeight=r,_.width=t,_.height=r,_.format=i,_.generateMipMaps=n,_.samplingMode=a,_.invertY=s,_._compression=l,_.type=u,_._useSRGBBuffer=this._getUseSRGBBuffer(o,!n),this._doNotHandleContextLost||(_._bufferView=e),this.updateRawTexture(_,e,i,s,l,u,_._useSRGBBuffer),this._bindTextureDirectly(this._gl.TEXTURE_2D,_,!0);let c=this._getSamplingParameters(a,n);return this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MAG_FILTER,c.mag),this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MIN_FILTER,c.min),n&&this._gl.generateMipmap(this._gl.TEXTURE_2D),this._bindTextureDirectly(this._gl.TEXTURE_2D,null),this._internalTexturesCache.push(_),_},c.ThinEngine.prototype.createRawCubeTexture=function(e,t,r,i,n,s,a,l=null){let u=this._gl,h=new T.InternalTexture(this,8);h.isCube=!0,h.format=r,h.type=i,this._doNotHandleContextLost||(h._bufferViewArray=e);let o=this._getWebGLTextureType(i),_=this._getInternalFormat(r);if(_===u.RGB&&(_=u.RGBA),o!==u.FLOAT||this._caps.textureFloatLinearFiltering?o!==this._gl.HALF_FLOAT_OES||this._caps.textureHalfFloatLinearFiltering?o!==u.FLOAT||this._caps.textureFloatRender?o!==u.HALF_FLOAT||this._caps.colorBufferFloat||(n=!1,f.Logger.Warn("Render to half float textures is not supported. Mipmap generation forced to false.")):(n=!1,f.Logger.Warn("Render to float textures is not supported. Mipmap generation forced to false.")):(n=!1,a=1,f.Logger.Warn("Half float texture filtering is not supported. Mipmap generation and sampling mode are forced to false and TEXTURE_NEAREST_SAMPLINGMODE, respectively.")):(n=!1,a=1,f.Logger.Warn("Float texture filtering is not supported. Mipmap generation and sampling mode are forced to false and TEXTURE_NEAREST_SAMPLINGMODE, respectively.")),h.width=t,h.height=t,h.invertY=s,h._compression=l,!this.needPOTTextures||(0,p.IsExponentOfTwo)(h.width)&&(0,p.IsExponentOfTwo)(h.height)||(n=!1),e)this.updateRawCubeTexture(h,e,r,i,s,l);else{let e=this._getRGBABufferInternalSizedFormat(i);this._bindTextureDirectly(u.TEXTURE_CUBE_MAP,h,!0);for(let t=0;t<6;t++)l?u.compressedTexImage2D(u.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,this.getCaps().s3tc[l],h.width,h.height,0,void 0):u.texImage2D(u.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,e,h.width,h.height,0,_,o,null);this._bindTextureDirectly(this._gl.TEXTURE_CUBE_MAP,null)}this._bindTextureDirectly(this._gl.TEXTURE_CUBE_MAP,h,!0),e&&n&&this._gl.generateMipmap(this._gl.TEXTURE_CUBE_MAP);let c=this._getSamplingParameters(a,n);return u.texParameteri(u.TEXTURE_CUBE_MAP,u.TEXTURE_MAG_FILTER,c.mag),u.texParameteri(u.TEXTURE_CUBE_MAP,u.TEXTURE_MIN_FILTER,c.min),u.texParameteri(u.TEXTURE_CUBE_MAP,u.TEXTURE_WRAP_S,u.CLAMP_TO_EDGE),u.texParameteri(u.TEXTURE_CUBE_MAP,u.TEXTURE_WRAP_T,u.CLAMP_TO_EDGE),this._bindTextureDirectly(u.TEXTURE_CUBE_MAP,null),h.generateMipMaps=n,h.samplingMode=a,h.isReady=!0,h},c.ThinEngine.prototype.updateRawCubeTexture=function(e,t,r,i,n,s=null,a=0){e._bufferViewArray=t,e.format=r,e.type=i,e.invertY=n,e._compression=s;let l=this._gl,u=this._getWebGLTextureType(i),h=this._getInternalFormat(r),o=this._getRGBABufferInternalSizedFormat(i),_=!1;h===l.RGB&&(h=l.RGBA,_=!0),this._bindTextureDirectly(l.TEXTURE_CUBE_MAP,e,!0),this._unpackFlipY(void 0===n||!!n),e.width%4!=0&&l.pixelStorei(l.UNPACK_ALIGNMENT,1);for(let r=0;r<6;r++){let n=t[r];s?l.compressedTexImage2D(l.TEXTURE_CUBE_MAP_POSITIVE_X+r,a,this.getCaps().s3tc[s],e.width,e.height,0,n):(_&&(n=g(n,e.width,e.height,i)),l.texImage2D(l.TEXTURE_CUBE_MAP_POSITIVE_X+r,a,o,e.width,e.height,0,h,u,n))}(!this.needPOTTextures||(0,p.IsExponentOfTwo)(e.width)&&(0,p.IsExponentOfTwo)(e.height))&&e.generateMipMaps&&0===a&&this._gl.generateMipmap(this._gl.TEXTURE_CUBE_MAP),this._bindTextureDirectly(this._gl.TEXTURE_CUBE_MAP,null),e.isReady=!0},c.ThinEngine.prototype.createRawCubeTextureFromUrl=function(e,t,r,i,n,s,a,l,u=null,h=null,o=3,_=!1){let c=this._gl,E=this.createRawCubeTexture(null,r,i,n,!s,_,o,null);t?.addPendingData(E),E.url=e,E.isReady=!1,this._internalTexturesCache.push(E);let T=(e,r)=>{t?.removePendingData(E),h&&h(e?e.status+" "+e.statusText:"Failed to parse texture data",r)},f=async e=>{if(!E._hardwareTexture)return;let r=a(e);if(!r)return;let s=r instanceof Promise?await r:r,h=E.width;if(l){let e=this._getWebGLTextureType(n),t=this._getInternalFormat(i),r=this._getRGBABufferInternalSizedFormat(n),a=!1;t===c.RGB&&(t=c.RGBA,a=!0),this._bindTextureDirectly(c.TEXTURE_CUBE_MAP,E,!0),this._unpackFlipY(!1);let u=l(s);for(let i=0;i<u.length;i++){let s=h>>i;for(let l=0;l<6;l++){let h=u[i][l];a&&(h=g(h,s,s,n)),c.texImage2D(l,i,r,s,s,0,t,e,h)}}this._bindTextureDirectly(c.TEXTURE_CUBE_MAP,null)}else this.updateRawCubeTexture(E,s,i,n,_);E.isReady=!0,t?.removePendingData(E),E.onLoadedObservable.notifyObservers(E),E.onLoadedObservable.clear(),u&&u()};return this._loadFile(e,e=>{f(e).catch(e=>{T(void 0,e)})},void 0,t?.offlineProvider,!0,T),E},c.ThinEngine.prototype.createRawTexture2DArray=R(!1),c.ThinEngine.prototype.createRawTexture3D=R(!0),c.ThinEngine.prototype.updateRawTexture2DArray=m(!1),c.ThinEngine.prototype.updateRawTexture3D=m(!0);var A=e.i(61599);let b=!1;b=!0,c.ThinEngine.prototype._readTexturePixelsSync=function(e,t,r,i=-1,n=0,s=null,a=!0,l=!1,u=0,h=0){let o=this._gl;if(!o)throw Error("Engine does not have gl rendering context.");if(!this._dummyFramebuffer){let e=o.createFramebuffer();if(!e)throw Error("Unable to create dummy framebuffer");this._dummyFramebuffer=e}o.bindFramebuffer(o.FRAMEBUFFER,this._dummyFramebuffer),i>-1&&(e.is2DArray||e.is3D)?o.framebufferTextureLayer(o.FRAMEBUFFER,o.COLOR_ATTACHMENT0,e._hardwareTexture?.underlyingResource,n,i):i>-1?o.framebufferTexture2D(o.FRAMEBUFFER,o.COLOR_ATTACHMENT0,o.TEXTURE_CUBE_MAP_POSITIVE_X+i,e._hardwareTexture?.underlyingResource,n):o.framebufferTexture2D(o.FRAMEBUFFER,o.COLOR_ATTACHMENT0,o.TEXTURE_2D,e._hardwareTexture?.underlyingResource,n);let _=void 0!==e.type?this._getWebGLTextureType(e.type):o.UNSIGNED_BYTE;return l?s||(s=(0,A.allocateAndCopyTypedBuffer)(e.type,4*t*r)):_===o.UNSIGNED_BYTE?(s||(s=new Uint8Array(4*t*r)),_=o.UNSIGNED_BYTE):(s||(s=new Float32Array(4*t*r)),_=o.FLOAT),a&&this.flushFramebuffer(),o.readPixels(u,h,t,r,o.RGBA,_,s),o.bindFramebuffer(o.FRAMEBUFFER,this._currentFramebuffer),s},c.ThinEngine.prototype._readTexturePixels=function(e,t,r,i=-1,n=0,s=null,a=!0,l=!1,u=0,h=0){return Promise.resolve(this._readTexturePixelsSync(e,t,r,i,n,s,a,l,u,h))},(0,e.i(60216).RegisterEngineDynamicBuffer)();let S=!1;S=!0,c.ThinEngine.prototype._createDepthStencilCubeTexture=function(e,t){let r=new T.InternalTexture(this,12);if(r.isCube=!0,1===this.webGLVersion)return f.Logger.Error("Depth cube texture is not supported by WebGL 1."),r;let i={bilinearFiltering:!1,comparisonFunction:0,generateStencil:!1,...t},n=this._gl;this._bindTextureDirectly(n.TEXTURE_CUBE_MAP,r,!0),this._setupDepthStencilTexture(r,e,i.bilinearFiltering,i.comparisonFunction);for(let t=0;t<6;t++)i.generateStencil?n.texImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,n.DEPTH24_STENCIL8,e,e,0,n.DEPTH_STENCIL,n.UNSIGNED_INT_24_8,null):n.texImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,n.DEPTH_COMPONENT24,e,e,0,n.DEPTH_COMPONENT,n.UNSIGNED_INT,null);return this._bindTextureDirectly(n.TEXTURE_CUBE_MAP,null),this._internalTexturesCache.push(r),r},c.ThinEngine.prototype._setCubeMapTextureParams=function(e,t,r){let i=this._gl;i.texParameteri(i.TEXTURE_CUBE_MAP,i.TEXTURE_MAG_FILTER,i.LINEAR),i.texParameteri(i.TEXTURE_CUBE_MAP,i.TEXTURE_MIN_FILTER,t?i.LINEAR_MIPMAP_LINEAR:i.LINEAR),i.texParameteri(i.TEXTURE_CUBE_MAP,i.TEXTURE_WRAP_S,i.CLAMP_TO_EDGE),i.texParameteri(i.TEXTURE_CUBE_MAP,i.TEXTURE_WRAP_T,i.CLAMP_TO_EDGE),e.samplingMode=t?3:2,t&&this.getCaps().textureMaxLevel&&void 0!==r&&r>0&&(i.texParameteri(i.TEXTURE_CUBE_MAP,i.TEXTURE_MAX_LEVEL,r),e._maxLodLevel=r),this._bindTextureDirectly(i.TEXTURE_CUBE_MAP,null)},c.ThinEngine.prototype.createCubeTexture=function(e,t,r,i,n=null,s=null,a,l=null,u=!1,h=0,o=0,_=null,c,E=!1,T=null){let d=this._gl;return this.createCubeTextureBase(e,t,r,!!i,n,s,a,l,u,h,o,_,e=>this._bindTextureDirectly(d.TEXTURE_CUBE_MAP,e,!0),(e,t)=>{let r=this.needPOTTextures?(0,p.GetExponentOfTwo)(t[0].width,this._caps.maxCubemapTextureSize):t[0].width,s=[d.TEXTURE_CUBE_MAP_POSITIVE_X,d.TEXTURE_CUBE_MAP_POSITIVE_Y,d.TEXTURE_CUBE_MAP_POSITIVE_Z,d.TEXTURE_CUBE_MAP_NEGATIVE_X,d.TEXTURE_CUBE_MAP_NEGATIVE_Y,d.TEXTURE_CUBE_MAP_NEGATIVE_Z];this._bindTextureDirectly(d.TEXTURE_CUBE_MAP,e,!0),this._unpackFlipY(!1);let l=a?this._getInternalFormat(a,e._useSRGBBuffer):e._useSRGBBuffer?this._glSRGBExtensionValues.SRGB8_ALPHA8:d.RGBA,u=a?this._getInternalFormat(a):d.RGBA;e._useSRGBBuffer&&1===this.webGLVersion&&(u=l);for(let e=0;e<s.length;e++)if(t[e].width!==r||t[e].height!==r){if(this._prepareWorkingCanvas(),!this._workingCanvas||!this._workingContext)return void f.Logger.Warn("Cannot create canvas to resize texture.");this._workingCanvas.width=r,this._workingCanvas.height=r,this._workingContext.drawImage(t[e],0,0,t[e].width,t[e].height,0,0,r,r),d.texImage2D(s[e],0,l,u,d.UNSIGNED_BYTE,this._workingCanvas)}else d.texImage2D(s[e],0,l,u,d.UNSIGNED_BYTE,t[e]);i||d.generateMipmap(d.TEXTURE_CUBE_MAP),this._setCubeMapTextureParams(e,!i),e.width=r,e.height=r,e.isReady=!0,a&&(e.format=a),e.onLoadedObservable.notifyObservers(e),e.onLoadedObservable.clear(),n&&n()},!!E,T)},c.ThinEngine.prototype.generateMipMapsForCubemap=function(e,t=!0){if(e.generateMipMaps){let r=this._gl;this._bindTextureDirectly(r.TEXTURE_CUBE_MAP,e,!0),r.generateMipmap(r.TEXTURE_CUBE_MAP),t&&this._bindTextureDirectly(r.TEXTURE_CUBE_MAP,null)}};var F=e.i(23949);class x{get depthStencilTexture(){return this._depthStencilTexture}setDepthStencilTexture(e,t=!0){t&&this._depthStencilTexture&&this._depthStencilTexture.dispose(),this._depthStencilTexture=e,this._generateDepthBuffer=this._generateStencilBuffer=this._depthStencilTextureWithStencil=!1,e&&(this._generateDepthBuffer=!0,this._generateStencilBuffer=this._depthStencilTextureWithStencil=(0,F.HasStencilAspect)(e.format))}get depthStencilTextureWithStencil(){return this._depthStencilTextureWithStencil}get isCube(){return this._isCube}get isMulti(){return this._isMulti}get is2DArray(){return this.layers>0}get is3D(){return this.depth>0}get size(){return this.width}get width(){return this._size.width??this._size}get height(){return this._size.height??this._size}get layers(){return this._size.layers||0}get depth(){return this._size.depth||0}get texture(){return this._textures?.[0]??null}get textures(){return this._textures}get faceIndices(){return this._faceIndices}get layerIndices(){return this._layerIndices}getBaseArrayLayer(e){if(!this._textures)return -1;let t=this._textures[e],r=this._layerIndices?.[e]??0,i=this._faceIndices?.[e]??0;return t.isCube?6*r+i:t.is3D?0:r}get samples(){return this._samples}setSamples(e,t=!0,r=!1){if(this.samples===e&&!r)return e;let i=this._isMulti?this._engine.updateMultipleRenderTargetTextureSampleCount(this,e,t):this._engine.updateRenderTargetTextureSampleCount(this,e);return this._samples=e,i}resolveMSAATextures(){this.isMulti?this._engine.resolveMultiFramebuffer(this):this._engine.resolveFramebuffer(this)}generateMipMaps(){this._engine._currentRenderTarget===this&&(this.isMulti?this._engine.unBindMultiColorAttachmentFramebuffer(this,!0):this._engine.unBindFramebuffer(this,!0)),this.isMulti?this._engine.generateMipMapsMultiFramebuffer(this):this._engine.generateMipMapsFramebuffer(this)}constructor(e,t,r,i,n){this._textures=null,this._faceIndices=null,this._layerIndices=null,this._samples=1,this._attachments=null,this._generateStencilBuffer=!1,this._generateDepthBuffer=!1,this._depthStencilTextureWithStencil=!1,this.disableAutomaticMSAAResolve=!1,this.resolveMSAAColors=!0,this.resolveMSAADepth=!1,this.resolveMSAAStencil=!1,this.depthReadOnly=!1,this.stencilReadOnly=!1,this._isMulti=e,this._isCube=t,this._size=r,this._engine=i,this._depthStencilTexture=null,this.label=n}setTextures(e){Array.isArray(e)?this._textures=e:e?this._textures=[e]:this._textures=null}setTexture(e,t=0,r=!0){this._textures||(this._textures=[]),this._textures[t]!==e&&(this._textures[t]&&r&&this._textures[t].dispose(),this._textures[t]=e)}setLayerAndFaceIndices(e,t){this._layerIndices=e,this._faceIndices=t}setLayerAndFaceIndex(e=0,t,r){this._layerIndices||(this._layerIndices=[]),this._faceIndices||(this._faceIndices=[]),void 0!==t&&t>=0&&(this._layerIndices[e]=t),void 0!==r&&r>=0&&(this._faceIndices[e]=r)}createDepthStencilTexture(e=0,t=!0,r=!1,i=1,n=14,s){return this._depthStencilTexture?.dispose(),this._depthStencilTextureWithStencil=r,this._depthStencilTextureLabel=s,this._depthStencilTexture=this._engine.createDepthStencilTexture(this._size,{bilinearFiltering:t,comparisonFunction:e,generateStencil:r,isCube:this._isCube,samples:i,depthTextureFormat:n,label:s},this),this._depthStencilTexture}_shareDepth(e){this.shareDepth(e)}shareDepth(e){this._depthStencilTexture&&(e._depthStencilTexture&&e._depthStencilTexture.dispose(),e._depthStencilTexture=this._depthStencilTexture,e._depthStencilTextureWithStencil=this._depthStencilTextureWithStencil,this._depthStencilTexture.incrementReferences())}_swapAndDie(e){this.texture&&this.texture._swapAndDie(e),this._textures=null,this.dispose(!0)}_cloneRenderTargetWrapper(){let e=null;if(this._isMulti){let t=this.textures;if(t&&t.length>0){let r=!1,i=t.length,n=-1,s=t[t.length-1]._source;(14===s||12===s)&&(r=!0,n=t[t.length-1].format,i--);let a=[],l=[],u=[],h=[],o=[],_=[],c=[],E={};for(let e=0;e<i;++e){let r=t[e];a.push(r.samplingMode),l.push(r.type),u.push(r.format),void 0!==E[r.uniqueId]?(h.push(-1),c.push(0)):(E[r.uniqueId]=e,r.is2DArray?(h.push(35866),c.push(r.depth)):r.isCube?(h.push(34067),c.push(0)):r.is3D?(h.push(32879),c.push(r.depth)):(h.push(3553),c.push(0))),this._faceIndices&&o.push(this._faceIndices[e]??0),this._layerIndices&&_.push(this._layerIndices[e]??0)}let T={samplingModes:a,generateMipMaps:t[0].generateMipMaps,generateDepthBuffer:this._generateDepthBuffer,generateStencilBuffer:this._generateStencilBuffer,generateDepthTexture:r,depthTextureFormat:n,types:l,formats:u,textureCount:i,targetTypes:h,faceIndex:o,layerIndex:_,layerCounts:c,label:this.label},f={width:this.width,height:this.height,depth:this.depth};e=this._engine.createMultipleRenderTarget(f,T);for(let r=0;r<i;++r){if(-1!==h[r])continue;let i=E[t[r].uniqueId];e.setTexture(e.textures[i],r)}}}else{let t={};if(t.generateDepthBuffer=this._generateDepthBuffer,t.generateMipMaps=this.texture?.generateMipMaps??!1,t.generateStencilBuffer=this._generateStencilBuffer,t.samplingMode=this.texture?.samplingMode,t.type=this.texture?.type,t.format=this.texture?.format,t.noColorAttachment=!this._textures,t.label=this.label,this.isCube)e=this._engine.createRenderTargetCubeTexture(this.width,t);else{let r={width:this.width,height:this.height,layers:this.is2DArray||this.is3D?this.texture?.depth:void 0};e=this._engine.createRenderTargetTexture(r,t)}e.texture&&(e.texture.isReady=!0)}return e}_swapRenderTargetWrapper(e){if(this._textures&&e._textures)for(let t=0;t<this._textures.length;++t)this._textures[t]._swapAndDie(e._textures[t],!1),e._textures[t].isReady=!0;this._depthStencilTexture&&e._depthStencilTexture&&(this._depthStencilTexture._swapAndDie(e._depthStencilTexture),e._depthStencilTexture.isReady=!0),this._textures=null,this._depthStencilTexture=null}_rebuild(){let e=this._cloneRenderTargetWrapper();if(e){if(this._depthStencilTexture){let t=this._depthStencilTexture.samplingMode,r=this._depthStencilTexture.format;e.createDepthStencilTexture(this._depthStencilTexture._comparisonFunction,2===t||3===t||11===t,this._depthStencilTextureWithStencil,this._depthStencilTexture.samples,r,this._depthStencilTextureLabel)}this.samples>1&&e.setSamples(this.samples),e._swapRenderTargetWrapper(this),e.dispose()}}releaseTextures(){if(this._textures)for(let e=0;e<this._textures.length;++e)this._textures[e].dispose();this._textures=null}dispose(e=!1){e||(this._depthStencilTexture?.dispose(),this._depthStencilTexture=null,this.releaseTextures()),this._engine._releaseRenderTargetWrapper(this)}}class M extends x{setDepthStencilTexture(e,t=!0){if(super.setDepthStencilTexture(e,t),!e)return;let r=this._engine,i=this._context,n=e._hardwareTexture;if(n&&e._autoMSAAManagement&&this._MSAAFramebuffer){let t=r._currentFramebuffer;r._bindUnboundFramebuffer(this._MSAAFramebuffer),i.framebufferRenderbuffer(i.FRAMEBUFFER,(0,F.HasStencilAspect)(e.format)?i.DEPTH_STENCIL_ATTACHMENT:i.DEPTH_ATTACHMENT,i.RENDERBUFFER,n.getMSAARenderBuffer()),r._bindUnboundFramebuffer(t)}}constructor(e,t,r,i,n){super(e,t,r,i),this._framebuffer=null,this._depthStencilBuffer=null,this._MSAAFramebuffer=null,this._colorTextureArray=null,this._depthStencilTextureArray=null,this._disposeOnlyFramebuffers=!1,this._currentLOD=0,this._context=n}_cloneRenderTargetWrapper(){let e;return this._colorTextureArray&&this._depthStencilTextureArray?(e=this._engine.createMultiviewRenderTargetTexture(this.width,this.height)).texture.isReady=!0:e=super._cloneRenderTargetWrapper(),e}_swapRenderTargetWrapper(e){super._swapRenderTargetWrapper(e),e._framebuffer=this._framebuffer,e._depthStencilBuffer=this._depthStencilBuffer,e._MSAAFramebuffer=this._MSAAFramebuffer,e._colorTextureArray=this._colorTextureArray,e._depthStencilTextureArray=this._depthStencilTextureArray,this._framebuffer=this._depthStencilBuffer=this._MSAAFramebuffer=this._colorTextureArray=this._depthStencilTextureArray=null}createDepthStencilTexture(e=0,t=!0,r=!1,i=1,n=14,s){if(this._depthStencilBuffer){let e=this._engine,t=e._currentFramebuffer,r=this._context;e._bindUnboundFramebuffer(this._framebuffer),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.DEPTH_STENCIL_ATTACHMENT,r.RENDERBUFFER,null),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.DEPTH_ATTACHMENT,r.RENDERBUFFER,null),r.framebufferRenderbuffer(r.FRAMEBUFFER,r.STENCIL_ATTACHMENT,r.RENDERBUFFER,null),e._bindUnboundFramebuffer(t),r.deleteRenderbuffer(this._depthStencilBuffer),this._depthStencilBuffer=null}return super.createDepthStencilTexture(e,t,r,i,n,s)}shareDepth(e){super.shareDepth(e);let t=this._context,r=this._depthStencilBuffer,i=e._MSAAFramebuffer||e._framebuffer,n=this._engine;e._depthStencilBuffer&&e._depthStencilBuffer!==r&&t.deleteRenderbuffer(e._depthStencilBuffer),e._depthStencilBuffer=r;let s=e._generateStencilBuffer?t.DEPTH_STENCIL_ATTACHMENT:t.DEPTH_ATTACHMENT;n._bindUnboundFramebuffer(i),t.framebufferRenderbuffer(t.FRAMEBUFFER,s,t.RENDERBUFFER,r),n._bindUnboundFramebuffer(null)}_bindTextureRenderTarget(e,t=0,r,i=0){let n,s=e._hardwareTexture;if(!s)return;let a=this._framebuffer,l=this._engine,u=l._currentFramebuffer;if(l._bindUnboundFramebuffer(a),l.webGLVersion>1){let a=this._context;n=a["COLOR_ATTACHMENT"+t],e.is2DArray||e.is3D?(r=r??this.layerIndices?.[t]??0,a.framebufferTextureLayer(a.FRAMEBUFFER,n,s.underlyingResource,i,r)):e.isCube?(r=r??this.faceIndices?.[t]??0,a.framebufferTexture2D(a.FRAMEBUFFER,n,a.TEXTURE_CUBE_MAP_POSITIVE_X+r,s.underlyingResource,i)):a.framebufferTexture2D(a.FRAMEBUFFER,n,a.TEXTURE_2D,s.underlyingResource,i)}else{let e=this._context;n=e["COLOR_ATTACHMENT"+t+"_WEBGL"];let a=void 0!==r?e.TEXTURE_CUBE_MAP_POSITIVE_X+r:e.TEXTURE_2D;e.framebufferTexture2D(e.FRAMEBUFFER,n,a,s.underlyingResource,i)}if(e._autoMSAAManagement&&this._MSAAFramebuffer){let e=this._context;l._bindUnboundFramebuffer(this._MSAAFramebuffer),e.framebufferRenderbuffer(e.FRAMEBUFFER,n,e.RENDERBUFFER,s.getMSAARenderBuffer())}l._bindUnboundFramebuffer(u)}setTexture(e,t=0,r=!0){super.setTexture(e,t,r),this._bindTextureRenderTarget(e,t)}setLayerAndFaceIndices(e,t){if(super.setLayerAndFaceIndices(e,t),!this.textures||!this.layerIndices||!this.faceIndices)return;let r=this._attachments?.length??this.textures.length;for(let e=0;e<r;e++){let t=this.textures[e];t&&(t.is2DArray||t.is3D?this._bindTextureRenderTarget(t,e,this.layerIndices[e]):t.isCube?this._bindTextureRenderTarget(t,e,this.faceIndices[e]):this._bindTextureRenderTarget(t,e))}}setLayerAndFaceIndex(e=0,t,r){if(super.setLayerAndFaceIndex(e,t,r),!this.textures||!this.layerIndices||!this.faceIndices)return;let i=this.textures[e];i.is2DArray||i.is3D?this._bindTextureRenderTarget(this.textures[e],e,this.layerIndices[e]):i.isCube&&this._bindTextureRenderTarget(this.textures[e],e,this.faceIndices[e])}resolveMSAATextures(){let e=this._engine,t=e._currentFramebuffer;e._bindUnboundFramebuffer(this._MSAAFramebuffer),super.resolveMSAATextures(),e._bindUnboundFramebuffer(t)}dispose(e=this._disposeOnlyFramebuffers){let t=this._context;!e&&(this._colorTextureArray&&(this._context.deleteTexture(this._colorTextureArray),this._colorTextureArray=null),this._depthStencilTextureArray&&(this._context.deleteTexture(this._depthStencilTextureArray),this._depthStencilTextureArray=null)),this._framebuffer&&(t.deleteFramebuffer(this._framebuffer),this._framebuffer=null),this._depthStencilBuffer&&(t.deleteRenderbuffer(this._depthStencilBuffer),this._depthStencilBuffer=null),this._MSAAFramebuffer&&(t.deleteFramebuffer(this._MSAAFramebuffer),this._MSAAFramebuffer=null),super.dispose(e)}}let U=!1;U=!0,c.ThinEngine.prototype._createHardwareRenderTargetWrapper=function(e,t,r){let i=new M(e,t,r,this,this._gl);return this._renderTargetWrapperCache.push(i),i},c.ThinEngine.prototype.createRenderTargetTexture=function(e,t){let r,i,n=this._createHardwareRenderTargetWrapper(!1,!1,e),s=!0,a=!1,l=!1,u=1;void 0!==t&&"object"==typeof t&&(s=t.generateDepthBuffer??!0,a=!!t.generateStencilBuffer,l=!!t.noColorAttachment,r=t.colorAttachment,u=t.samples??1,i=t.label);let h=r||(l?null:this._createInternalTexture(e,t,!0,5)),o=e.width||e,_=e.height||e,c=this._currentFramebuffer,E=this._gl,T=E.createFramebuffer();if(this._bindUnboundFramebuffer(T),n._depthStencilBuffer=this._setupFramebufferDepthAttachments(a,s,o,_),!h||h.is2DArray||h.is3D||E.framebufferTexture2D(E.FRAMEBUFFER,E.COLOR_ATTACHMENT0,E.TEXTURE_2D,h._hardwareTexture.underlyingResource,0),this._bindUnboundFramebuffer(c),n.label=i??"RenderTargetWrapper",n._framebuffer=T,n._generateDepthBuffer=s,n._generateStencilBuffer=a,n.setTextures(h),r){if(n._samples=r.samples,r.samples>1){let e=r._hardwareTexture.getMSAARenderBuffer(0);n._MSAAFramebuffer=E.createFramebuffer(),this._bindUnboundFramebuffer(n._MSAAFramebuffer),E.framebufferRenderbuffer(E.FRAMEBUFFER,E.COLOR_ATTACHMENT0,E.RENDERBUFFER,e),this._bindUnboundFramebuffer(null)}}else this.updateRenderTargetTextureSampleCount(n,u);return n},c.ThinEngine.prototype._createDepthStencilTexture=function(e,t,r){let i=this._gl,n=e.layers||0,s=e.depth||0,a=i.TEXTURE_2D;0!==n?a=i.TEXTURE_2D_ARRAY:0!==s&&(a=i.TEXTURE_3D);let l=new T.InternalTexture(this,12);if(l.label=t.label,!this._caps.depthTextureExtension)return f.Logger.Error("Depth texture is not supported by your browser or hardware."),l;let u={bilinearFiltering:!1,comparisonFunction:0,generateStencil:!1,...t};if(this._bindTextureDirectly(a,l,!0),this._setupDepthStencilTexture(l,e,0!==u.comparisonFunction&&u.bilinearFiltering,u.comparisonFunction,u.samples),void 0!==u.depthTextureFormat){if(15!==u.depthTextureFormat&&16!==u.depthTextureFormat&&17!==u.depthTextureFormat&&13!==u.depthTextureFormat&&14!==u.depthTextureFormat&&18!==u.depthTextureFormat)return f.Logger.Error(`Depth texture ${u.depthTextureFormat} format is not supported.`),l;l.format=u.depthTextureFormat}else l.format=u.generateStencil?13:16;let h=(0,F.HasStencilAspect)(l.format),o=this._getWebGLTextureTypeFromDepthTextureFormat(l.format),_=h?i.DEPTH_STENCIL:i.DEPTH_COMPONENT,c=this._getInternalFormatFromDepthTextureFormat(l.format,!0,h);return l.is2DArray?i.texImage3D(a,0,c,l.width,l.height,n,0,_,o,null):l.is3D?i.texImage3D(a,0,c,l.width,l.height,s,0,_,o,null):i.texImage2D(a,0,c,l.width,l.height,0,_,o,null),this._bindTextureDirectly(a,null),this._internalTexturesCache.push(l),r._depthStencilBuffer&&(i.deleteRenderbuffer(r._depthStencilBuffer),r._depthStencilBuffer=null),this._bindUnboundFramebuffer(r._MSAAFramebuffer??r._framebuffer),r._generateStencilBuffer=h,r._depthStencilTextureWithStencil=h,r._depthStencilBuffer=this._setupFramebufferDepthAttachments(r._generateStencilBuffer,r._generateDepthBuffer,r.width,r.height,r.samples,l.format),this._bindUnboundFramebuffer(null),l},c.ThinEngine.prototype.updateRenderTargetTextureSampleCount=function(e,t){if(this.webGLVersion<2||!e)return 1;if(e.samples===t)return t;let r=this._gl;t=Math.min(t,this.getCaps().maxMSAASamples),e._depthStencilBuffer&&(r.deleteRenderbuffer(e._depthStencilBuffer),e._depthStencilBuffer=null),e._MSAAFramebuffer&&(r.deleteFramebuffer(e._MSAAFramebuffer),e._MSAAFramebuffer=null);let i=e.texture?._hardwareTexture;if(i?.releaseMSAARenderBuffers(),e.texture&&t>1&&"function"==typeof r.renderbufferStorageMultisample){let n=r.createFramebuffer();if(!n)throw Error("Unable to create multi sampled framebuffer");e._MSAAFramebuffer=n,this._bindUnboundFramebuffer(e._MSAAFramebuffer);let s=this._createRenderBuffer(e.texture.width,e.texture.height,t,-1,this._getRGBABufferInternalSizedFormat(e.texture.type,e.texture.format,e.texture._useSRGBBuffer),r.COLOR_ATTACHMENT0,!1);if(!s)throw Error("Unable to create multi sampled framebuffer");i?.addMSAARenderBuffer(s)}this._bindUnboundFramebuffer(e._MSAAFramebuffer??e._framebuffer),e.texture&&(e.texture.samples=t),e._samples=t;let n=e._depthStencilTexture?e._depthStencilTexture.format:void 0;return e._depthStencilBuffer=this._setupFramebufferDepthAttachments(e._generateStencilBuffer,e._generateDepthBuffer,e.width,e.height,t,n),this._bindUnboundFramebuffer(null),t},c.ThinEngine.prototype._setupDepthStencilTexture=function(e,t,r,i,n=1){let s=t.width??t,a=t.height??t,l=t.layers||0,u=t.depth||0;e.baseWidth=s,e.baseHeight=a,e.width=s,e.height=a,e.is2DArray=l>0,e.depth=l||u,e.isReady=!0,e.samples=n,e.generateMipMaps=!1,e.samplingMode=r?2:1,e.type=0,e._comparisonFunction=i;let h=this._gl,o=this._getTextureTarget(e),_=this._getSamplingParameters(e.samplingMode,!1);h.texParameteri(o,h.TEXTURE_MAG_FILTER,_.mag),h.texParameteri(o,h.TEXTURE_MIN_FILTER,_.min),h.texParameteri(o,h.TEXTURE_WRAP_S,h.CLAMP_TO_EDGE),h.texParameteri(o,h.TEXTURE_WRAP_T,h.CLAMP_TO_EDGE),this.webGLVersion>1&&(0===i?(h.texParameteri(o,h.TEXTURE_COMPARE_FUNC,515),h.texParameteri(o,h.TEXTURE_COMPARE_MODE,h.NONE)):(h.texParameteri(o,h.TEXTURE_COMPARE_FUNC,i),h.texParameteri(o,h.TEXTURE_COMPARE_MODE,h.COMPARE_REF_TO_TEXTURE)))};let D=!1;D=!0,c.ThinEngine.prototype.setDepthStencilTexture=function(e,t,r,i){void 0!==e&&(t&&(this._boundUniforms[e]=t),r&&r.depthStencilTexture?this._setTexture(e,r,!1,!0,i):this._setTexture(e,null,void 0,void 0,i))};let P=!1;P=!0,c.ThinEngine.prototype.createRenderTargetCubeTexture=function(e,t){let r=this._createHardwareRenderTargetWrapper(!1,!0,e),i={generateMipMaps:!0,generateDepthBuffer:!0,generateStencilBuffer:!1,type:0,samplingMode:3,format:5,...t};i.generateStencilBuffer=i.generateDepthBuffer&&i.generateStencilBuffer,(1!==i.type||this._caps.textureFloatLinearFiltering)&&(2!==i.type||this._caps.textureHalfFloatLinearFiltering)||(i.samplingMode=1);let n=this._gl,s=new T.InternalTexture(this,5);this._bindTextureDirectly(n.TEXTURE_CUBE_MAP,s,!0);let a=this._getSamplingParameters(i.samplingMode,i.generateMipMaps);1!==i.type||this._caps.textureFloat||(i.type=0,f.Logger.Warn("Float textures are not supported. Cube render target forced to TEXTURETYPE_UNESIGNED_BYTE type")),n.texParameteri(n.TEXTURE_CUBE_MAP,n.TEXTURE_MAG_FILTER,a.mag),n.texParameteri(n.TEXTURE_CUBE_MAP,n.TEXTURE_MIN_FILTER,a.min),n.texParameteri(n.TEXTURE_CUBE_MAP,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_CUBE_MAP,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE);for(let t=0;t<6;t++)n.texImage2D(n.TEXTURE_CUBE_MAP_POSITIVE_X+t,0,this._getRGBABufferInternalSizedFormat(i.type,i.format),e,e,0,this._getInternalFormat(i.format),this._getWebGLTextureType(i.type),null);let l=n.createFramebuffer();return this._bindUnboundFramebuffer(l),r._depthStencilBuffer=this._setupFramebufferDepthAttachments(i.generateStencilBuffer,i.generateDepthBuffer,e,e),i.generateMipMaps&&n.generateMipmap(n.TEXTURE_CUBE_MAP),this._bindTextureDirectly(n.TEXTURE_CUBE_MAP,null),this._bindUnboundFramebuffer(null),r._framebuffer=l,r._generateDepthBuffer=i.generateDepthBuffer,r._generateStencilBuffer=i.generateStencilBuffer,s.width=e,s.height=e,s.isReady=!0,s.isCube=!0,s.samples=1,s.generateMipMaps=i.generateMipMaps,s.samplingMode=i.samplingMode,s.type=i.type,s.format=i.format,this._internalTexturesCache.push(s),r.setTextures(s),r};var y=e.i(89991),C=e.i(88048);let B=!1;B=!0,c.ThinEngine.prototype.createPrefilteredCubeTexture=function(t,r,i,n,s=null,a=null,l,u=null,h=!0){let o=async t=>{if(!t){s&&s(null);return}let a=t.texture;if(h?t.info.sphericalPolynomial&&(a._sphericalPolynomial=t.info.sphericalPolynomial):a._sphericalPolynomial=a._sphericalPolynomial??new y.SphericalPolynomial,a._source=9,this.getCaps().textureLOD){s&&s(a);return}let l=this._gl,u=t.width;if(!u)return;let{DDSTools:o}=await e.A(25906),_=[];for(let e=0;e<3;e++){let s=Math.log2(u)*i+n,h=Math.round(Math.min(Math.max(n+(s-n)*(1-e/2),0),s)),c=new T.InternalTexture(this,2);if(c.type=a.type,c.format=a.format,c.width=Math.pow(2,Math.max(Math.log2(u)-h,0)),c.height=c.width,c.isCube=!0,c._cachedWrapU=0,c._cachedWrapV=0,this._bindTextureDirectly(l.TEXTURE_CUBE_MAP,c,!0),c.samplingMode=2,l.texParameteri(l.TEXTURE_CUBE_MAP,l.TEXTURE_MAG_FILTER,l.LINEAR),l.texParameteri(l.TEXTURE_CUBE_MAP,l.TEXTURE_MIN_FILTER,l.LINEAR),l.texParameteri(l.TEXTURE_CUBE_MAP,l.TEXTURE_WRAP_S,l.CLAMP_TO_EDGE),l.texParameteri(l.TEXTURE_CUBE_MAP,l.TEXTURE_WRAP_T,l.CLAMP_TO_EDGE),t.isDDS){let e=t.info,r=t.data;this._unpackFlipY(e.isCompressed),o.UploadDDSLevels(this,c,r,e,!0,6,h)}else f.Logger.Warn("DDS is the only prefiltered cube map supported so far.");this._bindTextureDirectly(l.TEXTURE_CUBE_MAP,null);let E=new C.BaseTexture(r);E._isCube=!0,E._texture=c,c.isReady=!0,_.push(E)}a._lodTextureHigh=_[2],a._lodTextureMid=_[1],a._lodTextureLow=_[0],s&&s(a)};return this.createCubeTexture(t,r,null,!1,o,a,l,u,h,i,n)};var I=e.i(28636);let L=!1;L=!0,c.ThinEngine.prototype.createUniformBuffer=function(e,t){let r=this._gl.createBuffer();if(!r)throw Error("Unable to create uniform buffer");let i=new I.WebGLDataBuffer(r);return this.bindUniformBuffer(i),e instanceof Float32Array?this._gl.bufferData(this._gl.UNIFORM_BUFFER,e,this._gl.STATIC_DRAW):this._gl.bufferData(this._gl.UNIFORM_BUFFER,new Float32Array(e),this._gl.STATIC_DRAW),this.bindUniformBuffer(null),i.references=1,i},c.ThinEngine.prototype.createDynamicUniformBuffer=function(e,t){let r=this._gl.createBuffer();if(!r)throw Error("Unable to create dynamic uniform buffer");let i=new I.WebGLDataBuffer(r);return this.bindUniformBuffer(i),e instanceof Float32Array?this._gl.bufferData(this._gl.UNIFORM_BUFFER,e,this._gl.DYNAMIC_DRAW):this._gl.bufferData(this._gl.UNIFORM_BUFFER,new Float32Array(e),this._gl.DYNAMIC_DRAW),this.bindUniformBuffer(null),i.references=1,i},c.ThinEngine.prototype.updateUniformBuffer=function(e,t,r,i){this.bindUniformBuffer(e),void 0===r&&(r=0),void 0===i?t instanceof Float32Array?this._gl.bufferSubData(this._gl.UNIFORM_BUFFER,r,t):this._gl.bufferSubData(this._gl.UNIFORM_BUFFER,r,new Float32Array(t)):t instanceof Float32Array?this._gl.bufferSubData(this._gl.UNIFORM_BUFFER,0,t.subarray(r,r+i)):this._gl.bufferSubData(this._gl.UNIFORM_BUFFER,0,new Float32Array(t).subarray(r,r+i)),this.bindUniformBuffer(null)},c.ThinEngine.prototype.bindUniformBuffer=function(e){this._gl.bindBuffer(this._gl.UNIFORM_BUFFER,e?e.underlyingResource:null)},c.ThinEngine.prototype.bindUniformBufferBase=function(e,t,r){this._gl.bindBufferBase(this._gl.UNIFORM_BUFFER,t,e?e.underlyingResource:null)},c.ThinEngine.prototype.bindUniformBlock=function(e,t,r){let i=e.program,n=this._gl.getUniformBlockIndex(i,t);0xffffffff!==n&&this._gl.uniformBlockBinding(i,n,r)};var O=e.i(55018),X=e.i(32622);let N=!1;N=!0,X.AbstractEngine.prototype.displayLoadingUI=function(){if(!(0,O.IsWindowObjectExist)())return;let e=this.loadingScreen;e&&e.displayLoadingUI()},X.AbstractEngine.prototype.hideLoadingUI=function(){if(!(0,O.IsWindowObjectExist)())return;let e=this._loadingScreen;e&&e.hideLoadingUI()},Object.defineProperty(X.AbstractEngine.prototype,"loadingScreen",{get:function(){return!this._loadingScreen&&this._renderingCanvas&&(this._loadingScreen=X.AbstractEngine.DefaultLoadingScreenFactory(this._renderingCanvas)),this._loadingScreen},set:function(e){this._loadingScreen=e},enumerable:!0,configurable:!0}),Object.defineProperty(X.AbstractEngine.prototype,"loadingUIText",{set:function(e){this.loadingScreen.loadingUIText=e},enumerable:!0,configurable:!0}),Object.defineProperty(X.AbstractEngine.prototype,"loadingUIBackgroundColor",{set:function(e){this.loadingScreen.loadingUIBackgroundColor=e},enumerable:!0,configurable:!0});let w=!1;function v(){w||(w=!0,X.AbstractEngine.prototype.getInputElement=function(){return this._renderingCanvas},X.AbstractEngine.prototype.getRenderingCanvasClientRect=function(){return this._renderingCanvas?this._renderingCanvas.getBoundingClientRect():null},X.AbstractEngine.prototype.getInputElementClientRect=function(){return this._renderingCanvas?this.getInputElement().getBoundingClientRect():null},X.AbstractEngine.prototype.getAspectRatio=function(e,t=!1){let r=e.viewport;return this.getRenderWidth(t)*r.width/(this.getRenderHeight(t)*r.height)},X.AbstractEngine.prototype.getScreenAspectRatio=function(){return this.getRenderWidth(!0)/this.getRenderHeight(!0)},X.AbstractEngine.prototype._verifyPointerLock=function(){this._onPointerLockChange?.()})}v();let G=!1;G=!0,X.AbstractEngine.prototype.getInputElement=function(){return this._renderingCanvas},X.AbstractEngine.prototype.getDepthFunction=function(){return this._depthCullingState.depthFunc},X.AbstractEngine.prototype.setDepthFunction=function(e){this._depthCullingState.depthFunc=e},X.AbstractEngine.prototype.setDepthFunctionToGreater=function(){this.setDepthFunction(516)},X.AbstractEngine.prototype.setDepthFunctionToGreaterOrEqual=function(){this.setDepthFunction(518)},X.AbstractEngine.prototype.setDepthFunctionToLess=function(){this.setDepthFunction(513)},X.AbstractEngine.prototype.setDepthFunctionToLessOrEqual=function(){this.setDepthFunction(515)},X.AbstractEngine.prototype.getDepthWrite=function(){return this._depthCullingState.depthMask},X.AbstractEngine.prototype.setDepthWrite=function(e){this._depthCullingState.depthMask=e},X.AbstractEngine.prototype.setAlphaConstants=function(e,t,r,i){this._alphaState.setAlphaBlendConstants(e,t,r,i)},X.AbstractEngine.prototype.getAlphaMode=function(e=0){return this._alphaMode[e]},X.AbstractEngine.prototype.getAlphaEquation=function(e=0){return this._alphaEquation[e]};let k=!1;k=!0,X.AbstractEngine.prototype.getStencilBuffer=function(){return this._stencilState.stencilTest},X.AbstractEngine.prototype.setStencilBuffer=function(e){this._stencilState.stencilTest=e},X.AbstractEngine.prototype.getStencilMask=function(){return this._stencilState.stencilMask},X.AbstractEngine.prototype.setStencilMask=function(e){this._stencilState.stencilMask=e},X.AbstractEngine.prototype.getStencilFunction=function(){return this._stencilState.stencilFunc},X.AbstractEngine.prototype.getStencilBackFunction=function(){return this._stencilState.stencilBackFunc},X.AbstractEngine.prototype.getStencilFunctionReference=function(){return this._stencilState.stencilFuncRef},X.AbstractEngine.prototype.getStencilFunctionMask=function(){return this._stencilState.stencilFuncMask},X.AbstractEngine.prototype.setStencilFunction=function(e){this._stencilState.stencilFunc=e},X.AbstractEngine.prototype.setStencilBackFunction=function(e){this._stencilState.stencilBackFunc=e},X.AbstractEngine.prototype.setStencilFunctionReference=function(e){this._stencilState.stencilFuncRef=e},X.AbstractEngine.prototype.setStencilFunctionMask=function(e){this._stencilState.stencilFuncMask=e},X.AbstractEngine.prototype.getStencilOperationFail=function(){return this._stencilState.stencilOpStencilFail},X.AbstractEngine.prototype.getStencilBackOperationFail=function(){return this._stencilState.stencilBackOpStencilFail},X.AbstractEngine.prototype.getStencilOperationDepthFail=function(){return this._stencilState.stencilOpDepthFail},X.AbstractEngine.prototype.getStencilBackOperationDepthFail=function(){return this._stencilState.stencilBackOpDepthFail},X.AbstractEngine.prototype.getStencilOperationPass=function(){return this._stencilState.stencilOpStencilDepthPass},X.AbstractEngine.prototype.getStencilBackOperationPass=function(){return this._stencilState.stencilBackOpStencilDepthPass},X.AbstractEngine.prototype.setStencilOperationFail=function(e){this._stencilState.stencilOpStencilFail=e},X.AbstractEngine.prototype.setStencilBackOperationFail=function(e){this._stencilState.stencilBackOpStencilFail=e},X.AbstractEngine.prototype.setStencilOperationDepthFail=function(e){this._stencilState.stencilOpDepthFail=e},X.AbstractEngine.prototype.setStencilBackOperationDepthFail=function(e){this._stencilState.stencilBackOpDepthFail=e},X.AbstractEngine.prototype.setStencilOperationPass=function(e){this._stencilState.stencilOpStencilDepthPass=e},X.AbstractEngine.prototype.setStencilBackOperationPass=function(e){this._stencilState.stencilBackOpStencilDepthPass=e},X.AbstractEngine.prototype.cacheStencilState=function(){this._cachedStencilBuffer=this.getStencilBuffer(),this._cachedStencilFunction=this.getStencilFunction(),this._cachedStencilMask=this.getStencilMask(),this._cachedStencilOperationPass=this.getStencilOperationPass(),this._cachedStencilOperationFail=this.getStencilOperationFail(),this._cachedStencilOperationDepthFail=this.getStencilOperationDepthFail(),this._cachedStencilReference=this.getStencilFunctionReference()},X.AbstractEngine.prototype.restoreStencilState=function(){this.setStencilFunction(this._cachedStencilFunction),this.setStencilMask(this._cachedStencilMask),this.setStencilBuffer(this._cachedStencilBuffer),this.setStencilOperationPass(this._cachedStencilOperationPass),this.setStencilOperationFail(this._cachedStencilOperationFail),this.setStencilOperationDepthFail(this._cachedStencilOperationDepthFail),this.setStencilFunctionReference(this._cachedStencilReference)};var W=e.i(11771);(0,W.RegisterAbstractEngineRenderPass)();let H=!1;H=!0,X.AbstractEngine.prototype.createDepthStencilTexture=function(e,t,r){if(!t.isCube)return this._createDepthStencilTexture(e,t,r);{let r=e.width||e;return this._createDepthStencilCubeTexture(r,t)}};let Y=!1;Y=!0,X.AbstractEngine.prototype._loadFileAsync=async function(e,t,r){return await new Promise((i,n)=>{this._loadFile(e,e=>{i(e)},void 0,t,r,(e,t)=>{n(t)})})};var V=e.i(58812);X.AbstractEngine.GetCompatibleTextureLoader=V._GetCompatibleTextureLoader;let z=!1;z=!0,c.ThinEngine.prototype.enableScissor=function(e,t,r,i){let n=this._gl;n.enable(n.SCISSOR_TEST),n.scissor(e,t,r,i)},c.ThinEngine.prototype.disableScissor=function(){let e=this._gl;e.disable(e.SCISSOR_TEST)},e.s([],850),e.i(850);var q=e.i(70855),K=c,j=e.i(87869);class Q{constructor(e=30){this._enabled=!0,this._rollingFrameTime=new Z(e)}sampleFrame(e=j.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()}}class Z{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}}var $=e.i(63613);function J(e){return Number.isFinite(e.ascent)&&Number.isFinite(e.height)&&Number.isFinite(e.descent)&&e.height>0}async function ee(e,t,r){return await new Promise((i,n)=>{let s=new Image;s.onload=()=>{s.decode().then(()=>{e.createImageBitmap(s,r).then(e=>{i(e)})})},s.onerror=()=>{n(`Error loading image ${s.src}`)},s.src=t})}function et(e){if(e.requestPointerLock){let t=e.requestPointerLock();t instanceof Promise?t.then(()=>{e.focus()}).catch(()=>{}):e.focus()}}var er=e.i(63217),ei=e.i(49097),en=e.i(33945);class es extends K.ThinEngine{static get NpmPackage(){return X.AbstractEngine.NpmPackage}static get Version(){return X.AbstractEngine.Version}static get Instances(){return q.EngineStore.Instances}static get LastCreatedEngine(){return q.EngineStore.LastCreatedEngine}static get LastCreatedScene(){return q.EngineStore.LastCreatedScene}static DefaultLoadingScreenFactory(e){return X.AbstractEngine.DefaultLoadingScreenFactory(e)}get _supportsHardwareTextureRescaling(){return!!es._RescalePostProcessFactory}_measureFps(){this._performanceMonitor.sampleFrame(),this._fps=this._performanceMonitor.averageFPS,this._deltaTime=this._performanceMonitor.instantaneousFrameTime||0}get performanceMonitor(){return this._performanceMonitor}constructor(e,t,r,i=!1){if(v(),(0,W.RegisterAbstractEngineRenderPass)(),super(e,t,r,i),this._performanceMonitor=new Q,this._drawCalls=new er.PerfCounter,!e)return;this._features.supportRenderPasses=!0}_initGLContext(){super._initGLContext(),this._rescalePostProcess=null}_sharedInit(e){var t,r;let i;super._sharedInit(e),t=this,r=this._creationOptions,t._onCanvasFocus=()=>{t.onCanvasFocusObservable.notifyObservers(t)},t._onCanvasBlur=()=>{t.onCanvasBlurObservable.notifyObservers(t)},t._onCanvasContextMenu=e=>{t.disableContextMenu&&e.preventDefault()},e.addEventListener("focus",t._onCanvasFocus),e.addEventListener("blur",t._onCanvasBlur),e.addEventListener("contextmenu",t._onCanvasContextMenu),t._onBlur=()=>{t.disablePerformanceMonitorInBackground&&t.performanceMonitor.disable(),t._windowIsBackground=!0},t._onFocus=()=>{t.disablePerformanceMonitorInBackground&&t.performanceMonitor.enable(),t._windowIsBackground=!1},t._onCanvasPointerOut=r=>{document.elementFromPoint(r.clientX,r.clientY)!==e&&t.onCanvasPointerOutObservable.notifyObservers(r)},(i=t.getHostWindow())&&"function"==typeof i.addEventListener&&(i.addEventListener("blur",t._onBlur),i.addEventListener("focus",t._onFocus)),e.addEventListener("pointerout",t._onCanvasPointerOut),!r.doNotHandleTouchAction&&e&&e.setAttribute&&(e.setAttribute("touch-action","none"),e.style.touchAction="none",e.style.webkitTapHighlightColor="transparent"),!X.AbstractEngine.audioEngine&&r.audioEngine&&X.AbstractEngine.AudioEngineFactory&&(X.AbstractEngine.audioEngine=X.AbstractEngine.AudioEngineFactory(t.getRenderingCanvas(),t.getAudioContext(),t.getAudioDestination())),(0,O.IsDocumentAvailable)()&&(t._onFullscreenChange=()=>{t.isFullscreen=!!document.fullscreenElement,t.isFullscreen&&t._pointerLockRequested&&e&&et(e)},document.addEventListener("fullscreenchange",t._onFullscreenChange,!1),document.addEventListener("webkitfullscreenchange",t._onFullscreenChange,!1),t._onPointerLockChange=()=>{t.isPointerLock=document.pointerLockElement===e},document.addEventListener("pointerlockchange",t._onPointerLockChange,!1),document.addEventListener("webkitpointerlockchange",t._onPointerLockChange,!1)),t.enableOfflineSupport=void 0!==X.AbstractEngine.OfflineProviderFactory,t._deterministicLockstep=!!r.deterministicLockstep,t._lockstepMaxSteps=r.lockstepMaxSteps||0,t._timeStep=r.timeStep||1/60}resizeImageBitmap(e,t,r){let i=this.createCanvas(t,r).getContext("2d");if(!i)throw Error("Unable to get 2d context for resizeImageBitmap");return i.drawImage(e,0,0),i.getImageData(0,0,t,r).data}async _createImageBitmapFromSource(e,t){return await ee(this,e,t)}switchFullscreen(e){this.isFullscreen?this.exitFullscreen():this.enterFullscreen(e)}enterFullscreen(e){if(!this.isFullscreen){var t;let r;this._pointerLockRequested=e,this._renderingCanvas&&(r=(t=this._renderingCanvas).requestFullscreen||t.webkitRequestFullscreen)&&r.call(t)}}exitFullscreen(){let e;this.isFullscreen&&(e=document,document.exitFullscreen?document.exitFullscreen():e.webkitCancelFullScreen&&e.webkitCancelFullScreen())}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,r,i){let n=this._cachedViewport;return this._cachedViewport=null,this._viewport(e,t,r,i),n}scissorClear(e,t,r,i,n){this.enableScissor(e,t,r,i),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){var t;let r,i,n,s,a=function(e){let t,r;if(!(0,O.IsDocumentAvailable)()||!document.body)return null;let i=document.createElement("span");i.textContent="Hg",i.style.font=e;let n=document.createElement("div");n.style.display="inline-block",n.style.width="1px",n.style.height="0px",n.style.verticalAlign="bottom";let s=document.createElement("div");s.style.whiteSpace="nowrap",s.appendChild(i),s.appendChild(n),document.body.appendChild(s);try{r=n.getBoundingClientRect().top-i.getBoundingClientRect().top,n.style.verticalAlign="baseline",t=n.getBoundingClientRect().top-i.getBoundingClientRect().top}finally{document.body.removeChild(s)}let a={ascent:t,height:r,descent:r-t};return J(a)?a:null}(e);if(a)return a;let l=function(e){let t=null;try{"u">typeof OffscreenCanvas?t=new OffscreenCanvas(64,64):(0,O.IsDocumentAvailable)()&&"function"==typeof document.createElement&&((t=document.createElement("canvas")).width=64,t.height=64);let r=t?.getContext("2d");if(!r)return null;r.font=e;let i=r.measureText("Hg"),n=Number(i.actualBoundingBoxAscent??i.fontBoundingBoxAscent),s=Number(i.actualBoundingBoxDescent??i.fontBoundingBoxDescent),a={ascent:n,height:n+s,descent:s};return J(a)?a:null}catch{return null}finally{let e=t;"function"==typeof e?.dispose&&e.dispose()}}(e);return l||(n=.8*(i=Math.max(1,(t=e,(r=/(?:^|\s)([0-9]+(?:\.[0-9]+)?)px(?:\/|\s|$)/.exec(String(t||"")))?Number(r[1]):16))),{ascent:n,height:n+(s=.2*i),descent:s})}enterPointerlock(){this._renderingCanvas&&et(this._renderingCanvas)}exitPointerlock(){document.exitPointerLock&&document.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,r,i,n,s=null){n=n||this._gl,this.onBeforeShaderCompilationObservable.notifyObservers(this);let a=super.createShaderProgram(e,t,r,i,n,s);return this.onAfterShaderCompilationObservable.notifyObservers(this),a}_createShaderProgram(e,t,r,i,n=null){let s=i.createProgram();if(e.program=s,!s)throw Error("Unable to create program");if(i.attachShader(s,t),i.attachShader(s,r),this.webGLVersion>1&&n){let t=this.createTransformFeedback();this.bindTransformFeedback(t),this.setTranformFeedbackVaryings(s,n),e.transformFeedback=t}return i.linkProgram(s),this.webGLVersion>1&&n&&this.bindTransformFeedback(null),e.context=i,e.vertexShader=t,e.fragmentShader=r,e.isParallelCompiled||this._finalizePipelineContext(e),s}_releaseTexture(e){super._releaseTexture(e)}_releaseRenderTargetWrapper(e){for(let t of(super._releaseRenderTargetWrapper(e),this.scenes)){for(let r of t.postProcesses)r._outputTexture===e&&(r._outputTexture=null);for(let r of t.cameras)for(let t of r._postProcesses)t&&t._outputTexture===e&&(t._outputTexture=null)}}_rescaleTexture(e,t,r,i,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&&es._RescalePostProcessFactory&&(this._rescalePostProcess=es._RescalePostProcessFactory(this)),this._rescalePostProcess){this._rescalePostProcess.externalTextureSamplerBinding=!0;let a=()=>{this._rescalePostProcess.onApply=function(t){t._bindTexture("textureSampler",e)};let a=r;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,i,0,0,t.width,t.height,0),this.unBindFramebuffer(s),s.dispose(),n&&n()},l=this._rescalePostProcess.getEffect();l?l.executeWhenCompiled(a):this._rescalePostProcess.onEffectCreatedObservable.addOnce(e=>{e.executeWhenCompiled(a)})}}wrapWebGLTexture(e,t=!1,r=3,i=0,n=0){let s=new $.WebGLHardwareTexture(e,this._gl),a=new T.InternalTexture(this,15,!0);return a._hardwareTexture=s,a.baseWidth=i,a.baseHeight=n,a.width=i,a.height=n,a.isReady=!0,a.useMipMaps=t,this.updateTextureSamplingMode(r,a),a}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 r in e._hardwareTexture=new $.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[r]===e&&(this._boundTexturesCache[r]=null);this.updateTextureSamplingMode(e.samplingMode,e);let r=this._gl;for(let i of this._renderTargetWrapperCache){if(i.texture!==e)continue;let n=i.samples,s=n>1;i._framebuffer&&r.deleteFramebuffer(i._framebuffer),!s&&i._depthStencilBuffer&&(r.deleteRenderbuffer(i._depthStencilBuffer),i._depthStencilBuffer=null);let a=this._currentFramebuffer,l=r.createFramebuffer();this._bindUnboundFramebuffer(l),r.framebufferTexture2D(r.FRAMEBUFFER,r.COLOR_ATTACHMENT0,r.TEXTURE_2D,t,0),s||(i._depthStencilBuffer=this._setupFramebufferDepthAttachments(i._generateStencilBuffer,i._generateDepthBuffer,i.width,i.height)),this._bindUnboundFramebuffer(a),i._framebuffer=l,s&&(i._samples=1,this.updateRenderTargetTextureSampleCount(i,n))}}_uploadImageToTexture(e,t,r=0,i=0){let n=this._gl,s=this._getWebGLTextureType(e.type),a=this._getInternalFormat(e.format),l=this._getRGBABufferInternalSizedFormat(e.type,a),u=e.isCube?n.TEXTURE_CUBE_MAP:n.TEXTURE_2D;this._bindTextureDirectly(u,e,!0),this._unpackFlipY(e.invertY);let h=n.TEXTURE_2D;e.isCube&&(h=n.TEXTURE_CUBE_MAP_POSITIVE_X+r),n.texImage2D(h,i,l,a,s,t),this._bindTextureDirectly(u,null,!0)}updateTextureComparisonFunction(e,t){if(1===this.webGLVersion)return void f.Logger.Error("WebGL 1 does not support texture comparison.");let r=this._gl;e.isCube?(this._bindTextureDirectly(this._gl.TEXTURE_CUBE_MAP,e,!0),0===t?(r.texParameteri(r.TEXTURE_CUBE_MAP,r.TEXTURE_COMPARE_FUNC,515),r.texParameteri(r.TEXTURE_CUBE_MAP,r.TEXTURE_COMPARE_MODE,r.NONE)):(r.texParameteri(r.TEXTURE_CUBE_MAP,r.TEXTURE_COMPARE_FUNC,t),r.texParameteri(r.TEXTURE_CUBE_MAP,r.TEXTURE_COMPARE_MODE,r.COMPARE_REF_TO_TEXTURE)),this._bindTextureDirectly(this._gl.TEXTURE_CUBE_MAP,null)):(this._bindTextureDirectly(this._gl.TEXTURE_2D,e,!0),0===t?(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_COMPARE_FUNC,515),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_COMPARE_MODE,r.NONE)):(r.texParameteri(r.TEXTURE_2D,r.TEXTURE_COMPARE_FUNC,t),r.texParameteri(r.TEXTURE_2D,r.TEXTURE_COMPARE_MODE,r.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 r=new I.WebGLDataBuffer(t);return r.capacity=e,this.bindArrayBuffer(r),this._gl.bufferData(this._gl.ARRAY_BUFFER,e,this._gl.DYNAMIC_DRAW),r.references=1,r}deleteInstancesBuffer(e){this._gl.deleteBuffer(e)}async _clientWaitAsync(e,t=0,r=10){let i=this._gl;return await new Promise((n,s)=>{(0,ei._RetryWithInterval)(()=>{let r=i.clientWaitSync(e,t,0);if(r==i.WAIT_FAILED)throw Error("clientWaitSync failed");return r!=i.TIMEOUT_EXPIRED},n,s,r)})}_readPixelsAsync(e,t,r,i,n,s,a){if(this._webGLVersion<2)throw Error("_readPixelsAsync only work on WebGL2+");let l=this._gl,u=l.createBuffer();l.bindBuffer(l.PIXEL_PACK_BUFFER,u),l.bufferData(l.PIXEL_PACK_BUFFER,a.byteLength,l.STREAM_READ),l.readPixels(e,t,r,i,n,s,0),l.bindBuffer(l.PIXEL_PACK_BUFFER,null);let h=l.fenceSync(l.SYNC_GPU_COMMANDS_COMPLETE,0);return h?(l.flush(),this._clientWaitAsync(h,0,10).then(()=>(l.deleteSync(h),l.bindBuffer(l.PIXEL_PACK_BUFFER,u),l.getBufferSubData(l.PIXEL_PACK_BUFFER,0,a),l.bindBuffer(l.PIXEL_PACK_BUFFER,null),l.deleteBuffer(u),a))):null}dispose(){var e;let t;this.hideLoadingUI(),this._rescalePostProcess&&this._rescalePostProcess.dispose(),e=this._renderingCanvas,1===q.EngineStore.Instances.length&&X.AbstractEngine.audioEngine&&(X.AbstractEngine.audioEngine.dispose(),X.AbstractEngine.audioEngine=null),(t=this.getHostWindow())&&"function"==typeof t.removeEventListener&&(t.removeEventListener("blur",this._onBlur),t.removeEventListener("focus",this._onFocus)),e&&(e.removeEventListener("focus",this._onCanvasFocus),e.removeEventListener("blur",this._onCanvasBlur),e.removeEventListener("pointerout",this._onCanvasPointerOut),e.removeEventListener("contextmenu",this._onCanvasContextMenu)),(0,O.IsDocumentAvailable)()&&(document.removeEventListener("fullscreenchange",this._onFullscreenChange),document.removeEventListener("mozfullscreenchange",this._onFullscreenChange),document.removeEventListener("webkitfullscreenchange",this._onFullscreenChange),document.removeEventListener("msfullscreenchange",this._onFullscreenChange),document.removeEventListener("pointerlockchange",this._onPointerLockChange),document.removeEventListener("mspointerlockchange",this._onPointerLockChange),document.removeEventListener("mozpointerlockchange",this._onPointerLockChange),document.removeEventListener("webkitpointerlockchange",this._onPointerLockChange)),super.dispose()}}es.ALPHA_DISABLE=0,es.ALPHA_ADD=1,es.ALPHA_COMBINE=2,es.ALPHA_SUBTRACT=3,es.ALPHA_MULTIPLY=4,es.ALPHA_MAXIMIZED=5,es.ALPHA_ONEONE=6,es.ALPHA_PREMULTIPLIED=7,es.ALPHA_PREMULTIPLIED_PORTERDUFF=8,es.ALPHA_INTERPOLATE=9,es.ALPHA_SCREENMODE=10,es.DELAYLOADSTATE_NONE=0,es.DELAYLOADSTATE_LOADED=1,es.DELAYLOADSTATE_LOADING=2,es.DELAYLOADSTATE_NOTLOADED=4,es.NEVER=512,es.ALWAYS=519,es.LESS=513,es.EQUAL=514,es.LEQUAL=515,es.GREATER=516,es.GEQUAL=518,es.NOTEQUAL=517,es.KEEP=7680,es.REPLACE=7681,es.INCR=7682,es.DECR=7683,es.INVERT=5386,es.INCR_WRAP=34055,es.DECR_WRAP=34056,es.TEXTURE_CLAMP_ADDRESSMODE=0,es.TEXTURE_WRAP_ADDRESSMODE=1,es.TEXTURE_MIRROR_ADDRESSMODE=2,es.TEXTUREFORMAT_ALPHA=0,es.TEXTUREFORMAT_LUMINANCE=1,es.TEXTUREFORMAT_LUMINANCE_ALPHA=2,es.TEXTUREFORMAT_RGB=4,es.TEXTUREFORMAT_RGBA=5,es.TEXTUREFORMAT_RED=6,es.TEXTUREFORMAT_R=6,es.TEXTUREFORMAT_R16_UNORM=33322,es.TEXTUREFORMAT_RG16_UNORM=33324,es.TEXTUREFORMAT_RGB16_UNORM=32852,es.TEXTUREFORMAT_RGBA16_UNORM=32859,es.TEXTUREFORMAT_R16_SNORM=36760,es.TEXTUREFORMAT_RG16_SNORM=36761,es.TEXTUREFORMAT_RGB16_SNORM=36762,es.TEXTUREFORMAT_RGBA16_SNORM=36763,es.TEXTUREFORMAT_RG=7,es.TEXTUREFORMAT_RED_INTEGER=8,es.TEXTUREFORMAT_R_INTEGER=8,es.TEXTUREFORMAT_RG_INTEGER=9,es.TEXTUREFORMAT_RGB_INTEGER=10,es.TEXTUREFORMAT_RGBA_INTEGER=11,es.TEXTURETYPE_UNSIGNED_BYTE=0,es.TEXTURETYPE_UNSIGNED_INT=0,es.TEXTURETYPE_FLOAT=1,es.TEXTURETYPE_HALF_FLOAT=2,es.TEXTURETYPE_BYTE=3,es.TEXTURETYPE_SHORT=4,es.TEXTURETYPE_UNSIGNED_SHORT=5,es.TEXTURETYPE_INT=6,es.TEXTURETYPE_UNSIGNED_INTEGER=7,es.TEXTURETYPE_UNSIGNED_SHORT_4_4_4_4=8,es.TEXTURETYPE_UNSIGNED_SHORT_5_5_5_1=9,es.TEXTURETYPE_UNSIGNED_SHORT_5_6_5=10,es.TEXTURETYPE_UNSIGNED_INT_2_10_10_10_REV=11,es.TEXTURETYPE_UNSIGNED_INT_24_8=12,es.TEXTURETYPE_UNSIGNED_INT_10F_11F_11F_REV=13,es.TEXTURETYPE_UNSIGNED_INT_5_9_9_9_REV=14,es.TEXTURETYPE_FLOAT_32_UNSIGNED_INT_24_8_REV=15,es.TEXTURE_NEAREST_SAMPLINGMODE=1,es.TEXTURE_BILINEAR_SAMPLINGMODE=2,es.TEXTURE_TRILINEAR_SAMPLINGMODE=3,es.TEXTURE_NEAREST_NEAREST_MIPLINEAR=8,es.TEXTURE_LINEAR_LINEAR_MIPNEAREST=11,es.TEXTURE_LINEAR_LINEAR_MIPLINEAR=3,es.TEXTURE_NEAREST_NEAREST_MIPNEAREST=4,es.TEXTURE_NEAREST_LINEAR_MIPNEAREST=5,es.TEXTURE_NEAREST_LINEAR_MIPLINEAR=6,es.TEXTURE_NEAREST_LINEAR=7,es.TEXTURE_NEAREST_NEAREST=1,es.TEXTURE_LINEAR_NEAREST_MIPNEAREST=9,es.TEXTURE_LINEAR_NEAREST_MIPLINEAR=10,es.TEXTURE_LINEAR_LINEAR=2,es.TEXTURE_LINEAR_NEAREST=12,es.TEXTURE_EXPLICIT_MODE=0,es.TEXTURE_SPHERICAL_MODE=1,es.TEXTURE_PLANAR_MODE=2,es.TEXTURE_CUBIC_MODE=3,es.TEXTURE_PROJECTION_MODE=4,es.TEXTURE_SKYBOX_MODE=5,es.TEXTURE_INVCUBIC_MODE=6,es.TEXTURE_EQUIRECTANGULAR_MODE=7,es.TEXTURE_FIXED_EQUIRECTANGULAR_MODE=8,es.TEXTURE_FIXED_EQUIRECTANGULAR_MIRRORED_MODE=9,es.SCALEMODE_FLOOR=1,es.SCALEMODE_NEAREST=2,es.SCALEMODE_CEILING=3,(t=es.prototype).createMultiviewRenderTargetTexture??(t.createMultiviewRenderTargetTexture=(0,en._MissingSideEffect)("Engine","createMultiviewRenderTargetTexture")),(r=es.prototype).bindMultiviewFramebuffer??(r.bindMultiviewFramebuffer=(0,en._MissingSideEffect)("Engine","bindMultiviewFramebuffer")),(i=es.prototype).bindSpaceWarpFramebuffer??(i.bindSpaceWarpFramebuffer=(0,en._MissingSideEffect)("Engine","bindSpaceWarpFramebuffer")),(n=es.prototype).createTransformFeedback??(n.createTransformFeedback=(0,en._MissingSideEffect)("Engine","createTransformFeedback")),(s=es.prototype).deleteTransformFeedback??(s.deleteTransformFeedback=(0,en._MissingSideEffect)("Engine","deleteTransformFeedback")),(a=es.prototype).bindTransformFeedback??(a.bindTransformFeedback=(0,en._MissingSideEffect)("Engine","bindTransformFeedback")),(l=es.prototype).beginTransformFeedback??(l.beginTransformFeedback=(0,en._MissingSideEffect)("Engine","beginTransformFeedback")),(u=es.prototype).endTransformFeedback??(u.endTransformFeedback=(0,en._MissingSideEffect)("Engine","endTransformFeedback")),(h=es.prototype).setTranformFeedbackVaryings??(h.setTranformFeedbackVaryings=(0,en._MissingSideEffect)("Engine","setTranformFeedbackVaryings")),(o=es.prototype).bindTransformFeedbackBuffer??(o.bindTransformFeedbackBuffer=(0,en._MissingSideEffect)("Engine","bindTransformFeedbackBuffer")),(_=es.prototype).readTransformFeedbackBuffer??(_.readTransformFeedbackBuffer=(0,en._MissingSideEffect)("Engine","readTransformFeedbackBuffer")),e.s(["Engine",0,es],48928),e.i(48928),e.s(["Engine",0,es],62619)}]);
|