@uptimizr/dashboard 0.4.6 → 0.4.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/out/404.html +1 -1
- package/out/__next.__PAGE__.txt +19 -5
- package/out/__next._full.txt +10 -10
- package/out/__next._tree.txt +1 -1
- package/out/_next/static/chunks/{3cp5nmtwxq4gr.js → 0-6mdj5wxsfid.js} +1 -1
- package/out/_next/static/chunks/{2clevl_9ayd0x.js → 0-qthfqvm1jyj.js} +1 -1
- package/out/_next/static/chunks/01viyuclp2gm9.js +1 -0
- package/out/_next/static/chunks/02aym4t2hgo5c.js +1 -0
- package/out/_next/static/chunks/{1fervgvgv10r-.js → 02ic9b5ejugow.js} +1 -1
- package/out/_next/static/chunks/03p70i4c7qt0v.js +1 -0
- package/out/_next/static/chunks/{3zv5kyos9vtmm.js → 03pjr-ivdicng.js} +1 -1
- package/out/_next/static/chunks/041a06-lxipy5.js +1 -0
- package/out/_next/static/chunks/{3-yhe6rcsjh88.js → 06dzkwetqis-5.js} +1 -1
- package/out/_next/static/chunks/{2mjjo0yj-4ro4.js → 06kvanz5-fo52.js} +1 -1
- package/out/_next/static/chunks/{28i3wgvgn_at1.js → 07y8ke_iy59dn.js} +1 -1
- package/out/_next/static/chunks/09jukc-4jl735.js +1 -0
- package/out/_next/static/chunks/{0cmyc-uvk93kl.js → 09khmdgez3t0a.js} +74 -74
- package/out/_next/static/chunks/{2x-7kbwq8tl-o.js → 0_dca4876jshu.js} +196 -196
- package/out/_next/static/chunks/0axcgnl5qzr6e.js +1 -0
- package/out/_next/static/chunks/0ay4fjomijs3n.js +1 -0
- package/out/_next/static/chunks/0c7fy79wlccat.js +1 -0
- package/out/_next/static/chunks/0cqe4-l3imct3.js +1 -0
- package/out/_next/static/chunks/0cssvelju788j.js +1 -0
- package/out/_next/static/chunks/{2-_a-v1xeo5hb.js → 0ctain5xq2wsd.js} +116 -115
- package/out/_next/static/chunks/{3yk0hzfq5rcs6.js → 0df-dr3otg_4w.js} +1 -1
- package/out/_next/static/chunks/{0i9wa8hjd-5tc.js → 0endw997j7ao9.js} +1 -1
- package/out/_next/static/chunks/0ev_pbit1v_qg.js +1 -0
- package/out/_next/static/chunks/0eyw9oiwipywb.js +1 -0
- package/out/_next/static/chunks/0fkzbuo1tex4u.js +1 -0
- package/out/_next/static/chunks/0govas0u0t4w3.js +1 -0
- package/out/_next/static/chunks/{287hakn2ijupp.js → 0guzhnususp3-.js} +2 -2
- package/out/_next/static/chunks/0h7bq_ysu17q7.js +3 -0
- package/out/_next/static/chunks/0hneh_3xzlo28.js +1 -0
- package/out/_next/static/chunks/0iaqwme19z_0s.js +1 -0
- package/out/_next/static/chunks/0ibmar10xndpn.js +1 -0
- package/out/_next/static/chunks/0ii8mqoteppgh.js +11 -0
- package/out/_next/static/chunks/{3ioxfi3bvznhh.js → 0ip6v64di_l6x.js} +1 -1
- package/out/_next/static/chunks/{184pz6z3dflfm.js → 0ixymgjgz3grn.js} +20 -20
- package/out/_next/static/chunks/0kuah8g7lt5ox.js +1 -0
- package/out/_next/static/chunks/0l3k4j19vxm17.js +1 -0
- package/out/_next/static/chunks/0l6hg0ohwh9-m.js +1 -0
- package/out/_next/static/chunks/0m4um4ylhlfan.js +1 -0
- package/out/_next/static/chunks/0mj837d4h0ddq.js +1 -0
- package/out/_next/static/chunks/0nyn-f4905o91.js +1 -0
- package/out/_next/static/chunks/0og6i9rsgkuif.js +1 -0
- package/out/_next/static/chunks/0os1x-fxzgnxs.js +1 -0
- package/out/_next/static/chunks/0otnra7mp0hog.js +1 -0
- package/out/_next/static/chunks/{3p03l0z65c8vc.js → 0oyf2xzv8ofkk.js} +253 -253
- package/out/_next/static/chunks/0qvsy3gcqjm12.js +1 -0
- package/out/_next/static/chunks/{0yd4_xh476fjn.js → 0rl4ddh2vgxyl.js} +97 -97
- package/out/_next/static/chunks/0rwpttmsmqvn_.js +1 -0
- package/out/_next/static/chunks/0so3wjp9ch93y.js +1 -0
- package/out/_next/static/chunks/{36pz_ews7u0xb.js → 0te4g160_rb5d.js} +1 -1
- package/out/_next/static/chunks/0uby-zvu799ef.js +1 -0
- package/out/_next/static/chunks/{2kk_vvmr2xm3d.js → 0uvn0op2mlr2u.js} +12 -12
- package/out/_next/static/chunks/0vwj4hxjm0igv.js +1 -0
- package/out/_next/static/chunks/{0r-x702_jvhud.js → 0w7c30w07uct2.js} +12 -12
- package/out/_next/static/chunks/0wm38z3u2133a.js +1 -0
- package/out/_next/static/chunks/0y7yk5al7_p8q.js +4 -0
- package/out/_next/static/chunks/0ycr0gi6fn6bt.js +1 -0
- package/out/_next/static/chunks/0ywvahq9t0tki.js +1 -0
- package/out/_next/static/chunks/0zh6nslagkby-.js +1 -0
- package/out/_next/static/chunks/{3twr9ds68-9us.js → 0zo8xa0nej3ex.js} +1 -1
- package/out/_next/static/chunks/{1lu7rjfvxj8yj.js → 0zsir95gpf3xw.js} +1 -1
- package/out/_next/static/chunks/{1j4c0nvdo5q68.js → 0zu6ryyj0ig-j.js} +1 -1
- package/out/_next/static/chunks/{1bv-jzy_2jiqs.js → 1-jv8k10q_1uw.js} +1 -1
- package/out/_next/static/chunks/{0xx7_7y5jdlh4.js → 1-s5ioie9a94e.js} +1 -1
- package/out/_next/static/chunks/{27z7j17kcrty_.js → 1-yos1h0qws5e.js} +11 -11
- package/out/_next/static/chunks/10o7brc3x027r.js +1 -0
- package/out/_next/static/chunks/{2xe4bgir5l-9b.js → 10pae4gb9i929.js} +504 -504
- package/out/_next/static/chunks/13p93itm8a3ym.js +1 -0
- package/out/_next/static/chunks/{2mrkv0z2i74pv.js → 147s8i_lktp4_.js} +2 -2
- package/out/_next/static/chunks/{3nwaovnpiyrt8.js → 14tgo5xt_3j4w.js} +3 -3
- package/out/_next/static/chunks/1699hx-vlak0n.js +22 -0
- package/out/_next/static/chunks/{2b5nt7yn-pq3a.js → 16d6n9e77rqti.js} +1 -1
- package/out/_next/static/chunks/{3nr48h9zwum-3.js → 16f3d5dv83rsr.js} +1 -1
- package/out/_next/static/chunks/16i_tpwn_cmr-.js +1 -0
- package/out/_next/static/chunks/{2117sv2qzo6yq.js → 16rfr165nbha0.js} +1 -1
- package/out/_next/static/chunks/16sl51pvzo4tf.js +1 -0
- package/out/_next/static/chunks/1760s-32qpwgg.js +1 -0
- package/out/_next/static/chunks/{3rj-5v0j_2-_2.js → 18kq07c5xy_4g.js} +4 -4
- package/out/_next/static/chunks/{2wgh5i70bzelt.js → 190tbzt861ao3.js} +392 -392
- package/out/_next/static/chunks/19bhv6cupnnyj.js +1 -0
- package/out/_next/static/chunks/1_14pn2wwebxy.js +1 -0
- package/out/_next/static/chunks/{2_lw4d7t-xcqi.js → 1_kikmeubh0wq.js} +523 -522
- package/out/_next/static/chunks/1ay3z6agelsvz.js +1 -0
- package/out/_next/static/chunks/1b-fi3bfmpe31.js +1 -0
- package/out/_next/static/chunks/1bae3tqv53x9_.js +1 -0
- package/out/_next/static/chunks/{2s4fzgzkwjluu.js → 1bf421g4peccx.js} +2 -2
- package/out/_next/static/chunks/1bfony5qsc5tp.js +1 -0
- package/out/_next/static/chunks/{3vtmucpx25o7q.js → 1ddt0ot7kl8vq.js} +584 -584
- package/out/_next/static/chunks/1emz2vjkgck4z.js +1 -0
- package/out/_next/static/chunks/1eogzzw8i1wsg.js +1 -0
- package/out/_next/static/chunks/1g9p2h1-31q8o.js +1 -0
- package/out/_next/static/chunks/1gcz1k1v1woca.js +1 -0
- package/out/_next/static/chunks/1h8lyicgqhpxa.js +1 -0
- package/out/_next/static/chunks/{0e5dcxmkprebg.js → 1hot663akaepl.js} +1 -1
- package/out/_next/static/chunks/1i7pgl3ks5ye0.js +1 -0
- package/out/_next/static/chunks/{0xzamrecplwzw.js → 1i8sk_qgpdjhs.js} +1 -1
- package/out/_next/static/chunks/1kk3ct7pkpf3b.js +1 -0
- package/out/_next/static/chunks/1kq9o8del67le.js +1 -0
- package/out/_next/static/chunks/1l7tzyx2mumlq.js +1 -0
- package/out/_next/static/chunks/1n_uwed9o--go.js +1 -0
- package/out/_next/static/chunks/1o351eldttogn.js +1 -0
- package/out/_next/static/chunks/{1f07l3q77zat1.js → 1ogs4_aj84bfn.js} +1 -1
- package/out/_next/static/chunks/{3_dm45k0vk1aa.js → 1p206txlluipi.js} +565 -565
- package/out/_next/static/chunks/1p2bt1w845v6c.js +1 -0
- package/out/_next/static/chunks/1p3rgz4aef1gk.js +1 -0
- package/out/_next/static/chunks/{0ypejzd74ixbw.js → 1qcgdx9yl0gfx.js} +15 -15
- package/out/_next/static/chunks/1ql3mm2w5r-m8.js +1 -0
- package/out/_next/static/chunks/1qvcyuyshi3ll.js +53 -0
- package/out/_next/static/chunks/1r0yyg5a_0knc.js +1 -0
- package/out/_next/static/chunks/{374lzksboll-t.js → 1sa6qiidtcyk2.js} +1 -1
- package/out/_next/static/chunks/1t-9vrdrsi8le.js +1 -0
- package/out/_next/static/chunks/1t97zo0tlpbnz.js +1 -0
- package/out/_next/static/chunks/1te2tinzqnwck.js +1 -0
- package/out/_next/static/chunks/{3j3ol_d1vsdhx.js → 1trt-m2nrck0v.js} +1 -1
- package/out/_next/static/chunks/{3vu5y270muh-7.js → 1ty9jpwr3o_st.js} +1 -1
- package/out/_next/static/chunks/{415g3asdds1ac.js → 1u6w6veke8rze.js} +1 -1
- package/out/_next/static/chunks/{0-laj-bivzp4x.js → 1u900urmrbv73.js} +1 -1
- package/out/_next/static/chunks/{0o73w0cn5n_vl.js → 1vz2gd8k74lpi.js} +1 -1
- package/out/_next/static/chunks/1wkpl9bfb0wn7.js +1 -0
- package/out/_next/static/chunks/1wrly9a9c3teq.js +1 -0
- package/out/_next/static/chunks/1x0m05155yy4e.js +1 -0
- package/out/_next/static/chunks/{1my968s78he8g.js → 1xf1wfow43ekc.js} +15 -15
- package/out/_next/static/chunks/1y10o40v9odam.js +1 -0
- package/out/_next/static/chunks/{3_gfl66zf638s.js → 1y_zykt3fpen4.js} +901 -906
- package/out/_next/static/chunks/1ye6xtbm16pg4.js +1 -0
- package/out/_next/static/chunks/1z6_57k5h31u7.js +1 -0
- package/out/_next/static/chunks/1zboqft0h6mop.js +1 -0
- package/out/_next/static/chunks/1zr3c351x0ri5.js +1 -0
- package/out/_next/static/chunks/2-5p2lcedvrli.js +1 -0
- package/out/_next/static/chunks/{1_4hh3dfop93j.js → 206hxrq60f1_e.js} +1 -1
- package/out/_next/static/chunks/20r05k3-studj.js +1 -0
- package/out/_next/static/chunks/22gs24kj2du56.js +1 -0
- package/out/_next/static/chunks/22x5pd1gyp7sf.js +1 -0
- package/out/_next/static/chunks/{3qo7e6b73mfxq.js → 22z-2t_yp1jzs.js} +1 -1
- package/out/_next/static/chunks/{3d43gd91r06y6.js → 23hmfdw6z5zfy.js} +507 -505
- package/out/_next/static/chunks/23y1krqnc-8sm.js +1 -0
- package/out/_next/static/chunks/{0gk5rnci1hznh.js → 24tbkj1qkux88.js} +2 -2
- package/out/_next/static/chunks/{2-i29-jdbwww6.js → 26cmri51v7497.js} +111 -111
- package/out/_next/static/chunks/27jalbk9zu-2b.js +1 -0
- package/out/_next/static/chunks/285d2s9096ryc.js +1 -0
- package/out/_next/static/chunks/296ykep2nvppv.js +1 -0
- package/out/_next/static/chunks/29nehg5cal-ug.js +1 -0
- package/out/_next/static/chunks/2_a56_k3x7to6.js +1 -0
- package/out/_next/static/chunks/2a-0l6eb1blh3.js +4 -0
- package/out/_next/static/chunks/{2oacwtbslo90t.js → 2a31-txop1jzg.js} +360 -360
- package/out/_next/static/chunks/2bse5vll1o-x0.js +1 -0
- package/out/_next/static/chunks/2ct40spu9wfj7.js +1 -0
- package/out/_next/static/chunks/{2epukrz6paj9n.js → 2ept01b7t-e03.js} +1 -1
- package/out/_next/static/chunks/{22yht3s7c-xih.js → 2ey5dqelco_g5.js} +1 -1
- package/out/_next/static/chunks/2fd_009hw7y0m.js +1 -0
- package/out/_next/static/chunks/{2fspbfbxbswzd.js → 2ftz9kaxrsgxh.js} +1 -1
- package/out/_next/static/chunks/2gefdnozflr7p.js +1 -0
- package/out/_next/static/chunks/{2as_br1awqk6k.js → 2gs-u1n5uv7iz.js} +496 -496
- package/out/_next/static/chunks/{1a94whad0y57f.js → 2hizqql79u-54.js} +1 -1
- package/out/_next/static/chunks/2iqf2dpdg_vfl.js +1 -0
- package/out/_next/static/chunks/2j7z127s_ycjd.js +1 -0
- package/out/_next/static/chunks/2kax7uslfxdnx.js +31 -0
- package/out/_next/static/chunks/{2laz1v9fg2a2z.js → 2lh_w9rzy3vek.js} +1 -1
- package/out/_next/static/chunks/{3mmy9zsb7zo-m.js → 2ln1na26qwp-3.js} +23 -23
- package/out/_next/static/chunks/2n08l1q5o_27e.js +1 -0
- package/out/_next/static/chunks/2n7268gyd9z-6.js +1 -0
- package/out/_next/static/chunks/2nq9cgjmtqwvp.js +1 -0
- package/out/_next/static/chunks/{25brs445bjbik.js → 2oj8qc_pv14nk.js} +2 -2
- package/out/_next/static/chunks/2q24e72-olbe8.js +1 -0
- package/out/_next/static/chunks/2qc4hscs26cro.js +1 -0
- package/out/_next/static/chunks/2qe46redkqhfg.js +1 -0
- package/out/_next/static/chunks/2qmfe0mqw150h.js +1 -0
- package/out/_next/static/chunks/2qtc0nbl_521e.js +1 -0
- package/out/_next/static/chunks/2rofu6gu1xzuq.js +1 -0
- package/out/_next/static/chunks/2tdi94rkq739i.js +1 -0
- package/out/_next/static/chunks/2u_2sacqa9xa7.js +1 -0
- package/out/_next/static/chunks/2ujqz6088shm5.js +1 -0
- package/out/_next/static/chunks/{3my05px5mv_s5.js → 2urh9qafp3fiw.js} +235 -235
- package/out/_next/static/chunks/{23-y1f_zw56vo.js → 2v06n4z8wsmn9.js} +1 -1
- package/out/_next/static/chunks/2vp-5skbk1nfu.js +1 -0
- package/out/_next/static/chunks/2vu973j_n6cpx.js +1 -0
- package/out/_next/static/chunks/2wwra56rehfcj.js +1 -0
- package/out/_next/static/chunks/2xpwr97h2asal.js +1 -0
- package/out/_next/static/chunks/3000-0b8n9t_2.js +1 -0
- package/out/_next/static/chunks/{0q0i4pdyq66gb.js → 30t3203d7p2da.js} +1 -1
- package/out/_next/static/chunks/{3t4ys6th6gf2w.js → 31kto7-dxkt3z.js} +1 -1
- package/out/_next/static/chunks/{0j0a0wvmmghxj.js → 32oflcl79d8mu.js} +1 -1
- package/out/_next/static/chunks/32ovg81ae0l03.js +1 -0
- package/out/_next/static/chunks/{2c8rmxz151fxa.js → 331kthnvoma7n.js} +224 -224
- package/out/_next/static/chunks/337kn1mn34rc6.js +1 -0
- package/out/_next/static/chunks/{336ckqpboqmbn.js → 33xug8kf0-a1o.js} +1 -1
- package/out/_next/static/chunks/34dcb7_flbrvo.js +1 -0
- package/out/_next/static/chunks/34zotyeqrz_nq.js +1 -0
- package/out/_next/static/chunks/351wsmi75l8db.js +1 -0
- package/out/_next/static/chunks/36yv-ialtpx98.js +1 -0
- package/out/_next/static/chunks/37hwasxtee5e0.js +1 -0
- package/out/_next/static/chunks/37t0iclgxes05.js +1 -0
- package/out/_next/static/chunks/{1x0j78ohufpul.js → 37xnvnx1jxfaf.js} +1 -1
- package/out/_next/static/chunks/{29hkkj9raxte9.js → 38w74ixqt-9co.js} +77 -77
- package/out/_next/static/chunks/{0jap7l5-bskj4.js → 39t2x_9zd2rst.js} +12 -12
- package/out/_next/static/chunks/{38q0enmlg5q9o.js → 39v73timmzwny.js} +2 -2
- package/out/_next/static/chunks/{3puu2_-t0lln9.js → 3_xqc3658d8sw.js} +12 -12
- package/out/_next/static/chunks/3ba8eudvlczwe.js +1 -0
- package/out/_next/static/chunks/3buezhxqc8n6n.js +1 -0
- package/out/_next/static/chunks/3c5iwwj-fhbue.js +1 -0
- package/out/_next/static/chunks/{2kmmk9coo9_b0.js → 3d8ot2tw6yqfq.js} +143 -143
- package/out/_next/static/chunks/3dc057ffe7ij-.js +1 -0
- package/out/_next/static/chunks/3djnlzwj9869o.js +1 -0
- package/out/_next/static/chunks/{2_6b9lraq-exh.js → 3fuqxjjf8o1v9.js} +5 -5
- package/out/_next/static/chunks/{0j2ygtc_-bo3m.js → 3gt6rzg9qw-an.js} +1 -1
- package/out/_next/static/chunks/{0rykrf_vofbad.js → 3h_05w5j8x538.js} +1 -1
- package/out/_next/static/chunks/{3txu-i5qn183a.js → 3hkhd1_k8xohv.js} +321 -321
- package/out/_next/static/chunks/{2h07np207nlx7.js → 3ijcc5tfisfnj.js} +1 -1
- package/out/_next/static/chunks/3j0dbpd9zop3p.js +1 -0
- package/out/_next/static/chunks/{14e4k-718qadd.js → 3ju83xk-ca7ma.js} +163 -168
- package/out/_next/static/chunks/3jxhl4apmhbm1.js +13 -0
- package/out/_next/static/chunks/{1h1gixjbjkbsl.js → 3la99oz_0p0r6.js} +5 -5
- package/out/_next/static/chunks/{1mt4cnd_d6jvf.js → 3n1b34fd5fdrh.js} +1 -1
- package/out/_next/static/chunks/3nq_hq4x3rn3r.js +1 -0
- package/out/_next/static/chunks/3pgb1kkqrdl9t.js +1 -0
- package/out/_next/static/chunks/3pik_-jj-zkfl.js +1 -0
- package/out/_next/static/chunks/{1zmx71cvc6ksk.js → 3q38kdbzd2nbd.js} +1 -1
- package/out/_next/static/chunks/3q5zl4ks17au2.js +1 -0
- package/out/_next/static/chunks/{1t2g1v0ubcsam.js → 3qr10445lte-n.js} +1 -1
- package/out/_next/static/chunks/3r-8bnguvxsyo.js +1 -0
- package/out/_next/static/chunks/3sg56j8boe-3o.js +1 -0
- package/out/_next/static/chunks/3u7zj1-jdg781.js +1 -0
- package/out/_next/static/chunks/{0o0qtv35dqv3i.js → 3wj5dmf6cywz8.js} +239 -239
- package/out/_next/static/chunks/{2iu0_3cx-ny74.js → 3wr_oijfsq8lr.js} +11 -11
- package/out/_next/static/chunks/3xu0dh1ikzwj2.js +1 -0
- package/out/_next/static/chunks/{0vzo-8t8c26k9.js → 3y5tpixt23-fl.js} +1 -1
- package/out/_next/static/chunks/40gjf-_jt8upu.js +5 -0
- package/out/_next/static/chunks/41f12o_5lf-i9.js +1 -0
- package/out/_next/static/chunks/42ma8lqduohlc.js +1 -0
- package/out/_next/static/chunks/43usshq2nc125.js +1 -0
- package/out/_next/static/chunks/{161yjxmdz9obc.js → 44bl4ufopbmyh.js} +1 -1
- package/out/_next/static/chunks/44iutzkw9r21x.js +1 -0
- package/out/_next/static/chunks/turbopack-1xrxa3noq196-.js +1 -0
- package/out/_not-found/__next._full.txt +11 -11
- package/out/_not-found/__next._not-found.__PAGE__.txt +19 -2
- package/out/_not-found/__next._tree.txt +1 -1
- package/out/_not-found.html +1 -1
- package/out/_not-found.txt +11 -11
- package/out/index.html +1 -1
- package/out/index.txt +10 -10
- package/package.json +11 -11
- package/out/__next._head.txt +0 -6
- package/out/__next._index.txt +0 -5
- package/out/_next/static/chunks/0-k4hp87gwues.js +0 -1
- package/out/_next/static/chunks/04zj0yf1qhk1o.js +0 -1
- package/out/_next/static/chunks/06fbalmyyfpsy.js +0 -1
- package/out/_next/static/chunks/07hgbbqksqd1g.js +0 -1
- package/out/_next/static/chunks/08ou2nvy48e0u.js +0 -1
- package/out/_next/static/chunks/08y5-irjbsiy8.js +0 -1
- package/out/_next/static/chunks/0_jrfk2u1u3fi.js +0 -1
- package/out/_next/static/chunks/0a475u_q5i_dd.js +0 -62
- package/out/_next/static/chunks/0aad2r4s4wl1x.js +0 -5
- package/out/_next/static/chunks/0d9pxx1w_zqr9.js +0 -1
- package/out/_next/static/chunks/0gnjtwq-474uc.js +0 -1
- package/out/_next/static/chunks/0gsh_d0m5xss1.js +0 -1
- package/out/_next/static/chunks/0ibzpjo0h731v.js +0 -1
- package/out/_next/static/chunks/0j_3k5qhv_mdx.js +0 -1
- package/out/_next/static/chunks/0jis2w2mfx062.js +0 -1
- package/out/_next/static/chunks/0jjvp2slpf7d6.js +0 -1
- package/out/_next/static/chunks/0ko10wo4rc9-b.js +0 -1
- package/out/_next/static/chunks/0lqmvz6k2h_of.js +0 -1
- package/out/_next/static/chunks/0lwjmr8efrlbt.js +0 -17
- package/out/_next/static/chunks/0noxyupihh8dk.js +0 -1
- package/out/_next/static/chunks/0o1vph7x9shzu.js +0 -1
- package/out/_next/static/chunks/0p6phe9kjlxn8.js +0 -1
- package/out/_next/static/chunks/0ptxb9dcwsw3o.js +0 -1
- package/out/_next/static/chunks/0q8pt8fd0ma30.js +0 -1
- package/out/_next/static/chunks/0qqx9aoz8l5d2.js +0 -1
- package/out/_next/static/chunks/0tsk32q-88t_7.js +0 -1
- package/out/_next/static/chunks/0u7577db_ivyr.js +0 -1
- package/out/_next/static/chunks/0unnrt0un064x.js +0 -1
- package/out/_next/static/chunks/0uygtr4mo3h0v.js +0 -1
- package/out/_next/static/chunks/0vf3facit951s.js +0 -1
- package/out/_next/static/chunks/0xyija62b6txc.js +0 -1
- package/out/_next/static/chunks/0zeb37703zcz3.js +0 -1
- package/out/_next/static/chunks/0zu5ato7-1-q9.js +0 -1
- package/out/_next/static/chunks/0zydv7y47dxgh.js +0 -1
- package/out/_next/static/chunks/103x4jwovb6d-.js +0 -1
- package/out/_next/static/chunks/107wfq84g9-kn.js +0 -1
- package/out/_next/static/chunks/10afagk8yn__n.js +0 -1
- package/out/_next/static/chunks/12ory_c78yl31.js +0 -1
- package/out/_next/static/chunks/133dqp8_7_yo6.js +0 -1
- package/out/_next/static/chunks/1365lgwdd4vuo.js +0 -1
- package/out/_next/static/chunks/146ou-ohb_qhs.js +0 -1
- package/out/_next/static/chunks/14orr68xgdykd.js +0 -1
- package/out/_next/static/chunks/15qfoj-vl9thu.js +0 -1
- package/out/_next/static/chunks/166yqx3_qvbpy.js +0 -1
- package/out/_next/static/chunks/16gwjao676ieb.js +0 -1
- package/out/_next/static/chunks/16rmmzhy2p7bw.js +0 -1
- package/out/_next/static/chunks/17_jjyx4jz9dd.js +0 -1
- package/out/_next/static/chunks/18h9ugdz6igdb.js +0 -1
- package/out/_next/static/chunks/19d8n5t7ka2fb.js +0 -1
- package/out/_next/static/chunks/1_rbzw3n4fk0g.js +0 -1
- package/out/_next/static/chunks/1aa9g197l4twm.js +0 -1
- package/out/_next/static/chunks/1bq0fcnt1wy86.js +0 -1
- package/out/_next/static/chunks/1c6mho7e0enta.js +0 -1
- package/out/_next/static/chunks/1dfaheve77dhi.js +0 -1
- package/out/_next/static/chunks/1dgf112ehnhm1.js +0 -1
- package/out/_next/static/chunks/1eirucr9s6-h5.js +0 -1
- package/out/_next/static/chunks/1fsof7un7igrn.js +0 -1
- package/out/_next/static/chunks/1gvu5a6ffbs7l.js +0 -1
- package/out/_next/static/chunks/1iel4pzhhh-c3.js +0 -1
- package/out/_next/static/chunks/1iojfx3-g4_n9.js +0 -1
- package/out/_next/static/chunks/1j4jt5q7px8sy.js +0 -1
- package/out/_next/static/chunks/1jjw9hxgi2vzi.js +0 -1
- package/out/_next/static/chunks/1k_8olnprvi8r.js +0 -1
- package/out/_next/static/chunks/1l0rt7d4m-xdk.js +0 -5
- package/out/_next/static/chunks/1s0dpdqy480hg.js +0 -1
- package/out/_next/static/chunks/1t-yolk97lmot.js +0 -12
- package/out/_next/static/chunks/1tbes2sv-qzcx.js +0 -1
- package/out/_next/static/chunks/1upy8a5cb75kt.js +0 -1
- package/out/_next/static/chunks/1xed71f608m4b.js +0 -1
- package/out/_next/static/chunks/1z790xxb46gxy.js +0 -1
- package/out/_next/static/chunks/219n3q-_eengm.js +0 -1
- package/out/_next/static/chunks/21wo3vdr_uby8.js +0 -1
- package/out/_next/static/chunks/25gep78-izw79.js +0 -4
- package/out/_next/static/chunks/26i7dn31afdtm.js +0 -1
- package/out/_next/static/chunks/27hbplu797elx.js +0 -1
- package/out/_next/static/chunks/2992eiy52nazj.js +0 -1
- package/out/_next/static/chunks/29_n5j-hg_gsa.js +0 -1
- package/out/_next/static/chunks/29bxq-67oazfg.js +0 -1
- package/out/_next/static/chunks/29ings58w7kp1.js +0 -1
- package/out/_next/static/chunks/2_n0cpkdsjzli.js +0 -1
- package/out/_next/static/chunks/2a3iy701j4r_y.js +0 -1
- package/out/_next/static/chunks/2al9dh3_1ixhv.js +0 -1
- package/out/_next/static/chunks/2awr1c_vfsutb.js +0 -1
- package/out/_next/static/chunks/2bxe3kjr17tdp.js +0 -1
- package/out/_next/static/chunks/2dvbzar93ooc-.js +0 -1
- package/out/_next/static/chunks/2e-vp0e11g9ew.js +0 -1
- package/out/_next/static/chunks/2exj9-0p6n9x-.js +0 -1
- package/out/_next/static/chunks/2gf8l6hbmt7v3.js +0 -1
- package/out/_next/static/chunks/2h9i_adbqaxs4.js +0 -1
- package/out/_next/static/chunks/2jio3sio-_43z.js +0 -1
- package/out/_next/static/chunks/2neieeo9g2u56.js +0 -1
- package/out/_next/static/chunks/2pb_uosb-aa8x.js +0 -1
- package/out/_next/static/chunks/2qu-gpm3ux1l6.js +0 -1
- package/out/_next/static/chunks/2rsi6v7qmqx2b.js +0 -1
- package/out/_next/static/chunks/2tdvuc-27khif.js +0 -1
- package/out/_next/static/chunks/2trolrgd7neax.js +0 -1
- package/out/_next/static/chunks/2uyuafmoe5wi0.js +0 -3
- package/out/_next/static/chunks/2w2e0pxgs-n8f.js +0 -1
- package/out/_next/static/chunks/2xujlsx3stqig.js +0 -1
- package/out/_next/static/chunks/30y71dxdpv52d.js +0 -1
- package/out/_next/static/chunks/32c-e_v8_2xkf.js +0 -1
- package/out/_next/static/chunks/32oj0iudhp8bm.js +0 -1
- package/out/_next/static/chunks/33p9du6y9eegg.js +0 -1
- package/out/_next/static/chunks/38om-j0h0rryk.js +0 -1
- package/out/_next/static/chunks/39cou9lia_g7l.js +0 -1
- package/out/_next/static/chunks/39pkya0_bvcaj.js +0 -1
- package/out/_next/static/chunks/39rhmj_32ujyj.js +0 -1
- package/out/_next/static/chunks/3_1zzmx92j9c0.js +0 -1
- package/out/_next/static/chunks/3_earszshuz4n.js +0 -1
- package/out/_next/static/chunks/3ap_uxc8lx7ni.js +0 -1
- package/out/_next/static/chunks/3b6na8zrex8jo.js +0 -1
- package/out/_next/static/chunks/3c0cxt72vilyz.js +0 -1
- package/out/_next/static/chunks/3g78x0pdaoi_4.js +0 -1
- package/out/_next/static/chunks/3gjvl1p-tugfe.js +0 -4
- package/out/_next/static/chunks/3i8iro1gas1vx.js +0 -1
- package/out/_next/static/chunks/3kpqfqr99vo7z.js +0 -1
- package/out/_next/static/chunks/3lladf_wemm-2.js +0 -1
- package/out/_next/static/chunks/3n62hbywoknop.js +0 -1
- package/out/_next/static/chunks/3o_dmzpahx-5g.js +0 -1
- package/out/_next/static/chunks/3r7v7un976sn7.js +0 -1
- package/out/_next/static/chunks/3rl_nhqwew40w.js +0 -1
- package/out/_next/static/chunks/3s7hqij6xp_4e.js +0 -1
- package/out/_next/static/chunks/3si3migsmvz9o.js +0 -1
- package/out/_next/static/chunks/3uarw1i1ij1er.js +0 -1
- package/out/_next/static/chunks/3un-w6wutw1qn.js +0 -1
- package/out/_next/static/chunks/3v8kgnjk27wbe.js +0 -1
- package/out/_next/static/chunks/3we1khqfexh3x.js +0 -1
- package/out/_next/static/chunks/3z35loj4i-id4.js +0 -1
- package/out/_next/static/chunks/42lqt7ig40wk5.js +0 -1
- package/out/_next/static/chunks/42s6ghsurq5q7.js +0 -1
- package/out/_next/static/chunks/42yctcfi2rfwr.js +0 -1
- package/out/_next/static/chunks/43_fau1gg69eo.js +0 -1
- package/out/_next/static/chunks/43ywrdzg_7af8.js +0 -31
- package/out/_next/static/chunks/44m1ijc5cv80x.js +0 -1
- package/out/_next/static/chunks/453_bg0lgesmp.js +0 -1
- package/out/_next/static/chunks/turbopack-1s36ieuku1ds3.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/{5UjNvd7WCk97iC2cSmEGH → 4r0L0ZMJeBwOJCVDsvvZ4}/_buildManifest.js +0 -0
- /package/out/_next/static/{5UjNvd7WCk97iC2cSmEGH → 4r0L0ZMJeBwOJCVDsvvZ4}/_clientMiddlewareManifest.js +0 -0
- /package/out/_next/static/{5UjNvd7WCk97iC2cSmEGH → 4r0L0ZMJeBwOJCVDsvvZ4}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,239 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,93765,99043,82826,25797,94882,80820,e=>{"use strict";var t=e.i(25044);let r="bonesDeclaration",i=`#if NUM_BONE_INFLUENCERS>0
|
|
2
|
+
#ifndef USE_VERTEX_PULLING
|
|
3
|
+
attribute matricesIndices : vec4f;attribute matricesWeights : vec4f;
|
|
4
|
+
#if NUM_BONE_INFLUENCERS>4
|
|
5
|
+
attribute matricesIndicesExtra : vec4f;attribute matricesWeightsExtra : vec4f;
|
|
6
|
+
#endif
|
|
7
|
+
#endif
|
|
8
|
+
#ifndef BAKED_VERTEX_ANIMATION_TEXTURE
|
|
9
|
+
#ifdef BONETEXTURE
|
|
10
|
+
var boneSampler : texture_2d<f32>;uniform boneTextureInfo : vec2f;
|
|
11
|
+
#else
|
|
12
|
+
uniform mBones : array<mat4x4f,BonesPerMesh>;
|
|
13
|
+
#endif
|
|
14
|
+
#ifdef BONES_VELOCITY_ENABLED
|
|
15
|
+
uniform mPreviousBones : array<mat4x4f,BonesPerMesh>;
|
|
16
|
+
#endif
|
|
17
|
+
#ifdef BONETEXTURE
|
|
18
|
+
fn readMatrixFromRawSampler(smp : texture_2d<f32>,index : f32)->mat4x4f
|
|
19
|
+
{let offset=i32(index)*4;
|
|
20
|
+
let textureWidth=i32(uniforms.boneTextureInfo.x);let y=offset/textureWidth;let x=offset % textureWidth;let m0=textureLoad(smp,vec2<i32>(x+0,y),0);let m1=textureLoad(smp,vec2<i32>(x+1,y),0);let m2=textureLoad(smp,vec2<i32>(x+2,y),0);let m3=textureLoad(smp,vec2<i32>(x+3,y),0);return mat4x4f(m0,m1,m2,m3);}
|
|
21
|
+
#endif
|
|
22
|
+
#endif
|
|
23
|
+
#endif
|
|
24
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["bonesDeclarationWGSL",0,{name:r,shader:i}],93765);let n="bakedVertexAnimationDeclaration",a=`#ifdef BAKED_VERTEX_ANIMATION_TEXTURE
|
|
25
|
+
uniform bakedVertexAnimationTime: f32;uniform bakedVertexAnimationSettings: vec4<f32>;var bakedVertexAnimationTexture : texture_2d<f32>;
|
|
26
|
+
#ifdef INSTANCES
|
|
27
|
+
attribute bakedVertexAnimationSettingsInstanced : vec4<f32>;
|
|
28
|
+
#endif
|
|
29
|
+
fn readMatrixFromRawSamplerVAT(smp : texture_2d<f32>,index : f32,frame : f32)->mat4x4<f32>
|
|
30
|
+
{let offset=i32(index)*4;let frameUV=i32(frame);let m0=textureLoad(smp,vec2<i32>(offset+0,frameUV),0);let m1=textureLoad(smp,vec2<i32>(offset+1,frameUV),0);let m2=textureLoad(smp,vec2<i32>(offset+2,frameUV),0);let m3=textureLoad(smp,vec2<i32>(offset+3,frameUV),0);return mat4x4<f32>(m0,m1,m2,m3);}
|
|
31
|
+
#endif
|
|
32
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[n]||(t.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["bakedVertexAnimationDeclarationWGSL",0,{name:n,shader:a}],99043);let f="instancesDeclaration",o=`#ifdef INSTANCES
|
|
33
|
+
attribute world0 : vec4<f32>;attribute world1 : vec4<f32>;attribute world2 : vec4<f32>;attribute world3 : vec4<f32>;
|
|
34
|
+
#ifdef INSTANCESCOLOR
|
|
35
|
+
attribute instanceColor : vec4<f32>;
|
|
36
|
+
#endif
|
|
37
|
+
#if defined(THIN_INSTANCES) && !defined(WORLD_UBO)
|
|
38
|
+
uniform world : mat4x4<f32>;
|
|
39
|
+
#endif
|
|
40
|
+
#if defined(VELOCITY) || defined(PREPASS_VELOCITY) || defined(PREPASS_VELOCITY_LINEAR) || defined(VELOCITY_LINEAR)
|
|
41
|
+
attribute previousWorld0 : vec4<f32>;attribute previousWorld1 : vec4<f32>;attribute previousWorld2 : vec4<f32>;attribute previousWorld3 : vec4<f32>;
|
|
42
|
+
#ifdef THIN_INSTANCES
|
|
43
|
+
uniform previousWorld : mat4x4<f32>;
|
|
44
|
+
#endif
|
|
45
|
+
#endif
|
|
46
|
+
#else
|
|
47
|
+
#if !defined(WORLD_UBO)
|
|
48
|
+
uniform world : mat4x4<f32>;
|
|
49
|
+
#endif
|
|
50
|
+
#if defined(VELOCITY) || defined(PREPASS_VELOCITY) || defined(PREPASS_VELOCITY_LINEAR) || defined(VELOCITY_LINEAR)
|
|
51
|
+
uniform previousWorld : mat4x4<f32>;
|
|
52
|
+
#endif
|
|
53
|
+
#endif
|
|
54
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[f]||(t.ShaderStore.IncludesShadersStoreWGSL[f]=o),e.s(["instancesDeclarationWGSL",0,{name:f,shader:o}],82826);let d="instancesVertex",s=`#ifdef INSTANCES
|
|
55
|
+
var finalWorld=mat4x4<f32>(vertexInputs.world0,vertexInputs.world1,vertexInputs.world2,vertexInputs.world3);
|
|
56
|
+
#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || defined(PREPASS_VELOCITY_LINEAR) || defined(VELOCITY_LINEAR)
|
|
57
|
+
var finalPreviousWorld=mat4x4<f32>(
|
|
58
|
+
vertexInputs.previousWorld0,vertexInputs.previousWorld1,
|
|
59
|
+
vertexInputs.previousWorld2,vertexInputs.previousWorld3);
|
|
60
|
+
#endif
|
|
61
|
+
#ifdef THIN_INSTANCES
|
|
62
|
+
#if !defined(WORLD_UBO)
|
|
63
|
+
finalWorld=uniforms.world*finalWorld;
|
|
64
|
+
#else
|
|
65
|
+
finalWorld=mesh.world*finalWorld;
|
|
66
|
+
#endif
|
|
67
|
+
#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || defined(PREPASS_VELOCITY_LINEAR) || defined(VELOCITY_LINEAR)
|
|
68
|
+
finalPreviousWorld=uniforms.previousWorld*finalPreviousWorld;
|
|
69
|
+
#endif
|
|
70
|
+
#endif
|
|
71
|
+
#else
|
|
72
|
+
#if !defined(WORLD_UBO)
|
|
73
|
+
var finalWorld=uniforms.world;
|
|
74
|
+
#else
|
|
75
|
+
var finalWorld=mesh.world;
|
|
76
|
+
#endif
|
|
77
|
+
#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || defined(PREPASS_VELOCITY_LINEAR) || defined(VELOCITY_LINEAR)
|
|
78
|
+
var finalPreviousWorld=uniforms.previousWorld;
|
|
79
|
+
#endif
|
|
80
|
+
#endif
|
|
81
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[d]||(t.ShaderStore.IncludesShadersStoreWGSL[d]=s),e.s(["instancesVertexWGSL",0,{name:d,shader:s}],25797);let c="bonesVertex",l=`#ifndef BAKED_VERTEX_ANIMATION_TEXTURE
|
|
82
|
+
#if NUM_BONE_INFLUENCERS>0
|
|
83
|
+
var influence : mat4x4<f32>;
|
|
84
|
+
#ifdef BONETEXTURE
|
|
85
|
+
influence=readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndices[0])*vertexInputs.matricesWeights[0];
|
|
86
|
+
#if NUM_BONE_INFLUENCERS>1
|
|
87
|
+
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndices[1])*vertexInputs.matricesWeights[1];
|
|
88
|
+
#endif
|
|
89
|
+
#if NUM_BONE_INFLUENCERS>2
|
|
90
|
+
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndices[2])*vertexInputs.matricesWeights[2];
|
|
91
|
+
#endif
|
|
92
|
+
#if NUM_BONE_INFLUENCERS>3
|
|
93
|
+
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndices[3])*vertexInputs.matricesWeights[3];
|
|
94
|
+
#endif
|
|
95
|
+
#if NUM_BONE_INFLUENCERS>4
|
|
96
|
+
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndicesExtra[0])*vertexInputs.matricesWeightsExtra[0];
|
|
97
|
+
#endif
|
|
98
|
+
#if NUM_BONE_INFLUENCERS>5
|
|
99
|
+
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndicesExtra[1])*vertexInputs.matricesWeightsExtra[1];
|
|
100
|
+
#endif
|
|
101
|
+
#if NUM_BONE_INFLUENCERS>6
|
|
102
|
+
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndicesExtra[2])*vertexInputs.matricesWeightsExtra[2];
|
|
103
|
+
#endif
|
|
104
|
+
#if NUM_BONE_INFLUENCERS>7
|
|
105
|
+
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndicesExtra[3])*vertexInputs.matricesWeightsExtra[3];
|
|
106
|
+
#endif
|
|
107
|
+
#else
|
|
108
|
+
influence=uniforms.mBones[i32(vertexInputs.matricesIndices[0])]*vertexInputs.matricesWeights[0];
|
|
109
|
+
#if NUM_BONE_INFLUENCERS>1
|
|
110
|
+
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndices[1])]*vertexInputs.matricesWeights[1];
|
|
111
|
+
#endif
|
|
112
|
+
#if NUM_BONE_INFLUENCERS>2
|
|
113
|
+
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndices[2])]*vertexInputs.matricesWeights[2];
|
|
114
|
+
#endif
|
|
115
|
+
#if NUM_BONE_INFLUENCERS>3
|
|
116
|
+
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndices[3])]*vertexInputs.matricesWeights[3];
|
|
117
|
+
#endif
|
|
118
|
+
#if NUM_BONE_INFLUENCERS>4
|
|
119
|
+
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndicesExtra[0])]*vertexInputs.matricesWeightsExtra[0];
|
|
120
|
+
#endif
|
|
121
|
+
#if NUM_BONE_INFLUENCERS>5
|
|
122
|
+
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndicesExtra[1])]*vertexInputs.matricesWeightsExtra[1];
|
|
123
|
+
#endif
|
|
124
|
+
#if NUM_BONE_INFLUENCERS>6
|
|
125
|
+
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndicesExtra[2])]*vertexInputs.matricesWeightsExtra[2];
|
|
126
|
+
#endif
|
|
127
|
+
#if NUM_BONE_INFLUENCERS>7
|
|
128
|
+
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndicesExtra[3])]*vertexInputs.matricesWeightsExtra[3];
|
|
129
|
+
#endif
|
|
130
|
+
#endif
|
|
131
|
+
finalWorld=finalWorld*influence;
|
|
132
|
+
#endif
|
|
133
|
+
#endif
|
|
134
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[c]||(t.ShaderStore.IncludesShadersStoreWGSL[c]=l),e.s(["bonesVertexWGSL",0,{name:c,shader:l}],94882);let v="bakedVertexAnimation",u=`#ifdef BAKED_VERTEX_ANIMATION_TEXTURE
|
|
135
|
+
{
|
|
136
|
+
#ifdef INSTANCES
|
|
137
|
+
let VATStartFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.x;let VATEndFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.y;let VATOffsetFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.z;let VATSpeed: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.w;
|
|
138
|
+
#else
|
|
139
|
+
let VATStartFrame: f32=uniforms.bakedVertexAnimationSettings.x;let VATEndFrame: f32=uniforms.bakedVertexAnimationSettings.y;let VATOffsetFrame: f32=uniforms.bakedVertexAnimationSettings.z;let VATSpeed: f32=uniforms.bakedVertexAnimationSettings.w;
|
|
140
|
+
#endif
|
|
141
|
+
let totalFrames: f32=VATEndFrame-VATStartFrame+1.0;let time: f32=uniforms.bakedVertexAnimationTime*VATSpeed/totalFrames;let frameCorrection: f32=select(1.0,0.0,time<1.0);let numOfFrames: f32=totalFrames-frameCorrection;var VATFrameNum: f32=fract(time)*numOfFrames;VATFrameNum=(VATFrameNum+VATOffsetFrame) % numOfFrames;VATFrameNum=floor(VATFrameNum);VATFrameNum=VATFrameNum+VATStartFrame+frameCorrection;var VATInfluence : mat4x4<f32>;VATInfluence=readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[0],VATFrameNum)*vertexInputs.matricesWeights[0];
|
|
142
|
+
#if NUM_BONE_INFLUENCERS>1
|
|
143
|
+
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[1],VATFrameNum)*vertexInputs.matricesWeights[1];
|
|
144
|
+
#endif
|
|
145
|
+
#if NUM_BONE_INFLUENCERS>2
|
|
146
|
+
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[2],VATFrameNum)*vertexInputs.matricesWeights[2];
|
|
147
|
+
#endif
|
|
148
|
+
#if NUM_BONE_INFLUENCERS>3
|
|
149
|
+
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[3],VATFrameNum)*vertexInputs.matricesWeights[3];
|
|
150
|
+
#endif
|
|
151
|
+
#if NUM_BONE_INFLUENCERS>4
|
|
152
|
+
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[0],VATFrameNum)*vertexInputs.matricesWeightsExtra[0];
|
|
153
|
+
#endif
|
|
154
|
+
#if NUM_BONE_INFLUENCERS>5
|
|
155
|
+
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[1],VATFrameNum)*vertexInputs.matricesWeightsExtra[1];
|
|
156
|
+
#endif
|
|
157
|
+
#if NUM_BONE_INFLUENCERS>6
|
|
158
|
+
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[2],VATFrameNum)*vertexInputs.matricesWeightsExtra[2];
|
|
159
|
+
#endif
|
|
160
|
+
#if NUM_BONE_INFLUENCERS>7
|
|
161
|
+
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[3],VATFrameNum)*vertexInputs.matricesWeightsExtra[3];
|
|
162
|
+
#endif
|
|
163
|
+
finalWorld=finalWorld*VATInfluence;}
|
|
164
|
+
#endif
|
|
165
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[v]||(t.ShaderStore.IncludesShadersStoreWGSL[v]=u),e.s(["bakedVertexAnimationWGSL",0,{name:v,shader:u}],80820)},19820,e=>{"use strict";var t=e.i(25044);let r="bumpVertex",i=`#if defined(BUMP) || defined(PARALLAX) || defined(CLEARCOAT_BUMP) || defined(ANISOTROPIC)
|
|
166
|
+
#if defined(TANGENT) && defined(NORMAL)
|
|
167
|
+
var tbnNormal: vec3f=normalize(normalUpdated);var tbnTangent: vec3f=normalize(tangentUpdated.xyz);var tbnBitangent: vec3f=cross(tbnNormal,tbnTangent)*tangentUpdated.w;var matTemp= mat3x3f(finalWorld[0].xyz,finalWorld[1].xyz,finalWorld[2].xyz)* mat3x3f(tbnTangent,tbnBitangent,tbnNormal);vertexOutputs.vTBN0=matTemp[0];vertexOutputs.vTBN1=matTemp[1];vertexOutputs.vTBN2=matTemp[2];
|
|
168
|
+
#endif
|
|
169
|
+
#endif
|
|
170
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["bumpVertexWGSL",0,{name:r,shader:i}])},1580,e=>{"use strict";var t=e.i(25044);let r="bumpVertexDeclaration",i=`#if defined(BUMP) || defined(PARALLAX) || defined(CLEARCOAT_BUMP) || defined(ANISOTROPIC)
|
|
171
|
+
#if defined(TANGENT) && defined(NORMAL)
|
|
172
|
+
varying vTBN0: vec3f;varying vTBN1: vec3f;varying vTBN2: vec3f;
|
|
173
|
+
#endif
|
|
174
|
+
#endif
|
|
175
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["bumpVertexDeclarationWGSL",0,{name:r,shader:i}])},67667,15345,e=>{"use strict";var t=e.i(25044);let r="clipPlaneVertexDeclaration",i=`#ifdef CLIPPLANE
|
|
176
|
+
uniform vClipPlane: vec4<f32>;varying fClipDistance: f32;
|
|
177
|
+
#endif
|
|
178
|
+
#ifdef CLIPPLANE2
|
|
179
|
+
uniform vClipPlane2: vec4<f32>;varying fClipDistance2: f32;
|
|
180
|
+
#endif
|
|
181
|
+
#ifdef CLIPPLANE3
|
|
182
|
+
uniform vClipPlane3: vec4<f32>;varying fClipDistance3: f32;
|
|
183
|
+
#endif
|
|
184
|
+
#ifdef CLIPPLANE4
|
|
185
|
+
uniform vClipPlane4: vec4<f32>;varying fClipDistance4: f32;
|
|
186
|
+
#endif
|
|
187
|
+
#ifdef CLIPPLANE5
|
|
188
|
+
uniform vClipPlane5: vec4<f32>;varying fClipDistance5: f32;
|
|
189
|
+
#endif
|
|
190
|
+
#ifdef CLIPPLANE6
|
|
191
|
+
uniform vClipPlane6: vec4<f32>;varying fClipDistance6: f32;
|
|
192
|
+
#endif
|
|
193
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["clipPlaneVertexDeclarationWGSL",0,{name:r,shader:i}],67667);let n="clipPlaneVertex",a=`#ifdef CLIPPLANE
|
|
194
|
+
vertexOutputs.fClipDistance=dot(worldPos,uniforms.vClipPlane);
|
|
195
|
+
#endif
|
|
196
|
+
#ifdef CLIPPLANE2
|
|
197
|
+
vertexOutputs.fClipDistance2=dot(worldPos,uniforms.vClipPlane2);
|
|
198
|
+
#endif
|
|
199
|
+
#ifdef CLIPPLANE3
|
|
200
|
+
vertexOutputs.fClipDistance3=dot(worldPos,uniforms.vClipPlane3);
|
|
201
|
+
#endif
|
|
202
|
+
#ifdef CLIPPLANE4
|
|
203
|
+
vertexOutputs.fClipDistance4=dot(worldPos,uniforms.vClipPlane4);
|
|
204
|
+
#endif
|
|
205
|
+
#ifdef CLIPPLANE5
|
|
206
|
+
vertexOutputs.fClipDistance5=dot(worldPos,uniforms.vClipPlane5);
|
|
207
|
+
#endif
|
|
208
|
+
#ifdef CLIPPLANE6
|
|
209
|
+
vertexOutputs.fClipDistance6=dot(worldPos,uniforms.vClipPlane6);
|
|
210
|
+
#endif
|
|
211
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[n]||(t.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["clipPlaneVertexWGSL",0,{name:n,shader:a}],15345)},3828,45320,e=>{"use strict";var t=e.i(25044);let r="fogVertexDeclaration",i=`#ifdef FOG
|
|
212
|
+
varying vFogDistance: vec3f;
|
|
213
|
+
#endif
|
|
214
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["fogVertexDeclarationWGSL",0,{name:r,shader:i}],3828);let n="fogVertex",a=`#ifdef FOG
|
|
215
|
+
#ifdef SCENE_UBO
|
|
216
|
+
vertexOutputs.vFogDistance=(scene.view*worldPos).xyz;
|
|
217
|
+
#else
|
|
218
|
+
vertexOutputs.vFogDistance=(uniforms.view*worldPos).xyz;
|
|
219
|
+
#endif
|
|
220
|
+
#endif
|
|
221
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[n]||(t.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["fogVertexWGSL",0,{name:n,shader:a}],45320)},96528,e=>{"use strict";var t=e.i(25044);let r="harmonicsFunctions",i=`#ifdef USESPHERICALFROMREFLECTIONMAP
|
|
222
|
+
#ifdef SPHERICAL_HARMONICS
|
|
223
|
+
fn computeEnvironmentIrradiance(normal: vec3f)->vec3f {return uniforms.vSphericalL00
|
|
224
|
+
+ uniforms.vSphericalL1_1*(normal.y)
|
|
225
|
+
+ uniforms.vSphericalL10*(normal.z)
|
|
226
|
+
+ uniforms.vSphericalL11*(normal.x)
|
|
227
|
+
+ uniforms.vSphericalL2_2*(normal.y*normal.x)
|
|
228
|
+
+ uniforms.vSphericalL2_1*(normal.y*normal.z)
|
|
229
|
+
+ uniforms.vSphericalL20*((3.0*normal.z*normal.z)-1.0)
|
|
230
|
+
+ uniforms.vSphericalL21*(normal.z*normal.x)
|
|
231
|
+
+ uniforms.vSphericalL22*(normal.x*normal.x-(normal.y*normal.y));}
|
|
232
|
+
#else
|
|
233
|
+
fn computeEnvironmentIrradiance(normal: vec3f)->vec3f {var Nx: f32=normal.x;var Ny: f32=normal.y;var Nz: f32=normal.z;var C1: vec3f=uniforms.vSphericalZZ.rgb;var Cx: vec3f=uniforms.vSphericalX.rgb;var Cy: vec3f=uniforms.vSphericalY.rgb;var Cz: vec3f=uniforms.vSphericalZ.rgb;var Cxx_zz: vec3f=uniforms.vSphericalXX_ZZ.rgb;var Cyy_zz: vec3f=uniforms.vSphericalYY_ZZ.rgb;var Cxy: vec3f=uniforms.vSphericalXY.rgb;var Cyz: vec3f=uniforms.vSphericalYZ.rgb;var Czx: vec3f=uniforms.vSphericalZX.rgb;var a1: vec3f=Cyy_zz*Ny+Cy;var a2: vec3f=Cyz*Nz+a1;var b1: vec3f=Czx*Nz+Cx;var b2: vec3f=Cxy*Ny+b1;var b3: vec3f=Cxx_zz*Nx+b2;var t1: vec3f=Cz *Nz+C1;var t2: vec3f=a2 *Ny+t1;var t3: vec3f=b3 *Nx+t2;return t3;}
|
|
234
|
+
#endif
|
|
235
|
+
#endif
|
|
236
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["harmonicsFunctionsWGSL",0,{name:r,shader:i}])},65503,e=>{"use strict";var t=e.i(25044);let r="helperFunctions",i=`const PI: f32=3.1415926535897932384626433832795;const TWO_PI: f32=6.283185307179586;const HALF_PI: f32=1.5707963267948966;const RECIPROCAL_PI: f32=0.3183098861837907;const RECIPROCAL_PI2: f32=0.15915494309189535;const RECIPROCAL_PI4: f32=0.07957747154594767;const HALF_MIN: f32=5.96046448e-08;
|
|
2
237
|
const LinearEncodePowerApprox: f32=2.2;const GammaEncodePowerApprox: f32=1.0/LinearEncodePowerApprox;const LuminanceEncodeApprox: vec3f=vec3f(0.2126,0.7152,0.0722);const Epsilon:f32=0.0000001;fn square(x: f32)->f32 {return x*x;}
|
|
3
238
|
fn saturate(x: f32)->f32 {return clamp(x,0.0,1.0);}
|
|
4
239
|
fn saturateVec3(x: vec3f)->vec3f {return clamp(x,vec3f(),vec3f(1.0));}
|
|
@@ -84,41 +319,170 @@ fn max3(v: vec3f)->f32 {return max(v.x,max(v.y,v.z));}
|
|
|
84
319
|
fn uint2float(i: u32)->f32 {return bitcast<f32>(0x3F800000u | (i>>9u))-1.0;}
|
|
85
320
|
fn plasticSequence(rstate: u32)->vec2f {return vec2f(uint2float(rstate*3242174889u),
|
|
86
321
|
uint2float(rstate*2447445414u));}
|
|
87
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["helperFunctionsWGSL",0,{name:r,shader:i}])},
|
|
322
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["helperFunctionsWGSL",0,{name:r,shader:i}])},69288,e=>{"use strict";var t=e.i(25044);let r="logDepthDeclaration",i=`#ifdef LOGARITHMICDEPTH
|
|
88
323
|
uniform logarithmicDepthConstant: f32;varying vFragmentDepth: f32;
|
|
89
324
|
#endif
|
|
90
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["logDepthDeclarationWGSL",0,{name:r,shader:i}])},
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
inverseProjection : mat4x4<f32>,};
|
|
98
|
-
#define SCENE_UBO
|
|
99
|
-
var<uniform> scene : Scene;
|
|
100
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["sceneUboDeclarationWGSL",0,{name:r,shader:i}])},36113,e=>{"use strict";var t=e.i(47150);let r="meshUboDeclaration",i=`struct Mesh {world : mat4x4<f32>,
|
|
325
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["logDepthDeclarationWGSL",0,{name:r,shader:i}])},78507,e=>{"use strict";var t=e.i(25044);let r="logDepthVertex",i=`#ifdef LOGARITHMICDEPTH
|
|
326
|
+
vertexOutputs.vFragmentDepth=1.0+vertexOutputs.position.w;vertexOutputs.position.z=log2(max(0.000001,vertexOutputs.vFragmentDepth))*uniforms.logarithmicDepthConstant;
|
|
327
|
+
#endif
|
|
328
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["logDepthVertexWGSL",0,{name:r,shader:i}])},48585,e=>{"use strict";var t=e.i(25044);let r="mainUVVaryingDeclaration",i=`#ifdef MAINUV{X}
|
|
329
|
+
varying vMainUV{X}: vec2f;
|
|
330
|
+
#endif
|
|
331
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["mainUVVaryingDeclarationWGSL",0,{name:r,shader:i}])},95057,e=>{"use strict";var t=e.i(25044);let r="meshUboDeclaration",i=`struct Mesh {world : mat4x4<f32>,
|
|
101
332
|
visibility : f32,};var<uniform> mesh : Mesh;
|
|
102
333
|
#define WORLD_UBO
|
|
103
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["meshUboDeclarationWGSL",0,{name:r,shader:i}])},
|
|
104
|
-
|
|
334
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["meshUboDeclarationWGSL",0,{name:r,shader:i}])},99145,16068,17840,81683,e=>{"use strict";var t=e.i(25044);let r="morphTargetsVertexGlobalDeclaration",i=`#ifdef MORPHTARGETS
|
|
335
|
+
uniform morphTargetInfluences : array<f32,NUM_MORPH_INFLUENCERS>;
|
|
336
|
+
#ifdef MORPHTARGETS_TEXTURE
|
|
337
|
+
uniform morphTargetTextureIndices : array<f32,NUM_MORPH_INFLUENCERS>;uniform morphTargetTextureInfo : vec3<f32>;var morphTargets : texture_2d_array<f32>;fn readVector3FromRawSampler(targetIndex : i32,vertexIndex : f32)->vec3<f32>
|
|
338
|
+
{
|
|
339
|
+
let textureWidth: i32=i32(uniforms.morphTargetTextureInfo.y);let y: i32=i32(vertexIndex)/textureWidth;let x: i32=i32(vertexIndex) % textureWidth;return textureLoad(morphTargets,vec2i(x,y),i32(uniforms.morphTargetTextureIndices[targetIndex]),0).xyz;}
|
|
340
|
+
fn readVector4FromRawSampler(targetIndex : i32,vertexIndex : f32)->vec4<f32>
|
|
341
|
+
{
|
|
342
|
+
let textureWidth: i32=i32(uniforms.morphTargetTextureInfo.y);
|
|
343
|
+
let y: i32=i32(vertexIndex)/textureWidth;let x: i32=i32(vertexIndex) % textureWidth;return textureLoad(morphTargets,vec2i(x,y),i32(uniforms.morphTargetTextureIndices[targetIndex]),0);}
|
|
105
344
|
#endif
|
|
106
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["mainUVVaryingDeclarationWGSL",0,{name:r,shader:i}])},54058,e=>{"use strict";var t=e.i(47150);let r="harmonicsFunctions",i=`#ifdef USESPHERICALFROMREFLECTIONMAP
|
|
107
|
-
#ifdef SPHERICAL_HARMONICS
|
|
108
|
-
fn computeEnvironmentIrradiance(normal: vec3f)->vec3f {return uniforms.vSphericalL00
|
|
109
|
-
+ uniforms.vSphericalL1_1*(normal.y)
|
|
110
|
-
+ uniforms.vSphericalL10*(normal.z)
|
|
111
|
-
+ uniforms.vSphericalL11*(normal.x)
|
|
112
|
-
+ uniforms.vSphericalL2_2*(normal.y*normal.x)
|
|
113
|
-
+ uniforms.vSphericalL2_1*(normal.y*normal.z)
|
|
114
|
-
+ uniforms.vSphericalL20*((3.0*normal.z*normal.z)-1.0)
|
|
115
|
-
+ uniforms.vSphericalL21*(normal.z*normal.x)
|
|
116
|
-
+ uniforms.vSphericalL22*(normal.x*normal.x-(normal.y*normal.y));}
|
|
117
|
-
#else
|
|
118
|
-
fn computeEnvironmentIrradiance(normal: vec3f)->vec3f {var Nx: f32=normal.x;var Ny: f32=normal.y;var Nz: f32=normal.z;var C1: vec3f=uniforms.vSphericalZZ.rgb;var Cx: vec3f=uniforms.vSphericalX.rgb;var Cy: vec3f=uniforms.vSphericalY.rgb;var Cz: vec3f=uniforms.vSphericalZ.rgb;var Cxx_zz: vec3f=uniforms.vSphericalXX_ZZ.rgb;var Cyy_zz: vec3f=uniforms.vSphericalYY_ZZ.rgb;var Cxy: vec3f=uniforms.vSphericalXY.rgb;var Cyz: vec3f=uniforms.vSphericalYZ.rgb;var Czx: vec3f=uniforms.vSphericalZX.rgb;var a1: vec3f=Cyy_zz*Ny+Cy;var a2: vec3f=Cyz*Nz+a1;var b1: vec3f=Czx*Nz+Cx;var b2: vec3f=Cxy*Ny+b1;var b3: vec3f=Cxx_zz*Nx+b2;var t1: vec3f=Cz *Nz+C1;var t2: vec3f=a2 *Ny+t1;var t3: vec3f=b3 *Nx+t2;return t3;}
|
|
119
345
|
#endif
|
|
346
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["morphTargetsVertexGlobalDeclarationWGSL",0,{name:r,shader:i}],99145);let n="morphTargetsVertexDeclaration",a=`#ifdef MORPHTARGETS
|
|
347
|
+
#ifndef MORPHTARGETS_TEXTURE
|
|
348
|
+
#ifdef MORPHTARGETS_POSITION
|
|
349
|
+
attribute position{X} : vec3<f32>;
|
|
350
|
+
#endif
|
|
351
|
+
#ifdef MORPHTARGETS_NORMAL
|
|
352
|
+
attribute normal{X} : vec3<f32>;
|
|
353
|
+
#endif
|
|
354
|
+
#ifdef MORPHTARGETS_TANGENT
|
|
355
|
+
attribute tangent{X} : vec3<f32>;
|
|
356
|
+
#endif
|
|
357
|
+
#ifdef MORPHTARGETS_UV
|
|
358
|
+
attribute uv_{X} : vec2<f32>;
|
|
359
|
+
#endif
|
|
360
|
+
#ifdef MORPHTARGETS_UV2
|
|
361
|
+
attribute uv2_{X} : vec2<f32>;
|
|
362
|
+
#endif
|
|
363
|
+
#ifdef MORPHTARGETS_COLOR
|
|
364
|
+
attribute color{X} : vec4<f32>;
|
|
365
|
+
#endif
|
|
366
|
+
#elif {X}==0
|
|
367
|
+
uniform morphTargetCount: f32;
|
|
368
|
+
#endif
|
|
369
|
+
#endif
|
|
370
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[n]||(t.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["morphTargetsVertexDeclarationWGSL",0,{name:n,shader:a}],16068);let f="morphTargetsVertexGlobal",o=`#ifdef MORPHTARGETS
|
|
371
|
+
#ifdef MORPHTARGETS_TEXTURE
|
|
372
|
+
var vertexID : f32;
|
|
373
|
+
#endif
|
|
374
|
+
#endif
|
|
375
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[f]||(t.ShaderStore.IncludesShadersStoreWGSL[f]=o),e.s(["morphTargetsVertexGlobalWGSL",0,{name:f,shader:o}],17840);let d="morphTargetsVertex",s=`#ifdef MORPHTARGETS
|
|
376
|
+
#ifdef MORPHTARGETS_TEXTURE
|
|
377
|
+
#if {X}==0
|
|
378
|
+
for (var i=0; i<NUM_MORPH_INFLUENCERS; i=i+1) {if (f32(i)>=uniforms.morphTargetCount) {break;}
|
|
379
|
+
#ifdef USE_VERTEX_PULLING
|
|
380
|
+
vertexID=f32(vpVertexIndex)*uniforms.morphTargetTextureInfo.x;
|
|
381
|
+
#else
|
|
382
|
+
vertexID=f32(vertexInputs.vertexIndex)*uniforms.morphTargetTextureInfo.x;
|
|
383
|
+
#endif
|
|
384
|
+
#ifdef MORPHTARGETS_POSITION
|
|
385
|
+
#ifdef USE_VERTEX_PULLING
|
|
386
|
+
positionUpdated=positionUpdated+(readVector3FromRawSampler(i,vertexID)-vp_basePosition)*uniforms.morphTargetInfluences[i];
|
|
387
|
+
#else
|
|
388
|
+
positionUpdated=positionUpdated+(readVector3FromRawSampler(i,vertexID)-vertexInputs.position)*uniforms.morphTargetInfluences[i];
|
|
389
|
+
#endif
|
|
390
|
+
#endif
|
|
391
|
+
#ifdef MORPHTARGETTEXTURE_HASPOSITIONS
|
|
392
|
+
vertexID=vertexID+1.0;
|
|
393
|
+
#endif
|
|
394
|
+
#ifdef MORPHTARGETS_NORMAL
|
|
395
|
+
#ifdef USE_VERTEX_PULLING
|
|
396
|
+
normalUpdated=normalUpdated+(readVector3FromRawSampler(i,vertexID) -vp_baseNormal)*uniforms.morphTargetInfluences[i];
|
|
397
|
+
#else
|
|
398
|
+
normalUpdated=normalUpdated+(readVector3FromRawSampler(i,vertexID) -vertexInputs.normal)*uniforms.morphTargetInfluences[i];
|
|
399
|
+
#endif
|
|
400
|
+
#endif
|
|
401
|
+
#ifdef MORPHTARGETTEXTURE_HASNORMALS
|
|
402
|
+
vertexID=vertexID+1.0;
|
|
403
|
+
#endif
|
|
404
|
+
#ifdef MORPHTARGETS_UV
|
|
405
|
+
#ifdef USE_VERTEX_PULLING
|
|
406
|
+
uvUpdated=uvUpdated+(readVector3FromRawSampler(i,vertexID).xy-vp_baseUV)*uniforms.morphTargetInfluences[i];
|
|
407
|
+
#else
|
|
408
|
+
uvUpdated=uvUpdated+(readVector3FromRawSampler(i,vertexID).xy-vertexInputs.uv)*uniforms.morphTargetInfluences[i];
|
|
409
|
+
#endif
|
|
410
|
+
#endif
|
|
411
|
+
#ifdef MORPHTARGETTEXTURE_HASUVS
|
|
412
|
+
vertexID=vertexID+1.0;
|
|
413
|
+
#endif
|
|
414
|
+
#ifdef MORPHTARGETS_TANGENT
|
|
415
|
+
#ifdef USE_VERTEX_PULLING
|
|
416
|
+
tangentUpdated=vec4f(tangentUpdated.xyz+(readVector3FromRawSampler(i,vertexID) -vp_baseTangent.xyz)*uniforms.morphTargetInfluences[i],tangentUpdated.a);
|
|
417
|
+
#else
|
|
418
|
+
tangentUpdated=vec4f(tangentUpdated.xyz+(readVector3FromRawSampler(i,vertexID) -vertexInputs.tangent.xyz)*uniforms.morphTargetInfluences[i],tangentUpdated.a);
|
|
120
419
|
#endif
|
|
121
|
-
|
|
420
|
+
#endif
|
|
421
|
+
#ifdef MORPHTARGETTEXTURE_HASTANGENTS
|
|
422
|
+
vertexID=vertexID+1.0;
|
|
423
|
+
#endif
|
|
424
|
+
#ifdef MORPHTARGETS_UV2
|
|
425
|
+
#ifdef USE_VERTEX_PULLING
|
|
426
|
+
uv2Updated=uv2Updated+(readVector3FromRawSampler(i,vertexID).xy-vp_baseUV2)*uniforms.morphTargetInfluences[i];
|
|
427
|
+
#else
|
|
428
|
+
uv2Updated=uv2Updated+(readVector3FromRawSampler(i,vertexID).xy-vertexInputs.uv2)*uniforms.morphTargetInfluences[i];
|
|
429
|
+
#endif
|
|
430
|
+
#endif
|
|
431
|
+
#ifdef MORPHTARGETS_COLOR
|
|
432
|
+
#ifdef USE_VERTEX_PULLING
|
|
433
|
+
colorUpdated=colorUpdated+(readVector4FromRawSampler(i,vertexID)-vp_baseColor)*uniforms.morphTargetInfluences[i];
|
|
434
|
+
#else
|
|
435
|
+
colorUpdated=colorUpdated+(readVector4FromRawSampler(i,vertexID)-vertexInputs.color)*uniforms.morphTargetInfluences[i];
|
|
436
|
+
#endif
|
|
437
|
+
#endif
|
|
438
|
+
}
|
|
439
|
+
#endif
|
|
440
|
+
#else
|
|
441
|
+
#ifdef MORPHTARGETS_POSITION
|
|
442
|
+
#ifdef USE_VERTEX_PULLING
|
|
443
|
+
positionUpdated=positionUpdated+(vertexInputs.position{X}-vp_basePosition)*uniforms.morphTargetInfluences[{X}];
|
|
444
|
+
#else
|
|
445
|
+
positionUpdated=positionUpdated+(vertexInputs.position{X}-vertexInputs.position)*uniforms.morphTargetInfluences[{X}];
|
|
446
|
+
#endif
|
|
447
|
+
#endif
|
|
448
|
+
#ifdef MORPHTARGETS_NORMAL
|
|
449
|
+
#ifdef USE_VERTEX_PULLING
|
|
450
|
+
normalUpdated=normalUpdated+(vertexInputs.normal{X}-vp_baseNormal)*uniforms.morphTargetInfluences[{X}];
|
|
451
|
+
#else
|
|
452
|
+
normalUpdated=normalUpdated+(vertexInputs.normal{X}-vertexInputs.normal)*uniforms.morphTargetInfluences[{X}];
|
|
453
|
+
#endif
|
|
454
|
+
#endif
|
|
455
|
+
#ifdef MORPHTARGETS_TANGENT
|
|
456
|
+
#ifdef USE_VERTEX_PULLING
|
|
457
|
+
tangentUpdated=vec4f(tangentUpdated.xyz+(vertexInputs.tangent{X}-vp_baseTangent.xyz)*uniforms.morphTargetInfluences[{X}],tangentUpdated.a);
|
|
458
|
+
#else
|
|
459
|
+
tangentUpdated=vec4f(tangentUpdated.xyz+(vertexInputs.tangent{X}-vertexInputs.tangent.xyz)*uniforms.morphTargetInfluences[{X}],tangentUpdated.a);
|
|
460
|
+
#endif
|
|
461
|
+
#endif
|
|
462
|
+
#ifdef MORPHTARGETS_UV
|
|
463
|
+
#ifdef USE_VERTEX_PULLING
|
|
464
|
+
uvUpdated=uvUpdated+(vertexInputs.uv_{X}-vp_baseUV)*uniforms.morphTargetInfluences[{X}];
|
|
465
|
+
#else
|
|
466
|
+
uvUpdated=uvUpdated+(vertexInputs.uv_{X}-vertexInputs.uv)*uniforms.morphTargetInfluences[{X}];
|
|
467
|
+
#endif
|
|
468
|
+
#endif
|
|
469
|
+
#ifdef MORPHTARGETS_UV2
|
|
470
|
+
#ifdef USE_VERTEX_PULLING
|
|
471
|
+
uv2Updated=uv2Updated+(vertexInputs.uv2_{X}-vp_baseUV2)*uniforms.morphTargetInfluences[{X}];
|
|
472
|
+
#else
|
|
473
|
+
uv2Updated=uv2Updated+(vertexInputs.uv2_{X}-vertexInputs.uv2)*uniforms.morphTargetInfluences[{X}];
|
|
474
|
+
#endif
|
|
475
|
+
#endif
|
|
476
|
+
#ifdef MORPHTARGETS_COLOR
|
|
477
|
+
#ifdef USE_VERTEX_PULLING
|
|
478
|
+
colorUpdated=colorUpdated+(vertexInputs.color{X}-vp_baseColor)*uniforms.morphTargetInfluences[{X}];
|
|
479
|
+
#else
|
|
480
|
+
colorUpdated=colorUpdated+(vertexInputs.color{X}-vertexInputs.color)*uniforms.morphTargetInfluences[{X}];
|
|
481
|
+
#endif
|
|
482
|
+
#endif
|
|
483
|
+
#endif
|
|
484
|
+
#endif
|
|
485
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[d]||(t.ShaderStore.IncludesShadersStoreWGSL[d]=s),e.s(["morphTargetsVertexWGSL",0,{name:d,shader:s}],81683)},86165,e=>{"use strict";var t=e.i(25044);let r="pbrBRDFFunctions",i=`#define FRESNEL_MAXIMUM_ON_ROUGH 0.25
|
|
122
486
|
#define BRDF_DIFFUSE_MODEL_EON 0
|
|
123
487
|
#define BRDF_DIFFUSE_MODEL_BURLEY 1
|
|
124
488
|
#define BRDF_DIFFUSE_MODEL_LAMBERT 2
|
|
@@ -209,321 +573,105 @@ var cosTheta2: f32=sqrt(cosTheta2Sq);var R0: f32=getR0fromIORs(iridescenceIOR,ou
|
|
|
209
573
|
var phi21: f32=PI-phi12;var baseIOR: vec3f=getIORTfromAirToSurfaceR0(clamp(baseF0,vec3f(0.0),vec3f(0.9999)));
|
|
210
574
|
var R1: vec3f=getR0fromIORsVec3(baseIOR,iridescenceIOR);let maxR1: f32=max(R1.r,max(R1.g,R1.b));if (maxR1<1e-6) {return max(vec3f(R12),vec3f(0.0));}
|
|
211
575
|
var R23: vec3f=fresnelSchlickGGXVec3(cosTheta2,R1,vec3f(1.));var phi23: vec3f=vec3f(0.0);if (baseIOR[0]<iridescenceIOR) {phi23[0]=PI;}
|
|
212
|
-
if (baseIOR[1]<iridescenceIOR) {phi23[1]=PI;}
|
|
213
|
-
if (baseIOR[2]<iridescenceIOR) {phi23[2]=PI;}
|
|
214
|
-
var opd: f32=2.0*iridescenceIOR*thinFilmThickness*cosTheta2;var phi: vec3f=vec3f(phi21)+phi23;var R123: vec3f=clamp(R12*R23,vec3f(1e-5),vec3f(0.9999));var r123: vec3f=sqrt(R123);var Rs: vec3f=(T121*T121)*R23/(vec3f(1.0)-R123);var C0: vec3f=R12+Rs;I=C0;var Cm: vec3f=Rs-T121;for (var m: i32=1; m<=2; m++)
|
|
215
|
-
{Cm*=r123;var Sm: vec3f=2.0*evalSensitivity(f32(m)*opd,f32(m)*phi);I+=Cm*Sm;}
|
|
216
|
-
return max(I,vec3f(0.0));}
|
|
217
|
-
#endif
|
|
218
|
-
fn normalDistributionFunction_TrowbridgeReitzGGX(NdotH: f32,alphaG: f32)->f32
|
|
219
|
-
{var a2: f32=alphaG*alphaG;var d: f32=NdotH*NdotH*(a2-1.0)+1.0;return a2/(PI*d*d);}
|
|
220
|
-
#ifdef SHEEN
|
|
221
|
-
fn normalDistributionFunction_CharlieSheen(NdotH: f32,alphaG: f32)->f32
|
|
222
|
-
{var invR: f32=1./alphaG;var cos2h: f32=NdotH*NdotH;var sin2h: f32=1.-cos2h;return (2.+invR)*pow(sin2h,invR*.5)/(2.*PI);}
|
|
223
|
-
#endif
|
|
224
|
-
#ifdef ANISOTROPIC
|
|
225
|
-
fn normalDistributionFunction_BurleyGGX_Anisotropic(NdotH: f32,TdotH: f32,BdotH: f32,alphaTB: vec2f)->f32 {var a2: f32=alphaTB.x*alphaTB.y;var v: vec3f= vec3f(alphaTB.y*TdotH,alphaTB.x *BdotH,a2*NdotH);var v2: f32=dot(v,v);var w2: f32=a2/v2;return a2*w2*w2*RECIPROCAL_PI;}
|
|
226
|
-
#endif
|
|
227
|
-
#ifdef BRDF_V_HEIGHT_CORRELATED
|
|
228
|
-
fn smithVisibility_GGXCorrelated(NdotL: f32,NdotV: f32,alphaG: f32)->f32 {
|
|
229
|
-
#ifdef MOBILE
|
|
230
|
-
var GGXV: f32=NdotL*(NdotV*(1.0-alphaG)+alphaG);var GGXL: f32=NdotV*(NdotL*(1.0-alphaG)+alphaG);return 0.5/(GGXV+GGXL);
|
|
231
|
-
#else
|
|
232
|
-
var a2: f32=alphaG*alphaG;var GGXV: f32=NdotL*sqrt(NdotV*(NdotV-a2*NdotV)+a2);var GGXL: f32=NdotV*sqrt(NdotL*(NdotL-a2*NdotL)+a2);return 0.5/(GGXV+GGXL);
|
|
233
|
-
#endif
|
|
234
|
-
}
|
|
235
|
-
#else
|
|
236
|
-
fn smithVisibilityG1_TrowbridgeReitzGGXFast(dot: f32,alphaG: f32)->f32
|
|
237
|
-
{
|
|
238
|
-
#ifdef MOBILE
|
|
239
|
-
return 1.0/(dot+alphaG+(1.0-alphaG)*dot ));
|
|
240
|
-
#else
|
|
241
|
-
var alphaSquared: f32=alphaG*alphaG;return 1.0/(dot+sqrt(alphaSquared+(1.0-alphaSquared)*dot*dot));
|
|
242
|
-
#endif
|
|
243
|
-
}
|
|
244
|
-
fn smithVisibility_TrowbridgeReitzGGXFast(NdotL: f32,NdotV: f32,alphaG: f32)->f32
|
|
245
|
-
{var visibility: f32=smithVisibilityG1_TrowbridgeReitzGGXFast(NdotL,alphaG)*smithVisibilityG1_TrowbridgeReitzGGXFast(NdotV,alphaG);return visibility;}
|
|
246
|
-
#endif
|
|
247
|
-
#ifdef ANISOTROPIC
|
|
248
|
-
fn smithVisibility_GGXCorrelated_Anisotropic(NdotL: f32,NdotV: f32,TdotV: f32,BdotV: f32,TdotL: f32,BdotL: f32,alphaTB: vec2f)->f32 {var lambdaV: f32=NdotL*length( vec3f(alphaTB.x*TdotV,alphaTB.y*BdotV,NdotV));var lambdaL: f32=NdotV*length( vec3f(alphaTB.x*TdotL,alphaTB.y*BdotL,NdotL));var v: f32=0.5/(lambdaV+lambdaL);return v;}
|
|
249
|
-
#endif
|
|
250
|
-
#ifdef CLEARCOAT
|
|
251
|
-
fn visibility_Kelemen(VdotH: f32)->f32 {return 0.25/(VdotH*VdotH); }
|
|
252
|
-
#endif
|
|
253
|
-
#ifdef SHEEN
|
|
254
|
-
fn visibility_Ashikhmin(NdotL: f32,NdotV: f32)->f32
|
|
255
|
-
{return 1./(4.*(NdotL+NdotV-NdotL*NdotV));}
|
|
256
|
-
/* NOT USED
|
|
257
|
-
#ifdef SHEEN_SOFTER
|
|
258
|
-
fn l(x: f32,alphaG: f32)->f32
|
|
259
|
-
{var oneMinusAlphaSq: f32=(1.0-alphaG)*(1.0-alphaG);var a: f32=mix(21.5473,25.3245,oneMinusAlphaSq);var b: f32=mix(3.82987,3.32435,oneMinusAlphaSq);var c: f32=mix(0.19823,0.16801,oneMinusAlphaSq);var d: f32=mix(-1.97760,-1.27393,oneMinusAlphaSq);var e: f32=mix(-4.32054,-4.85967,oneMinusAlphaSq);return a/(1.0+b*pow(x,c))+d*x+e;}
|
|
260
|
-
fn lambdaSheen(cosTheta: f32,alphaG: f32)->f32
|
|
261
|
-
{return abs(cosTheta)<0.5 ? exp(l(cosTheta,alphaG)) : exp(2.0*l(0.5,alphaG)-l(1.0-cosTheta,alphaG));}
|
|
262
|
-
fn visibility_CharlieSheen(NdotL: f32,NdotV: f32,alphaG: f32)->f32
|
|
263
|
-
{var G: f32=1.0/(1.0+lambdaSheen(NdotV,alphaG)+lambdaSheen(NdotL,alphaG));return G/(4.0*NdotV*NdotL);}
|
|
264
|
-
#endif
|
|
265
|
-
*/
|
|
266
|
-
#endif
|
|
267
|
-
const constant1_FON: f32=0.5f-2.0f/(3.0f*PI);const constant2_FON: f32=2.0f/3.0f-28.0f/(15.0f*PI);fn E_FON_approx(mu: f32,roughness: f32)->f32
|
|
268
|
-
{var sigma: f32=roughness;
|
|
269
|
-
var mucomp: f32=1.0f-mu;var mucomp2: f32=mucomp*mucomp;const Gcoeffs: mat2x2f=mat2x2f(0.0571085289f,-0.332181442f,
|
|
270
|
-
0.491881867f,0.0714429953f);var GoverPi: f32=dot(Gcoeffs*vec2f(mucomp,mucomp2),vec2f(1.0f,mucomp2));return (1.0f+sigma*GoverPi)/(1.0f+constant1_FON*sigma);}
|
|
271
|
-
fn diffuseBRDF_EON(albedo: vec3f,roughness: f32,NdotL: f32,NdotV: f32,LdotV: f32)->vec3f
|
|
272
|
-
{var rho: vec3f=albedo;var sigma: f32=roughness;
|
|
273
|
-
var mu_i: f32=NdotL;
|
|
274
|
-
var mu_o: f32=NdotV;
|
|
275
|
-
var s: f32=LdotV-mu_i*mu_o;
|
|
276
|
-
var sovertF: f32=select(s,s/max(mu_i,mu_o),s>0.0f);
|
|
277
|
-
var AF: f32=1.0f/(1.0f+constant1_FON*sigma);
|
|
278
|
-
var f_ss: vec3f=(rho*RECIPROCAL_PI)*AF*(1.0f+sigma*sovertF);
|
|
279
|
-
var EFo: f32=E_FON_approx(mu_o,sigma);
|
|
280
|
-
var EFi: f32=E_FON_approx(mu_i,sigma);
|
|
281
|
-
var avgEF: f32=AF*(1.0f+constant2_FON*sigma);
|
|
282
|
-
var rho_ms: vec3f=(rho*rho)*avgEF/(vec3f(1.0f)-rho*(1.0f-avgEF));const eps: f32=1.0e-7f;var f_ms: vec3f=(rho_ms*RECIPROCAL_PI)*max(eps,1.0f-EFo)
|
|
283
|
-
* max(eps,1.0f-EFi)
|
|
284
|
-
/ max(eps,1.0f-avgEF);return (f_ss+f_ms);}
|
|
285
|
-
fn diffuseBRDF_Burley(NdotL: f32,NdotV: f32,VdotH: f32,roughness: f32)->f32 {var diffuseFresnelNV: f32=pow5(saturateEps(1.0-NdotL));var diffuseFresnelNL: f32=pow5(saturateEps(1.0-NdotV));var diffuseFresnel90: f32=0.5+2.0*VdotH*VdotH*roughness;var fresnel: f32 =
|
|
286
|
-
(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNL) *
|
|
287
|
-
(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNV);return fresnel/PI;}
|
|
288
|
-
#ifdef SS_TRANSLUCENCY
|
|
289
|
-
fn transmittanceBRDF_Burley(tintColor: vec3f,diffusionDistance: vec3f,thickness: f32)->vec3f {var S: vec3f=1./maxEpsVec3(diffusionDistance);var temp: vec3f=exp((-0.333333333*thickness)*S);return tintColor.rgb*0.25*(temp*temp*temp+3.0*temp);}
|
|
290
|
-
fn computeWrappedDiffuseNdotL(NdotL: f32,w: f32)->f32 {var t: f32=1.0+w;var invt2: f32=1.0/(t*t);return saturate((NdotL+w)*invt2);}
|
|
291
|
-
#endif
|
|
292
|
-
#endif
|
|
293
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["pbrBRDFFunctionsWGSL",0,{name:r,shader:i}])},61144,e=>{"use strict";var t=e.i(47150);e.i(97793),e.i(36113);let r="pbrUboDeclaration",i=`uniform vAlbedoInfos: vec2f;uniform vBaseWeightInfos: vec2f;uniform vBaseDiffuseRoughnessInfos: vec2f;uniform vAmbientInfos: vec4f;uniform vOpacityInfos: vec2f;uniform vEmissiveInfos: vec2f;uniform vLightmapInfos: vec2f;uniform vReflectivityInfos: vec3f;uniform vMicroSurfaceSamplerInfos: vec2f;uniform vBumpInfos: vec3f;uniform albedoMatrix: mat4x4f;uniform baseWeightMatrix: mat4x4f;uniform baseDiffuseRoughnessMatrix: mat4x4f;uniform ambientMatrix: mat4x4f;uniform opacityMatrix: mat4x4f;uniform emissiveMatrix: mat4x4f;uniform lightmapMatrix: mat4x4f;uniform reflectivityMatrix: mat4x4f;uniform microSurfaceSamplerMatrix: mat4x4f;uniform bumpMatrix: mat4x4f;uniform vTangentSpaceParams: vec2f;uniform vAlbedoColor: vec4f;uniform baseWeight: f32;uniform baseDiffuseRoughness: f32;uniform vLightingIntensity: vec4f;uniform pointSize: f32;uniform vReflectivityColor: vec4f;uniform vEmissiveColor: vec3f;uniform vAmbientColor: vec3f;uniform vDebugMode: vec2f;uniform vMetallicReflectanceFactors: vec4f;uniform vMetallicReflectanceInfos: vec2f;uniform metallicReflectanceMatrix: mat4x4f;uniform vReflectanceInfos: vec2f;uniform reflectanceMatrix: mat4x4f;uniform cameraInfo: vec4f;uniform vTextureRepetitionHexTilingParams: vec4f;uniform vReflectionInfos: vec2f;uniform reflectionMatrix: mat4x4f;uniform vReflectionMicrosurfaceInfos: vec3f;uniform vReflectionPosition: vec3f;uniform vReflectionSize: vec3f;uniform vReflectionFilteringInfo: vec2f;uniform vReflectionDominantDirection: vec3f;uniform vReflectionColor: vec3f;uniform vSphericalL00: vec3f;uniform vSphericalL1_1: vec3f;uniform vSphericalL10: vec3f;uniform vSphericalL11: vec3f;uniform vSphericalL2_2: vec3f;uniform vSphericalL2_1: vec3f;uniform vSphericalL20: vec3f;uniform vSphericalL21: vec3f;uniform vSphericalL22: vec3f;uniform vSphericalX: vec3f;uniform vSphericalY: vec3f;uniform vSphericalZ: vec3f;uniform vSphericalXX_ZZ: vec3f;uniform vSphericalYY_ZZ: vec3f;uniform vSphericalZZ: vec3f;uniform vSphericalXY: vec3f;uniform vSphericalYZ: vec3f;uniform vSphericalZX: vec3f;
|
|
294
|
-
#define ADDITIONAL_UBO_DECLARATION
|
|
295
|
-
#include<sceneUboDeclaration>
|
|
296
|
-
#include<meshUboDeclaration>
|
|
297
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["pbrUboDeclarationWGSL",0,{name:r,shader:i}])},57568,21550,11,58890,92928,67125,e=>{"use strict";var t=e.i(47150);let r="bonesDeclaration",i=`#if NUM_BONE_INFLUENCERS>0
|
|
298
|
-
#ifndef USE_VERTEX_PULLING
|
|
299
|
-
attribute matricesIndices : vec4f;attribute matricesWeights : vec4f;
|
|
300
|
-
#if NUM_BONE_INFLUENCERS>4
|
|
301
|
-
attribute matricesIndicesExtra : vec4f;attribute matricesWeightsExtra : vec4f;
|
|
302
|
-
#endif
|
|
303
|
-
#endif
|
|
304
|
-
#ifndef BAKED_VERTEX_ANIMATION_TEXTURE
|
|
305
|
-
#ifdef BONETEXTURE
|
|
306
|
-
var boneSampler : texture_2d<f32>;uniform boneTextureInfo : vec2f;
|
|
307
|
-
#else
|
|
308
|
-
uniform mBones : array<mat4x4f,BonesPerMesh>;
|
|
309
|
-
#endif
|
|
310
|
-
#ifdef BONES_VELOCITY_ENABLED
|
|
311
|
-
uniform mPreviousBones : array<mat4x4f,BonesPerMesh>;
|
|
312
|
-
#endif
|
|
313
|
-
#ifdef BONETEXTURE
|
|
314
|
-
fn readMatrixFromRawSampler(smp : texture_2d<f32>,index : f32)->mat4x4f
|
|
315
|
-
{let offset=i32(index)*4;
|
|
316
|
-
let textureWidth=i32(uniforms.boneTextureInfo.x);let y=offset/textureWidth;let x=offset % textureWidth;let m0=textureLoad(smp,vec2<i32>(x+0,y),0);let m1=textureLoad(smp,vec2<i32>(x+1,y),0);let m2=textureLoad(smp,vec2<i32>(x+2,y),0);let m3=textureLoad(smp,vec2<i32>(x+3,y),0);return mat4x4f(m0,m1,m2,m3);}
|
|
317
|
-
#endif
|
|
318
|
-
#endif
|
|
319
|
-
#endif
|
|
320
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["bonesDeclarationWGSL",0,{name:r,shader:i}],57568);let n="bakedVertexAnimationDeclaration",a=`#ifdef BAKED_VERTEX_ANIMATION_TEXTURE
|
|
321
|
-
uniform bakedVertexAnimationTime: f32;uniform bakedVertexAnimationSettings: vec4<f32>;var bakedVertexAnimationTexture : texture_2d<f32>;
|
|
322
|
-
#ifdef INSTANCES
|
|
323
|
-
attribute bakedVertexAnimationSettingsInstanced : vec4<f32>;
|
|
324
|
-
#endif
|
|
325
|
-
fn readMatrixFromRawSamplerVAT(smp : texture_2d<f32>,index : f32,frame : f32)->mat4x4<f32>
|
|
326
|
-
{let offset=i32(index)*4;let frameUV=i32(frame);let m0=textureLoad(smp,vec2<i32>(offset+0,frameUV),0);let m1=textureLoad(smp,vec2<i32>(offset+1,frameUV),0);let m2=textureLoad(smp,vec2<i32>(offset+2,frameUV),0);let m3=textureLoad(smp,vec2<i32>(offset+3,frameUV),0);return mat4x4<f32>(m0,m1,m2,m3);}
|
|
327
|
-
#endif
|
|
328
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[n]||(t.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["bakedVertexAnimationDeclarationWGSL",0,{name:n,shader:a}],21550);let f="instancesDeclaration",o=`#ifdef INSTANCES
|
|
329
|
-
attribute world0 : vec4<f32>;attribute world1 : vec4<f32>;attribute world2 : vec4<f32>;attribute world3 : vec4<f32>;
|
|
330
|
-
#ifdef INSTANCESCOLOR
|
|
331
|
-
attribute instanceColor : vec4<f32>;
|
|
332
|
-
#endif
|
|
333
|
-
#if defined(THIN_INSTANCES) && !defined(WORLD_UBO)
|
|
334
|
-
uniform world : mat4x4<f32>;
|
|
335
|
-
#endif
|
|
336
|
-
#if defined(VELOCITY) || defined(PREPASS_VELOCITY) || defined(PREPASS_VELOCITY_LINEAR) || defined(VELOCITY_LINEAR)
|
|
337
|
-
attribute previousWorld0 : vec4<f32>;attribute previousWorld1 : vec4<f32>;attribute previousWorld2 : vec4<f32>;attribute previousWorld3 : vec4<f32>;
|
|
338
|
-
#ifdef THIN_INSTANCES
|
|
339
|
-
uniform previousWorld : mat4x4<f32>;
|
|
340
|
-
#endif
|
|
341
|
-
#endif
|
|
342
|
-
#else
|
|
343
|
-
#if !defined(WORLD_UBO)
|
|
344
|
-
uniform world : mat4x4<f32>;
|
|
345
|
-
#endif
|
|
346
|
-
#if defined(VELOCITY) || defined(PREPASS_VELOCITY) || defined(PREPASS_VELOCITY_LINEAR) || defined(VELOCITY_LINEAR)
|
|
347
|
-
uniform previousWorld : mat4x4<f32>;
|
|
348
|
-
#endif
|
|
349
|
-
#endif
|
|
350
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[f]||(t.ShaderStore.IncludesShadersStoreWGSL[f]=o),e.s(["instancesDeclarationWGSL",0,{name:f,shader:o}],11);let d="instancesVertex",s=`#ifdef INSTANCES
|
|
351
|
-
var finalWorld=mat4x4<f32>(vertexInputs.world0,vertexInputs.world1,vertexInputs.world2,vertexInputs.world3);
|
|
352
|
-
#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || defined(PREPASS_VELOCITY_LINEAR) || defined(VELOCITY_LINEAR)
|
|
353
|
-
var finalPreviousWorld=mat4x4<f32>(
|
|
354
|
-
vertexInputs.previousWorld0,vertexInputs.previousWorld1,
|
|
355
|
-
vertexInputs.previousWorld2,vertexInputs.previousWorld3);
|
|
356
|
-
#endif
|
|
357
|
-
#ifdef THIN_INSTANCES
|
|
358
|
-
#if !defined(WORLD_UBO)
|
|
359
|
-
finalWorld=uniforms.world*finalWorld;
|
|
360
|
-
#else
|
|
361
|
-
finalWorld=mesh.world*finalWorld;
|
|
362
|
-
#endif
|
|
363
|
-
#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || defined(PREPASS_VELOCITY_LINEAR) || defined(VELOCITY_LINEAR)
|
|
364
|
-
finalPreviousWorld=uniforms.previousWorld*finalPreviousWorld;
|
|
365
|
-
#endif
|
|
366
|
-
#endif
|
|
367
|
-
#else
|
|
368
|
-
#if !defined(WORLD_UBO)
|
|
369
|
-
var finalWorld=uniforms.world;
|
|
370
|
-
#else
|
|
371
|
-
var finalWorld=mesh.world;
|
|
372
|
-
#endif
|
|
373
|
-
#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || defined(PREPASS_VELOCITY_LINEAR) || defined(VELOCITY_LINEAR)
|
|
374
|
-
var finalPreviousWorld=uniforms.previousWorld;
|
|
375
|
-
#endif
|
|
376
|
-
#endif
|
|
377
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[d]||(t.ShaderStore.IncludesShadersStoreWGSL[d]=s),e.s(["instancesVertexWGSL",0,{name:d,shader:s}],58890);let c="bonesVertex",l=`#ifndef BAKED_VERTEX_ANIMATION_TEXTURE
|
|
378
|
-
#if NUM_BONE_INFLUENCERS>0
|
|
379
|
-
var influence : mat4x4<f32>;
|
|
380
|
-
#ifdef BONETEXTURE
|
|
381
|
-
influence=readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndices[0])*vertexInputs.matricesWeights[0];
|
|
382
|
-
#if NUM_BONE_INFLUENCERS>1
|
|
383
|
-
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndices[1])*vertexInputs.matricesWeights[1];
|
|
384
|
-
#endif
|
|
385
|
-
#if NUM_BONE_INFLUENCERS>2
|
|
386
|
-
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndices[2])*vertexInputs.matricesWeights[2];
|
|
387
|
-
#endif
|
|
388
|
-
#if NUM_BONE_INFLUENCERS>3
|
|
389
|
-
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndices[3])*vertexInputs.matricesWeights[3];
|
|
390
|
-
#endif
|
|
391
|
-
#if NUM_BONE_INFLUENCERS>4
|
|
392
|
-
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndicesExtra[0])*vertexInputs.matricesWeightsExtra[0];
|
|
393
|
-
#endif
|
|
394
|
-
#if NUM_BONE_INFLUENCERS>5
|
|
395
|
-
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndicesExtra[1])*vertexInputs.matricesWeightsExtra[1];
|
|
396
|
-
#endif
|
|
397
|
-
#if NUM_BONE_INFLUENCERS>6
|
|
398
|
-
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndicesExtra[2])*vertexInputs.matricesWeightsExtra[2];
|
|
399
|
-
#endif
|
|
400
|
-
#if NUM_BONE_INFLUENCERS>7
|
|
401
|
-
influence=influence+readMatrixFromRawSampler(boneSampler,vertexInputs.matricesIndicesExtra[3])*vertexInputs.matricesWeightsExtra[3];
|
|
402
|
-
#endif
|
|
403
|
-
#else
|
|
404
|
-
influence=uniforms.mBones[i32(vertexInputs.matricesIndices[0])]*vertexInputs.matricesWeights[0];
|
|
405
|
-
#if NUM_BONE_INFLUENCERS>1
|
|
406
|
-
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndices[1])]*vertexInputs.matricesWeights[1];
|
|
407
|
-
#endif
|
|
408
|
-
#if NUM_BONE_INFLUENCERS>2
|
|
409
|
-
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndices[2])]*vertexInputs.matricesWeights[2];
|
|
410
|
-
#endif
|
|
411
|
-
#if NUM_BONE_INFLUENCERS>3
|
|
412
|
-
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndices[3])]*vertexInputs.matricesWeights[3];
|
|
413
|
-
#endif
|
|
414
|
-
#if NUM_BONE_INFLUENCERS>4
|
|
415
|
-
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndicesExtra[0])]*vertexInputs.matricesWeightsExtra[0];
|
|
416
|
-
#endif
|
|
417
|
-
#if NUM_BONE_INFLUENCERS>5
|
|
418
|
-
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndicesExtra[1])]*vertexInputs.matricesWeightsExtra[1];
|
|
419
|
-
#endif
|
|
420
|
-
#if NUM_BONE_INFLUENCERS>6
|
|
421
|
-
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndicesExtra[2])]*vertexInputs.matricesWeightsExtra[2];
|
|
422
|
-
#endif
|
|
423
|
-
#if NUM_BONE_INFLUENCERS>7
|
|
424
|
-
influence=influence+uniforms.mBones[i32(vertexInputs.matricesIndicesExtra[3])]*vertexInputs.matricesWeightsExtra[3];
|
|
425
|
-
#endif
|
|
426
|
-
#endif
|
|
427
|
-
finalWorld=finalWorld*influence;
|
|
428
|
-
#endif
|
|
429
|
-
#endif
|
|
430
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[c]||(t.ShaderStore.IncludesShadersStoreWGSL[c]=l),e.s(["bonesVertexWGSL",0,{name:c,shader:l}],92928);let v="bakedVertexAnimation",u=`#ifdef BAKED_VERTEX_ANIMATION_TEXTURE
|
|
431
|
-
{
|
|
432
|
-
#ifdef INSTANCES
|
|
433
|
-
let VATStartFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.x;let VATEndFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.y;let VATOffsetFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.z;let VATSpeed: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.w;
|
|
434
|
-
#else
|
|
435
|
-
let VATStartFrame: f32=uniforms.bakedVertexAnimationSettings.x;let VATEndFrame: f32=uniforms.bakedVertexAnimationSettings.y;let VATOffsetFrame: f32=uniforms.bakedVertexAnimationSettings.z;let VATSpeed: f32=uniforms.bakedVertexAnimationSettings.w;
|
|
436
|
-
#endif
|
|
437
|
-
let totalFrames: f32=VATEndFrame-VATStartFrame+1.0;let time: f32=uniforms.bakedVertexAnimationTime*VATSpeed/totalFrames;let frameCorrection: f32=select(1.0,0.0,time<1.0);let numOfFrames: f32=totalFrames-frameCorrection;var VATFrameNum: f32=fract(time)*numOfFrames;VATFrameNum=(VATFrameNum+VATOffsetFrame) % numOfFrames;VATFrameNum=floor(VATFrameNum);VATFrameNum=VATFrameNum+VATStartFrame+frameCorrection;var VATInfluence : mat4x4<f32>;VATInfluence=readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[0],VATFrameNum)*vertexInputs.matricesWeights[0];
|
|
438
|
-
#if NUM_BONE_INFLUENCERS>1
|
|
439
|
-
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[1],VATFrameNum)*vertexInputs.matricesWeights[1];
|
|
440
|
-
#endif
|
|
441
|
-
#if NUM_BONE_INFLUENCERS>2
|
|
442
|
-
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[2],VATFrameNum)*vertexInputs.matricesWeights[2];
|
|
443
|
-
#endif
|
|
444
|
-
#if NUM_BONE_INFLUENCERS>3
|
|
445
|
-
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[3],VATFrameNum)*vertexInputs.matricesWeights[3];
|
|
446
|
-
#endif
|
|
447
|
-
#if NUM_BONE_INFLUENCERS>4
|
|
448
|
-
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[0],VATFrameNum)*vertexInputs.matricesWeightsExtra[0];
|
|
449
|
-
#endif
|
|
450
|
-
#if NUM_BONE_INFLUENCERS>5
|
|
451
|
-
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[1],VATFrameNum)*vertexInputs.matricesWeightsExtra[1];
|
|
452
|
-
#endif
|
|
453
|
-
#if NUM_BONE_INFLUENCERS>6
|
|
454
|
-
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[2],VATFrameNum)*vertexInputs.matricesWeightsExtra[2];
|
|
455
|
-
#endif
|
|
456
|
-
#if NUM_BONE_INFLUENCERS>7
|
|
457
|
-
VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[3],VATFrameNum)*vertexInputs.matricesWeightsExtra[3];
|
|
458
|
-
#endif
|
|
459
|
-
finalWorld=finalWorld*VATInfluence;}
|
|
460
|
-
#endif
|
|
461
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[v]||(t.ShaderStore.IncludesShadersStoreWGSL[v]=u),e.s(["bakedVertexAnimationWGSL",0,{name:v,shader:u}],67125)},4825,e=>{"use strict";var t=e.i(47150);let r="vertexColorMixing",i=`#if defined(VERTEXCOLOR) || defined(INSTANCESCOLOR) && defined(INSTANCES)
|
|
462
|
-
vertexOutputs.vColor=vec4f(1.0);
|
|
463
|
-
#ifdef VERTEXCOLOR
|
|
464
|
-
#ifdef VERTEXALPHA
|
|
465
|
-
vertexOutputs.vColor*=colorUpdated;
|
|
466
|
-
#else
|
|
467
|
-
vertexOutputs.vColor=vec4f(vertexOutputs.vColor.rgb*colorUpdated.rgb,vertexOutputs.vColor.a);
|
|
468
|
-
#endif
|
|
469
|
-
#endif
|
|
470
|
-
#ifdef INSTANCESCOLOR
|
|
471
|
-
vertexOutputs.vColor*=vertexInputs.instanceColor;
|
|
472
|
-
#endif
|
|
473
|
-
#endif
|
|
474
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["vertexColorMixingWGSL",0,{name:r,shader:i}])},63593,4534,e=>{"use strict";var t=e.i(47150);let r="clipPlaneVertexDeclaration",i=`#ifdef CLIPPLANE
|
|
475
|
-
uniform vClipPlane: vec4<f32>;varying fClipDistance: f32;
|
|
476
|
-
#endif
|
|
477
|
-
#ifdef CLIPPLANE2
|
|
478
|
-
uniform vClipPlane2: vec4<f32>;varying fClipDistance2: f32;
|
|
479
|
-
#endif
|
|
480
|
-
#ifdef CLIPPLANE3
|
|
481
|
-
uniform vClipPlane3: vec4<f32>;varying fClipDistance3: f32;
|
|
482
|
-
#endif
|
|
483
|
-
#ifdef CLIPPLANE4
|
|
484
|
-
uniform vClipPlane4: vec4<f32>;varying fClipDistance4: f32;
|
|
485
|
-
#endif
|
|
486
|
-
#ifdef CLIPPLANE5
|
|
487
|
-
uniform vClipPlane5: vec4<f32>;varying fClipDistance5: f32;
|
|
488
|
-
#endif
|
|
489
|
-
#ifdef CLIPPLANE6
|
|
490
|
-
uniform vClipPlane6: vec4<f32>;varying fClipDistance6: f32;
|
|
576
|
+
if (baseIOR[1]<iridescenceIOR) {phi23[1]=PI;}
|
|
577
|
+
if (baseIOR[2]<iridescenceIOR) {phi23[2]=PI;}
|
|
578
|
+
var opd: f32=2.0*iridescenceIOR*thinFilmThickness*cosTheta2;var phi: vec3f=vec3f(phi21)+phi23;var R123: vec3f=clamp(R12*R23,vec3f(1e-5),vec3f(0.9999));var r123: vec3f=sqrt(R123);var Rs: vec3f=(T121*T121)*R23/(vec3f(1.0)-R123);var C0: vec3f=R12+Rs;I=C0;var Cm: vec3f=Rs-T121;for (var m: i32=1; m<=2; m++)
|
|
579
|
+
{Cm*=r123;var Sm: vec3f=2.0*evalSensitivity(f32(m)*opd,f32(m)*phi);I+=Cm*Sm;}
|
|
580
|
+
return max(I,vec3f(0.0));}
|
|
491
581
|
#endif
|
|
492
|
-
|
|
493
|
-
|
|
582
|
+
fn normalDistributionFunction_TrowbridgeReitzGGX(NdotH: f32,alphaG: f32)->f32
|
|
583
|
+
{var a2: f32=alphaG*alphaG;var d: f32=NdotH*NdotH*(a2-1.0)+1.0;return a2/(PI*d*d);}
|
|
584
|
+
#ifdef SHEEN
|
|
585
|
+
fn normalDistributionFunction_CharlieSheen(NdotH: f32,alphaG: f32)->f32
|
|
586
|
+
{var invR: f32=1./alphaG;var cos2h: f32=NdotH*NdotH;var sin2h: f32=1.-cos2h;return (2.+invR)*pow(sin2h,invR*.5)/(2.*PI);}
|
|
494
587
|
#endif
|
|
495
|
-
#ifdef
|
|
496
|
-
|
|
588
|
+
#ifdef ANISOTROPIC
|
|
589
|
+
fn normalDistributionFunction_BurleyGGX_Anisotropic(NdotH: f32,TdotH: f32,BdotH: f32,alphaTB: vec2f)->f32 {var a2: f32=alphaTB.x*alphaTB.y;var v: vec3f= vec3f(alphaTB.y*TdotH,alphaTB.x *BdotH,a2*NdotH);var v2: f32=dot(v,v);var w2: f32=a2/v2;return a2*w2*w2*RECIPROCAL_PI;}
|
|
497
590
|
#endif
|
|
498
|
-
#ifdef
|
|
499
|
-
|
|
591
|
+
#ifdef BRDF_V_HEIGHT_CORRELATED
|
|
592
|
+
fn smithVisibility_GGXCorrelated(NdotL: f32,NdotV: f32,alphaG: f32)->f32 {
|
|
593
|
+
#ifdef MOBILE
|
|
594
|
+
var GGXV: f32=NdotL*(NdotV*(1.0-alphaG)+alphaG);var GGXL: f32=NdotV*(NdotL*(1.0-alphaG)+alphaG);return 0.5/(GGXV+GGXL);
|
|
595
|
+
#else
|
|
596
|
+
var a2: f32=alphaG*alphaG;var GGXV: f32=NdotL*sqrt(NdotV*(NdotV-a2*NdotV)+a2);var GGXL: f32=NdotV*sqrt(NdotL*(NdotL-a2*NdotL)+a2);return 0.5/(GGXV+GGXL);
|
|
500
597
|
#endif
|
|
501
|
-
|
|
502
|
-
|
|
598
|
+
}
|
|
599
|
+
#else
|
|
600
|
+
fn smithVisibilityG1_TrowbridgeReitzGGXFast(dot: f32,alphaG: f32)->f32
|
|
601
|
+
{
|
|
602
|
+
#ifdef MOBILE
|
|
603
|
+
return 1.0/(dot+alphaG+(1.0-alphaG)*dot ));
|
|
604
|
+
#else
|
|
605
|
+
var alphaSquared: f32=alphaG*alphaG;return 1.0/(dot+sqrt(alphaSquared+(1.0-alphaSquared)*dot*dot));
|
|
503
606
|
#endif
|
|
504
|
-
|
|
505
|
-
|
|
607
|
+
}
|
|
608
|
+
fn smithVisibility_TrowbridgeReitzGGXFast(NdotL: f32,NdotV: f32,alphaG: f32)->f32
|
|
609
|
+
{var visibility: f32=smithVisibilityG1_TrowbridgeReitzGGXFast(NdotL,alphaG)*smithVisibilityG1_TrowbridgeReitzGGXFast(NdotV,alphaG);return visibility;}
|
|
506
610
|
#endif
|
|
507
|
-
#ifdef
|
|
508
|
-
|
|
611
|
+
#ifdef ANISOTROPIC
|
|
612
|
+
fn smithVisibility_GGXCorrelated_Anisotropic(NdotL: f32,NdotV: f32,TdotV: f32,BdotV: f32,TdotL: f32,BdotL: f32,alphaTB: vec2f)->f32 {var lambdaV: f32=NdotL*length( vec3f(alphaTB.x*TdotV,alphaTB.y*BdotV,NdotV));var lambdaL: f32=NdotV*length( vec3f(alphaTB.x*TdotL,alphaTB.y*BdotL,NdotL));var v: f32=0.5/(lambdaV+lambdaL);return v;}
|
|
509
613
|
#endif
|
|
510
|
-
|
|
511
|
-
|
|
614
|
+
#ifdef CLEARCOAT
|
|
615
|
+
fn visibility_Kelemen(VdotH: f32)->f32 {return 0.25/(VdotH*VdotH); }
|
|
512
616
|
#endif
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
617
|
+
#ifdef SHEEN
|
|
618
|
+
fn visibility_Ashikhmin(NdotL: f32,NdotV: f32)->f32
|
|
619
|
+
{return 1./(4.*(NdotL+NdotV-NdotL*NdotV));}
|
|
620
|
+
/* NOT USED
|
|
621
|
+
#ifdef SHEEN_SOFTER
|
|
622
|
+
fn l(x: f32,alphaG: f32)->f32
|
|
623
|
+
{var oneMinusAlphaSq: f32=(1.0-alphaG)*(1.0-alphaG);var a: f32=mix(21.5473,25.3245,oneMinusAlphaSq);var b: f32=mix(3.82987,3.32435,oneMinusAlphaSq);var c: f32=mix(0.19823,0.16801,oneMinusAlphaSq);var d: f32=mix(-1.97760,-1.27393,oneMinusAlphaSq);var e: f32=mix(-4.32054,-4.85967,oneMinusAlphaSq);return a/(1.0+b*pow(x,c))+d*x+e;}
|
|
624
|
+
fn lambdaSheen(cosTheta: f32,alphaG: f32)->f32
|
|
625
|
+
{return abs(cosTheta)<0.5 ? exp(l(cosTheta,alphaG)) : exp(2.0*l(0.5,alphaG)-l(1.0-cosTheta,alphaG));}
|
|
626
|
+
fn visibility_CharlieSheen(NdotL: f32,NdotV: f32,alphaG: f32)->f32
|
|
627
|
+
{var G: f32=1.0/(1.0+lambdaSheen(NdotV,alphaG)+lambdaSheen(NdotL,alphaG));return G/(4.0*NdotV*NdotL);}
|
|
518
628
|
#endif
|
|
629
|
+
*/
|
|
519
630
|
#endif
|
|
520
|
-
|
|
521
|
-
|
|
631
|
+
const constant1_FON: f32=0.5f-2.0f/(3.0f*PI);const constant2_FON: f32=2.0f/3.0f-28.0f/(15.0f*PI);fn E_FON_approx(mu: f32,roughness: f32)->f32
|
|
632
|
+
{var sigma: f32=roughness;
|
|
633
|
+
var mucomp: f32=1.0f-mu;var mucomp2: f32=mucomp*mucomp;const Gcoeffs: mat2x2f=mat2x2f(0.0571085289f,-0.332181442f,
|
|
634
|
+
0.491881867f,0.0714429953f);var GoverPi: f32=dot(Gcoeffs*vec2f(mucomp,mucomp2),vec2f(1.0f,mucomp2));return (1.0f+sigma*GoverPi)/(1.0f+constant1_FON*sigma);}
|
|
635
|
+
fn diffuseBRDF_EON(albedo: vec3f,roughness: f32,NdotL: f32,NdotV: f32,LdotV: f32)->vec3f
|
|
636
|
+
{var rho: vec3f=albedo;var sigma: f32=roughness;
|
|
637
|
+
var mu_i: f32=NdotL;
|
|
638
|
+
var mu_o: f32=NdotV;
|
|
639
|
+
var s: f32=LdotV-mu_i*mu_o;
|
|
640
|
+
var sovertF: f32=select(s,s/max(mu_i,mu_o),s>0.0f);
|
|
641
|
+
var AF: f32=1.0f/(1.0f+constant1_FON*sigma);
|
|
642
|
+
var f_ss: vec3f=(rho*RECIPROCAL_PI)*AF*(1.0f+sigma*sovertF);
|
|
643
|
+
var EFo: f32=E_FON_approx(mu_o,sigma);
|
|
644
|
+
var EFi: f32=E_FON_approx(mu_i,sigma);
|
|
645
|
+
var avgEF: f32=AF*(1.0f+constant2_FON*sigma);
|
|
646
|
+
var rho_ms: vec3f=(rho*rho)*avgEF/(vec3f(1.0f)-rho*(1.0f-avgEF));const eps: f32=1.0e-7f;var f_ms: vec3f=(rho_ms*RECIPROCAL_PI)*max(eps,1.0f-EFo)
|
|
647
|
+
* max(eps,1.0f-EFi)
|
|
648
|
+
/ max(eps,1.0f-avgEF);return (f_ss+f_ms);}
|
|
649
|
+
fn diffuseBRDF_Burley(NdotL: f32,NdotV: f32,VdotH: f32,roughness: f32)->f32 {var diffuseFresnelNV: f32=pow5(saturateEps(1.0-NdotL));var diffuseFresnelNL: f32=pow5(saturateEps(1.0-NdotV));var diffuseFresnel90: f32=0.5+2.0*VdotH*VdotH*roughness;var fresnel: f32 =
|
|
650
|
+
(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNL) *
|
|
651
|
+
(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNV);return fresnel/PI;}
|
|
652
|
+
#ifdef SS_TRANSLUCENCY
|
|
653
|
+
fn transmittanceBRDF_Burley(tintColor: vec3f,diffusionDistance: vec3f,thickness: f32)->vec3f {var S: vec3f=1./maxEpsVec3(diffusionDistance);var temp: vec3f=exp((-0.333333333*thickness)*S);return tintColor.rgb*0.25*(temp*temp*temp+3.0*temp);}
|
|
654
|
+
fn computeWrappedDiffuseNdotL(NdotL: f32,w: f32)->f32 {var t: f32=1.0+w;var invt2: f32=1.0/(t*t);return saturate((NdotL+w)*invt2);}
|
|
522
655
|
#endif
|
|
523
|
-
|
|
656
|
+
#endif
|
|
657
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["pbrBRDFFunctionsWGSL",0,{name:r,shader:i}])},83809,e=>{"use strict";var t=e.i(25044);e.i(38267),e.i(95057);let r="pbrUboDeclaration",i=`uniform vAlbedoInfos: vec2f;uniform vBaseWeightInfos: vec2f;uniform vBaseDiffuseRoughnessInfos: vec2f;uniform vAmbientInfos: vec4f;uniform vOpacityInfos: vec2f;uniform vEmissiveInfos: vec2f;uniform vLightmapInfos: vec2f;uniform vReflectivityInfos: vec3f;uniform vMicroSurfaceSamplerInfos: vec2f;uniform vBumpInfos: vec3f;uniform albedoMatrix: mat4x4f;uniform baseWeightMatrix: mat4x4f;uniform baseDiffuseRoughnessMatrix: mat4x4f;uniform ambientMatrix: mat4x4f;uniform opacityMatrix: mat4x4f;uniform emissiveMatrix: mat4x4f;uniform lightmapMatrix: mat4x4f;uniform reflectivityMatrix: mat4x4f;uniform microSurfaceSamplerMatrix: mat4x4f;uniform bumpMatrix: mat4x4f;uniform vTangentSpaceParams: vec2f;uniform vAlbedoColor: vec4f;uniform baseWeight: f32;uniform baseDiffuseRoughness: f32;uniform vLightingIntensity: vec4f;uniform pointSize: f32;uniform vReflectivityColor: vec4f;uniform vEmissiveColor: vec3f;uniform vAmbientColor: vec3f;uniform vDebugMode: vec2f;uniform vMetallicReflectanceFactors: vec4f;uniform vMetallicReflectanceInfos: vec2f;uniform metallicReflectanceMatrix: mat4x4f;uniform vReflectanceInfos: vec2f;uniform reflectanceMatrix: mat4x4f;uniform cameraInfo: vec4f;uniform vTextureRepetitionHexTilingParams: vec4f;uniform vReflectionInfos: vec2f;uniform reflectionMatrix: mat4x4f;uniform vReflectionMicrosurfaceInfos: vec3f;uniform vReflectionPosition: vec3f;uniform vReflectionSize: vec3f;uniform vReflectionFilteringInfo: vec2f;uniform vReflectionDominantDirection: vec3f;uniform vReflectionColor: vec3f;uniform vSphericalL00: vec3f;uniform vSphericalL1_1: vec3f;uniform vSphericalL10: vec3f;uniform vSphericalL11: vec3f;uniform vSphericalL2_2: vec3f;uniform vSphericalL2_1: vec3f;uniform vSphericalL20: vec3f;uniform vSphericalL21: vec3f;uniform vSphericalL22: vec3f;uniform vSphericalX: vec3f;uniform vSphericalY: vec3f;uniform vSphericalZ: vec3f;uniform vSphericalXX_ZZ: vec3f;uniform vSphericalYY_ZZ: vec3f;uniform vSphericalZZ: vec3f;uniform vSphericalXY: vec3f;uniform vSphericalYZ: vec3f;uniform vSphericalZX: vec3f;
|
|
658
|
+
#define ADDITIONAL_UBO_DECLARATION
|
|
659
|
+
#include<sceneUboDeclaration>
|
|
660
|
+
#include<meshUboDeclaration>
|
|
661
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["pbrUboDeclarationWGSL",0,{name:r,shader:i}])},38267,e=>{"use strict";var t=e.i(25044);let r="sceneUboDeclaration",i=`struct Scene {viewProjection : mat4x4<f32>,
|
|
662
|
+
#ifdef MULTIVIEW
|
|
663
|
+
viewProjectionR : mat4x4<f32>,
|
|
664
|
+
#endif
|
|
665
|
+
view : mat4x4<f32>,
|
|
666
|
+
projection : mat4x4<f32>,
|
|
667
|
+
vEyePosition : vec4<f32>,
|
|
668
|
+
inverseProjection : mat4x4<f32>,};
|
|
669
|
+
#define SCENE_UBO
|
|
670
|
+
var<uniform> scene : Scene;
|
|
671
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["sceneUboDeclarationWGSL",0,{name:r,shader:i}])},27180,27066,85224,12203,65997,99887,54704,85749,14750,99967,e=>{"use strict";var t=e.i(25044);let r="uvAttributeDeclaration",i=`#if defined(UV{X}) && !defined(USE_VERTEX_PULLING)
|
|
524
672
|
attribute uv{X}: vec2f;
|
|
525
673
|
#endif
|
|
526
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["uvAttributeDeclarationWGSL",0,{name:r,shader:i}],
|
|
674
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["uvAttributeDeclarationWGSL",0,{name:r,shader:i}],27180);let n="prePassVertexDeclaration",a=`#ifdef PREPASS
|
|
527
675
|
#ifdef PREPASS_LOCAL_POSITION
|
|
528
676
|
varying vPosition : vec3f;
|
|
529
677
|
#endif
|
|
@@ -537,10 +685,10 @@ varying vNormViewDepth: f32;
|
|
|
537
685
|
uniform previousViewProjection: mat4x4f;varying vCurrentPosition: vec4f;varying vPreviousPosition: vec4f;
|
|
538
686
|
#endif
|
|
539
687
|
#endif
|
|
540
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[n]||(t.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["prePassVertexDeclarationWGSL",0,{name:n,shader:a}],
|
|
688
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[n]||(t.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["prePassVertexDeclarationWGSL",0,{name:n,shader:a}],27066);let f="samplerVertexDeclaration",o=`#if defined(_DEFINENAME_) && _DEFINENAME_DIRECTUV==0
|
|
541
689
|
varying v_VARYINGNAME_UV: vec2f;
|
|
542
690
|
#endif
|
|
543
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[f]||(t.ShaderStore.IncludesShadersStoreWGSL[f]=o),e.s(["samplerVertexDeclarationWGSL",0,{name:f,shader:o}],
|
|
691
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[f]||(t.ShaderStore.IncludesShadersStoreWGSL[f]=o),e.s(["samplerVertexDeclarationWGSL",0,{name:f,shader:o}],85224);let d="lightVxUboDeclaration",s=`#ifdef LIGHT{X}
|
|
544
692
|
struct Light{X}
|
|
545
693
|
{vLightData: vec4f,
|
|
546
694
|
vLightDiffuse: vec4f,
|
|
@@ -571,7 +719,7 @@ varying vPositionFromLight{X}: vec4f;varying vDepthMetric{X}: f32;uniform lightM
|
|
|
571
719
|
#endif
|
|
572
720
|
#endif
|
|
573
721
|
#endif
|
|
574
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[d]||(t.ShaderStore.IncludesShadersStoreWGSL[d]=s),e.s(["lightVxUboDeclarationWGSL",0,{name:d,shader:s}],
|
|
722
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[d]||(t.ShaderStore.IncludesShadersStoreWGSL[d]=s),e.s(["lightVxUboDeclarationWGSL",0,{name:d,shader:s}],12203);let c="vertexPullingDeclaration",l=`#ifdef USE_VERTEX_PULLING
|
|
575
723
|
#ifdef VERTEX_PULLING_USE_INDEX_BUFFER
|
|
576
724
|
var<storage,read> indices : array<u32>;
|
|
577
725
|
#endif
|
|
@@ -749,7 +897,7 @@ vp_readMatrixWeightExtraValue(offset+cs*3u,dataType,normalized)
|
|
|
749
897
|
#endif
|
|
750
898
|
#endif
|
|
751
899
|
#endif
|
|
752
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[c]||(t.ShaderStore.IncludesShadersStoreWGSL[c]=l),e.s(["vertexPullingDeclarationWGSL",0,{name:c,shader:l}],
|
|
900
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[c]||(t.ShaderStore.IncludesShadersStoreWGSL[c]=l),e.s(["vertexPullingDeclarationWGSL",0,{name:c,shader:l}],65997);let v="vertexPullingVertex",u=`#ifdef USE_VERTEX_PULLING
|
|
753
901
|
let vpVertexIndex: u32=vp_readVertexIndex(vertexInputs.vertexIndex);positionUpdated=vp_readPosition(uniforms.vp_position_info,vpVertexIndex);
|
|
754
902
|
#ifdef NORMAL
|
|
755
903
|
normalUpdated=vp_readNormal(uniforms.vp_normal_info,vpVertexIndex);
|
|
@@ -803,7 +951,7 @@ var vp_matricesIndicesExtra: vec4f=vp_readBoneIndicesExtra(uniforms.vp_matricesI
|
|
|
803
951
|
#endif
|
|
804
952
|
#endif
|
|
805
953
|
#endif
|
|
806
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[v]||(t.ShaderStore.IncludesShadersStoreWGSL[v]=u),e.s(["vertexPullingVertexWGSL",0,{name:v,shader:u}],
|
|
954
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[v]||(t.ShaderStore.IncludesShadersStoreWGSL[v]=u),e.s(["vertexPullingVertexWGSL",0,{name:v,shader:u}],99887);let m="prePassVertex",p=`#ifdef PREPASS_DEPTH
|
|
807
955
|
vertexOutputs.vViewPos=(scene.view*worldPos).rgb;
|
|
808
956
|
#endif
|
|
809
957
|
#ifdef PREPASS_NORMALIZED_VIEW_DEPTH
|
|
@@ -842,7 +990,7 @@ vertexOutputs.vPreviousPosition=uniforms.previousViewProjection*finalPreviousWor
|
|
|
842
990
|
vertexOutputs.vPreviousPosition=uniforms.previousViewProjection*finalPreviousWorld* vec4f(positionUpdated,1.0);
|
|
843
991
|
#endif
|
|
844
992
|
#endif
|
|
845
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[m]||(t.ShaderStore.IncludesShadersStoreWGSL[m]=p),e.s(["prePassVertexWGSL",0,{name:m,shader:p}],
|
|
993
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[m]||(t.ShaderStore.IncludesShadersStoreWGSL[m]=p),e.s(["prePassVertexWGSL",0,{name:m,shader:p}],54704);let E="uvVariableDeclaration",_=`#ifdef MAINUV{X}
|
|
846
994
|
#if !defined(UV{X})
|
|
847
995
|
var uv{X}: vec2f=vec2f(0.,0.);
|
|
848
996
|
#elif defined(USE_VERTEX_PULLING)
|
|
@@ -852,7 +1000,7 @@ var uv{X}: vec2f=vertexInputs.uv{X};
|
|
|
852
1000
|
#endif
|
|
853
1001
|
vertexOutputs.vMainUV{X}=uv{X};
|
|
854
1002
|
#endif
|
|
855
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[E]||(t.ShaderStore.IncludesShadersStoreWGSL[E]=_),e.s(["uvVariableDeclarationWGSL",0,{name:E,shader:_}],
|
|
1003
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[E]||(t.ShaderStore.IncludesShadersStoreWGSL[E]=_),e.s(["uvVariableDeclarationWGSL",0,{name:E,shader:_}],85749);let I="samplerVertexImplementation",S=`#if defined(_DEFINENAME_) && _DEFINENAME_DIRECTUV==0
|
|
856
1004
|
if (uniforms.v_INFONAME_==0.)
|
|
857
1005
|
{vertexOutputs.v_VARYINGNAME_UV= (uniforms._MATRIXNAME_Matrix* vec4f(uvUpdated,1.0,0.0)).xy;}
|
|
858
1006
|
#ifdef UV2
|
|
@@ -876,7 +1024,7 @@ else if (uniforms.v_INFONAME_==5.)
|
|
|
876
1024
|
{vertexOutputs.v_VARYINGNAME_UV= (uniforms._MATRIXNAME_Matrix* vec4f(vertexInputs.uv6,1.0,0.0)).xy;}
|
|
877
1025
|
#endif
|
|
878
1026
|
#endif
|
|
879
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[I]||(t.ShaderStore.IncludesShadersStoreWGSL[I]=S),e.s(["samplerVertexImplementationWGSL",0,{name:I,shader:S}],
|
|
1027
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[I]||(t.ShaderStore.IncludesShadersStoreWGSL[I]=S),e.s(["samplerVertexImplementationWGSL",0,{name:I,shader:S}],14750);let x="shadowsVertex",N=`#ifdef SHADOWS
|
|
880
1028
|
#if defined(SHADOWCSM{X})
|
|
881
1029
|
#ifdef SCENE_UBO
|
|
882
1030
|
vertexOutputs.vPositionFromCamera{X}=scene.view*worldPos;
|
|
@@ -924,168 +1072,20 @@ vertexOutputs.vDepthMetric{X}=(vertexOutputs.vPositionFromLight{X}.z+light{X}.de
|
|
|
924
1072
|
#endif
|
|
925
1073
|
#endif
|
|
926
1074
|
#endif
|
|
927
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[x]||(t.ShaderStore.IncludesShadersStoreWGSL[x]=N),e.s(["shadowsVertexWGSL",0,{name:x,shader:N}],
|
|
928
|
-
|
|
929
|
-
#ifdef
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
let textureWidth: i32=i32(uniforms.morphTargetTextureInfo.y);let y: i32=i32(vertexIndex)/textureWidth;let x: i32=i32(vertexIndex) % textureWidth;return textureLoad(morphTargets,vec2i(x,y),i32(uniforms.morphTargetTextureIndices[targetIndex]),0).xyz;}
|
|
933
|
-
fn readVector4FromRawSampler(targetIndex : i32,vertexIndex : f32)->vec4<f32>
|
|
934
|
-
{
|
|
935
|
-
let textureWidth: i32=i32(uniforms.morphTargetTextureInfo.y);
|
|
936
|
-
let y: i32=i32(vertexIndex)/textureWidth;let x: i32=i32(vertexIndex) % textureWidth;return textureLoad(morphTargets,vec2i(x,y),i32(uniforms.morphTargetTextureIndices[targetIndex]),0);}
|
|
937
|
-
#endif
|
|
938
|
-
#endif
|
|
939
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["morphTargetsVertexGlobalDeclarationWGSL",0,{name:r,shader:i}],92459);let n="morphTargetsVertexDeclaration",a=`#ifdef MORPHTARGETS
|
|
940
|
-
#ifndef MORPHTARGETS_TEXTURE
|
|
941
|
-
#ifdef MORPHTARGETS_POSITION
|
|
942
|
-
attribute position{X} : vec3<f32>;
|
|
943
|
-
#endif
|
|
944
|
-
#ifdef MORPHTARGETS_NORMAL
|
|
945
|
-
attribute normal{X} : vec3<f32>;
|
|
946
|
-
#endif
|
|
947
|
-
#ifdef MORPHTARGETS_TANGENT
|
|
948
|
-
attribute tangent{X} : vec3<f32>;
|
|
949
|
-
#endif
|
|
950
|
-
#ifdef MORPHTARGETS_UV
|
|
951
|
-
attribute uv_{X} : vec2<f32>;
|
|
952
|
-
#endif
|
|
953
|
-
#ifdef MORPHTARGETS_UV2
|
|
954
|
-
attribute uv2_{X} : vec2<f32>;
|
|
955
|
-
#endif
|
|
956
|
-
#ifdef MORPHTARGETS_COLOR
|
|
957
|
-
attribute color{X} : vec4<f32>;
|
|
958
|
-
#endif
|
|
959
|
-
#elif {X}==0
|
|
960
|
-
uniform morphTargetCount: f32;
|
|
961
|
-
#endif
|
|
962
|
-
#endif
|
|
963
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[n]||(t.ShaderStore.IncludesShadersStoreWGSL[n]=a),e.s(["morphTargetsVertexDeclarationWGSL",0,{name:n,shader:a}],22253);let f="morphTargetsVertexGlobal",o=`#ifdef MORPHTARGETS
|
|
964
|
-
#ifdef MORPHTARGETS_TEXTURE
|
|
965
|
-
var vertexID : f32;
|
|
966
|
-
#endif
|
|
967
|
-
#endif
|
|
968
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[f]||(t.ShaderStore.IncludesShadersStoreWGSL[f]=o),e.s(["morphTargetsVertexGlobalWGSL",0,{name:f,shader:o}],61408);let d="morphTargetsVertex",s=`#ifdef MORPHTARGETS
|
|
969
|
-
#ifdef MORPHTARGETS_TEXTURE
|
|
970
|
-
#if {X}==0
|
|
971
|
-
for (var i=0; i<NUM_MORPH_INFLUENCERS; i=i+1) {if (f32(i)>=uniforms.morphTargetCount) {break;}
|
|
972
|
-
#ifdef USE_VERTEX_PULLING
|
|
973
|
-
vertexID=f32(vpVertexIndex)*uniforms.morphTargetTextureInfo.x;
|
|
974
|
-
#else
|
|
975
|
-
vertexID=f32(vertexInputs.vertexIndex)*uniforms.morphTargetTextureInfo.x;
|
|
976
|
-
#endif
|
|
977
|
-
#ifdef MORPHTARGETS_POSITION
|
|
978
|
-
#ifdef USE_VERTEX_PULLING
|
|
979
|
-
positionUpdated=positionUpdated+(readVector3FromRawSampler(i,vertexID)-vp_basePosition)*uniforms.morphTargetInfluences[i];
|
|
980
|
-
#else
|
|
981
|
-
positionUpdated=positionUpdated+(readVector3FromRawSampler(i,vertexID)-vertexInputs.position)*uniforms.morphTargetInfluences[i];
|
|
982
|
-
#endif
|
|
983
|
-
#endif
|
|
984
|
-
#ifdef MORPHTARGETTEXTURE_HASPOSITIONS
|
|
985
|
-
vertexID=vertexID+1.0;
|
|
986
|
-
#endif
|
|
987
|
-
#ifdef MORPHTARGETS_NORMAL
|
|
988
|
-
#ifdef USE_VERTEX_PULLING
|
|
989
|
-
normalUpdated=normalUpdated+(readVector3FromRawSampler(i,vertexID) -vp_baseNormal)*uniforms.morphTargetInfluences[i];
|
|
990
|
-
#else
|
|
991
|
-
normalUpdated=normalUpdated+(readVector3FromRawSampler(i,vertexID) -vertexInputs.normal)*uniforms.morphTargetInfluences[i];
|
|
992
|
-
#endif
|
|
993
|
-
#endif
|
|
994
|
-
#ifdef MORPHTARGETTEXTURE_HASNORMALS
|
|
995
|
-
vertexID=vertexID+1.0;
|
|
996
|
-
#endif
|
|
997
|
-
#ifdef MORPHTARGETS_UV
|
|
998
|
-
#ifdef USE_VERTEX_PULLING
|
|
999
|
-
uvUpdated=uvUpdated+(readVector3FromRawSampler(i,vertexID).xy-vp_baseUV)*uniforms.morphTargetInfluences[i];
|
|
1000
|
-
#else
|
|
1001
|
-
uvUpdated=uvUpdated+(readVector3FromRawSampler(i,vertexID).xy-vertexInputs.uv)*uniforms.morphTargetInfluences[i];
|
|
1002
|
-
#endif
|
|
1003
|
-
#endif
|
|
1004
|
-
#ifdef MORPHTARGETTEXTURE_HASUVS
|
|
1005
|
-
vertexID=vertexID+1.0;
|
|
1006
|
-
#endif
|
|
1007
|
-
#ifdef MORPHTARGETS_TANGENT
|
|
1008
|
-
#ifdef USE_VERTEX_PULLING
|
|
1009
|
-
tangentUpdated=vec4f(tangentUpdated.xyz+(readVector3FromRawSampler(i,vertexID) -vp_baseTangent.xyz)*uniforms.morphTargetInfluences[i],tangentUpdated.a);
|
|
1010
|
-
#else
|
|
1011
|
-
tangentUpdated=vec4f(tangentUpdated.xyz+(readVector3FromRawSampler(i,vertexID) -vertexInputs.tangent.xyz)*uniforms.morphTargetInfluences[i],tangentUpdated.a);
|
|
1012
|
-
#endif
|
|
1013
|
-
#endif
|
|
1014
|
-
#ifdef MORPHTARGETTEXTURE_HASTANGENTS
|
|
1015
|
-
vertexID=vertexID+1.0;
|
|
1016
|
-
#endif
|
|
1017
|
-
#ifdef MORPHTARGETS_UV2
|
|
1018
|
-
#ifdef USE_VERTEX_PULLING
|
|
1019
|
-
uv2Updated=uv2Updated+(readVector3FromRawSampler(i,vertexID).xy-vp_baseUV2)*uniforms.morphTargetInfluences[i];
|
|
1020
|
-
#else
|
|
1021
|
-
uv2Updated=uv2Updated+(readVector3FromRawSampler(i,vertexID).xy-vertexInputs.uv2)*uniforms.morphTargetInfluences[i];
|
|
1022
|
-
#endif
|
|
1023
|
-
#endif
|
|
1024
|
-
#ifdef MORPHTARGETS_COLOR
|
|
1025
|
-
#ifdef USE_VERTEX_PULLING
|
|
1026
|
-
colorUpdated=colorUpdated+(readVector4FromRawSampler(i,vertexID)-vp_baseColor)*uniforms.morphTargetInfluences[i];
|
|
1027
|
-
#else
|
|
1028
|
-
colorUpdated=colorUpdated+(readVector4FromRawSampler(i,vertexID)-vertexInputs.color)*uniforms.morphTargetInfluences[i];
|
|
1029
|
-
#endif
|
|
1030
|
-
#endif
|
|
1031
|
-
}
|
|
1032
|
-
#endif
|
|
1033
|
-
#else
|
|
1034
|
-
#ifdef MORPHTARGETS_POSITION
|
|
1035
|
-
#ifdef USE_VERTEX_PULLING
|
|
1036
|
-
positionUpdated=positionUpdated+(vertexInputs.position{X}-vp_basePosition)*uniforms.morphTargetInfluences[{X}];
|
|
1037
|
-
#else
|
|
1038
|
-
positionUpdated=positionUpdated+(vertexInputs.position{X}-vertexInputs.position)*uniforms.morphTargetInfluences[{X}];
|
|
1039
|
-
#endif
|
|
1040
|
-
#endif
|
|
1041
|
-
#ifdef MORPHTARGETS_NORMAL
|
|
1042
|
-
#ifdef USE_VERTEX_PULLING
|
|
1043
|
-
normalUpdated=normalUpdated+(vertexInputs.normal{X}-vp_baseNormal)*uniforms.morphTargetInfluences[{X}];
|
|
1044
|
-
#else
|
|
1045
|
-
normalUpdated=normalUpdated+(vertexInputs.normal{X}-vertexInputs.normal)*uniforms.morphTargetInfluences[{X}];
|
|
1046
|
-
#endif
|
|
1047
|
-
#endif
|
|
1048
|
-
#ifdef MORPHTARGETS_TANGENT
|
|
1049
|
-
#ifdef USE_VERTEX_PULLING
|
|
1050
|
-
tangentUpdated=vec4f(tangentUpdated.xyz+(vertexInputs.tangent{X}-vp_baseTangent.xyz)*uniforms.morphTargetInfluences[{X}],tangentUpdated.a);
|
|
1051
|
-
#else
|
|
1052
|
-
tangentUpdated=vec4f(tangentUpdated.xyz+(vertexInputs.tangent{X}-vertexInputs.tangent.xyz)*uniforms.morphTargetInfluences[{X}],tangentUpdated.a);
|
|
1053
|
-
#endif
|
|
1054
|
-
#endif
|
|
1055
|
-
#ifdef MORPHTARGETS_UV
|
|
1056
|
-
#ifdef USE_VERTEX_PULLING
|
|
1057
|
-
uvUpdated=uvUpdated+(vertexInputs.uv_{X}-vp_baseUV)*uniforms.morphTargetInfluences[{X}];
|
|
1058
|
-
#else
|
|
1059
|
-
uvUpdated=uvUpdated+(vertexInputs.uv_{X}-vertexInputs.uv)*uniforms.morphTargetInfluences[{X}];
|
|
1060
|
-
#endif
|
|
1061
|
-
#endif
|
|
1062
|
-
#ifdef MORPHTARGETS_UV2
|
|
1063
|
-
#ifdef USE_VERTEX_PULLING
|
|
1064
|
-
uv2Updated=uv2Updated+(vertexInputs.uv2_{X}-vp_baseUV2)*uniforms.morphTargetInfluences[{X}];
|
|
1065
|
-
#else
|
|
1066
|
-
uv2Updated=uv2Updated+(vertexInputs.uv2_{X}-vertexInputs.uv2)*uniforms.morphTargetInfluences[{X}];
|
|
1067
|
-
#endif
|
|
1068
|
-
#endif
|
|
1069
|
-
#ifdef MORPHTARGETS_COLOR
|
|
1070
|
-
#ifdef USE_VERTEX_PULLING
|
|
1071
|
-
colorUpdated=colorUpdated+(vertexInputs.color{X}-vp_baseColor)*uniforms.morphTargetInfluences[{X}];
|
|
1075
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[x]||(t.ShaderStore.IncludesShadersStoreWGSL[x]=N),e.s(["shadowsVertexWGSL",0,{name:x,shader:N}],99967)},9613,e=>{"use strict";var t=e.i(25044);let r="vertexColorMixing",i=`#if defined(VERTEXCOLOR) || defined(INSTANCESCOLOR) && defined(INSTANCES)
|
|
1076
|
+
vertexOutputs.vColor=vec4f(1.0);
|
|
1077
|
+
#ifdef VERTEXCOLOR
|
|
1078
|
+
#ifdef VERTEXALPHA
|
|
1079
|
+
vertexOutputs.vColor*=colorUpdated;
|
|
1072
1080
|
#else
|
|
1073
|
-
|
|
1074
|
-
#endif
|
|
1075
|
-
#endif
|
|
1076
|
-
#endif
|
|
1077
|
-
#endif
|
|
1078
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[d]||(t.ShaderStore.IncludesShadersStoreWGSL[d]=s),e.s(["morphTargetsVertexWGSL",0,{name:d,shader:s}],34609)},19276,e=>{"use strict";var t=e.i(47150);let r="bumpVertex",i=`#if defined(BUMP) || defined(PARALLAX) || defined(CLEARCOAT_BUMP) || defined(ANISOTROPIC)
|
|
1079
|
-
#if defined(TANGENT) && defined(NORMAL)
|
|
1080
|
-
var tbnNormal: vec3f=normalize(normalUpdated);var tbnTangent: vec3f=normalize(tangentUpdated.xyz);var tbnBitangent: vec3f=cross(tbnNormal,tbnTangent)*tangentUpdated.w;var matTemp= mat3x3f(finalWorld[0].xyz,finalWorld[1].xyz,finalWorld[2].xyz)* mat3x3f(tbnTangent,tbnBitangent,tbnNormal);vertexOutputs.vTBN0=matTemp[0];vertexOutputs.vTBN1=matTemp[1];vertexOutputs.vTBN2=matTemp[2];
|
|
1081
|
+
vertexOutputs.vColor=vec4f(vertexOutputs.vColor.rgb*colorUpdated.rgb,vertexOutputs.vColor.a);
|
|
1081
1082
|
#endif
|
|
1082
1083
|
#endif
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
varying vTBN0: vec3f;varying vTBN1: vec3f;varying vTBN2: vec3f;
|
|
1084
|
+
#ifdef INSTANCESCOLOR
|
|
1085
|
+
vertexOutputs.vColor*=vertexInputs.instanceColor;
|
|
1086
1086
|
#endif
|
|
1087
1087
|
#endif
|
|
1088
|
-
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["
|
|
1088
|
+
`;t.ShaderStore.IncludesShadersStoreWGSL[r]||(t.ShaderStore.IncludesShadersStoreWGSL[r]=i),e.s(["vertexColorMixingWGSL",0,{name:r,shader:i}])},1708,e=>{"use strict";var t=e.i(25044),r=e.i(38267),i=e.i(95057),n=e.i(83809),a=e.i(27180),f=e.i(48585),o=e.i(65503),d=e.i(86165),s=e.i(93765),c=e.i(99043),l=e.i(82826),v=e.i(27066),u=e.i(85224),m=e.i(96528),p=e.i(1580),E=e.i(67667),_=e.i(3828),I=e.i(12203),S=e.i(99145),x=e.i(16068),N=e.i(69288),T=e.i(65997),R=e.i(99887),A=e.i(17840),V=e.i(81683),h=e.i(25797),L=e.i(94882),O=e.i(80820),M=e.i(54704),U=e.i(85749),g=e.i(14750),F=e.i(19820),C=e.i(15345),P=e.i(45320),D=e.i(99967),G=e.i(9613),b=e.i(78507);let y="pbrVertexShader",W=`#define PBR_VERTEX_SHADER
|
|
1089
1089
|
#include<pbrUboDeclaration>
|
|
1090
1090
|
#define CUSTOM_VERTEX_BEGIN
|
|
1091
1091
|
#ifndef USE_VERTEX_PULLING
|