@uptimizr/dashboard 0.4.4 → 0.4.6
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 +4 -4
- package/out/__next._full.txt +11 -11
- package/out/__next._head.txt +4 -4
- package/out/__next._index.txt +4 -4
- package/out/__next._tree.txt +2 -2
- package/out/_next/static/chunks/{2o8k8x5zcepfy.js → 0-k4hp87gwues.js} +1 -1
- package/out/_next/static/chunks/{0s84ekz_f9ngx.js → 0-laj-bivzp4x.js} +1 -1
- package/out/_next/static/chunks/{3tdzweqszru4y.js → 04zj0yf1qhk1o.js} +1 -1
- package/out/_next/static/chunks/05s0t-besbvu1.css +3 -0
- package/out/_next/static/chunks/{1e_-_7biavwmb.js → 06fbalmyyfpsy.js} +1 -1
- package/out/_next/static/chunks/{3yr66ufoli71t.js → 07hgbbqksqd1g.js} +1 -1
- package/out/_next/static/chunks/08ou2nvy48e0u.js +1 -0
- package/out/_next/static/chunks/08y5-irjbsiy8.js +1 -0
- package/out/_next/static/chunks/{2pbgsq7vvtk8_.js → 0_jrfk2u1u3fi.js} +1 -1
- package/out/_next/static/chunks/{1-4v8oivkgnyl.js → 0a475u_q5i_dd.js} +2 -2
- package/out/_next/static/chunks/0aad2r4s4wl1x.js +5 -0
- package/out/_next/static/chunks/{2rjfrjhp4kjev.js → 0cmyc-uvk93kl.js} +52 -52
- package/out/_next/static/chunks/{1ozi46t8jajqh.js → 0d9pxx1w_zqr9.js} +1 -1
- package/out/_next/static/chunks/{3-x7522okdy-7.js → 0e5dcxmkprebg.js} +1 -1
- package/out/_next/static/chunks/{1n_gxvu31aofy.js → 0gk5rnci1hznh.js} +2 -2
- package/out/_next/static/chunks/0gnjtwq-474uc.js +1 -0
- package/out/_next/static/chunks/0gsh_d0m5xss1.js +1 -0
- package/out/_next/static/chunks/0i9wa8hjd-5tc.js +1 -0
- package/out/_next/static/chunks/0ibzpjo0h731v.js +1 -0
- package/out/_next/static/chunks/{41yy4p3-rtyz1.js → 0j0a0wvmmghxj.js} +1 -1
- package/out/_next/static/chunks/{29gv2swsp7tzu.js → 0j2ygtc_-bo3m.js} +1 -1
- package/out/_next/static/chunks/{0dck67in84de0.js → 0j_3k5qhv_mdx.js} +1 -1
- package/out/_next/static/chunks/0jap7l5-bskj4.js +114 -0
- package/out/_next/static/chunks/{0n92hec_jb_-_.js → 0jis2w2mfx062.js} +1 -1
- package/out/_next/static/chunks/0jjvp2slpf7d6.js +1 -0
- package/out/_next/static/chunks/0ko10wo4rc9-b.js +1 -0
- package/out/_next/static/chunks/0lqmvz6k2h_of.js +1 -0
- package/out/_next/static/chunks/0lwjmr8efrlbt.js +17 -0
- package/out/_next/static/chunks/0noxyupihh8dk.js +1 -0
- package/out/_next/static/chunks/{2-hdejef-mpka.js → 0o0qtv35dqv3i.js} +219 -16
- package/out/_next/static/chunks/{43hwl25uke0l_.js → 0o1vph7x9shzu.js} +1 -1
- package/out/_next/static/chunks/{1tt1bbry-4f-6.js → 0o73w0cn5n_vl.js} +1 -1
- package/out/_next/static/chunks/0p6phe9kjlxn8.js +1 -0
- package/out/_next/static/chunks/0ptxb9dcwsw3o.js +1 -0
- package/out/_next/static/chunks/{31ei992g8gqz9.js → 0q0i4pdyq66gb.js} +1 -1
- package/out/_next/static/chunks/0q8pt8fd0ma30.js +1 -0
- package/out/_next/static/chunks/0qqx9aoz8l5d2.js +1 -0
- package/out/_next/static/chunks/0r-x702_jvhud.js +112 -0
- package/out/_next/static/chunks/{2h5nvlgky7fpa.js → 0rykrf_vofbad.js} +1 -1
- package/out/_next/static/chunks/0tsk32q-88t_7.js +1 -0
- package/out/_next/static/chunks/0u7577db_ivyr.js +1 -0
- package/out/_next/static/chunks/0unnrt0un064x.js +1 -0
- package/out/_next/static/chunks/{3mvaub8qjdyuc.js → 0uygtr4mo3h0v.js} +1 -1
- package/out/_next/static/chunks/0vf3facit951s.js +1 -0
- package/out/_next/static/chunks/{2pcdnd4nzcw4c.js → 0vzo-8t8c26k9.js} +1 -1
- package/out/_next/static/chunks/0xx7_7y5jdlh4.js +1 -0
- package/out/_next/static/chunks/0xyija62b6txc.js +1 -0
- package/out/_next/static/chunks/{0vso09vdz38sr.js → 0xzamrecplwzw.js} +1 -1
- package/out/_next/static/chunks/{2khh_pmm224k5.js → 0yd4_xh476fjn.js} +14 -217
- package/out/_next/static/chunks/0ypejzd74ixbw.js +338 -0
- package/out/_next/static/chunks/0zeb37703zcz3.js +1 -0
- package/out/_next/static/chunks/0zu5ato7-1-q9.js +1 -0
- package/out/_next/static/chunks/0zydv7y47dxgh.js +1 -0
- package/out/_next/static/chunks/103x4jwovb6d-.js +1 -0
- package/out/_next/static/chunks/107wfq84g9-kn.js +1 -0
- package/out/_next/static/chunks/10afagk8yn__n.js +1 -0
- package/out/_next/static/chunks/12ory_c78yl31.js +1 -0
- package/out/_next/static/chunks/{1ccn725by19i1.js → 133dqp8_7_yo6.js} +1 -1
- package/out/_next/static/chunks/1365lgwdd4vuo.js +1 -0
- package/out/_next/static/chunks/146ou-ohb_qhs.js +1 -0
- package/out/_next/static/chunks/{425epvuw3yy-n.js → 14e4k-718qadd.js} +31 -31
- package/out/_next/static/chunks/14orr68xgdykd.js +1 -0
- package/out/_next/static/chunks/15qfoj-vl9thu.js +1 -0
- package/out/_next/static/chunks/{0okbyggxe6mx5.js → 161yjxmdz9obc.js} +1 -1
- package/out/_next/static/chunks/166yqx3_qvbpy.js +1 -0
- package/out/_next/static/chunks/16gwjao676ieb.js +1 -0
- package/out/_next/static/chunks/{0n-zml1gn0o1u.js → 16rmmzhy2p7bw.js} +1 -1
- package/out/_next/static/chunks/{442e2l3jzxd-_.js → 17_jjyx4jz9dd.js} +1 -1
- package/out/_next/static/chunks/{0zf26k6juhlzo.js → 184pz6z3dflfm.js} +13 -10
- package/out/_next/static/chunks/18h9ugdz6igdb.js +1 -0
- package/out/_next/static/chunks/19d8n5t7ka2fb.js +1 -0
- package/out/_next/static/chunks/{1mvadj46owrck.js → 1_4hh3dfop93j.js} +1 -1
- package/out/_next/static/chunks/1_rbzw3n4fk0g.js +1 -0
- package/out/_next/static/chunks/{22ja7c3gk0_ko.js → 1a94whad0y57f.js} +1 -1
- package/out/_next/static/chunks/{1vmpltnr0cyos.js → 1aa9g197l4twm.js} +1 -1
- package/out/_next/static/chunks/1bq0fcnt1wy86.js +1 -0
- package/out/_next/static/chunks/{1fyh50hjt7hi_.js → 1bv-jzy_2jiqs.js} +1 -1
- package/out/_next/static/chunks/1c6mho7e0enta.js +1 -0
- package/out/_next/static/chunks/{2ymtumj-hfrjo.js → 1dfaheve77dhi.js} +1 -1
- package/out/_next/static/chunks/1dgf112ehnhm1.js +1 -0
- package/out/_next/static/chunks/{32vaw89wdwv5_.js → 1eirucr9s6-h5.js} +1 -1
- package/out/_next/static/chunks/{0dva036n8ab62.js → 1f07l3q77zat1.js} +1 -1
- package/out/_next/static/chunks/1fervgvgv10r-.js +1 -0
- package/out/_next/static/chunks/1fsof7un7igrn.js +1 -0
- package/out/_next/static/chunks/{3gyyjsot8mdav.js → 1gvu5a6ffbs7l.js} +1 -1
- package/out/_next/static/chunks/{0t89-lfct-7m6.js → 1h1gixjbjkbsl.js} +5 -5
- package/out/_next/static/chunks/1iel4pzhhh-c3.js +1 -0
- package/out/_next/static/chunks/1iojfx3-g4_n9.js +1 -0
- package/out/_next/static/chunks/{1__nujzr9e352.js → 1j4c0nvdo5q68.js} +1 -1
- package/out/_next/static/chunks/{1o3ggu95lfu6i.js → 1j4jt5q7px8sy.js} +1 -1
- package/out/_next/static/chunks/{2g_1ov-0j2kwd.js → 1jjw9hxgi2vzi.js} +1 -1
- package/out/_next/static/chunks/1k_8olnprvi8r.js +1 -0
- package/out/_next/static/chunks/1l0rt7d4m-xdk.js +5 -0
- package/out/_next/static/chunks/{1oljzgz5jistn.js → 1lu7rjfvxj8yj.js} +1 -1
- package/out/_next/static/chunks/{2c2dspoukng-5.js → 1mt4cnd_d6jvf.js} +1 -1
- package/out/_next/static/chunks/1my968s78he8g.js +272 -0
- package/out/_next/static/chunks/{03zip1uidm6x9.js → 1s0dpdqy480hg.js} +1 -1
- package/out/_next/static/chunks/1t-yolk97lmot.js +12 -0
- package/out/_next/static/chunks/1t2g1v0ubcsam.js +1 -0
- package/out/_next/static/chunks/{18wa83g0qfh-b.js → 1tbes2sv-qzcx.js} +1 -1
- package/out/_next/static/chunks/1upy8a5cb75kt.js +1 -0
- package/out/_next/static/chunks/{2zpn7010iqgsy.js → 1x0j78ohufpul.js} +1 -1
- package/out/_next/static/chunks/1xed71f608m4b.js +1 -0
- package/out/_next/static/chunks/1z790xxb46gxy.js +1 -0
- package/out/_next/static/chunks/{22rl_arnzs-ve.js → 1zmx71cvc6ksk.js} +1 -1
- package/out/_next/static/chunks/{3kalvwsf11-ss.js → 2-_a-v1xeo5hb.js} +15 -12
- package/out/_next/static/chunks/2-i29-jdbwww6.js +532 -0
- package/out/_next/static/chunks/{1solqr18og2ot.js → 2117sv2qzo6yq.js} +1 -1
- package/out/_next/static/chunks/219n3q-_eengm.js +1 -0
- package/out/_next/static/chunks/21wo3vdr_uby8.js +1 -0
- package/out/_next/static/chunks/{1nqojcig-0m3c.js → 22yht3s7c-xih.js} +1 -1
- package/out/_next/static/chunks/{3go-mst7n3udd.js → 23-y1f_zw56vo.js} +1 -1
- package/out/_next/static/chunks/{0-tzsd_n-ywom.js → 25brs445bjbik.js} +2 -2
- package/out/_next/static/chunks/25gep78-izw79.js +4 -0
- package/out/_next/static/chunks/{099ilz3dmm1jw.js → 26i7dn31afdtm.js} +1 -1
- package/out/_next/static/chunks/27hbplu797elx.js +1 -0
- package/out/_next/static/chunks/{3n-7bcmfbh299.js → 27z7j17kcrty_.js} +11 -11
- package/out/_next/static/chunks/{380ivzcfb4o_3.js → 287hakn2ijupp.js} +2 -2
- package/out/_next/static/chunks/28i3wgvgn_at1.js +1 -0
- package/out/_next/static/chunks/2992eiy52nazj.js +1 -0
- package/out/_next/static/chunks/29_n5j-hg_gsa.js +1 -0
- package/out/_next/static/chunks/29bxq-67oazfg.js +1 -0
- package/out/_next/static/chunks/{309f81l5ucsb_.js → 29hkkj9raxte9.js} +50 -50
- package/out/_next/static/chunks/29ings58w7kp1.js +1 -0
- package/out/_next/static/chunks/{2e46-2ubc90do.js → 2_6b9lraq-exh.js} +5 -5
- package/out/_next/static/chunks/{3w4qettzp7khe.js → 2_lw4d7t-xcqi.js} +32 -32
- package/out/_next/static/chunks/2_n0cpkdsjzli.js +1 -0
- package/out/_next/static/chunks/2a3iy701j4r_y.js +1 -0
- package/out/_next/static/chunks/2al9dh3_1ixhv.js +1 -0
- package/out/_next/static/chunks/{1gvdmbr65lpud.js → 2as_br1awqk6k.js} +69 -69
- package/out/_next/static/chunks/{0c5d3qn2mb3ew.js → 2awr1c_vfsutb.js} +1 -1
- package/out/_next/static/chunks/{2q0rz76kj6h5z.js → 2b5nt7yn-pq3a.js} +1 -1
- package/out/_next/static/chunks/2bxe3kjr17tdp.js +1 -0
- package/out/_next/static/chunks/{2z9mdtudj8crz.js → 2c8rmxz151fxa.js} +20 -18
- package/out/_next/static/chunks/{35aagg46wp139.js → 2clevl_9ayd0x.js} +1 -1
- package/out/_next/static/chunks/{41qxc142snm22.js → 2dvbzar93ooc-.js} +1 -1
- package/out/_next/static/chunks/2e-vp0e11g9ew.js +1 -0
- package/out/_next/static/chunks/{2-p206i_ihx09.js → 2epukrz6paj9n.js} +1 -1
- package/out/_next/static/chunks/2exj9-0p6n9x-.js +1 -0
- package/out/_next/static/chunks/{05uqfgf-hh-p5.js → 2fspbfbxbswzd.js} +1 -1
- package/out/_next/static/chunks/2gf8l6hbmt7v3.js +1 -0
- package/out/_next/static/chunks/{1ph0tfo-4hl-f.js → 2h07np207nlx7.js} +1 -1
- package/out/_next/static/chunks/{11p92pnn5el0v.js → 2h9i_adbqaxs4.js} +1 -1
- package/out/_next/static/chunks/{0bj_310rugcn1.js → 2iu0_3cx-ny74.js} +11 -11
- package/out/_next/static/chunks/2jio3sio-_43z.js +1 -0
- package/out/_next/static/chunks/{0uxdbfa8gv6tk.js → 2kk_vvmr2xm3d.js} +29 -29
- package/out/_next/static/chunks/2kmmk9coo9_b0.js +505 -0
- package/out/_next/static/chunks/{055baac5e-c2o.js → 2laz1v9fg2a2z.js} +1 -1
- package/out/_next/static/chunks/{1qsut_e3msg0l.js → 2mjjo0yj-4ro4.js} +1 -1
- package/out/_next/static/chunks/{0av6n_6q6kzo3.js → 2mrkv0z2i74pv.js} +2 -2
- package/out/_next/static/chunks/{04_3ri5emyfcu.js → 2neieeo9g2u56.js} +1 -1
- package/out/_next/static/chunks/{1upkv4ltuh3s5.js → 2oacwtbslo90t.js} +84 -84
- package/out/_next/static/chunks/2pb_uosb-aa8x.js +1 -0
- package/out/_next/static/chunks/2qu-gpm3ux1l6.js +1 -0
- package/out/_next/static/chunks/2rsi6v7qmqx2b.js +1 -0
- package/out/_next/static/chunks/2s4fzgzkwjluu.js +2 -0
- package/out/_next/static/chunks/2tdvuc-27khif.js +1 -0
- package/out/_next/static/chunks/{2bm95r0011asw.js → 2trolrgd7neax.js} +1 -1
- package/out/_next/static/chunks/2uyuafmoe5wi0.js +3 -0
- package/out/_next/static/chunks/2w2e0pxgs-n8f.js +1 -0
- package/out/_next/static/chunks/{1qxhgauuomthl.js → 2wgh5i70bzelt.js} +60 -60
- package/out/_next/static/chunks/{3d76e_yd8l_0x.js → 2x-7kbwq8tl-o.js} +59 -59
- package/out/_next/static/chunks/{1t2exh89lnazc.js → 2xe4bgir5l-9b.js} +32 -99
- package/out/_next/static/chunks/2xujlsx3stqig.js +1 -0
- package/out/_next/static/chunks/{267q_eg-c6f6m.js → 3-yhe6rcsjh88.js} +1 -1
- package/out/_next/static/chunks/30y71dxdpv52d.js +1 -0
- package/out/_next/static/chunks/32c-e_v8_2xkf.js +1 -0
- package/out/_next/static/chunks/32oj0iudhp8bm.js +1 -0
- package/out/_next/static/chunks/{0w-hm7g7trtjg.js → 336ckqpboqmbn.js} +1 -1
- package/out/_next/static/chunks/33p9du6y9eegg.js +1 -0
- package/out/_next/static/chunks/{3w_umk1xtj6to.js → 36pz_ews7u0xb.js} +1 -1
- package/out/_next/static/chunks/{1ux1rpe-n1mai.js → 374lzksboll-t.js} +1 -1
- package/out/_next/static/chunks/38om-j0h0rryk.js +1 -0
- package/out/_next/static/chunks/{3oyuoqr8y2g9r.js → 38q0enmlg5q9o.js} +2 -2
- package/out/_next/static/chunks/{25gf6xn9u1c57.js → 39cou9lia_g7l.js} +1 -1
- package/out/_next/static/chunks/39pkya0_bvcaj.js +1 -0
- package/out/_next/static/chunks/{1x99m91nt1m3b.js → 39rhmj_32ujyj.js} +1 -1
- package/out/_next/static/chunks/3_1zzmx92j9c0.js +1 -0
- package/out/_next/static/chunks/{3z4suna4kq4j5.js → 3_dm45k0vk1aa.js} +34 -35
- package/out/_next/static/chunks/3_earszshuz4n.js +1 -0
- package/out/_next/static/chunks/{1ephzzweysylq.js → 3_gfl66zf638s.js} +38 -105
- package/out/_next/static/chunks/3ap_uxc8lx7ni.js +1 -0
- package/out/_next/static/chunks/{0pv2wirx45e1m.js → 3b6na8zrex8jo.js} +1 -1
- package/out/_next/static/chunks/3c0cxt72vilyz.js +1 -0
- package/out/_next/static/chunks/3cp5nmtwxq4gr.js +1 -0
- package/out/_next/static/chunks/{0tn-9w46cwydp.js → 3d43gd91r06y6.js} +39 -40
- package/out/_next/static/chunks/3g78x0pdaoi_4.js +1 -0
- package/out/_next/static/chunks/{1di5enkavl9vx.js → 3gjvl1p-tugfe.js} +2 -2
- package/out/_next/static/chunks/{1mrvp94tietcv.js → 3i8iro1gas1vx.js} +1 -1
- package/out/_next/static/chunks/{3-_08i4_7yhno.js → 3ioxfi3bvznhh.js} +1 -1
- package/out/_next/static/chunks/{2i82rmjta9ijs.js → 3j3ol_d1vsdhx.js} +1 -1
- package/out/_next/static/chunks/3kpqfqr99vo7z.js +1 -0
- package/out/_next/static/chunks/3lladf_wemm-2.js +1 -0
- package/out/_next/static/chunks/{0-0hui1_v3h8b.js → 3mmy9zsb7zo-m.js} +12 -9
- package/out/_next/static/chunks/{17aahvhpls1l7.js → 3my05px5mv_s5.js} +83 -16
- package/out/_next/static/chunks/3n62hbywoknop.js +1 -0
- package/out/_next/static/chunks/{0wq_9f98weoe3.js → 3nr48h9zwum-3.js} +1 -1
- package/out/_next/static/chunks/{2x83vs8ns4pww.js → 3nwaovnpiyrt8.js} +1 -1
- package/out/_next/static/chunks/3o_dmzpahx-5g.js +1 -0
- package/out/_next/static/chunks/{0g2wngc6oe7fd.js → 3p03l0z65c8vc.js} +27 -25
- package/out/_next/static/chunks/{00xc-0pj7on2s.js → 3puu2_-t0lln9.js} +29 -29
- package/out/_next/static/chunks/{077eo-0dhbxz-.js → 3qo7e6b73mfxq.js} +1 -1
- package/out/_next/static/chunks/3r7v7un976sn7.js +1 -0
- package/out/_next/static/chunks/{255knovck7pv2.js → 3rj-5v0j_2-_2.js} +4 -4
- package/out/_next/static/chunks/3rl_nhqwew40w.js +1 -0
- package/out/_next/static/chunks/3s7hqij6xp_4e.js +1 -0
- package/out/_next/static/chunks/{1ng-fqh2_n984.js → 3si3migsmvz9o.js} +1 -1
- package/out/_next/static/chunks/3t4ys6th6gf2w.js +1 -0
- package/out/_next/static/chunks/{1og49_atcksim.js → 3twr9ds68-9us.js} +1 -1
- package/out/_next/static/chunks/{2ftp5xmq_w23j.js → 3txu-i5qn183a.js} +65 -65
- package/out/_next/static/chunks/{3y_51bmdnc0ey.js → 3uarw1i1ij1er.js} +1 -1
- package/out/_next/static/chunks/3un-w6wutw1qn.js +1 -0
- package/out/_next/static/chunks/3v8kgnjk27wbe.js +1 -0
- package/out/_next/static/chunks/{1t7nl8rx7mabd.js → 3vtmucpx25o7q.js} +61 -61
- package/out/_next/static/chunks/{04j9pexbmysdy.js → 3vu5y270muh-7.js} +1 -1
- package/out/_next/static/chunks/3we1khqfexh3x.js +1 -0
- package/out/_next/static/chunks/3yk0hzfq5rcs6.js +1 -0
- package/out/_next/static/chunks/3z35loj4i-id4.js +1 -0
- package/out/_next/static/chunks/{28ndw4nsw2t_4.js → 3zv5kyos9vtmm.js} +1 -1
- package/out/_next/static/chunks/{1hsvckd0sgdgr.js → 415g3asdds1ac.js} +1 -1
- package/out/_next/static/chunks/{1nasz7q3tvb53.js → 42lqt7ig40wk5.js} +1 -1
- package/out/_next/static/chunks/42s6ghsurq5q7.js +1 -0
- package/out/_next/static/chunks/42yctcfi2rfwr.js +1 -0
- package/out/_next/static/chunks/43_fau1gg69eo.js +1 -0
- package/out/_next/static/chunks/43ywrdzg_7af8.js +31 -0
- package/out/_next/static/chunks/{1ho02fc091nj2.js → 44m1ijc5cv80x.js} +1 -1
- package/out/_next/static/chunks/{3k-gz8qf-mj-p.js → 453_bg0lgesmp.js} +1 -1
- package/out/_next/static/chunks/{turbopack-3r8yn0j92tqw_.js → turbopack-1s36ieuku1ds3.js} +1 -1
- package/out/_not-found/__next._full.txt +9 -9
- package/out/_not-found/__next._head.txt +4 -4
- package/out/_not-found/__next._index.txt +4 -4
- package/out/_not-found/__next._not-found.__PAGE__.txt +2 -2
- package/out/_not-found/__next._not-found.txt +3 -3
- package/out/_not-found/__next._tree.txt +2 -2
- package/out/_not-found.html +1 -1
- package/out/_not-found.txt +9 -9
- package/out/index.html +1 -1
- package/out/index.txt +11 -11
- package/package.json +14 -14
- package/out/_next/static/chunks/00g5suuoa-_wn.js +0 -1
- package/out/_next/static/chunks/00o9hr_3hd0r8.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/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/09ppu_k464q-n.js +0 -1
- package/out/_next/static/chunks/0bgcaf2x51kms.js +0 -1
- package/out/_next/static/chunks/0dg4wxz-6u5lo.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/0qxd_8t3nca36.js +0 -1
- package/out/_next/static/chunks/0s1jghzw8jufz.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/0yvevihll7sz-.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/141tngxsk32hq.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/19dp8nr4uygg2.js +0 -5
- package/out/_next/static/chunks/1_8acnu6_-qe-.js +0 -1
- 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/1fwsjnd1y-lx_.js +0 -1
- package/out/_next/static/chunks/1gaexq_suxai0.js +0 -1
- package/out/_next/static/chunks/1gtj_l5ame5mw.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/1qjsgebn9m-0l.js +0 -1
- package/out/_next/static/chunks/1rb8wewjbdisv.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/2btabnibkm0db.js +0 -1
- package/out/_next/static/chunks/2c--awgkdcikq.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/2si5cg3hl5dtf.js +0 -4
- package/out/_next/static/chunks/2uhrhq35bki6u.js +0 -1
- package/out/_next/static/chunks/2zdzgmacaoor9.js +0 -1
- package/out/_next/static/chunks/2zyjw8g4tiu51.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/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/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/3nw7u4bie0-g6.js +0 -1
- package/out/_next/static/chunks/3qatb38-tk_gd.js +0 -1
- package/out/_next/static/chunks/3rpm-1ryf073k.js +0 -1
- package/out/_next/static/chunks/3tdcdi_utmoy_.js +0 -1
- package/out/_next/static/chunks/3tt_ir_va6262.js +0 -1
- package/out/_next/static/chunks/43qmngblcab8f.js +0 -1
- /package/out/_next/static/{UgXxCZvX6DcLoCaAHvGbP → 5UjNvd7WCk97iC2cSmEGH}/_buildManifest.js +0 -0
- /package/out/_next/static/{UgXxCZvX6DcLoCaAHvGbP → 5UjNvd7WCk97iC2cSmEGH}/_clientMiddlewareManifest.js +0 -0
- /package/out/_next/static/{UgXxCZvX6DcLoCaAHvGbP → 5UjNvd7WCk97iC2cSmEGH}/_ssgManifest.js +0 -0
|
@@ -1,213 +1,10 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,
|
|
2
|
-
const float LinearEncodePowerApprox=2.2;const float GammaEncodePowerApprox=1.0/LinearEncodePowerApprox;const vec3 LuminanceEncodeApprox=vec3(0.2126,0.7152,0.0722);const float Epsilon=0.0000001;
|
|
3
|
-
#define saturate(x) clamp(x,0.0,1.0)
|
|
4
|
-
#define absEps(x) abs(x)+Epsilon
|
|
5
|
-
#define maxEps(x) max(x,Epsilon)
|
|
6
|
-
#define saturateEps(x) clamp(x,Epsilon,1.0)
|
|
7
|
-
mat3 transposeMat3(mat3 inMatrix) {vec3 i0=inMatrix[0];vec3 i1=inMatrix[1];vec3 i2=inMatrix[2];mat3 outMatrix=mat3(
|
|
8
|
-
vec3(i0.x,i1.x,i2.x),
|
|
9
|
-
vec3(i0.y,i1.y,i2.y),
|
|
10
|
-
vec3(i0.z,i1.z,i2.z)
|
|
11
|
-
);return outMatrix;}
|
|
12
|
-
mat3 inverseMat3(mat3 inMatrix) {float a00=inMatrix[0][0],a01=inMatrix[0][1],a02=inMatrix[0][2];float a10=inMatrix[1][0],a11=inMatrix[1][1],a12=inMatrix[1][2];float a20=inMatrix[2][0],a21=inMatrix[2][1],a22=inMatrix[2][2];float b01=a22*a11-a12*a21;float b11=-a22*a10+a12*a20;float b21=a21*a10-a11*a20;float det=a00*b01+a01*b11+a02*b21;return mat3(b01,(-a22*a01+a02*a21),(a12*a01-a02*a11),
|
|
13
|
-
b11,(a22*a00-a02*a20),(-a12*a00+a02*a10),
|
|
14
|
-
b21,(-a21*a00+a01*a20),(a11*a00-a01*a10))/det;}
|
|
15
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
16
|
-
vec3 toLinearSpaceExact(vec3 color)
|
|
17
|
-
{vec3 nearZeroSection=0.0773993808*color;vec3 remainingSection=pow(0.947867299*(color+vec3(0.055)),vec3(2.4));
|
|
18
|
-
#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)
|
|
19
|
-
return mix(remainingSection,nearZeroSection,lessThanEqual(color,vec3(0.04045)));
|
|
20
|
-
#else
|
|
21
|
-
return
|
|
22
|
-
vec3(
|
|
23
|
-
color.r<=0.04045 ? nearZeroSection.r : remainingSection.r,
|
|
24
|
-
color.g<=0.04045 ? nearZeroSection.g : remainingSection.g,
|
|
25
|
-
color.b<=0.04045 ? nearZeroSection.b : remainingSection.b);
|
|
26
|
-
#endif
|
|
27
|
-
}
|
|
28
|
-
vec3 toGammaSpaceExact(vec3 color)
|
|
29
|
-
{vec3 nearZeroSection=12.92*color;vec3 remainingSection=1.055*pow(color,vec3(0.41666))-vec3(0.055);
|
|
30
|
-
#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)
|
|
31
|
-
return mix(remainingSection,nearZeroSection,lessThanEqual(color,vec3(0.0031308)));
|
|
32
|
-
#else
|
|
33
|
-
return
|
|
34
|
-
vec3(
|
|
35
|
-
color.r<=0.0031308 ? nearZeroSection.r : remainingSection.r,
|
|
36
|
-
color.g<=0.0031308 ? nearZeroSection.g : remainingSection.g,
|
|
37
|
-
color.b<=0.0031308 ? nearZeroSection.b : remainingSection.b);
|
|
38
|
-
#endif
|
|
39
|
-
}
|
|
40
|
-
#endif
|
|
41
|
-
float toLinearSpace(float color)
|
|
42
|
-
{
|
|
43
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
44
|
-
float nearZeroSection=0.0773993808*color;float remainingSection=pow(0.947867299*(color+0.055),2.4);return color<=0.04045 ? nearZeroSection : remainingSection;
|
|
45
|
-
#else
|
|
46
|
-
return pow(color,LinearEncodePowerApprox);
|
|
47
|
-
#endif
|
|
48
|
-
}
|
|
49
|
-
vec3 toLinearSpace(vec3 color)
|
|
50
|
-
{
|
|
51
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
52
|
-
return toLinearSpaceExact(color);
|
|
53
|
-
#else
|
|
54
|
-
return pow(color,vec3(LinearEncodePowerApprox));
|
|
55
|
-
#endif
|
|
56
|
-
}
|
|
57
|
-
vec4 toLinearSpace(vec4 color)
|
|
58
|
-
{
|
|
59
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
60
|
-
return vec4(toLinearSpaceExact(color.rgb),color.a);
|
|
61
|
-
#else
|
|
62
|
-
return vec4(pow(color.rgb,vec3(LinearEncodePowerApprox)),color.a);
|
|
63
|
-
#endif
|
|
64
|
-
}
|
|
65
|
-
float toGammaSpace(float color)
|
|
66
|
-
{
|
|
67
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
68
|
-
float nearZeroSection=12.92*color;float remainingSection=1.055*pow(color,0.41666)-0.055;return color<=0.0031308 ? nearZeroSection : remainingSection;
|
|
69
|
-
#else
|
|
70
|
-
return pow(color,GammaEncodePowerApprox);
|
|
71
|
-
#endif
|
|
72
|
-
}
|
|
73
|
-
vec3 toGammaSpace(vec3 color)
|
|
74
|
-
{
|
|
75
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
76
|
-
return toGammaSpaceExact(color);
|
|
77
|
-
#else
|
|
78
|
-
return pow(color,vec3(GammaEncodePowerApprox));
|
|
79
|
-
#endif
|
|
80
|
-
}
|
|
81
|
-
vec4 toGammaSpace(vec4 color)
|
|
82
|
-
{
|
|
83
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
84
|
-
return vec4(toGammaSpaceExact(color.rgb),color.a);
|
|
85
|
-
#else
|
|
86
|
-
return vec4(pow(color.rgb,vec3(GammaEncodePowerApprox)),color.a);
|
|
87
|
-
#endif
|
|
88
|
-
}
|
|
89
|
-
float square(float value)
|
|
90
|
-
{return value*value;}
|
|
91
|
-
vec3 square(vec3 value)
|
|
92
|
-
{return value*value;}
|
|
93
|
-
float pow5(float value) {float sq=value*value;return sq*sq*value;}
|
|
94
|
-
vec3 double_refract(vec3 I,vec3 N,float eta) {vec3 Tfront=refract(I,N,1.0/eta);vec3 Nback=normalize(reflect(N,Tfront));return refract(Tfront,-Nback,eta);}
|
|
95
|
-
float getLuminanceUnclamped(vec3 color)
|
|
96
|
-
{return dot(color,LuminanceEncodeApprox);}
|
|
97
|
-
float getLuminance(vec3 color)
|
|
98
|
-
{return saturate(getLuminanceUnclamped(color));}
|
|
99
|
-
float getRand(vec2 seed) {return fract(sin(dot(seed.xy ,vec2(12.9898,78.233)))*43758.5453);}
|
|
100
|
-
float dither(vec2 seed,float varianceAmount) {float rand=getRand(seed);float normVariance=varianceAmount/255.0;float dither=mix(-normVariance,normVariance,rand);return dither;}
|
|
101
|
-
const float rgbdMaxRange=255.;vec4 toRGBD(vec3 color) {float maxRGB=maxEps(max(color.r,max(color.g,color.b)));float D =max(rgbdMaxRange/maxRGB,1.);D =saturate(floor(D)/255.);vec3 rgb=color.rgb*D;rgb=toGammaSpace(rgb);return vec4(saturate(rgb),D);}
|
|
102
|
-
vec3 fromRGBD(vec4 rgbd) {rgbd.rgb=toLinearSpace(rgbd.rgb);return rgbd.rgb/rgbd.a;}
|
|
103
|
-
vec3 parallaxCorrectNormal( vec3 vertexPos,vec3 origVec,vec3 cubeSize,vec3 cubePos ) {vec3 invOrigVec=vec3(1.)/origVec;vec3 halfSize=cubeSize*0.5;vec3 intersecAtMaxPlane=(cubePos+halfSize-vertexPos)*invOrigVec;vec3 intersecAtMinPlane=(cubePos-halfSize-vertexPos)*invOrigVec;vec3 largestIntersec=max(intersecAtMaxPlane,intersecAtMinPlane);float distance=min(min(largestIntersec.x,largestIntersec.y),largestIntersec.z);vec3 intersectPositionWS=vertexPos+origVec*distance;return intersectPositionWS-cubePos;}
|
|
104
|
-
vec3 equirectangularToCubemapDirection(vec2 uv) {float longitude=uv.x*TWO_PI-PI;float latitude=HALF_PI-uv.y*PI;vec3 direction;direction.x=cos(latitude)*sin(longitude);direction.y=sin(latitude);direction.z=cos(latitude)*cos(longitude);return direction;}
|
|
105
|
-
float sqrtClamped(float value) {return sqrt(max(value,0.));}
|
|
106
|
-
float avg(vec3 value) {return dot(value,vec3(0.333333333));}
|
|
107
|
-
#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)
|
|
108
|
-
uint extractBits(uint value,int offset,int width) {return (value>>offset) & ((1u<<width)-1u);}
|
|
109
|
-
int onlyBitPosition(uint value) {return (floatBitsToInt(float(value))>>23)-0x7f;}
|
|
110
|
-
vec3 singleScatterToMultiScatterAlbedo(vec3 rho_ss) {vec3 s=sqrt(max(vec3(1.0)-rho_ss,vec3(0.0)));return (vec3(1.0)-s)*(vec3(1.0)-vec3(0.139)*s)/(vec3(1.0)+vec3(1.17)*s);}
|
|
111
|
-
vec3 multiScatterToSingleScatterAlbedo(vec3 rho_ms) {vec3 s=4.09712+4.20863*rho_ms-sqrt(9.59217+41.6808*rho_ms+17.7126*rho_ms*rho_ms);return 1.0-s*s;}
|
|
112
|
-
vec3 multiScatterToSingleScatterAlbedo(vec3 rho_ms,float aniso) {vec3 s=4.09712+4.20863*rho_ms-sqrt(9.59217+41.6808*rho_ms+17.7126*rho_ms*rho_ms);return (1.0-s*s)/maxEps(1.0-aniso*s*s);}
|
|
113
|
-
float min3(vec3 v) {return min(v.x,min(v.y,v.z));}
|
|
114
|
-
float max3(vec3 v) {return max(v.x,max(v.y,v.z));}
|
|
115
|
-
float uint2float(uint i) {return uintBitsToFloat(0x3F800000u | (i>>9u))-1.0;}
|
|
116
|
-
vec2 plasticSequence(const uint rstate) {return vec2(uint2float(rstate*3242174889u),
|
|
117
|
-
uint2float(rstate*2447445414u));}
|
|
118
|
-
#endif
|
|
119
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["helperFunctions",0,{name:o,shader:t}])},23044,e=>{"use strict";var i=e.i(37875);let o="sceneUboDeclaration",t=`layout(std140,column_major) uniform;uniform Scene {mat4 viewProjection;
|
|
120
|
-
#ifdef MULTIVIEW
|
|
121
|
-
mat4 viewProjectionR;
|
|
122
|
-
#endif
|
|
123
|
-
mat4 view;mat4 projection;vec4 vEyePosition;mat4 inverseProjection;};
|
|
124
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["sceneUboDeclaration",0,{name:o,shader:t}])},64010,46349,85394,e=>{"use strict";var i=e.i(37875);let o="meshUboDeclaration",t=`#ifdef WEBGL2
|
|
125
|
-
uniform mat4 world;uniform float visibility;
|
|
126
|
-
#else
|
|
127
|
-
layout(std140,column_major) uniform;uniform Mesh
|
|
128
|
-
{mat4 world;float visibility;};
|
|
129
|
-
#endif
|
|
130
|
-
#define WORLD_UBO
|
|
131
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["meshUboDeclaration",0,{name:o,shader:t}],64010);let r="mainUVVaryingDeclaration",a=`#ifdef MAINUV{X}
|
|
132
|
-
varying vec2 vMainUV{X};
|
|
133
|
-
#endif
|
|
134
|
-
`;i.ShaderStore.IncludesShadersStore[r]||(i.ShaderStore.IncludesShadersStore[r]=a),e.s(["mainUVVaryingDeclaration",0,{name:r,shader:a}],46349);let n="logDepthDeclaration",f=`#ifdef LOGARITHMICDEPTH
|
|
135
|
-
uniform float logarithmicDepthConstant;varying float vFragmentDepth;
|
|
136
|
-
#endif
|
|
137
|
-
`;i.ShaderStore.IncludesShadersStore[n]||(i.ShaderStore.IncludesShadersStore[n]=f),e.s(["logDepthDeclaration",0,{name:n,shader:f}],85394)},39780,83958,e=>{"use strict";var i=e.i(37875);let o="clipPlaneFragmentDeclaration",t=`#ifdef CLIPPLANE
|
|
138
|
-
varying float fClipDistance;
|
|
139
|
-
#endif
|
|
140
|
-
#ifdef CLIPPLANE2
|
|
141
|
-
varying float fClipDistance2;
|
|
142
|
-
#endif
|
|
143
|
-
#ifdef CLIPPLANE3
|
|
144
|
-
varying float fClipDistance3;
|
|
145
|
-
#endif
|
|
146
|
-
#ifdef CLIPPLANE4
|
|
147
|
-
varying float fClipDistance4;
|
|
148
|
-
#endif
|
|
149
|
-
#ifdef CLIPPLANE5
|
|
150
|
-
varying float fClipDistance5;
|
|
151
|
-
#endif
|
|
152
|
-
#ifdef CLIPPLANE6
|
|
153
|
-
varying float fClipDistance6;
|
|
154
|
-
#endif
|
|
155
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["clipPlaneFragmentDeclaration",0,{name:o,shader:t}],39780);let r="clipPlaneFragment",a=`#if defined(CLIPPLANE) || defined(CLIPPLANE2) || defined(CLIPPLANE3) || defined(CLIPPLANE4) || defined(CLIPPLANE5) || defined(CLIPPLANE6)
|
|
156
|
-
if (false) {}
|
|
157
|
-
#endif
|
|
158
|
-
#ifdef CLIPPLANE
|
|
159
|
-
else if (fClipDistance>0.0)
|
|
160
|
-
{discard;}
|
|
161
|
-
#endif
|
|
162
|
-
#ifdef CLIPPLANE2
|
|
163
|
-
else if (fClipDistance2>0.0)
|
|
164
|
-
{discard;}
|
|
165
|
-
#endif
|
|
166
|
-
#ifdef CLIPPLANE3
|
|
167
|
-
else if (fClipDistance3>0.0)
|
|
168
|
-
{discard;}
|
|
169
|
-
#endif
|
|
170
|
-
#ifdef CLIPPLANE4
|
|
171
|
-
else if (fClipDistance4>0.0)
|
|
172
|
-
{discard;}
|
|
173
|
-
#endif
|
|
174
|
-
#ifdef CLIPPLANE5
|
|
175
|
-
else if (fClipDistance5>0.0)
|
|
176
|
-
{discard;}
|
|
177
|
-
#endif
|
|
178
|
-
#ifdef CLIPPLANE6
|
|
179
|
-
else if (fClipDistance6>0.0)
|
|
180
|
-
{discard;}
|
|
181
|
-
#endif
|
|
182
|
-
`;i.ShaderStore.IncludesShadersStore[r]||(i.ShaderStore.IncludesShadersStore[r]=a),e.s(["clipPlaneFragment",0,{name:r,shader:a}],83958)},3107,51464,e=>{"use strict";var i=e.i(37875);let o="fogFragmentDeclaration",t=`#ifdef FOG
|
|
183
|
-
#define FOGMODE_NONE 0.
|
|
184
|
-
#define FOGMODE_EXP 1.
|
|
185
|
-
#define FOGMODE_EXP2 2.
|
|
186
|
-
#define FOGMODE_LINEAR 3.
|
|
187
|
-
#define E 2.71828
|
|
188
|
-
uniform vec4 vFogInfos;uniform vec3 vFogColor;varying vec3 vFogDistance;float CalcFogFactor()
|
|
189
|
-
{float fogCoeff=1.0;float fogStart=vFogInfos.y;float fogEnd=vFogInfos.z;float fogDensity=vFogInfos.w;float fogDistance=length(vFogDistance);if (FOGMODE_LINEAR==vFogInfos.x)
|
|
190
|
-
{fogCoeff=(fogEnd-fogDistance)/(fogEnd-fogStart);}
|
|
191
|
-
else if (FOGMODE_EXP==vFogInfos.x)
|
|
192
|
-
{fogCoeff=1.0/pow(E,fogDistance*fogDensity);}
|
|
193
|
-
else if (FOGMODE_EXP2==vFogInfos.x)
|
|
194
|
-
{fogCoeff=1.0/pow(E,fogDistance*fogDistance*fogDensity*fogDensity);}
|
|
195
|
-
return clamp(fogCoeff,0.0,1.0);}
|
|
196
|
-
#endif
|
|
197
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["fogFragmentDeclaration",0,{name:o,shader:t}],3107);let r="fogFragment",a=`#ifdef FOG
|
|
198
|
-
float fog=CalcFogFactor();
|
|
199
|
-
#ifdef PBR
|
|
200
|
-
fog=toLinearSpace(fog);
|
|
201
|
-
#endif
|
|
202
|
-
color.rgb=mix(vFogColor,color.rgb,fog);
|
|
203
|
-
#endif
|
|
204
|
-
`;i.ShaderStore.IncludesShadersStore[r]||(i.ShaderStore.IncludesShadersStore[r]=a),e.s(["fogFragment",0,{name:r,shader:a}],51464)},34834,e=>{"use strict";var i=e.i(37875);e.i(23044),e.i(64010);let o="defaultUboDeclaration",t=`layout(std140,column_major) uniform;uniform Material
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,22802,e=>{"use strict";var i=e.i(47150);e.i(67827),e.i(38605);let o="defaultUboDeclaration",t=`layout(std140,column_major) uniform;uniform Material
|
|
205
2
|
{vec4 diffuseLeftColor;vec4 diffuseRightColor;vec4 opacityParts;vec4 reflectionLeftColor;vec4 reflectionRightColor;vec4 refractionLeftColor;vec4 refractionRightColor;vec4 emissiveLeftColor;vec4 emissiveRightColor;vec2 vDiffuseInfos;vec2 vAmbientInfos;vec2 vOpacityInfos;vec2 vEmissiveInfos;vec2 vLightmapInfos;vec2 vSpecularInfos;vec3 vBumpInfos;mat4 diffuseMatrix;mat4 ambientMatrix;mat4 opacityMatrix;mat4 emissiveMatrix;mat4 lightmapMatrix;mat4 specularMatrix;mat4 bumpMatrix;vec2 vTangentSpaceParams;float pointSize;float alphaCutOff;mat4 refractionMatrix;vec4 vRefractionInfos;vec3 vRefractionPosition;vec3 vRefractionSize;vec4 vSpecularColor;vec3 vEmissiveColor;vec4 vDiffuseColor;vec3 vAmbientColor;vec4 cameraInfo;vec4 vTextureRepetitionHexTilingParams;vec2 vReflectionInfos;mat4 reflectionMatrix;vec3 vReflectionPosition;vec3 vReflectionSize;
|
|
206
3
|
#define ADDITIONAL_UBO_DECLARATION
|
|
207
4
|
};
|
|
208
5
|
#include<sceneUboDeclaration>
|
|
209
6
|
#include<meshUboDeclaration>
|
|
210
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["defaultUboDeclaration",0,{name:o,shader:t}])},
|
|
7
|
+
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["defaultUboDeclaration",0,{name:o,shader:t}])},844,40676,e=>{"use strict";var i=e.i(47150);let o="samplerFragmentDeclaration",t=`#ifdef _DEFINENAME_
|
|
211
8
|
#if _DEFINENAME_DIRECTUV==1
|
|
212
9
|
#define v_VARYINGNAME_UV vMainUV1
|
|
213
10
|
#elif _DEFINENAME_DIRECTUV==2
|
|
@@ -225,7 +22,7 @@ varying vec2 v_VARYINGNAME_UV;
|
|
|
225
22
|
#endif
|
|
226
23
|
uniform sampler2D _SAMPLERNAME_Sampler;
|
|
227
24
|
#endif
|
|
228
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["samplerFragmentDeclaration",0,{name:o,shader:t}],
|
|
25
|
+
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["samplerFragmentDeclaration",0,{name:o,shader:t}],844);let r="reflectionFunction",a=`vec3 computeFixedEquirectangularCoords(vec4 worldPos,vec3 worldNormal,vec3 direction)
|
|
229
26
|
{float lon=atan(direction.z,direction.x);float lat=acos(direction.y);vec2 sphereCoords=vec2(lon,lat)*RECIPROCAL_PI2*2.0;float s=sphereCoords.x*0.5+0.5;float t=sphereCoords.y;return vec3(s,t,0); }
|
|
230
27
|
vec3 computeMirroredFixedEquirectangularCoords(vec4 worldPos,vec3 worldNormal,vec3 direction)
|
|
231
28
|
{float lon=atan(direction.z,direction.x);float lat=acos(direction.y);vec2 sphereCoords=vec2(lon,lat)*RECIPROCAL_PI2*2.0;float s=sphereCoords.x*0.5+0.5;float t=sphereCoords.y;return vec3(1.0-s,t,0); }
|
|
@@ -287,7 +84,7 @@ return vec3(0,0,0);
|
|
|
287
84
|
#endif
|
|
288
85
|
}
|
|
289
86
|
#endif
|
|
290
|
-
`;i.ShaderStore.IncludesShadersStore[r]||(i.ShaderStore.IncludesShadersStore[r]=a),e.s(["reflectionFunction",0,{name:r,shader:a}],
|
|
87
|
+
`;i.ShaderStore.IncludesShadersStore[r]||(i.ShaderStore.IncludesShadersStore[r]=a),e.s(["reflectionFunction",0,{name:r,shader:a}],40676)},40766,32274,67538,e=>{"use strict";var i=e.i(47150);let o="bumpFragmentMainFunctions",t=`#ifndef TEXRD_DEFINED
|
|
291
88
|
#define TEXRD(s,uv) texture2D(s,uv)
|
|
292
89
|
#define TEXRD_DEFINED
|
|
293
90
|
#endif
|
|
@@ -352,7 +149,7 @@ vec3 perturbNormal(mat3 cotangentFrame,vec3 textureSample,float scale)
|
|
|
352
149
|
mat3 cotangent_frame(vec3 normal,vec3 p,vec2 uv,vec2 tangentSpaceParams)
|
|
353
150
|
{vec3 dp1=dFdx(p);vec3 dp2=dFdy(p);vec2 duv1=dFdx(uv);vec2 duv2=dFdy(uv);vec3 dp2perp=cross(dp2,normal);vec3 dp1perp=cross(normal,dp1);vec3 tangent=dp2perp*duv1.x+dp1perp*duv2.x;vec3 bitangent=dp2perp*duv1.y+dp1perp*duv2.y;tangent*=tangentSpaceParams.x;bitangent*=tangentSpaceParams.y;float det=max(dot(tangent,tangent),dot(bitangent,bitangent));float invmax=det==0.0 ? 0.0 : inversesqrt(det);return mat3(tangent*invmax,bitangent*invmax,normal);}
|
|
354
151
|
#endif
|
|
355
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["bumpFragmentMainFunctions",0,{name:o,shader:t}],
|
|
152
|
+
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["bumpFragmentMainFunctions",0,{name:o,shader:t}],40766),e.i(844);let r="bumpFragmentFunctions",a=`#if defined(BUMP)
|
|
356
153
|
#include<samplerFragmentDeclaration>(_DEFINENAME_,BUMP,_VARYINGNAME_,Bump,_SAMPLERNAME_,bump)
|
|
357
154
|
#endif
|
|
358
155
|
#if defined(DETAIL)
|
|
@@ -382,7 +179,7 @@ return -texCoordOffset;
|
|
|
382
179
|
#endif
|
|
383
180
|
}
|
|
384
181
|
#endif
|
|
385
|
-
`;i.ShaderStore.IncludesShadersStore[r]||(i.ShaderStore.IncludesShadersStore[r]=a),e.s(["bumpFragmentFunctions",0,{name:r,shader:a}],
|
|
182
|
+
`;i.ShaderStore.IncludesShadersStore[r]||(i.ShaderStore.IncludesShadersStore[r]=a),e.s(["bumpFragmentFunctions",0,{name:r,shader:a}],32274);let n="bumpFragment",f=`vec2 uvOffset=vec2(0.0,0.0);
|
|
386
183
|
#if defined(BUMP) || defined(PARALLAX) || defined(DETAIL)
|
|
387
184
|
#ifdef NORMALXYSCALE
|
|
388
185
|
float normalScale=1.0;
|
|
@@ -434,7 +231,7 @@ normalW=perturbNormalBase(TBN,blendedNormal,vBumpInfos.y);
|
|
|
434
231
|
#elif defined(DETAIL)
|
|
435
232
|
detailNormal.xy*=vDetailInfos.z;normalW=perturbNormalBase(TBN,detailNormal,vDetailInfos.z);
|
|
436
233
|
#endif
|
|
437
|
-
`;i.ShaderStore.IncludesShadersStore[n]||(i.ShaderStore.IncludesShadersStore[n]=f),e.s(["bumpFragment",0,{name:n,shader:f}],
|
|
234
|
+
`;i.ShaderStore.IncludesShadersStore[n]||(i.ShaderStore.IncludesShadersStore[n]=f),e.s(["bumpFragment",0,{name:n,shader:f}],67538)},805,e=>{"use strict";var i=e.i(47150);let o="clusteredLightingFunctions",t=`struct ClusteredLight {vec4 vLightData;vec4 vLightDiffuse;vec4 vLightSpecular;vec4 vLightDirection;vec4 vLightFalloff;};
|
|
438
235
|
#define inline
|
|
439
236
|
ClusteredLight getClusteredLight(sampler2D lightDataTexture,int index) {return ClusteredLight(
|
|
440
237
|
texelFetch(lightDataTexture,ivec2(0,index),0),
|
|
@@ -444,7 +241,7 @@ texelFetch(lightDataTexture,ivec2(3,index),0),
|
|
|
444
241
|
texelFetch(lightDataTexture,ivec2(4,index),0)
|
|
445
242
|
);}
|
|
446
243
|
int getClusteredSliceIndex(vec2 sliceData,float viewDepth) {return int(log(viewDepth)*sliceData.x+sliceData.y);}
|
|
447
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["clusteredLightingFunctions",0,{name:o,shader:t}])},
|
|
244
|
+
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["clusteredLightingFunctions",0,{name:o,shader:t}])},75351,e=>{"use strict";var i=e.i(47150);let o="decalFragment",t=`#ifdef DECAL
|
|
448
245
|
#ifdef GAMMADECAL
|
|
449
246
|
decalColor.rgb=toLinearSpace(decalColor.rgb);
|
|
450
247
|
#endif
|
|
@@ -453,7 +250,7 @@ decalColor.a*=decalColor.a;
|
|
|
453
250
|
#endif
|
|
454
251
|
surfaceAlbedo.rgb=mix(surfaceAlbedo.rgb,decalColor.rgb,decalColor.a);
|
|
455
252
|
#endif
|
|
456
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["decalFragment",0,{name:o,shader:t}])},
|
|
253
|
+
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["decalFragment",0,{name:o,shader:t}])},69855,e=>{"use strict";var i=e.i(47150);let o="lightFragment",t=`#ifdef LIGHT{X}
|
|
457
254
|
#if defined(SHADOWONLY) || defined(LIGHTMAP) && defined(LIGHTMAPEXCLUDED{X}) && defined(LIGHTMAPNOSPECULAR{X})
|
|
458
255
|
#else
|
|
459
256
|
vec4 diffuse{X}=light{X}.vLightDiffuse;
|
|
@@ -831,7 +628,7 @@ sheenBase+=info.sheen.rgb*shadow;
|
|
|
831
628
|
#endif
|
|
832
629
|
#endif
|
|
833
630
|
#endif
|
|
834
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["lightFragment",0,{name:o,shader:t}])},
|
|
631
|
+
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=t),e.s(["lightFragment",0,{name:o,shader:t}])},53959,e=>{"use strict";var i=e.i(47150),o=e.i(11450);let t="defaultFragmentDeclaration",r=`uniform vec4 vEyePosition;uniform vec4 vDiffuseColor;uniform vec4 vSpecularColor;uniform vec3 vEmissiveColor;uniform vec3 vAmbientColor;uniform float visibility;
|
|
835
632
|
#ifdef DIFFUSE
|
|
836
633
|
uniform vec2 vDiffuseInfos;
|
|
837
634
|
#endif
|
|
@@ -902,7 +699,7 @@ uniform vec4 vDetailInfos;
|
|
|
902
699
|
uniform vec4 vTextureRepetitionHexTilingParams;
|
|
903
700
|
#endif
|
|
904
701
|
#define ADDITIONAL_FRAGMENT_DECLARATION
|
|
905
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r);var a=e.i(
|
|
702
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r);var a=e.i(67827),n=e.i(38605),f=e.i(22802),l=e.i(64150),d=e.i(23767),s=e.i(30868),c=e.i(3954),h=e.i(85401),g=e.i(80774),u=e.i(93663),m=e.i(805);let v="lightsFragmentFunctions",S=`struct lightingInfo
|
|
906
703
|
{vec3 diffuse;
|
|
907
704
|
#ifdef SPECULARTERM
|
|
908
705
|
vec3 specular;
|
|
@@ -1006,11 +803,11 @@ result.specular+=info.specular;
|
|
|
1006
803
|
batchOffset+=CLUSTLIGHT_BATCH;}
|
|
1007
804
|
return result;}
|
|
1008
805
|
#endif
|
|
1009
|
-
`;i.ShaderStore.IncludesShadersStore[
|
|
806
|
+
`;i.ShaderStore.IncludesShadersStore[v]||(i.ShaderStore.IncludesShadersStore[v]=S);var E=e.i(41628),p=e.i(844);let I="fresnelFunction",C=`#ifdef FRESNEL
|
|
1010
807
|
float computeFresnelTerm(vec3 viewDirection,vec3 worldNormal,float bias,float power)
|
|
1011
808
|
{float fresnelTerm=pow(bias+abs(dot(viewDirection,worldNormal)),power);return clamp(fresnelTerm,0.,1.);}
|
|
1012
809
|
#endif
|
|
1013
|
-
`;i.ShaderStore.IncludesShadersStore[I]||(i.ShaderStore.IncludesShadersStore[I]=C);var L=e.i(
|
|
810
|
+
`;i.ShaderStore.IncludesShadersStore[I]||(i.ShaderStore.IncludesShadersStore[I]=C);var L=e.i(40676),A=e.i(72284),T=e.i(27613),D=e.i(8808),R=e.i(40766),X=e.i(32274),P=e.i(57487),N=e.i(68381),O=e.i(76578),x=e.i(70402),F=e.i(67538),w=e.i(75351),M=e.i(61241),_=e.i(69855),b=e.i(35047),U=e.i(2216),W=e.i(45041);let y="defaultPixelShader",H=`#define CUSTOM_FRAGMENT_EXTENSION
|
|
1014
811
|
#include<__decl__defaultFragment>
|
|
1015
812
|
#if defined(BUMP) || !defined(NORMAL)
|
|
1016
813
|
#extension GL_OES_standard_derivatives : enable
|
|
@@ -1360,4 +1157,4 @@ if (fragDepth==nearestDepth) {frontColor.rgb+=color.rgb*color.a*alphaMultiplier;
|
|
|
1360
1157
|
#endif
|
|
1361
1158
|
#define CUSTOM_FRAGMENT_MAIN_END
|
|
1362
1159
|
}
|
|
1363
|
-
`;for(let e of(i.ShaderStore.ShadersStore[y]||(i.ShaderStore.ShadersStore[y]=
|
|
1160
|
+
`;for(let e of(i.ShaderStore.ShadersStore[y]||(i.ShaderStore.ShadersStore[y]=H),[o.decalFragmentDeclaration,{name:t,shader:r},a.sceneUboDeclaration,n.meshUboDeclaration,f.defaultUboDeclaration,l.prePassDeclaration,d.oitDeclaration,s.mainUVVaryingDeclaration,c.helperFunctions,h.lightFragmentDeclaration,g.lightUboDeclaration,u.ltcHelperFunctions,m.clusteredLightingFunctions,{name:v,shader:S},E.shadowsFragmentFunctions,p.samplerFragmentDeclaration,{name:I,shader:C},L.reflectionFunction,A.imageProcessingDeclaration,T.imageProcessingFunctions,D.textureRepetitionFunctions,R.bumpFragmentMainFunctions,X.bumpFragmentFunctions,P.clipPlaneFragmentDeclaration,N.logDepthDeclaration,O.fogFragmentDeclaration,x.clipPlaneFragment,F.bumpFragment,w.decalFragment,M.depthPrePass,_.lightFragment,b.logDepthFragment,U.fogFragment,W.oitFragment]))i.ShaderStore.IncludesShadersStore[e.name]||(i.ShaderStore.IncludesShadersStore[e.name]=e.shader);e.s(["defaultPixelShader",0,{name:y,shader:H}],53959)}]);
|
|
@@ -0,0 +1,338 @@
|
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,97793,e=>{"use strict";var t=e.i(47150);let a="sceneUboDeclaration",s=`struct Scene {viewProjection : mat4x4<f32>,
|
|
2
|
+
#ifdef MULTIVIEW
|
|
3
|
+
viewProjectionR : mat4x4<f32>,
|
|
4
|
+
#endif
|
|
5
|
+
view : mat4x4<f32>,
|
|
6
|
+
projection : mat4x4<f32>,
|
|
7
|
+
vEyePosition : vec4<f32>,
|
|
8
|
+
inverseProjection : mat4x4<f32>,};
|
|
9
|
+
#define SCENE_UBO
|
|
10
|
+
var<uniform> scene : Scene;
|
|
11
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[a]||(t.ShaderStore.IncludesShadersStoreWGSL[a]=s),e.s(["sceneUboDeclarationWGSL",0,{name:a,shader:s}])},36113,e=>{"use strict";var t=e.i(47150);let a="meshUboDeclaration",s=`struct Mesh {world : mat4x4<f32>,
|
|
12
|
+
visibility : f32,};var<uniform> mesh : Mesh;
|
|
13
|
+
#define WORLD_UBO
|
|
14
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[a]||(t.ShaderStore.IncludesShadersStoreWGSL[a]=s),e.s(["meshUboDeclarationWGSL",0,{name:a,shader:s}])},82450,e=>{"use strict";var t=e.i(47150);let a="gaussianSplatting",s=`fn getDataUV(index: f32,dataTextureSize: vec2f)->vec2<f32> {let y: f32=floor(index/dataTextureSize.x);let x: f32=index-y*dataTextureSize.x;return vec2f((x+0.5),(y+0.5));}
|
|
15
|
+
struct Splat {center: vec4f,
|
|
16
|
+
color: vec4f,
|
|
17
|
+
covA: vec4f,
|
|
18
|
+
covB: vec4f,
|
|
19
|
+
#if SH_DEGREE>0
|
|
20
|
+
sh0: vec4<u32>,
|
|
21
|
+
#endif
|
|
22
|
+
#if SH_DEGREE>1
|
|
23
|
+
sh1: vec4<u32>,
|
|
24
|
+
#endif
|
|
25
|
+
#if SH_DEGREE>2
|
|
26
|
+
sh2: vec4<u32>,
|
|
27
|
+
#endif
|
|
28
|
+
#if SH_DEGREE>3
|
|
29
|
+
sh3: vec4<u32>,
|
|
30
|
+
sh4: vec4<u32>,
|
|
31
|
+
#endif
|
|
32
|
+
#if IS_COMPOUND
|
|
33
|
+
partIndex: u32,
|
|
34
|
+
#endif
|
|
35
|
+
#if defined(IS_FOR_VOXELIZATION)
|
|
36
|
+
rotationA: vec4f,
|
|
37
|
+
rotationB: vec4f,
|
|
38
|
+
rotationScale: vec4f,
|
|
39
|
+
#endif
|
|
40
|
+
#ifdef USE_SOG
|
|
41
|
+
splatIndex: f32,
|
|
42
|
+
#endif
|
|
43
|
+
};fn getSplatIndex(localIndex: i32,splatIndex0: vec4f,splatIndex1: vec4f,splatIndex2: vec4f,splatIndex3: vec4f)->f32 {var splatIndex: f32;switch (localIndex)
|
|
44
|
+
{case 0:
|
|
45
|
+
{splatIndex=splatIndex0.x;break;}
|
|
46
|
+
case 1:
|
|
47
|
+
{splatIndex=splatIndex0.y;break;}
|
|
48
|
+
case 2:
|
|
49
|
+
{splatIndex=splatIndex0.z;break;}
|
|
50
|
+
case 3:
|
|
51
|
+
{splatIndex=splatIndex0.w;break;}
|
|
52
|
+
case 4:
|
|
53
|
+
{splatIndex=splatIndex1.x;break;}
|
|
54
|
+
case 5:
|
|
55
|
+
{splatIndex=splatIndex1.y;break;}
|
|
56
|
+
case 6:
|
|
57
|
+
{splatIndex=splatIndex1.z;break;}
|
|
58
|
+
case 7:
|
|
59
|
+
{splatIndex=splatIndex1.w;break;}
|
|
60
|
+
case 8:
|
|
61
|
+
{splatIndex=splatIndex2.x;break;}
|
|
62
|
+
case 9:
|
|
63
|
+
{splatIndex=splatIndex2.y;break;}
|
|
64
|
+
case 10:
|
|
65
|
+
{splatIndex=splatIndex2.z;break;}
|
|
66
|
+
case 11:
|
|
67
|
+
{splatIndex=splatIndex2.w;break;}
|
|
68
|
+
case 12:
|
|
69
|
+
{splatIndex=splatIndex3.x;break;}
|
|
70
|
+
case 13:
|
|
71
|
+
{splatIndex=splatIndex3.y;break;}
|
|
72
|
+
case 14:
|
|
73
|
+
{splatIndex=splatIndex3.z;break;}
|
|
74
|
+
default:
|
|
75
|
+
{splatIndex=splatIndex3.w;break;}}
|
|
76
|
+
return splatIndex;}
|
|
77
|
+
fn readSplat(splatIndex: f32,dataTextureSize: vec2f)->Splat {var splat: Splat;let splatUV=getDataUV(splatIndex,dataTextureSize);let splatUVi32=vec2<i32>(i32(splatUV.x),i32(splatUV.y));
|
|
78
|
+
#ifdef USE_SOG
|
|
79
|
+
let mL=textureLoad(centersTexture,splatUVi32,0);let mU=textureLoad(covariancesATexture,splatUVi32,0);let sRaw=textureLoad(covariancesBTexture,splatUVi32,0);let qRaw=textureLoad(sogQuatsTexture,splatUVi32,0);let c0=textureLoad(colorsTexture,splatUVi32,0);let q16=(mU.xyz*256.0+mL.xyz)*(255.0/65535.0);let nPos=mix(uniforms.sogMeansMin,uniforms.sogMeansMax,q16);let center3=sign(nPos)*(exp(abs(nPos))-vec3f(1.0));splat.center=vec4f(center3,1.0);
|
|
80
|
+
#ifdef USE_SOG_V2
|
|
81
|
+
let sIdx=floor(sRaw.xyz*255.0+0.5);var splatScale: vec3f;splatScale.x=exp(textureLoad(sogCodebookTexture,vec2<i32>(i32(sIdx.x),0),0).r);splatScale.y=exp(textureLoad(sogCodebookTexture,vec2<i32>(i32(sIdx.y),0),0).r);splatScale.z=exp(textureLoad(sogCodebookTexture,vec2<i32>(i32(sIdx.z),0),0).r);
|
|
82
|
+
#else
|
|
83
|
+
let splatScale=exp(mix(uniforms.sogScalesMin,uniforms.sogScalesMax,sRaw.xyz));
|
|
84
|
+
#endif
|
|
85
|
+
let invSqrt2: f32=0.70710678118;let qabc=(qRaw.xyz-vec3f(0.5))*2.0*invSqrt2;let qMode=i32(qRaw.w*255.0+0.5)-252;let qd=sqrt(max(0.0,1.0-dot(qabc,qabc)));var quat: vec4f;if (qMode==0) { quat=vec4f(qd,qabc.x,qabc.y,qabc.z); }
|
|
86
|
+
else if (qMode==1) { quat=vec4f(qabc.x,qd,qabc.y,qabc.z); }
|
|
87
|
+
else if (qMode==2) { quat=vec4f(qabc.x,qabc.y,qd,qabc.z); }
|
|
88
|
+
else { quat=vec4f(qabc.x,qabc.y,qabc.z,qd); }
|
|
89
|
+
let qw=quat.x; let qx=quat.y; let qy=quat.z; let qz=quat.w;let R=mat3x3<f32>(
|
|
90
|
+
1.0-2.0*(qy*qy+qz*qz),2.0*(qx*qy+qw*qz), 2.0*(qx*qz-qw*qy),
|
|
91
|
+
2.0*(qx*qy-qw*qz), 1.0-2.0*(qx*qx+qz*qz),2.0*(qy*qz+qw*qx),
|
|
92
|
+
2.0*(qx*qz+qw*qy), 2.0*(qy*qz-qw*qx), 1.0-2.0*(qx*qx+qy*qy)
|
|
93
|
+
);let S2=mat3x3<f32>(
|
|
94
|
+
4.0*splatScale.x*splatScale.x,0.0,0.0,
|
|
95
|
+
0.0,4.0*splatScale.y*splatScale.y,0.0,
|
|
96
|
+
0.0,0.0,4.0*splatScale.z*splatScale.z
|
|
97
|
+
);let Sigma=R*S2*transpose(R);splat.covA=vec4f(Sigma[0][0],Sigma[0][1],Sigma[0][2],Sigma[1][1]);splat.covB=vec4f(Sigma[1][2],Sigma[2][2],0.0,0.0);let SH_C0_SOG: f32=0.28209479177387814;
|
|
98
|
+
#ifdef USE_SOG_V2
|
|
99
|
+
var c3: vec3f;c3.x=textureLoad(sogCodebookTexture,vec2<i32>(256+i32(c0.x*255.0+0.5),0),0).r;c3.y=textureLoad(sogCodebookTexture,vec2<i32>(256+i32(c0.y*255.0+0.5),0),0).r;c3.z=textureLoad(sogCodebookTexture,vec2<i32>(256+i32(c0.z*255.0+0.5),0),0).r;let colRgb=vec3f(0.5)+c3*SH_C0_SOG;let colA=c0.w;
|
|
100
|
+
#else
|
|
101
|
+
let cLerp=mix(uniforms.sogSh0Min,uniforms.sogSh0Max,c0);let colRgb=vec3f(0.5)+cLerp.xyz*SH_C0_SOG;let colA=1.0/(1.0+exp(-cLerp.w));
|
|
102
|
+
#endif
|
|
103
|
+
splat.color=vec4f(colRgb,colA);splat.splatIndex=splatIndex;
|
|
104
|
+
#else
|
|
105
|
+
splat.center=textureLoad(centersTexture,splatUVi32,0);splat.color=textureLoad(colorsTexture,splatUVi32,0);
|
|
106
|
+
#if !defined(IS_FOR_VOXELIZATION)
|
|
107
|
+
splat.covA=textureLoad(covariancesATexture,splatUVi32,0)*splat.center.w;splat.covB=textureLoad(covariancesBTexture,splatUVi32,0)*splat.center.w;
|
|
108
|
+
#endif
|
|
109
|
+
#endif
|
|
110
|
+
#if SH_DEGREE>0 && !defined(USE_SOG)
|
|
111
|
+
splat.sh0=textureLoad(shTexture0,splatUVi32,0);
|
|
112
|
+
#endif
|
|
113
|
+
#if SH_DEGREE>1 && !defined(USE_SOG)
|
|
114
|
+
splat.sh1=textureLoad(shTexture1,splatUVi32,0);
|
|
115
|
+
#endif
|
|
116
|
+
#if SH_DEGREE>2 && !defined(USE_SOG)
|
|
117
|
+
splat.sh2=textureLoad(shTexture2,splatUVi32,0);
|
|
118
|
+
#endif
|
|
119
|
+
#if SH_DEGREE>3 && !defined(USE_SOG)
|
|
120
|
+
splat.sh3=textureLoad(shTexture3,splatUVi32,0);splat.sh4=textureLoad(shTexture4,splatUVi32,0);
|
|
121
|
+
#endif
|
|
122
|
+
#if IS_COMPOUND
|
|
123
|
+
splat.partIndex=u32(textureLoad(partIndicesTexture,splatUVi32,0).r*255.0+0.5);
|
|
124
|
+
#endif
|
|
125
|
+
#if defined(IS_FOR_VOXELIZATION)
|
|
126
|
+
splat.rotationA=textureLoad(rotationsATexture,splatUVi32,0);splat.rotationB=textureLoad(rotationsBTexture,splatUVi32,0);splat.rotationScale=textureLoad(rotationScaleTexture,splatUVi32,0);
|
|
127
|
+
#endif
|
|
128
|
+
return splat;}
|
|
129
|
+
fn computeColorFromSHDegree(dir: vec3f,sh: array<vec3<f32>,25>,_so1: f32,_so2: f32,_so3: f32,_so4: f32)->vec3f
|
|
130
|
+
{let SH_C0: f32=0.28209479;let SH_C1: f32=0.48860251;var SH_C2: array<f32,5>=array<f32,5>(
|
|
131
|
+
1.092548430,
|
|
132
|
+
-1.09254843,
|
|
133
|
+
0.315391565,
|
|
134
|
+
-1.09254843,
|
|
135
|
+
0.546274215
|
|
136
|
+
);var SH_C3: array<f32,7>=array<f32,7>(
|
|
137
|
+
-0.59004358,
|
|
138
|
+
2.890611442,
|
|
139
|
+
-0.45704579,
|
|
140
|
+
0.373176332,
|
|
141
|
+
-0.45704579,
|
|
142
|
+
1.445305721,
|
|
143
|
+
-0.59004358
|
|
144
|
+
);var SH_C4: array<f32,9>=array<f32,9>(
|
|
145
|
+
2.5033429418,
|
|
146
|
+
-1.7701307698,
|
|
147
|
+
0.9461746958,
|
|
148
|
+
-0.6690465436,
|
|
149
|
+
0.1057855469,
|
|
150
|
+
-0.6690465436,
|
|
151
|
+
0.4730873479,
|
|
152
|
+
-1.7701307698,
|
|
153
|
+
0.6258357354
|
|
154
|
+
);var result: vec3f=/*SH_C0**/sh[0];
|
|
155
|
+
#if SH_DEGREE>0
|
|
156
|
+
let x: f32=dir.x;let y: f32=dir.y;let z: f32=dir.z;result+=_so1*(-SH_C1*y*sh[1]+SH_C1*z*sh[2]-SH_C1*x*sh[3]);
|
|
157
|
+
#if SH_DEGREE>1
|
|
158
|
+
let xx: f32=x*x;let yy: f32=y*y;let zz: f32=z*z;let xy: f32=x*y;let yz: f32=y*z;let xz: f32=x*z;result+=_so2*(
|
|
159
|
+
SH_C2[0]*xy*sh[4] +
|
|
160
|
+
SH_C2[1]*yz*sh[5] +
|
|
161
|
+
SH_C2[2]*(2.0f*zz-xx-yy)*sh[6] +
|
|
162
|
+
SH_C2[3]*xz*sh[7] +
|
|
163
|
+
SH_C2[4]*(xx-yy)*sh[8]);
|
|
164
|
+
#if SH_DEGREE>2
|
|
165
|
+
result+=_so3*(
|
|
166
|
+
SH_C3[0]*y*(3.0f*xx-yy)*sh[9] +
|
|
167
|
+
SH_C3[1]*xy*z*sh[10] +
|
|
168
|
+
SH_C3[2]*y*(4.0f*zz-xx-yy)*sh[11] +
|
|
169
|
+
SH_C3[3]*z*(2.0f*zz-3.0f*xx-3.0f*yy)*sh[12] +
|
|
170
|
+
SH_C3[4]*x*(4.0f*zz-xx-yy)*sh[13] +
|
|
171
|
+
SH_C3[5]*z*(xx-yy)*sh[14] +
|
|
172
|
+
SH_C3[6]*x*(xx-3.0f*yy)*sh[15]);
|
|
173
|
+
#if SH_DEGREE>3
|
|
174
|
+
result+=_so4*(
|
|
175
|
+
SH_C4[0]*x*y*(xx-yy)*sh[16] +
|
|
176
|
+
SH_C4[1]*y*z*(3.0f*xx-yy)*sh[17] +
|
|
177
|
+
SH_C4[2]*x*y*(7.0f*zz-1.0f)*sh[18] +
|
|
178
|
+
SH_C4[3]*y*z*(7.0f*zz-3.0f)*sh[19] +
|
|
179
|
+
SH_C4[4]*(zz*(35.0f*zz-30.0f)+3.0f)*sh[20] +
|
|
180
|
+
SH_C4[5]*x*z*(7.0f*zz-3.0f)*sh[21] +
|
|
181
|
+
SH_C4[6]*(xx-yy)*(7.0f*zz-1.0f)*sh[22] +
|
|
182
|
+
SH_C4[7]*x*z*(xx-3.0f*yy)*sh[23] +
|
|
183
|
+
SH_C4[8]*(xx*(xx-3.0f*yy)-yy*(3.0f*xx-yy))*sh[24]);
|
|
184
|
+
#endif
|
|
185
|
+
#endif
|
|
186
|
+
#endif
|
|
187
|
+
#endif
|
|
188
|
+
return result;}
|
|
189
|
+
fn decompose(value: u32)->vec4f
|
|
190
|
+
{let components : vec4f=vec4f(
|
|
191
|
+
f32((value ) & 255u),
|
|
192
|
+
f32((value>>u32( 8)) & 255u),
|
|
193
|
+
f32((value>>u32(16)) & 255u),
|
|
194
|
+
f32((value>>u32(24)) & 255u));return components*vec4f(2./255.)-vec4f(1.);}
|
|
195
|
+
#ifdef USE_SOG
|
|
196
|
+
fn computeSH(splat: Splat,dir: vec3f)->vec3f
|
|
197
|
+
{
|
|
198
|
+
#if SH_DEGREE>0
|
|
199
|
+
var sh: array<vec3<f32>,25>;sh[0]=vec3f(0.,0.,0.);let labelSize=textureDimensions(sogShNLabelsTexture,0);let idx=i32(splat.splatIndex+0.5);let lw=i32(labelSize.x);let lx=idx-(idx/lw)*lw;let ly=idx/lw;let labelRaw=textureLoad(sogShNLabelsTexture,vec2<i32>(lx,ly),0);let n=i32(labelRaw.r*255.0+0.5)+i32(labelRaw.g*255.0+0.5)*256;let coeffs=i32(uniforms.sogShCoeffCount+0.5);let u=(n-(n/64)*64)*coeffs;let v=n/64;for (var k: i32=0; k<24; k=k+1) {if (k>=coeffs) { break; }
|
|
200
|
+
let centroidRaw=textureLoad(sogShNCentroidsTexture,vec2<i32>(u+k,v),0);var shCoeff: vec3f;
|
|
201
|
+
#ifdef USE_SOG_V2
|
|
202
|
+
let rIdx=i32(centroidRaw.r*255.0+0.5);let gIdx=i32(centroidRaw.g*255.0+0.5);let bIdx=i32(centroidRaw.b*255.0+0.5);shCoeff.r=textureLoad(sogCodebookTexture,vec2<i32>(512+rIdx,0),0).r;shCoeff.g=textureLoad(sogCodebookTexture,vec2<i32>(512+gIdx,0),0).r;shCoeff.b=textureLoad(sogCodebookTexture,vec2<i32>(512+bIdx,0),0).r;
|
|
203
|
+
#else
|
|
204
|
+
shCoeff=mix(vec3f(uniforms.sogShnMin),vec3f(uniforms.sogShnMax),centroidRaw.rgb);
|
|
205
|
+
#endif
|
|
206
|
+
sh[k+1]=shCoeff;}
|
|
207
|
+
return computeColorFromSHDegree(dir,sh,1.,1.,1.,1.);
|
|
208
|
+
#else
|
|
209
|
+
return vec3f(0.,0.,0.);
|
|
210
|
+
#endif
|
|
211
|
+
}
|
|
212
|
+
#else
|
|
213
|
+
fn computeSHWeighted(splat: Splat,dir: vec3f,_so1: f32,_so2: f32,_so3: f32,_so4: f32)->vec3f
|
|
214
|
+
{var sh: array<vec3<f32>,25>;sh[0]=vec3f(0.,0.,0.);
|
|
215
|
+
#if SH_DEGREE>0
|
|
216
|
+
let sh00: vec4f=decompose(splat.sh0.x);let sh01: vec4f=decompose(splat.sh0.y);let sh02: vec4f=decompose(splat.sh0.z);sh[1]=vec3f(sh00.x,sh00.y,sh00.z);sh[2]=vec3f(sh00.w,sh01.x,sh01.y);sh[3]=vec3f(sh01.z,sh01.w,sh02.x);
|
|
217
|
+
#endif
|
|
218
|
+
#if SH_DEGREE>1
|
|
219
|
+
let sh03: vec4f=decompose(splat.sh0.w);let sh04: vec4f=decompose(splat.sh1.x);let sh05: vec4f=decompose(splat.sh1.y);sh[4]=vec3f(sh02.y,sh02.z,sh02.w);sh[5]=vec3f(sh03.x,sh03.y,sh03.z);sh[6]=vec3f(sh03.w,sh04.x,sh04.y);sh[7]=vec3f(sh04.z,sh04.w,sh05.x);sh[8]=vec3f(sh05.y,sh05.z,sh05.w);
|
|
220
|
+
#endif
|
|
221
|
+
#if SH_DEGREE>2
|
|
222
|
+
let sh06: vec4f=decompose(splat.sh1.z);let sh07: vec4f=decompose(splat.sh1.w);let sh08: vec4f=decompose(splat.sh2.x);let sh09: vec4f=decompose(splat.sh2.y);let sh10: vec4f=decompose(splat.sh2.z);let sh11: vec4f=decompose(splat.sh2.w);sh[9]=vec3f(sh06.x,sh06.y,sh06.z);sh[10]=vec3f(sh06.w,sh07.x,sh07.y);sh[11]=vec3f(sh07.z,sh07.w,sh08.x);sh[12]=vec3f(sh08.y,sh08.z,sh08.w);sh[13]=vec3f(sh09.x,sh09.y,sh09.z);sh[14]=vec3f(sh09.w,sh10.x,sh10.y);sh[15]=vec3f(sh10.z,sh10.w,sh11.x);
|
|
223
|
+
#endif
|
|
224
|
+
#if SH_DEGREE>3
|
|
225
|
+
let sh12: vec4f=decompose(splat.sh3.x);let sh13: vec4f=decompose(splat.sh3.y);let sh14: vec4f=decompose(splat.sh3.z);let sh15: vec4f=decompose(splat.sh3.w);let sh16: vec4f=decompose(splat.sh4.x);let sh17: vec4f=decompose(splat.sh4.y);sh[16]=vec3f(sh11.y,sh11.z,sh11.w);sh[17]=vec3f(sh12.x,sh12.y,sh12.z);sh[18]=vec3f(sh12.w,sh13.x,sh13.y);sh[19]=vec3f(sh13.z,sh13.w,sh14.x);sh[20]=vec3f(sh14.y,sh14.z,sh14.w);sh[21]=vec3f(sh15.x,sh15.y,sh15.z);sh[22]=vec3f(sh15.w,sh16.x,sh16.y);sh[23]=vec3f(sh16.z,sh16.w,sh17.x);sh[24]=vec3f(sh17.y,sh17.z,sh17.w);
|
|
226
|
+
#endif
|
|
227
|
+
return computeColorFromSHDegree(dir,sh,_so1,_so2,_so3,_so4);}
|
|
228
|
+
fn computeSH(splat: Splat,dir: vec3f)->vec3f
|
|
229
|
+
{
|
|
230
|
+
#if !defined(GS_DBG_ENABLED) || GS_DBG_SH_ORDER1==1
|
|
231
|
+
let _w1: f32=1.0;
|
|
232
|
+
#else
|
|
233
|
+
let _w1: f32=0.0;
|
|
234
|
+
#endif
|
|
235
|
+
#if !defined(GS_DBG_ENABLED) || GS_DBG_SH_ORDER2==1
|
|
236
|
+
let _w2: f32=1.0;
|
|
237
|
+
#else
|
|
238
|
+
let _w2: f32=0.0;
|
|
239
|
+
#endif
|
|
240
|
+
#if !defined(GS_DBG_ENABLED) || GS_DBG_SH_ORDER3==1
|
|
241
|
+
let _w3: f32=1.0;
|
|
242
|
+
#else
|
|
243
|
+
let _w3: f32=0.0;
|
|
244
|
+
#endif
|
|
245
|
+
#if !defined(GS_DBG_ENABLED) || GS_DBG_SH_ORDER4==1
|
|
246
|
+
let _w4: f32=1.0;
|
|
247
|
+
#else
|
|
248
|
+
let _w4: f32=0.0;
|
|
249
|
+
#endif
|
|
250
|
+
return computeSHWeighted(splat,dir,_w1,_w2,_w3,_w4);}
|
|
251
|
+
#endif
|
|
252
|
+
fn gaussianSplatting(
|
|
253
|
+
meshPos: vec2<f32>,
|
|
254
|
+
worldPos: vec3<f32>,
|
|
255
|
+
scale: vec2<f32>,
|
|
256
|
+
covA: vec3<f32>,
|
|
257
|
+
covB: vec3<f32>,
|
|
258
|
+
worldMatrix: mat4x4<f32>,
|
|
259
|
+
viewMatrix: mat4x4<f32>,
|
|
260
|
+
projectionMatrix: mat4x4<f32>,
|
|
261
|
+
focal: vec2f,
|
|
262
|
+
invViewport: vec2f,
|
|
263
|
+
kernelSize: f32,
|
|
264
|
+
minPixelSize: f32
|
|
265
|
+
)->vec4f {let modelView=viewMatrix*worldMatrix;let camspace=viewMatrix*vec4f(worldPos,1.0);let pos2d=projectionMatrix*camspace;let bounds=1.2*pos2d.w;if (pos2d.z<0. || pos2d.x<-bounds || pos2d.x>bounds || pos2d.y<-bounds || pos2d.y>bounds) {return vec4f(0.0,0.0,2.0,1.0);}
|
|
266
|
+
let Vrk=mat3x3<f32>(
|
|
267
|
+
covA.x,covA.y,covA.z,
|
|
268
|
+
covA.y,covB.x,covB.y,
|
|
269
|
+
covA.z,covB.y,covB.z
|
|
270
|
+
);let isOrtho=abs(projectionMatrix[3][3]-1.0)<0.001;var J: mat3x3<f32>;if (isOrtho) {J=mat3x3<f32>(
|
|
271
|
+
focal.x,0.0,0.0,
|
|
272
|
+
0.0,focal.y,0.0,
|
|
273
|
+
0.0,0.0,0.0
|
|
274
|
+
);} else {J=mat3x3<f32>(
|
|
275
|
+
focal.x/camspace.z,0.0,-(focal.x*camspace.x)/(camspace.z*camspace.z),
|
|
276
|
+
0.0,focal.y/camspace.z,-(focal.y*camspace.y)/(camspace.z*camspace.z),
|
|
277
|
+
0.0,0.0,0.0
|
|
278
|
+
);}
|
|
279
|
+
let T=transpose(mat3x3<f32>(
|
|
280
|
+
modelView[0].xyz,
|
|
281
|
+
modelView[1].xyz,
|
|
282
|
+
modelView[2].xyz))*J;var cov2d=transpose(T)*Vrk*T;
|
|
283
|
+
#if COMPENSATION
|
|
284
|
+
let c00: f32=cov2d[0][0];let c11: f32=cov2d[1][1];let c01: f32=cov2d[0][1];let detOrig: f32=c00*c11-c01*c01;
|
|
285
|
+
#endif
|
|
286
|
+
cov2d[0][0]+=kernelSize;cov2d[1][1]+=kernelSize;
|
|
287
|
+
#if COMPENSATION
|
|
288
|
+
let c2d: vec3f=vec3f(cov2d[0][0],c01,cov2d[1][1]);let detBlur: f32=c2d.x*c2d.z-c2d.y*c2d.y;let compensation: f32=sqrt(max(0.,detOrig/detBlur));vertexOutputs.vColor.w*=compensation;
|
|
289
|
+
#endif
|
|
290
|
+
let mid=(cov2d[0][0]+cov2d[1][1])/2.0;let radius=length(vec2<f32>((cov2d[0][0]-cov2d[1][1])/2.0,cov2d[0][1]));let lambda1=mid+radius;let lambda2=mid-radius;if (lambda2<0.0) {return vec4f(0.0,0.0,2.0,1.0);}
|
|
291
|
+
if (minPixelSize>0.0) {let l1=2.0*min(sqrt(2.0*lambda1),1024.0);let l2=2.0*min(sqrt(2.0*lambda2),1024.0);if (max(l1,l2)<minPixelSize) {return vec4f(0.0,0.0,2.0,1.0);}}
|
|
292
|
+
let diagonalVector=normalize(vec2<f32>(cov2d[0][1],lambda1-cov2d[0][0]));let majorAxis=min(sqrt(2.0*lambda1),1024.0)*diagonalVector;let minorAxis=min(sqrt(2.0*lambda2),1024.0)*vec2<f32>(diagonalVector.y,-diagonalVector.x);let vCenter=vec2<f32>(pos2d.x,pos2d.y);let scaleFactor=select(pos2d.w,1.0,isOrtho);return vec4f(
|
|
293
|
+
vCenter+((meshPos.x*majorAxis+meshPos.y*minorAxis)*invViewport*scaleFactor)*scale,
|
|
294
|
+
pos2d.z,
|
|
295
|
+
pos2d.w
|
|
296
|
+
);}
|
|
297
|
+
#if IS_COMPOUND
|
|
298
|
+
fn getPartWorld(partIndex: u32)->mat4x4<f32> {return uniforms.partWorld[partIndex];}
|
|
299
|
+
#endif
|
|
300
|
+
#if defined(IS_FOR_VOXELIZATION)
|
|
301
|
+
fn computeVoxelSplatWorldPos(rotationA: vec4f,rotationB: vec4f,rotationScale: vec4f,center: vec3f,splatWorld: mat4x4f,viewMatrix: mat4x4f,invWorldScale: mat4x4f,quadPos: vec2f)->vec4f {let splatRotation=mat3x3f(
|
|
302
|
+
rotationA.xyz,
|
|
303
|
+
vec3f(rotationA.w,rotationB.x,rotationB.y),
|
|
304
|
+
vec3f(rotationB.z,rotationB.w,rotationScale.x)
|
|
305
|
+
);let splatScale=rotationScale.yzw;let view3x3=mat3x3f(viewMatrix[0].xyz,viewMatrix[1].xyz,viewMatrix[2].xyz);let invWorldScale3x3=mat3x3f(invWorldScale[0].xyz,invWorldScale[1].xyz,invWorldScale[2].xyz);let splatWorld3x3=mat3x3f(splatWorld[0].xyz,splatWorld[1].xyz,splatWorld[2].xyz);let rotToView=view3x3*invWorldScale3x3*splatWorld3x3*splatRotation;let axisLengthInViewZ=abs(vec3f(rotToView[0][2],rotToView[1][2],rotToView[2][2]));let gaussianSplatCutoffStddev: f32=0.7071067812;
|
|
306
|
+
var offsetSplatSpace: vec3f;if (axisLengthInViewZ.x>axisLengthInViewZ.y && axisLengthInViewZ.x>axisLengthInViewZ.z) {offsetSplatSpace=vec3f(0.0,quadPos.x,quadPos.y)*splatScale*gaussianSplatCutoffStddev;} else if (axisLengthInViewZ.y>axisLengthInViewZ.z) {offsetSplatSpace=vec3f(quadPos.x,0.0,quadPos.y)*splatScale*gaussianSplatCutoffStddev;} else {offsetSplatSpace=vec3f(quadPos.x,quadPos.y,0.0)*splatScale*gaussianSplatCutoffStddev;}
|
|
307
|
+
let vertexObjectSpace=center+splatRotation*offsetSplatSpace;return splatWorld*vec4f(vertexObjectSpace,1.0);}
|
|
308
|
+
#endif
|
|
309
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[a]||(t.ShaderStore.IncludesShadersStoreWGSL[a]=s),e.s(["gaussianSplattingWGSL",0,{name:a,shader:s}])},51925,e=>{"use strict";var t=e.i(47150),a=e.i(97793),s=e.i(36113),o=e.i(82450);let l="gaussianSplattingVoxelVertexShader",r=`#include<sceneUboDeclaration>
|
|
310
|
+
#include<meshUboDeclaration>
|
|
311
|
+
attribute splatIndex0: vec4f;attribute splatIndex1: vec4f;attribute splatIndex2: vec4f;attribute splatIndex3: vec4f;attribute position: vec3f;uniform dataTextureSize: vec2f;uniform alpha: f32;uniform invWorldScale: mat4x4f;uniform viewMatrix: mat4x4f;
|
|
312
|
+
#if IS_COMPOUND
|
|
313
|
+
uniform partWorld: array<mat4x4<f32>,MAX_PART_COUNT>;uniform partVisibility: array<f32,MAX_PART_COUNT>;
|
|
314
|
+
#endif
|
|
315
|
+
var rotationsATexture: texture_2d<f32>;var rotationsBTexture: texture_2d<f32>;var rotationScaleTexture: texture_2d<f32>;var centersTexture: texture_2d<f32>;var colorsTexture: texture_2d<f32>;
|
|
316
|
+
#if IS_COMPOUND
|
|
317
|
+
var partIndicesTexture: texture_2d<f32>;
|
|
318
|
+
#endif
|
|
319
|
+
varying vNormalizedPosition: vec3f;varying vNormalizedCenterPosition: vec3f;varying vAlpha: f32;varying vPatchPosition: vec2f;
|
|
320
|
+
#include<gaussianSplatting>
|
|
321
|
+
@vertex
|
|
322
|
+
fn main(input: VertexInputs)->FragmentInputs {let splatIndex: f32=getSplatIndex(
|
|
323
|
+
i32(vertexInputs.position.z+0.5),
|
|
324
|
+
vertexInputs.splatIndex0,vertexInputs.splatIndex1,
|
|
325
|
+
vertexInputs.splatIndex2,vertexInputs.splatIndex3
|
|
326
|
+
);var splat: Splat=readSplat(splatIndex,uniforms.dataTextureSize);
|
|
327
|
+
#if IS_COMPOUND
|
|
328
|
+
if (uniforms.partVisibility[splat.partIndex]==0.0) {vertexOutputs.position=vec4f(2.0,2.0,2.0,1.0);return vertexOutputs;}
|
|
329
|
+
let splatWorld: mat4x4f=getPartWorld(splat.partIndex);
|
|
330
|
+
#else
|
|
331
|
+
let splatWorld: mat4x4f=mesh.world;
|
|
332
|
+
#endif
|
|
333
|
+
let quadPos: vec2f=vertexInputs.position.xy;let worldPos: vec4f=computeVoxelSplatWorldPos(splat.rotationA,splat.rotationB,splat.rotationScale,splat.center.xyz,splatWorld,uniforms.viewMatrix,uniforms.invWorldScale,quadPos);vertexOutputs.vNormalizedPosition=(uniforms.invWorldScale*worldPos).xyz*0.5+0.5;let clipPos: vec4f=uniforms.viewMatrix*uniforms.invWorldScale*worldPos;vertexOutputs.position=vec4f(clipPos.x,clipPos.y,clipPos.z*0.5+0.5,1.0);vertexOutputs.vNormalizedCenterPosition=(uniforms.invWorldScale*splatWorld*vec4f(splat.center.xyz,1.0)).xyz*0.5+0.5;vertexOutputs.vAlpha=splat.color.w*uniforms.alpha;
|
|
334
|
+
#if IS_COMPOUND
|
|
335
|
+
vertexOutputs.vAlpha*=uniforms.partVisibility[splat.partIndex];
|
|
336
|
+
#endif
|
|
337
|
+
vertexOutputs.vPatchPosition=quadPos;}
|
|
338
|
+
`;for(let e of(t.ShaderStore.ShadersStoreWGSL[l]||(t.ShaderStore.ShadersStoreWGSL[l]=r),[a.sceneUboDeclarationWGSL,s.meshUboDeclarationWGSL,o.gaussianSplattingWGSL]))t.ShaderStore.IncludesShadersStoreWGSL[e.name]||(t.ShaderStore.IncludesShadersStoreWGSL[e.name]=e.shader);e.s(["gaussianSplattingVoxelVertexShaderWGSL",0,{name:l,shader:r}])}]);
|