@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,333 +1,4 @@
|
|
|
1
|
-
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,
|
|
2
|
-
const float LinearEncodePowerApprox=2.2;const float GammaEncodePowerApprox=1.0/LinearEncodePowerApprox;const vec3 LuminanceEncodeApprox=vec3(0.2126,0.7152,0.0722);const float Epsilon=0.0000001;
|
|
3
|
-
#define saturate(x) clamp(x,0.0,1.0)
|
|
4
|
-
#define absEps(x) abs(x)+Epsilon
|
|
5
|
-
#define maxEps(x) max(x,Epsilon)
|
|
6
|
-
#define saturateEps(x) clamp(x,Epsilon,1.0)
|
|
7
|
-
mat3 transposeMat3(mat3 inMatrix) {vec3 i0=inMatrix[0];vec3 i1=inMatrix[1];vec3 i2=inMatrix[2];mat3 outMatrix=mat3(
|
|
8
|
-
vec3(i0.x,i1.x,i2.x),
|
|
9
|
-
vec3(i0.y,i1.y,i2.y),
|
|
10
|
-
vec3(i0.z,i1.z,i2.z)
|
|
11
|
-
);return outMatrix;}
|
|
12
|
-
mat3 inverseMat3(mat3 inMatrix) {float a00=inMatrix[0][0],a01=inMatrix[0][1],a02=inMatrix[0][2];float a10=inMatrix[1][0],a11=inMatrix[1][1],a12=inMatrix[1][2];float a20=inMatrix[2][0],a21=inMatrix[2][1],a22=inMatrix[2][2];float b01=a22*a11-a12*a21;float b11=-a22*a10+a12*a20;float b21=a21*a10-a11*a20;float det=a00*b01+a01*b11+a02*b21;return mat3(b01,(-a22*a01+a02*a21),(a12*a01-a02*a11),
|
|
13
|
-
b11,(a22*a00-a02*a20),(-a12*a00+a02*a10),
|
|
14
|
-
b21,(-a21*a00+a01*a20),(a11*a00-a01*a10))/det;}
|
|
15
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
16
|
-
vec3 toLinearSpaceExact(vec3 color)
|
|
17
|
-
{vec3 nearZeroSection=0.0773993808*color;vec3 remainingSection=pow(0.947867299*(color+vec3(0.055)),vec3(2.4));
|
|
18
|
-
#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)
|
|
19
|
-
return mix(remainingSection,nearZeroSection,lessThanEqual(color,vec3(0.04045)));
|
|
20
|
-
#else
|
|
21
|
-
return
|
|
22
|
-
vec3(
|
|
23
|
-
color.r<=0.04045 ? nearZeroSection.r : remainingSection.r,
|
|
24
|
-
color.g<=0.04045 ? nearZeroSection.g : remainingSection.g,
|
|
25
|
-
color.b<=0.04045 ? nearZeroSection.b : remainingSection.b);
|
|
26
|
-
#endif
|
|
27
|
-
}
|
|
28
|
-
vec3 toGammaSpaceExact(vec3 color)
|
|
29
|
-
{vec3 nearZeroSection=12.92*color;vec3 remainingSection=1.055*pow(color,vec3(0.41666))-vec3(0.055);
|
|
30
|
-
#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)
|
|
31
|
-
return mix(remainingSection,nearZeroSection,lessThanEqual(color,vec3(0.0031308)));
|
|
32
|
-
#else
|
|
33
|
-
return
|
|
34
|
-
vec3(
|
|
35
|
-
color.r<=0.0031308 ? nearZeroSection.r : remainingSection.r,
|
|
36
|
-
color.g<=0.0031308 ? nearZeroSection.g : remainingSection.g,
|
|
37
|
-
color.b<=0.0031308 ? nearZeroSection.b : remainingSection.b);
|
|
38
|
-
#endif
|
|
39
|
-
}
|
|
40
|
-
#endif
|
|
41
|
-
float toLinearSpace(float color)
|
|
42
|
-
{
|
|
43
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
44
|
-
float nearZeroSection=0.0773993808*color;float remainingSection=pow(0.947867299*(color+0.055),2.4);return color<=0.04045 ? nearZeroSection : remainingSection;
|
|
45
|
-
#else
|
|
46
|
-
return pow(color,LinearEncodePowerApprox);
|
|
47
|
-
#endif
|
|
48
|
-
}
|
|
49
|
-
vec3 toLinearSpace(vec3 color)
|
|
50
|
-
{
|
|
51
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
52
|
-
return toLinearSpaceExact(color);
|
|
53
|
-
#else
|
|
54
|
-
return pow(color,vec3(LinearEncodePowerApprox));
|
|
55
|
-
#endif
|
|
56
|
-
}
|
|
57
|
-
vec4 toLinearSpace(vec4 color)
|
|
58
|
-
{
|
|
59
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
60
|
-
return vec4(toLinearSpaceExact(color.rgb),color.a);
|
|
61
|
-
#else
|
|
62
|
-
return vec4(pow(color.rgb,vec3(LinearEncodePowerApprox)),color.a);
|
|
63
|
-
#endif
|
|
64
|
-
}
|
|
65
|
-
float toGammaSpace(float color)
|
|
66
|
-
{
|
|
67
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
68
|
-
float nearZeroSection=12.92*color;float remainingSection=1.055*pow(color,0.41666)-0.055;return color<=0.0031308 ? nearZeroSection : remainingSection;
|
|
69
|
-
#else
|
|
70
|
-
return pow(color,GammaEncodePowerApprox);
|
|
71
|
-
#endif
|
|
72
|
-
}
|
|
73
|
-
vec3 toGammaSpace(vec3 color)
|
|
74
|
-
{
|
|
75
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
76
|
-
return toGammaSpaceExact(color);
|
|
77
|
-
#else
|
|
78
|
-
return pow(color,vec3(GammaEncodePowerApprox));
|
|
79
|
-
#endif
|
|
80
|
-
}
|
|
81
|
-
vec4 toGammaSpace(vec4 color)
|
|
82
|
-
{
|
|
83
|
-
#if USE_EXACT_SRGB_CONVERSIONS
|
|
84
|
-
return vec4(toGammaSpaceExact(color.rgb),color.a);
|
|
85
|
-
#else
|
|
86
|
-
return vec4(pow(color.rgb,vec3(GammaEncodePowerApprox)),color.a);
|
|
87
|
-
#endif
|
|
88
|
-
}
|
|
89
|
-
float square(float value)
|
|
90
|
-
{return value*value;}
|
|
91
|
-
vec3 square(vec3 value)
|
|
92
|
-
{return value*value;}
|
|
93
|
-
float pow5(float value) {float sq=value*value;return sq*sq*value;}
|
|
94
|
-
vec3 double_refract(vec3 I,vec3 N,float eta) {vec3 Tfront=refract(I,N,1.0/eta);vec3 Nback=normalize(reflect(N,Tfront));return refract(Tfront,-Nback,eta);}
|
|
95
|
-
float getLuminanceUnclamped(vec3 color)
|
|
96
|
-
{return dot(color,LuminanceEncodeApprox);}
|
|
97
|
-
float getLuminance(vec3 color)
|
|
98
|
-
{return saturate(getLuminanceUnclamped(color));}
|
|
99
|
-
float getRand(vec2 seed) {return fract(sin(dot(seed.xy ,vec2(12.9898,78.233)))*43758.5453);}
|
|
100
|
-
float dither(vec2 seed,float varianceAmount) {float rand=getRand(seed);float normVariance=varianceAmount/255.0;float dither=mix(-normVariance,normVariance,rand);return dither;}
|
|
101
|
-
const float rgbdMaxRange=255.;vec4 toRGBD(vec3 color) {float maxRGB=maxEps(max(color.r,max(color.g,color.b)));float D =max(rgbdMaxRange/maxRGB,1.);D =saturate(floor(D)/255.);vec3 rgb=color.rgb*D;rgb=toGammaSpace(rgb);return vec4(saturate(rgb),D);}
|
|
102
|
-
vec3 fromRGBD(vec4 rgbd) {rgbd.rgb=toLinearSpace(rgbd.rgb);return rgbd.rgb/rgbd.a;}
|
|
103
|
-
vec3 parallaxCorrectNormal( vec3 vertexPos,vec3 origVec,vec3 cubeSize,vec3 cubePos ) {vec3 invOrigVec=vec3(1.)/origVec;vec3 halfSize=cubeSize*0.5;vec3 intersecAtMaxPlane=(cubePos+halfSize-vertexPos)*invOrigVec;vec3 intersecAtMinPlane=(cubePos-halfSize-vertexPos)*invOrigVec;vec3 largestIntersec=max(intersecAtMaxPlane,intersecAtMinPlane);float distance=min(min(largestIntersec.x,largestIntersec.y),largestIntersec.z);vec3 intersectPositionWS=vertexPos+origVec*distance;return intersectPositionWS-cubePos;}
|
|
104
|
-
vec3 equirectangularToCubemapDirection(vec2 uv) {float longitude=uv.x*TWO_PI-PI;float latitude=HALF_PI-uv.y*PI;vec3 direction;direction.x=cos(latitude)*sin(longitude);direction.y=sin(latitude);direction.z=cos(latitude)*cos(longitude);return direction;}
|
|
105
|
-
float sqrtClamped(float value) {return sqrt(max(value,0.));}
|
|
106
|
-
float avg(vec3 value) {return dot(value,vec3(0.333333333));}
|
|
107
|
-
#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)
|
|
108
|
-
uint extractBits(uint value,int offset,int width) {return (value>>offset) & ((1u<<width)-1u);}
|
|
109
|
-
int onlyBitPosition(uint value) {return (floatBitsToInt(float(value))>>23)-0x7f;}
|
|
110
|
-
vec3 singleScatterToMultiScatterAlbedo(vec3 rho_ss) {vec3 s=sqrt(max(vec3(1.0)-rho_ss,vec3(0.0)));return (vec3(1.0)-s)*(vec3(1.0)-vec3(0.139)*s)/(vec3(1.0)+vec3(1.17)*s);}
|
|
111
|
-
vec3 multiScatterToSingleScatterAlbedo(vec3 rho_ms) {vec3 s=4.09712+4.20863*rho_ms-sqrt(9.59217+41.6808*rho_ms+17.7126*rho_ms*rho_ms);return 1.0-s*s;}
|
|
112
|
-
vec3 multiScatterToSingleScatterAlbedo(vec3 rho_ms,float aniso) {vec3 s=4.09712+4.20863*rho_ms-sqrt(9.59217+41.6808*rho_ms+17.7126*rho_ms*rho_ms);return (1.0-s*s)/maxEps(1.0-aniso*s*s);}
|
|
113
|
-
float min3(vec3 v) {return min(v.x,min(v.y,v.z));}
|
|
114
|
-
float max3(vec3 v) {return max(v.x,max(v.y,v.z));}
|
|
115
|
-
float uint2float(uint i) {return uintBitsToFloat(0x3F800000u | (i>>9u))-1.0;}
|
|
116
|
-
vec2 plasticSequence(const uint rstate) {return vec2(uint2float(rstate*3242174889u),
|
|
117
|
-
uint2float(rstate*2447445414u));}
|
|
118
|
-
#endif
|
|
119
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["helperFunctions",0,{name:t,shader:r}])},68381,e=>{"use strict";var i=e.i(47150);let t="logDepthDeclaration",r=`#ifdef LOGARITHMICDEPTH
|
|
120
|
-
uniform float logarithmicDepthConstant;varying float vFragmentDepth;
|
|
121
|
-
#endif
|
|
122
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["logDepthDeclaration",0,{name:t,shader:r}])},67827,e=>{"use strict";var i=e.i(47150);let t="sceneUboDeclaration",r=`layout(std140,column_major) uniform;uniform Scene {mat4 viewProjection;
|
|
123
|
-
#ifdef MULTIVIEW
|
|
124
|
-
mat4 viewProjectionR;
|
|
125
|
-
#endif
|
|
126
|
-
mat4 view;mat4 projection;vec4 vEyePosition;mat4 inverseProjection;};
|
|
127
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["sceneUboDeclaration",0,{name:t,shader:r}])},38605,e=>{"use strict";var i=e.i(47150);let t="meshUboDeclaration",r=`#ifdef WEBGL2
|
|
128
|
-
uniform mat4 world;uniform float visibility;
|
|
129
|
-
#else
|
|
130
|
-
layout(std140,column_major) uniform;uniform Mesh
|
|
131
|
-
{mat4 world;float visibility;};
|
|
132
|
-
#endif
|
|
133
|
-
#define WORLD_UBO
|
|
134
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["meshUboDeclaration",0,{name:t,shader:r}])},30868,e=>{"use strict";var i=e.i(47150);let t="mainUVVaryingDeclaration",r=`#ifdef MAINUV{X}
|
|
135
|
-
varying vec2 vMainUV{X};
|
|
136
|
-
#endif
|
|
137
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["mainUVVaryingDeclaration",0,{name:t,shader:r}])},88913,e=>{"use strict";var i=e.i(47150);let t="harmonicsFunctions",r=`#ifdef USESPHERICALFROMREFLECTIONMAP
|
|
138
|
-
#ifdef SPHERICAL_HARMONICS
|
|
139
|
-
vec3 computeEnvironmentIrradiance(vec3 normal) {return vSphericalL00
|
|
140
|
-
+ vSphericalL1_1*(normal.y)
|
|
141
|
-
+ vSphericalL10*(normal.z)
|
|
142
|
-
+ vSphericalL11*(normal.x)
|
|
143
|
-
+ vSphericalL2_2*(normal.y*normal.x)
|
|
144
|
-
+ vSphericalL2_1*(normal.y*normal.z)
|
|
145
|
-
+ vSphericalL20*((3.0*normal.z*normal.z)-1.0)
|
|
146
|
-
+ vSphericalL21*(normal.z*normal.x)
|
|
147
|
-
+ vSphericalL22*(normal.x*normal.x-(normal.y*normal.y));}
|
|
148
|
-
#else
|
|
149
|
-
vec3 computeEnvironmentIrradiance(vec3 normal) {float Nx=normal.x;float Ny=normal.y;float Nz=normal.z;vec3 C1=vSphericalZZ.rgb;vec3 Cx=vSphericalX.rgb;vec3 Cy=vSphericalY.rgb;vec3 Cz=vSphericalZ.rgb;vec3 Cxx_zz=vSphericalXX_ZZ.rgb;vec3 Cyy_zz=vSphericalYY_ZZ.rgb;vec3 Cxy=vSphericalXY.rgb;vec3 Cyz=vSphericalYZ.rgb;vec3 Czx=vSphericalZX.rgb;vec3 a1=Cyy_zz*Ny+Cy;vec3 a2=Cyz*Nz+a1;vec3 b1=Czx*Nz+Cx;vec3 b2=Cxy*Ny+b1;vec3 b3=Cxx_zz*Nx+b2;vec3 t1=Cz *Nz+C1;vec3 t2=a2 *Ny+t1;vec3 t3=b3 *Nx+t2;return t3;}
|
|
150
|
-
#endif
|
|
151
|
-
#endif
|
|
152
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["harmonicsFunctions",0,{name:t,shader:r}])},98680,e=>{"use strict";var i=e.i(47150);let t="pbrBRDFFunctions",r=`#define FRESNEL_MAXIMUM_ON_ROUGH 0.25
|
|
153
|
-
#define BRDF_DIFFUSE_MODEL_EON 0
|
|
154
|
-
#define BRDF_DIFFUSE_MODEL_BURLEY 1
|
|
155
|
-
#define BRDF_DIFFUSE_MODEL_LAMBERT 2
|
|
156
|
-
#define BRDF_DIFFUSE_MODEL_LEGACY 3
|
|
157
|
-
#define DIELECTRIC_SPECULAR_MODEL_GLTF 0
|
|
158
|
-
#define DIELECTRIC_SPECULAR_MODEL_OPENPBR 1
|
|
159
|
-
#define CONDUCTOR_SPECULAR_MODEL_GLTF 0
|
|
160
|
-
#define CONDUCTOR_SPECULAR_MODEL_OPENPBR 1
|
|
161
|
-
#if !defined(PBR_VERTEX_SHADER) && !defined(OPENPBR_VERTEX_SHADER)
|
|
162
|
-
#ifdef MS_BRDF_ENERGY_CONSERVATION
|
|
163
|
-
vec3 getEnergyConservationFactor(const vec3 specularEnvironmentR0,const vec3 environmentBrdf) {return 1.0+specularEnvironmentR0*(1.0/environmentBrdf.y-1.0);}
|
|
164
|
-
#endif
|
|
165
|
-
#if CONDUCTOR_SPECULAR_MODEL==CONDUCTOR_SPECULAR_MODEL_OPENPBR
|
|
166
|
-
#define F82_COS_THETA_MAX 0.142857143
|
|
167
|
-
#define F82_ONE_MINUS_CTM_POW5 0.462664366
|
|
168
|
-
#define F82_ONE_MINUS_CTM_POW6 0.396569457
|
|
169
|
-
#define F82_B_DENOMINATOR_RECIP 17.6512785
|
|
170
|
-
#define BRDF_Z_SCALE 16.0
|
|
171
|
-
vec3 getF82Specular(float NdotV,vec3 F0,vec3 edgeTint,float roughness) {vec3 white_minus_F0=vec3(1.0)-F0;vec3 b=(F0+white_minus_F0*F82_ONE_MINUS_CTM_POW5)*(vec3(1.0)-edgeTint)*F82_B_DENOMINATOR_RECIP;float cos_theta=max(roughness,NdotV);float one_minus_cos_theta=1.0-cos_theta;vec3 offset_from_F0=(white_minus_F0-b*cos_theta*one_minus_cos_theta)*pow(one_minus_cos_theta,5.0);return clamp(F0+offset_from_F0,0.0,1.0);}
|
|
172
|
-
vec3 getF82B(vec3 F0,vec3 edgeTint) {return (F0+(vec3(1.0)-F0)*F82_ONE_MINUS_CTM_POW5)*(vec3(1.0)-edgeTint)*F82_B_DENOMINATOR_RECIP;}
|
|
173
|
-
vec3 getF82DirectionalAlbedo(vec3 F0,vec3 F90,vec3 b,vec3 environmentBrdf) {return (F90-F0)*environmentBrdf.x+F0*environmentBrdf.y-b*environmentBrdf.z;}
|
|
174
|
-
vec3 getF82AverageFresnel(vec3 F0,vec3 b) {return F0+(vec3(1.0)-F0)/21.0-b/126.0;}
|
|
175
|
-
#endif
|
|
176
|
-
#ifdef FUZZENVIRONMENTBRDF
|
|
177
|
-
vec3 getFuzzBRDFLookup(float NdotV,float perceptualRoughness) {vec2 UV=vec2(perceptualRoughness,NdotV);vec4 brdfLookup=texture2D(environmentFuzzBrdfSampler,UV);const vec2 RiRange=vec2(0.0,0.75);const vec2 ARange =vec2(0.005,0.88);const vec2 BRange =vec2(-0.18,0.002);brdfLookup.r=mix(ARange.x, ARange.y, brdfLookup.r);brdfLookup.g=mix(BRange.x, BRange.y, brdfLookup.g);brdfLookup.b=mix(RiRange.x,RiRange.y,brdfLookup.b);return brdfLookup.rgb;}
|
|
178
|
-
#endif
|
|
179
|
-
#ifdef ENVIRONMENTBRDF
|
|
180
|
-
vec3 getBRDFLookup(float NdotV,float perceptualRoughness) {vec2 UV=vec2(NdotV,perceptualRoughness);vec4 brdfLookup=texture2D(environmentBrdfSampler,UV);
|
|
181
|
-
#ifdef ENVIRONMENTBRDF_RGBD
|
|
182
|
-
brdfLookup.rgb=fromRGBD(brdfLookup.rgba);
|
|
183
|
-
#endif
|
|
184
|
-
return brdfLookup.rgb;}
|
|
185
|
-
vec3 getReflectanceFromBRDFLookup(const vec3 specularEnvironmentR0,const vec3 specularEnvironmentR90,const vec3 environmentBrdf) {
|
|
186
|
-
#ifdef BRDF_V_HEIGHT_CORRELATED
|
|
187
|
-
vec3 reflectance=(specularEnvironmentR90-specularEnvironmentR0)*environmentBrdf.x+specularEnvironmentR0*environmentBrdf.y;
|
|
188
|
-
#else
|
|
189
|
-
vec3 reflectance=specularEnvironmentR0*environmentBrdf.x+specularEnvironmentR90*environmentBrdf.y;
|
|
190
|
-
#endif
|
|
191
|
-
return reflectance;}
|
|
192
|
-
vec3 getReflectanceFromBRDFLookup(const vec3 specularEnvironmentR0,const vec3 environmentBrdf) {
|
|
193
|
-
#ifdef BRDF_V_HEIGHT_CORRELATED
|
|
194
|
-
vec3 reflectance=mix(environmentBrdf.xxx,environmentBrdf.yyy,specularEnvironmentR0);
|
|
195
|
-
#else
|
|
196
|
-
vec3 reflectance=specularEnvironmentR0*environmentBrdf.x+environmentBrdf.y;
|
|
197
|
-
#endif
|
|
198
|
-
return reflectance;}
|
|
199
|
-
#endif
|
|
200
|
-
/* NOT USED
|
|
201
|
-
#if defined(SHEEN) && defined(SHEEN_SOFTER)
|
|
202
|
-
float getBRDFLookupCharlieSheen(float NdotV,float perceptualRoughness)
|
|
203
|
-
{float c=1.0-NdotV;float c3=c*c*c;return 0.65584461*c3+1.0/(4.16526551+exp(-7.97291361*perceptualRoughness+6.33516894));}
|
|
204
|
-
#endif
|
|
205
|
-
*/
|
|
206
|
-
#if !defined(ENVIRONMENTBRDF) || defined(REFLECTIONMAP_SKYBOX) || defined(ALPHAFRESNEL)
|
|
207
|
-
vec3 getReflectanceFromAnalyticalBRDFLookup_Jones(float VdotN,vec3 reflectance0,vec3 reflectance90,float smoothness)
|
|
208
|
-
{float weight=mix(FRESNEL_MAXIMUM_ON_ROUGH,1.0,smoothness);return reflectance0+weight*(reflectance90-reflectance0)*pow5(saturate(1.0-VdotN));}
|
|
209
|
-
#endif
|
|
210
|
-
#if defined(SHEEN) && defined(ENVIRONMENTBRDF)
|
|
211
|
-
/**
|
|
212
|
-
* The sheen BRDF not containing F can be easily stored in the blue channel of the BRDF texture.
|
|
213
|
-
* The blue channel contains DCharlie*VAshikhmin*NdotL as a lokkup table
|
|
214
|
-
*/
|
|
215
|
-
vec3 getSheenReflectanceFromBRDFLookup(const vec3 reflectance0,const vec3 environmentBrdf) {vec3 sheenEnvironmentReflectance=reflectance0*environmentBrdf.b;return sheenEnvironmentReflectance;}
|
|
216
|
-
#endif
|
|
217
|
-
vec3 fresnelSchlickGGX(float VdotH,vec3 reflectance0,vec3 reflectance90)
|
|
218
|
-
{return reflectance0+(reflectance90-reflectance0)*pow5(1.0-VdotH);}
|
|
219
|
-
float fresnelSchlickGGX(float VdotH,float reflectance0,float reflectance90)
|
|
220
|
-
{return reflectance0+(reflectance90-reflectance0)*pow5(1.0-VdotH);}
|
|
221
|
-
#ifdef CLEARCOAT
|
|
222
|
-
vec3 getR0RemappedForClearCoat(vec3 f0) {
|
|
223
|
-
#ifdef CLEARCOAT_DEFAULTIOR
|
|
224
|
-
#ifdef MOBILE
|
|
225
|
-
return saturate(f0*(f0*0.526868+0.529324)-0.0482256);
|
|
226
|
-
#else
|
|
227
|
-
return saturate(f0*(f0*(0.941892-0.263008*f0)+0.346479)-0.0285998);
|
|
228
|
-
#endif
|
|
229
|
-
#else
|
|
230
|
-
vec3 s=sqrt(f0);vec3 t=(vClearCoatRefractionParams.z+vClearCoatRefractionParams.w*s)/(vClearCoatRefractionParams.w+vClearCoatRefractionParams.z*s);return square(t);
|
|
231
|
-
#endif
|
|
232
|
-
}
|
|
233
|
-
#endif
|
|
234
|
-
#ifdef IRIDESCENCE
|
|
235
|
-
const mat3 XYZ_TO_REC709=mat3(
|
|
236
|
-
3.2404542,-0.9692660, 0.0556434,
|
|
237
|
-
-1.5371385, 1.8760108,-0.2040259,
|
|
238
|
-
-0.4985314, 0.0415560, 1.0572252
|
|
239
|
-
);vec3 getIORTfromAirToSurfaceR0(vec3 f0) {vec3 sqrtF0=sqrt(f0);return (1.+sqrtF0)/(1.-sqrtF0);}
|
|
240
|
-
vec3 getR0fromIORs(vec3 iorT,float iorI) {return square((iorT-vec3(iorI))/(iorT+vec3(iorI)));}
|
|
241
|
-
float getR0fromIORs(float iorT,float iorI) {return square((iorT-iorI)/(iorT+iorI));}
|
|
242
|
-
vec3 evalSensitivity(float opd,vec3 shift) {float phase=2.0*PI*opd*1.0e-9;const vec3 val=vec3(5.4856e-13,4.4201e-13,5.2481e-13);const vec3 pos=vec3(1.6810e+06,1.7953e+06,2.2084e+06);const vec3 var=vec3(4.3278e+09,9.3046e+09,6.6121e+09);vec3 xyz=val*sqrt(2.0*PI*var)*cos(pos*phase+shift)*exp(-square(phase)*var);xyz.x+=9.7470e-14*sqrt(2.0*PI*4.5282e+09)*cos(2.2399e+06*phase+shift[0])*exp(-4.5282e+09*square(phase));xyz/=1.0685e-7;vec3 srgb=XYZ_TO_REC709*xyz;return srgb;}
|
|
243
|
-
vec3 evalIridescence(float outsideIOR,float eta2,float cosTheta1,float thinFilmThickness,vec3 baseF0) {vec3 I=vec3(1.0);float iridescenceIOR=mix(outsideIOR,eta2,smoothstep(0.0,0.03,thinFilmThickness));float sinTheta2Sq=square(outsideIOR/iridescenceIOR)*(1.0-square(cosTheta1));float cosTheta2Sq=1.0-sinTheta2Sq;if (cosTheta2Sq<0.0) {return I;}
|
|
244
|
-
float cosTheta2=sqrt(cosTheta2Sq);float R0=getR0fromIORs(iridescenceIOR,outsideIOR);float R12=fresnelSchlickGGX(cosTheta1,R0,1.);float R21=R12;float T121=1.0-R12;float phi12=0.0;if (iridescenceIOR<outsideIOR) phi12=PI;float phi21=PI-phi12;vec3 baseIOR=getIORTfromAirToSurfaceR0(clamp(baseF0,0.0,0.9999));
|
|
245
|
-
vec3 R1=getR0fromIORs(baseIOR,iridescenceIOR);float maxR1=max(R1.r,max(R1.g,R1.b));if (maxR1<1e-6) {return max(vec3(R12),vec3(0.0));}
|
|
246
|
-
vec3 R23=fresnelSchlickGGX(cosTheta2,R1,vec3(1.));vec3 phi23=vec3(0.0);if (baseIOR[0]<iridescenceIOR) phi23[0]=PI;if (baseIOR[1]<iridescenceIOR) phi23[1]=PI;if (baseIOR[2]<iridescenceIOR) phi23[2]=PI;float opd=2.0*iridescenceIOR*thinFilmThickness*cosTheta2;vec3 phi=vec3(phi21)+phi23;vec3 R123=clamp(R12*R23,1e-5,0.9999);vec3 r123=sqrt(R123);vec3 Rs=square(T121)*R23/(vec3(1.0)-R123);vec3 C0=R12+Rs;I=C0;vec3 Cm=Rs-T121;for (int m=1; m<=2; ++m)
|
|
247
|
-
{Cm*=r123;vec3 Sm=2.0*evalSensitivity(float(m)*opd,float(m)*phi);I+=Cm*Sm;}
|
|
248
|
-
return max(I,vec3(0.0));}
|
|
249
|
-
#endif
|
|
250
|
-
float normalDistributionFunction_TrowbridgeReitzGGX(float NdotH,float alphaG)
|
|
251
|
-
{float a2=square(alphaG);float d=NdotH*NdotH*(a2-1.0)+1.0;return a2/(PI*d*d);}
|
|
252
|
-
#ifdef SHEEN
|
|
253
|
-
float normalDistributionFunction_CharlieSheen(float NdotH,float alphaG)
|
|
254
|
-
{float invR=1./alphaG;float cos2h=NdotH*NdotH;float sin2h=1.-cos2h;return (2.+invR)*pow(sin2h,invR*.5)/(2.*PI);}
|
|
255
|
-
#endif
|
|
256
|
-
#ifdef ANISOTROPIC
|
|
257
|
-
float normalDistributionFunction_BurleyGGX_Anisotropic(float NdotH,float TdotH,float BdotH,const vec2 alphaTB) {float a2=alphaTB.x*alphaTB.y;vec3 v=vec3(alphaTB.y*TdotH,alphaTB.x *BdotH,a2*NdotH);float v2=dot(v,v);float w2=a2/v2;return a2*w2*w2*RECIPROCAL_PI;}
|
|
258
|
-
#endif
|
|
259
|
-
#ifdef BRDF_V_HEIGHT_CORRELATED
|
|
260
|
-
float smithVisibility_GGXCorrelated(float NdotL,float NdotV,float alphaG) {
|
|
261
|
-
#ifdef MOBILE
|
|
262
|
-
float GGXV=NdotL*(NdotV*(1.0-alphaG)+alphaG);float GGXL=NdotV*(NdotL*(1.0-alphaG)+alphaG);return 0.5/(GGXV+GGXL);
|
|
263
|
-
#else
|
|
264
|
-
float a2=alphaG*alphaG;float GGXV=NdotL*sqrt(NdotV*(NdotV-a2*NdotV)+a2);float GGXL=NdotV*sqrt(NdotL*(NdotL-a2*NdotL)+a2);return 0.5/(GGXV+GGXL);
|
|
265
|
-
#endif
|
|
266
|
-
}
|
|
267
|
-
#else
|
|
268
|
-
float smithVisibilityG1_TrowbridgeReitzGGXFast(float dot,float alphaG)
|
|
269
|
-
{
|
|
270
|
-
#ifdef MOBILE
|
|
271
|
-
return 1.0/(dot+alphaG+(1.0-alphaG)*dot ));
|
|
272
|
-
#else
|
|
273
|
-
float alphaSquared=alphaG*alphaG;return 1.0/(dot+sqrt(alphaSquared+(1.0-alphaSquared)*dot*dot));
|
|
274
|
-
#endif
|
|
275
|
-
}
|
|
276
|
-
float smithVisibility_TrowbridgeReitzGGXFast(float NdotL,float NdotV,float alphaG)
|
|
277
|
-
{float visibility=smithVisibilityG1_TrowbridgeReitzGGXFast(NdotL,alphaG)*smithVisibilityG1_TrowbridgeReitzGGXFast(NdotV,alphaG);return visibility;}
|
|
278
|
-
#endif
|
|
279
|
-
#ifdef ANISOTROPIC
|
|
280
|
-
float smithVisibility_GGXCorrelated_Anisotropic(float NdotL,float NdotV,float TdotV,float BdotV,float TdotL,float BdotL,const vec2 alphaTB) {float lambdaV=NdotL*length(vec3(alphaTB.x*TdotV,alphaTB.y*BdotV,NdotV));float lambdaL=NdotV*length(vec3(alphaTB.x*TdotL,alphaTB.y*BdotL,NdotL));float v=0.5/(lambdaV+lambdaL);return v;}
|
|
281
|
-
#endif
|
|
282
|
-
#ifdef CLEARCOAT
|
|
283
|
-
float visibility_Kelemen(float VdotH) {return 0.25/(VdotH*VdotH); }
|
|
284
|
-
#endif
|
|
285
|
-
#ifdef SHEEN
|
|
286
|
-
float visibility_Ashikhmin(float NdotL,float NdotV)
|
|
287
|
-
{return 1./(4.*(NdotL+NdotV-NdotL*NdotV));}
|
|
288
|
-
/* NOT USED
|
|
289
|
-
#ifdef SHEEN_SOFTER
|
|
290
|
-
float l(float x,float alphaG)
|
|
291
|
-
{float oneMinusAlphaSq=(1.0-alphaG)*(1.0-alphaG);float a=mix(21.5473,25.3245,oneMinusAlphaSq);float b=mix(3.82987,3.32435,oneMinusAlphaSq);float c=mix(0.19823,0.16801,oneMinusAlphaSq);float d=mix(-1.97760,-1.27393,oneMinusAlphaSq);float e=mix(-4.32054,-4.85967,oneMinusAlphaSq);return a/(1.0+b*pow(x,c))+d*x+e;}
|
|
292
|
-
float lambdaSheen(float cosTheta,float alphaG)
|
|
293
|
-
{return abs(cosTheta)<0.5 ? exp(l(cosTheta,alphaG)) : exp(2.0*l(0.5,alphaG)-l(1.0-cosTheta,alphaG));}
|
|
294
|
-
float visibility_CharlieSheen(float NdotL,float NdotV,float alphaG)
|
|
295
|
-
{float G=1.0/(1.0+lambdaSheen(NdotV,alphaG)+lambdaSheen(NdotL,alphaG));return G/(4.0*NdotV*NdotL);}
|
|
296
|
-
#endif
|
|
297
|
-
*/
|
|
298
|
-
#endif
|
|
299
|
-
float diffuseBRDF_Burley(float NdotL,float NdotV,float VdotH,float roughness) {float diffuseFresnelNV=pow5(saturateEps(1.0-NdotL));float diffuseFresnelNL=pow5(saturateEps(1.0-NdotV));float diffuseFresnel90=0.5+2.0*VdotH*VdotH*roughness;float fresnel =
|
|
300
|
-
(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNL) *
|
|
301
|
-
(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNV);return fresnel/PI;}
|
|
302
|
-
const float constant1_FON=0.5-2.0/(3.0*PI);const float constant2_FON=2.0/3.0-28.0/(15.0*PI);float E_FON_approx(float mu,float roughness)
|
|
303
|
-
{float sigma=roughness;
|
|
304
|
-
float mucomp=1.0-mu;float mucomp2=mucomp*mucomp;const mat2 Gcoeffs=mat2(0.0571085289,-0.332181442,
|
|
305
|
-
0.491881867,0.0714429953);float GoverPi=dot(Gcoeffs*vec2(mucomp,mucomp2),vec2(1.0,mucomp2));return (1.0+sigma*GoverPi)/(1.0+constant1_FON*sigma);}
|
|
306
|
-
vec3 diffuseBRDF_EON(vec3 albedo,float roughness,float NdotL,float NdotV,float LdotV)
|
|
307
|
-
{vec3 rho=albedo;float sigma=roughness;
|
|
308
|
-
float mu_i=NdotL;
|
|
309
|
-
float mu_o=NdotV;
|
|
310
|
-
float s=LdotV-mu_i*mu_o;
|
|
311
|
-
float sovertF=s>0.0 ? s/max(mu_i,mu_o) : s;
|
|
312
|
-
float AF=1.0/(1.0+constant1_FON*sigma);
|
|
313
|
-
vec3 f_ss=(rho*RECIPROCAL_PI)*AF*(1.0+sigma*sovertF);
|
|
314
|
-
float EFo=E_FON_approx(mu_o,sigma);
|
|
315
|
-
float EFi=E_FON_approx(mu_i,sigma);
|
|
316
|
-
float avgEF=AF*(1.0+constant2_FON*sigma);
|
|
317
|
-
vec3 rho_ms=(rho*rho)*avgEF/(vec3(1.0)-rho*(1.0-avgEF));const float eps=1.0e-7;vec3 f_ms=(rho_ms*RECIPROCAL_PI)*max(eps,1.0-EFo)
|
|
318
|
-
* max(eps,1.0-EFi)
|
|
319
|
-
/ max(eps,1.0-avgEF);return (f_ss+f_ms);}
|
|
320
|
-
#ifdef SS_TRANSLUCENCY
|
|
321
|
-
vec3 transmittanceBRDF_Burley(const vec3 tintColor,const vec3 diffusionDistance,float thickness) {vec3 S=1./maxEps(diffusionDistance);vec3 temp=exp((-0.333333333*thickness)*S);return tintColor.rgb*0.25*(temp*temp*temp+3.0*temp);}
|
|
322
|
-
float computeWrappedDiffuseNdotL(float NdotL,float w) {float t=1.0+w;float invt2=1.0/square(t);return saturate((NdotL+w)*invt2);}
|
|
323
|
-
#endif
|
|
324
|
-
#endif
|
|
325
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["pbrBRDFFunctions",0,{name:t,shader:r}])},73205,e=>{"use strict";var i=e.i(47150);e.i(67827),e.i(38605);let t="pbrUboDeclaration",r=`layout(std140,column_major) uniform;uniform Material {vec2 vAlbedoInfos;vec2 vBaseWeightInfos;vec2 vBaseDiffuseRoughnessInfos;vec4 vAmbientInfos;vec2 vOpacityInfos;vec2 vEmissiveInfos;vec2 vLightmapInfos;vec3 vReflectivityInfos;vec2 vMicroSurfaceSamplerInfos;vec3 vBumpInfos;mat4 albedoMatrix;mat4 baseWeightMatrix;mat4 baseDiffuseRoughnessMatrix;mat4 ambientMatrix;mat4 opacityMatrix;mat4 emissiveMatrix;mat4 lightmapMatrix;mat4 reflectivityMatrix;mat4 microSurfaceSamplerMatrix;mat4 bumpMatrix;vec2 vTangentSpaceParams;vec4 vAlbedoColor;float baseWeight;float baseDiffuseRoughness;vec4 vLightingIntensity;float pointSize;vec4 vReflectivityColor;vec3 vEmissiveColor;vec3 vAmbientColor;vec2 vDebugMode;vec4 vMetallicReflectanceFactors;vec2 vMetallicReflectanceInfos;mat4 metallicReflectanceMatrix;vec2 vReflectanceInfos;mat4 reflectanceMatrix;vec4 cameraInfo;vec4 vTextureRepetitionHexTilingParams;vec2 vReflectionInfos;mat4 reflectionMatrix;vec3 vReflectionMicrosurfaceInfos;vec3 vReflectionPosition;vec3 vReflectionSize;vec2 vReflectionFilteringInfo;vec3 vReflectionDominantDirection;vec3 vReflectionColor;vec3 vSphericalL00;vec3 vSphericalL1_1;vec3 vSphericalL10;vec3 vSphericalL11;vec3 vSphericalL2_2;vec3 vSphericalL2_1;vec3 vSphericalL20;vec3 vSphericalL21;vec3 vSphericalL22;vec3 vSphericalX;vec3 vSphericalY;vec3 vSphericalZ;vec3 vSphericalXX_ZZ;vec3 vSphericalYY_ZZ;vec3 vSphericalZZ;vec3 vSphericalXY;vec3 vSphericalYZ;vec3 vSphericalZX;
|
|
326
|
-
#define ADDITIONAL_UBO_DECLARATION
|
|
327
|
-
};
|
|
328
|
-
#include<sceneUboDeclaration>
|
|
329
|
-
#include<meshUboDeclaration>
|
|
330
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["pbrUboDeclaration",0,{name:t,shader:r}])},36406,36178,42421,47692,51540,95178,e=>{"use strict";var i=e.i(47150);let t="bonesDeclaration",r=`#if NUM_BONE_INFLUENCERS>0
|
|
1
|
+
(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,12211,60661,88305,16450,67412,11832,e=>{"use strict";var i=e.i(25044);let t="bonesDeclaration",r=`#if NUM_BONE_INFLUENCERS>0
|
|
331
2
|
attribute vec4 matricesIndices;attribute vec4 matricesWeights;
|
|
332
3
|
#if NUM_BONE_INFLUENCERS>4
|
|
333
4
|
attribute vec4 matricesIndicesExtra;attribute vec4 matricesWeightsExtra;
|
|
@@ -356,7 +27,7 @@ return mat4(m0,m1,m2,m3);
|
|
|
356
27
|
#endif
|
|
357
28
|
#endif
|
|
358
29
|
#endif
|
|
359
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["bonesDeclaration",0,{name:t,shader:r}],
|
|
30
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["bonesDeclaration",0,{name:t,shader:r}],12211);let a="bakedVertexAnimationDeclaration",n=`#ifdef BAKED_VERTEX_ANIMATION_TEXTURE
|
|
360
31
|
uniform float bakedVertexAnimationTime;
|
|
361
32
|
#if !defined(WEBGL2) && !defined(WEBGPU)
|
|
362
33
|
uniform vec2 bakedVertexAnimationTextureSizeInverted;
|
|
@@ -375,7 +46,7 @@ float offset=index*4.0;float frameUV=(frame+0.5)*bakedVertexAnimationTextureSize
|
|
|
375
46
|
#endif
|
|
376
47
|
}
|
|
377
48
|
#endif
|
|
378
|
-
`;i.ShaderStore.IncludesShadersStore[a]||(i.ShaderStore.IncludesShadersStore[a]=n),e.s(["bakedVertexAnimationDeclaration",0,{name:a,shader:n}],
|
|
49
|
+
`;i.ShaderStore.IncludesShadersStore[a]||(i.ShaderStore.IncludesShadersStore[a]=n),e.s(["bakedVertexAnimationDeclaration",0,{name:a,shader:n}],60661);let o="instancesDeclaration",f=`#ifdef INSTANCES
|
|
379
50
|
attribute vec4 world0;attribute vec4 world1;attribute vec4 world2;attribute vec4 world3;
|
|
380
51
|
#ifdef INSTANCESCOLOR
|
|
381
52
|
attribute vec4 instanceColor;
|
|
@@ -397,7 +68,7 @@ uniform mat4 world;
|
|
|
397
68
|
uniform mat4 previousWorld;
|
|
398
69
|
#endif
|
|
399
70
|
#endif
|
|
400
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=f),e.s(["instancesDeclaration",0,{name:o,shader:f}],
|
|
71
|
+
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=f),e.s(["instancesDeclaration",0,{name:o,shader:f}],88305);let c="instancesVertex",d=`#ifdef INSTANCES
|
|
401
72
|
mat4 finalWorld=mat4(world0,world1,world2,world3);
|
|
402
73
|
#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || defined(PREPASS_VELOCITY_LINEAR) || defined(VELOCITY_LINEAR)
|
|
403
74
|
mat4 finalPreviousWorld=mat4(previousWorld0,previousWorld1,
|
|
@@ -415,7 +86,7 @@ mat4 finalWorld=world;
|
|
|
415
86
|
mat4 finalPreviousWorld=previousWorld;
|
|
416
87
|
#endif
|
|
417
88
|
#endif
|
|
418
|
-
`;i.ShaderStore.IncludesShadersStore[c]||(i.ShaderStore.IncludesShadersStore[c]=d),e.s(["instancesVertex",0,{name:c,shader:d}],
|
|
89
|
+
`;i.ShaderStore.IncludesShadersStore[c]||(i.ShaderStore.IncludesShadersStore[c]=d),e.s(["instancesVertex",0,{name:c,shader:d}],16450);let l="bonesVertex",s=`#ifndef BAKED_VERTEX_ANIMATION_TEXTURE
|
|
419
90
|
#if NUM_BONE_INFLUENCERS>0
|
|
420
91
|
mat4 influence;
|
|
421
92
|
#ifdef BONETEXTURE
|
|
@@ -468,7 +139,7 @@ influence+=mBones[int(matricesIndicesExtra[3])]*matricesWeightsExtra[3];
|
|
|
468
139
|
finalWorld=finalWorld*influence;
|
|
469
140
|
#endif
|
|
470
141
|
#endif
|
|
471
|
-
`;i.ShaderStore.IncludesShadersStore[l]||(i.ShaderStore.IncludesShadersStore[l]=s),e.s(["bonesVertex",0,{name:l,shader:s}],
|
|
142
|
+
`;i.ShaderStore.IncludesShadersStore[l]||(i.ShaderStore.IncludesShadersStore[l]=s),e.s(["bonesVertex",0,{name:l,shader:s}],67412);let E="bakedVertexAnimation",m=`#ifdef BAKED_VERTEX_ANIMATION_TEXTURE
|
|
472
143
|
{
|
|
473
144
|
#ifdef INSTANCES
|
|
474
145
|
#define BVASNAME bakedVertexAnimationSettingsInstanced
|
|
@@ -499,7 +170,17 @@ VATInfluence+=readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,matricesIn
|
|
|
499
170
|
#endif
|
|
500
171
|
finalWorld=finalWorld*VATInfluence;}
|
|
501
172
|
#endif
|
|
502
|
-
`;i.ShaderStore.IncludesShadersStore[E]||(i.ShaderStore.IncludesShadersStore[E]=m),e.s(["bakedVertexAnimation",0,{name:E,shader:m}],
|
|
173
|
+
`;i.ShaderStore.IncludesShadersStore[E]||(i.ShaderStore.IncludesShadersStore[E]=m),e.s(["bakedVertexAnimation",0,{name:E,shader:m}],11832)},11218,e=>{"use strict";var i=e.i(25044);let t="bumpVertex",r=`#if defined(BUMP) || defined(PARALLAX) || defined(CLEARCOAT_BUMP) || defined(ANISOTROPIC)
|
|
174
|
+
#if defined(TANGENT) && defined(NORMAL)
|
|
175
|
+
vec3 tbnNormal=normalize(normalUpdated);vec3 tbnTangent=normalize(tangentUpdated.xyz);vec3 tbnBitangent=cross(tbnNormal,tbnTangent)*tangentUpdated.w;vTBN=mat3(finalWorld)*mat3(tbnTangent,tbnBitangent,tbnNormal);
|
|
176
|
+
#endif
|
|
177
|
+
#endif
|
|
178
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["bumpVertex",0,{name:t,shader:r}])},69263,e=>{"use strict";var i=e.i(25044);let t="bumpVertexDeclaration",r=`#if defined(BUMP) || defined(PARALLAX) || defined(CLEARCOAT_BUMP) || defined(ANISOTROPIC)
|
|
179
|
+
#if defined(TANGENT) && defined(NORMAL)
|
|
180
|
+
varying mat3 vTBN;
|
|
181
|
+
#endif
|
|
182
|
+
#endif
|
|
183
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["bumpVertexDeclaration",0,{name:t,shader:r}])},86040,16642,e=>{"use strict";var i=e.i(25044);let t="clipPlaneVertexDeclaration",r=`#ifdef CLIPPLANE
|
|
503
184
|
uniform vec4 vClipPlane;varying float fClipDistance;
|
|
504
185
|
#endif
|
|
505
186
|
#ifdef CLIPPLANE2
|
|
@@ -517,7 +198,7 @@ uniform vec4 vClipPlane5;varying float fClipDistance5;
|
|
|
517
198
|
#ifdef CLIPPLANE6
|
|
518
199
|
uniform vec4 vClipPlane6;varying float fClipDistance6;
|
|
519
200
|
#endif
|
|
520
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["clipPlaneVertexDeclaration",0,{name:t,shader:r}],
|
|
201
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["clipPlaneVertexDeclaration",0,{name:t,shader:r}],86040);let a="clipPlaneVertex",n=`#ifdef CLIPPLANE
|
|
521
202
|
fClipDistance=dot(worldPos,vClipPlane);
|
|
522
203
|
#endif
|
|
523
204
|
#ifdef CLIPPLANE2
|
|
@@ -535,35 +216,13 @@ fClipDistance5=dot(worldPos,vClipPlane5);
|
|
|
535
216
|
#ifdef CLIPPLANE6
|
|
536
217
|
fClipDistance6=dot(worldPos,vClipPlane6);
|
|
537
218
|
#endif
|
|
538
|
-
`;i.ShaderStore.IncludesShadersStore[a]||(i.ShaderStore.IncludesShadersStore[a]=n),e.s(["clipPlaneVertex",0,{name:a,shader:n}],
|
|
539
|
-
varying vec3 vFogDistance;
|
|
540
|
-
#endif
|
|
541
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["fogVertexDeclaration",0,{name:t,shader:r}],3091);let a="fogVertex",n=`#ifdef FOG
|
|
542
|
-
vFogDistance=(view*worldPos).xyz;
|
|
543
|
-
#endif
|
|
544
|
-
`;i.ShaderStore.IncludesShadersStore[a]||(i.ShaderStore.IncludesShadersStore[a]=n),e.s(["fogVertex",0,{name:a,shader:n}],99240)},20220,e=>{"use strict";var i=e.i(47150);let t="vertexColorMixing",r=`#if defined(VERTEXCOLOR) || defined(INSTANCESCOLOR) && defined(INSTANCES)
|
|
545
|
-
vColor=vec4(1.0);
|
|
546
|
-
#ifdef VERTEXCOLOR
|
|
547
|
-
#ifdef VERTEXALPHA
|
|
548
|
-
vColor*=colorUpdated;
|
|
549
|
-
#else
|
|
550
|
-
vColor.rgb*=colorUpdated.rgb;
|
|
551
|
-
#endif
|
|
552
|
-
#endif
|
|
553
|
-
#ifdef INSTANCESCOLOR
|
|
554
|
-
vColor*=instanceColor;
|
|
555
|
-
#endif
|
|
556
|
-
#endif
|
|
557
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["vertexColorMixing",0,{name:t,shader:r}])},10873,e=>{"use strict";var i=e.i(47150);let t="logDepthVertex",r=`#ifdef LOGARITHMICDEPTH
|
|
558
|
-
vFragmentDepth=1.0+gl_Position.w;gl_Position.z=log2(max(0.000001,vFragmentDepth))*logarithmicDepthConstant;
|
|
559
|
-
#endif
|
|
560
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["logDepthVertex",0,{name:t,shader:r}])},74716,80902,27292,91731,65117,19828,50988,12700,17177,33666,e=>{"use strict";var i=e.i(47150);let t="decalVertexDeclaration",r=`#ifdef DECAL
|
|
219
|
+
`;i.ShaderStore.IncludesShadersStore[a]||(i.ShaderStore.IncludesShadersStore[a]=n),e.s(["clipPlaneVertex",0,{name:a,shader:n}],16642)},40560,43465,84520,4434,65573,80430,4283,15732,51799,61822,e=>{"use strict";var i=e.i(25044);let t="decalVertexDeclaration",r=`#ifdef DECAL
|
|
561
220
|
uniform vec4 vDecalInfos;uniform mat4 decalMatrix;
|
|
562
221
|
#endif
|
|
563
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["decalVertexDeclaration",0,{name:t,shader:r}],
|
|
222
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["decalVertexDeclaration",0,{name:t,shader:r}],40560);let a="uvAttributeDeclaration",n=`#ifdef UV{X}
|
|
564
223
|
attribute vec2 uv{X};
|
|
565
224
|
#endif
|
|
566
|
-
`;i.ShaderStore.IncludesShadersStore[a]||(i.ShaderStore.IncludesShadersStore[a]=n),e.s(["uvAttributeDeclaration",0,{name:a,shader:n}],
|
|
225
|
+
`;i.ShaderStore.IncludesShadersStore[a]||(i.ShaderStore.IncludesShadersStore[a]=n),e.s(["uvAttributeDeclaration",0,{name:a,shader:n}],43465);let o="prePassVertexDeclaration",f=`#ifdef PREPASS
|
|
567
226
|
#ifdef PREPASS_LOCAL_POSITION
|
|
568
227
|
varying vec3 vPosition;
|
|
569
228
|
#endif
|
|
@@ -577,10 +236,10 @@ varying float vNormViewDepth;
|
|
|
577
236
|
uniform mat4 previousViewProjection;varying vec4 vCurrentPosition;varying vec4 vPreviousPosition;
|
|
578
237
|
#endif
|
|
579
238
|
#endif
|
|
580
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=f),e.s(["prePassVertexDeclaration",0,{name:o,shader:f}],
|
|
239
|
+
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=f),e.s(["prePassVertexDeclaration",0,{name:o,shader:f}],84520);let c="samplerVertexDeclaration",d=`#if defined(_DEFINENAME_) && _DEFINENAME_DIRECTUV==0
|
|
581
240
|
varying vec2 v_VARYINGNAME_UV;
|
|
582
241
|
#endif
|
|
583
|
-
`;i.ShaderStore.IncludesShadersStore[c]||(i.ShaderStore.IncludesShadersStore[c]=d),e.s(["samplerVertexDeclaration",0,{name:c,shader:d}],
|
|
242
|
+
`;i.ShaderStore.IncludesShadersStore[c]||(i.ShaderStore.IncludesShadersStore[c]=d),e.s(["samplerVertexDeclaration",0,{name:c,shader:d}],4434);let l="lightVxFragmentDeclaration",s=`#ifdef LIGHT{X}
|
|
584
243
|
uniform vec4 vLightData{X};uniform vec4 vLightDiffuse{X};
|
|
585
244
|
#ifdef SPECULARTERM
|
|
586
245
|
uniform vec4 vLightSpecular{X};
|
|
@@ -607,7 +266,7 @@ uniform vec3 vLightGround{X};
|
|
|
607
266
|
uniform vec4 vLightWidth{X};uniform vec4 vLightHeight{X};
|
|
608
267
|
#endif
|
|
609
268
|
#endif
|
|
610
|
-
`;i.ShaderStore.IncludesShadersStore[l]||(i.ShaderStore.IncludesShadersStore[l]=s),e.s(["lightVxFragmentDeclaration",0,{name:l,shader:s}],
|
|
269
|
+
`;i.ShaderStore.IncludesShadersStore[l]||(i.ShaderStore.IncludesShadersStore[l]=s),e.s(["lightVxFragmentDeclaration",0,{name:l,shader:s}],65573);let E="lightVxUboDeclaration",m=`#ifdef LIGHT{X}
|
|
611
270
|
uniform Light{X}
|
|
612
271
|
{vec4 vLightData;vec4 vLightDiffuse;vec4 vLightSpecular;
|
|
613
272
|
#ifdef SPOTLIGHT{X}
|
|
@@ -632,7 +291,7 @@ varying vec4 vPositionFromLight{X};varying float vDepthMetric{X};uniform mat4 li
|
|
|
632
291
|
#endif
|
|
633
292
|
#endif
|
|
634
293
|
#endif
|
|
635
|
-
`;i.ShaderStore.IncludesShadersStore[E]||(i.ShaderStore.IncludesShadersStore[E]=m),e.s(["lightVxUboDeclaration",0,{name:E,shader:m}],
|
|
294
|
+
`;i.ShaderStore.IncludesShadersStore[E]||(i.ShaderStore.IncludesShadersStore[E]=m),e.s(["lightVxUboDeclaration",0,{name:E,shader:m}],80430);let v="prePassVertex",S=`#ifdef PREPASS_DEPTH
|
|
636
295
|
vViewPos=(view*worldPos).rgb;
|
|
637
296
|
#endif
|
|
638
297
|
#ifdef PREPASS_NORMALIZED_VIEW_DEPTH
|
|
@@ -671,13 +330,13 @@ vPreviousPosition=previousViewProjection*finalPreviousWorld*previousInfluence*ve
|
|
|
671
330
|
vPreviousPosition=previousViewProjection*finalPreviousWorld*vec4(positionUpdated,1.0);
|
|
672
331
|
#endif
|
|
673
332
|
#endif
|
|
674
|
-
`;i.ShaderStore.IncludesShadersStore[v]||(i.ShaderStore.IncludesShadersStore[v]=S),e.s(["prePassVertex",0,{name:v,shader:S}],
|
|
333
|
+
`;i.ShaderStore.IncludesShadersStore[v]||(i.ShaderStore.IncludesShadersStore[v]=S),e.s(["prePassVertex",0,{name:v,shader:S}],4283);let u="uvVariableDeclaration",I=`#if !defined(UV{X}) && defined(MAINUV{X})
|
|
675
334
|
vec2 uv{X}=vec2(0.,0.);
|
|
676
335
|
#endif
|
|
677
336
|
#ifdef MAINUV{X}
|
|
678
337
|
vMainUV{X}=uv{X};
|
|
679
338
|
#endif
|
|
680
|
-
`;i.ShaderStore.IncludesShadersStore[u]||(i.ShaderStore.IncludesShadersStore[u]=I),e.s(["uvVariableDeclaration",0,{name:u,shader:I}],
|
|
339
|
+
`;i.ShaderStore.IncludesShadersStore[u]||(i.ShaderStore.IncludesShadersStore[u]=I),e.s(["uvVariableDeclaration",0,{name:u,shader:I}],15732);let N="samplerVertexImplementation",_=`#if defined(_DEFINENAME_) && _DEFINENAME_DIRECTUV==0
|
|
681
340
|
if (v_INFONAME_==0.)
|
|
682
341
|
{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uvUpdated,1.0,0.0));}
|
|
683
342
|
#ifdef UV2
|
|
@@ -701,25 +360,180 @@ else if (v_INFONAME_==5.)
|
|
|
701
360
|
{v_VARYINGNAME_UV=vec2(_MATRIXNAME_Matrix*vec4(uv6,1.0,0.0));}
|
|
702
361
|
#endif
|
|
703
362
|
#endif
|
|
704
|
-
`;i.ShaderStore.IncludesShadersStore[N]||(i.ShaderStore.IncludesShadersStore[N]=_),e.s(["samplerVertexImplementation",0,{name:N,shader:_}],
|
|
705
|
-
#if defined(SHADOWCSM{X})
|
|
706
|
-
vPositionFromCamera{X}=view*worldPos;for (int i=0; i<SHADOWCSMNUM_CASCADES{X}; i++) {vPositionFromLight{X}[i]=lightMatrix{X}[i]*worldPos;
|
|
707
|
-
#ifdef USE_REVERSE_DEPTHBUFFER
|
|
708
|
-
vDepthMetric{X}[i]=(-vPositionFromLight{X}[i].z+light{X}.depthValues.x)/light{X}.depthValues.y;
|
|
363
|
+
`;i.ShaderStore.IncludesShadersStore[N]||(i.ShaderStore.IncludesShadersStore[N]=_),e.s(["samplerVertexImplementation",0,{name:N,shader:_}],51799);let A="shadowsVertex",R=`#ifdef SHADOWS
|
|
364
|
+
#if defined(SHADOWCSM{X})
|
|
365
|
+
vPositionFromCamera{X}=view*worldPos;for (int i=0; i<SHADOWCSMNUM_CASCADES{X}; i++) {vPositionFromLight{X}[i]=lightMatrix{X}[i]*worldPos;
|
|
366
|
+
#ifdef USE_REVERSE_DEPTHBUFFER
|
|
367
|
+
vDepthMetric{X}[i]=(-vPositionFromLight{X}[i].z+light{X}.depthValues.x)/light{X}.depthValues.y;
|
|
368
|
+
#else
|
|
369
|
+
vDepthMetric{X}[i]=(vPositionFromLight{X}[i].z+light{X}.depthValues.x)/light{X}.depthValues.y;
|
|
370
|
+
#endif
|
|
371
|
+
}
|
|
372
|
+
#elif defined(SHADOW{X}) && !defined(SHADOWCUBE{X})
|
|
373
|
+
vPositionFromLight{X}=lightMatrix{X}*worldPos;
|
|
374
|
+
#ifdef USE_REVERSE_DEPTHBUFFER
|
|
375
|
+
vDepthMetric{X}=(-vPositionFromLight{X}.z+light{X}.depthValues.x)/light{X}.depthValues.y;
|
|
376
|
+
#else
|
|
377
|
+
vDepthMetric{X}=(vPositionFromLight{X}.z+light{X}.depthValues.x)/light{X}.depthValues.y;
|
|
378
|
+
#endif
|
|
379
|
+
#endif
|
|
380
|
+
#endif
|
|
381
|
+
`;i.ShaderStore.IncludesShadersStore[A]||(i.ShaderStore.IncludesShadersStore[A]=R),e.s(["shadowsVertex",0,{name:A,shader:R}],61822)},74912,46327,e=>{"use strict";var i=e.i(25044);let t="fogVertexDeclaration",r=`#ifdef FOG
|
|
382
|
+
varying vec3 vFogDistance;
|
|
383
|
+
#endif
|
|
384
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["fogVertexDeclaration",0,{name:t,shader:r}],74912);let a="fogVertex",n=`#ifdef FOG
|
|
385
|
+
vFogDistance=(view*worldPos).xyz;
|
|
386
|
+
#endif
|
|
387
|
+
`;i.ShaderStore.IncludesShadersStore[a]||(i.ShaderStore.IncludesShadersStore[a]=n),e.s(["fogVertex",0,{name:a,shader:n}],46327)},8823,e=>{"use strict";var i=e.i(25044);let t="harmonicsFunctions",r=`#ifdef USESPHERICALFROMREFLECTIONMAP
|
|
388
|
+
#ifdef SPHERICAL_HARMONICS
|
|
389
|
+
vec3 computeEnvironmentIrradiance(vec3 normal) {return vSphericalL00
|
|
390
|
+
+ vSphericalL1_1*(normal.y)
|
|
391
|
+
+ vSphericalL10*(normal.z)
|
|
392
|
+
+ vSphericalL11*(normal.x)
|
|
393
|
+
+ vSphericalL2_2*(normal.y*normal.x)
|
|
394
|
+
+ vSphericalL2_1*(normal.y*normal.z)
|
|
395
|
+
+ vSphericalL20*((3.0*normal.z*normal.z)-1.0)
|
|
396
|
+
+ vSphericalL21*(normal.z*normal.x)
|
|
397
|
+
+ vSphericalL22*(normal.x*normal.x-(normal.y*normal.y));}
|
|
398
|
+
#else
|
|
399
|
+
vec3 computeEnvironmentIrradiance(vec3 normal) {float Nx=normal.x;float Ny=normal.y;float Nz=normal.z;vec3 C1=vSphericalZZ.rgb;vec3 Cx=vSphericalX.rgb;vec3 Cy=vSphericalY.rgb;vec3 Cz=vSphericalZ.rgb;vec3 Cxx_zz=vSphericalXX_ZZ.rgb;vec3 Cyy_zz=vSphericalYY_ZZ.rgb;vec3 Cxy=vSphericalXY.rgb;vec3 Cyz=vSphericalYZ.rgb;vec3 Czx=vSphericalZX.rgb;vec3 a1=Cyy_zz*Ny+Cy;vec3 a2=Cyz*Nz+a1;vec3 b1=Czx*Nz+Cx;vec3 b2=Cxy*Ny+b1;vec3 b3=Cxx_zz*Nx+b2;vec3 t1=Cz *Nz+C1;vec3 t2=a2 *Ny+t1;vec3 t3=b3 *Nx+t2;return t3;}
|
|
400
|
+
#endif
|
|
401
|
+
#endif
|
|
402
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["harmonicsFunctions",0,{name:t,shader:r}])},31660,e=>{"use strict";var i=e.i(25044);let t="helperFunctions",r=`const float PI=3.1415926535897932384626433832795;const float TWO_PI=6.283185307179586;const float HALF_PI=1.5707963267948966;const float RECIPROCAL_PI=0.3183098861837907;const float RECIPROCAL_PI2=0.15915494309189535;const float RECIPROCAL_PI4=0.07957747154594767;const float HALF_MIN=5.96046448e-08;
|
|
403
|
+
const float LinearEncodePowerApprox=2.2;const float GammaEncodePowerApprox=1.0/LinearEncodePowerApprox;const vec3 LuminanceEncodeApprox=vec3(0.2126,0.7152,0.0722);const float Epsilon=0.0000001;
|
|
404
|
+
#define saturate(x) clamp(x,0.0,1.0)
|
|
405
|
+
#define absEps(x) abs(x)+Epsilon
|
|
406
|
+
#define maxEps(x) max(x,Epsilon)
|
|
407
|
+
#define saturateEps(x) clamp(x,Epsilon,1.0)
|
|
408
|
+
mat3 transposeMat3(mat3 inMatrix) {vec3 i0=inMatrix[0];vec3 i1=inMatrix[1];vec3 i2=inMatrix[2];mat3 outMatrix=mat3(
|
|
409
|
+
vec3(i0.x,i1.x,i2.x),
|
|
410
|
+
vec3(i0.y,i1.y,i2.y),
|
|
411
|
+
vec3(i0.z,i1.z,i2.z)
|
|
412
|
+
);return outMatrix;}
|
|
413
|
+
mat3 inverseMat3(mat3 inMatrix) {float a00=inMatrix[0][0],a01=inMatrix[0][1],a02=inMatrix[0][2];float a10=inMatrix[1][0],a11=inMatrix[1][1],a12=inMatrix[1][2];float a20=inMatrix[2][0],a21=inMatrix[2][1],a22=inMatrix[2][2];float b01=a22*a11-a12*a21;float b11=-a22*a10+a12*a20;float b21=a21*a10-a11*a20;float det=a00*b01+a01*b11+a02*b21;return mat3(b01,(-a22*a01+a02*a21),(a12*a01-a02*a11),
|
|
414
|
+
b11,(a22*a00-a02*a20),(-a12*a00+a02*a10),
|
|
415
|
+
b21,(-a21*a00+a01*a20),(a11*a00-a01*a10))/det;}
|
|
416
|
+
#if USE_EXACT_SRGB_CONVERSIONS
|
|
417
|
+
vec3 toLinearSpaceExact(vec3 color)
|
|
418
|
+
{vec3 nearZeroSection=0.0773993808*color;vec3 remainingSection=pow(0.947867299*(color+vec3(0.055)),vec3(2.4));
|
|
419
|
+
#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)
|
|
420
|
+
return mix(remainingSection,nearZeroSection,lessThanEqual(color,vec3(0.04045)));
|
|
421
|
+
#else
|
|
422
|
+
return
|
|
423
|
+
vec3(
|
|
424
|
+
color.r<=0.04045 ? nearZeroSection.r : remainingSection.r,
|
|
425
|
+
color.g<=0.04045 ? nearZeroSection.g : remainingSection.g,
|
|
426
|
+
color.b<=0.04045 ? nearZeroSection.b : remainingSection.b);
|
|
427
|
+
#endif
|
|
428
|
+
}
|
|
429
|
+
vec3 toGammaSpaceExact(vec3 color)
|
|
430
|
+
{vec3 nearZeroSection=12.92*color;vec3 remainingSection=1.055*pow(color,vec3(0.41666))-vec3(0.055);
|
|
431
|
+
#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)
|
|
432
|
+
return mix(remainingSection,nearZeroSection,lessThanEqual(color,vec3(0.0031308)));
|
|
433
|
+
#else
|
|
434
|
+
return
|
|
435
|
+
vec3(
|
|
436
|
+
color.r<=0.0031308 ? nearZeroSection.r : remainingSection.r,
|
|
437
|
+
color.g<=0.0031308 ? nearZeroSection.g : remainingSection.g,
|
|
438
|
+
color.b<=0.0031308 ? nearZeroSection.b : remainingSection.b);
|
|
439
|
+
#endif
|
|
440
|
+
}
|
|
441
|
+
#endif
|
|
442
|
+
float toLinearSpace(float color)
|
|
443
|
+
{
|
|
444
|
+
#if USE_EXACT_SRGB_CONVERSIONS
|
|
445
|
+
float nearZeroSection=0.0773993808*color;float remainingSection=pow(0.947867299*(color+0.055),2.4);return color<=0.04045 ? nearZeroSection : remainingSection;
|
|
446
|
+
#else
|
|
447
|
+
return pow(color,LinearEncodePowerApprox);
|
|
448
|
+
#endif
|
|
449
|
+
}
|
|
450
|
+
vec3 toLinearSpace(vec3 color)
|
|
451
|
+
{
|
|
452
|
+
#if USE_EXACT_SRGB_CONVERSIONS
|
|
453
|
+
return toLinearSpaceExact(color);
|
|
454
|
+
#else
|
|
455
|
+
return pow(color,vec3(LinearEncodePowerApprox));
|
|
456
|
+
#endif
|
|
457
|
+
}
|
|
458
|
+
vec4 toLinearSpace(vec4 color)
|
|
459
|
+
{
|
|
460
|
+
#if USE_EXACT_SRGB_CONVERSIONS
|
|
461
|
+
return vec4(toLinearSpaceExact(color.rgb),color.a);
|
|
462
|
+
#else
|
|
463
|
+
return vec4(pow(color.rgb,vec3(LinearEncodePowerApprox)),color.a);
|
|
464
|
+
#endif
|
|
465
|
+
}
|
|
466
|
+
float toGammaSpace(float color)
|
|
467
|
+
{
|
|
468
|
+
#if USE_EXACT_SRGB_CONVERSIONS
|
|
469
|
+
float nearZeroSection=12.92*color;float remainingSection=1.055*pow(color,0.41666)-0.055;return color<=0.0031308 ? nearZeroSection : remainingSection;
|
|
470
|
+
#else
|
|
471
|
+
return pow(color,GammaEncodePowerApprox);
|
|
472
|
+
#endif
|
|
473
|
+
}
|
|
474
|
+
vec3 toGammaSpace(vec3 color)
|
|
475
|
+
{
|
|
476
|
+
#if USE_EXACT_SRGB_CONVERSIONS
|
|
477
|
+
return toGammaSpaceExact(color);
|
|
709
478
|
#else
|
|
710
|
-
|
|
479
|
+
return pow(color,vec3(GammaEncodePowerApprox));
|
|
711
480
|
#endif
|
|
712
481
|
}
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
#
|
|
716
|
-
|
|
482
|
+
vec4 toGammaSpace(vec4 color)
|
|
483
|
+
{
|
|
484
|
+
#if USE_EXACT_SRGB_CONVERSIONS
|
|
485
|
+
return vec4(toGammaSpaceExact(color.rgb),color.a);
|
|
717
486
|
#else
|
|
718
|
-
|
|
487
|
+
return vec4(pow(color.rgb,vec3(GammaEncodePowerApprox)),color.a);
|
|
488
|
+
#endif
|
|
489
|
+
}
|
|
490
|
+
float square(float value)
|
|
491
|
+
{return value*value;}
|
|
492
|
+
vec3 square(vec3 value)
|
|
493
|
+
{return value*value;}
|
|
494
|
+
float pow5(float value) {float sq=value*value;return sq*sq*value;}
|
|
495
|
+
vec3 double_refract(vec3 I,vec3 N,float eta) {vec3 Tfront=refract(I,N,1.0/eta);vec3 Nback=normalize(reflect(N,Tfront));return refract(Tfront,-Nback,eta);}
|
|
496
|
+
float getLuminanceUnclamped(vec3 color)
|
|
497
|
+
{return dot(color,LuminanceEncodeApprox);}
|
|
498
|
+
float getLuminance(vec3 color)
|
|
499
|
+
{return saturate(getLuminanceUnclamped(color));}
|
|
500
|
+
float getRand(vec2 seed) {return fract(sin(dot(seed.xy ,vec2(12.9898,78.233)))*43758.5453);}
|
|
501
|
+
float dither(vec2 seed,float varianceAmount) {float rand=getRand(seed);float normVariance=varianceAmount/255.0;float dither=mix(-normVariance,normVariance,rand);return dither;}
|
|
502
|
+
const float rgbdMaxRange=255.;vec4 toRGBD(vec3 color) {float maxRGB=maxEps(max(color.r,max(color.g,color.b)));float D =max(rgbdMaxRange/maxRGB,1.);D =saturate(floor(D)/255.);vec3 rgb=color.rgb*D;rgb=toGammaSpace(rgb);return vec4(saturate(rgb),D);}
|
|
503
|
+
vec3 fromRGBD(vec4 rgbd) {rgbd.rgb=toLinearSpace(rgbd.rgb);return rgbd.rgb/rgbd.a;}
|
|
504
|
+
vec3 parallaxCorrectNormal( vec3 vertexPos,vec3 origVec,vec3 cubeSize,vec3 cubePos ) {vec3 invOrigVec=vec3(1.)/origVec;vec3 halfSize=cubeSize*0.5;vec3 intersecAtMaxPlane=(cubePos+halfSize-vertexPos)*invOrigVec;vec3 intersecAtMinPlane=(cubePos-halfSize-vertexPos)*invOrigVec;vec3 largestIntersec=max(intersecAtMaxPlane,intersecAtMinPlane);float distance=min(min(largestIntersec.x,largestIntersec.y),largestIntersec.z);vec3 intersectPositionWS=vertexPos+origVec*distance;return intersectPositionWS-cubePos;}
|
|
505
|
+
vec3 equirectangularToCubemapDirection(vec2 uv) {float longitude=uv.x*TWO_PI-PI;float latitude=HALF_PI-uv.y*PI;vec3 direction;direction.x=cos(latitude)*sin(longitude);direction.y=sin(latitude);direction.z=cos(latitude)*cos(longitude);return direction;}
|
|
506
|
+
float sqrtClamped(float value) {return sqrt(max(value,0.));}
|
|
507
|
+
float avg(vec3 value) {return dot(value,vec3(0.333333333));}
|
|
508
|
+
#if defined(WEBGL2) || defined(WEBGPU) || defined(NATIVE)
|
|
509
|
+
uint extractBits(uint value,int offset,int width) {return (value>>offset) & ((1u<<width)-1u);}
|
|
510
|
+
int onlyBitPosition(uint value) {return (floatBitsToInt(float(value))>>23)-0x7f;}
|
|
511
|
+
vec3 singleScatterToMultiScatterAlbedo(vec3 rho_ss) {vec3 s=sqrt(max(vec3(1.0)-rho_ss,vec3(0.0)));return (vec3(1.0)-s)*(vec3(1.0)-vec3(0.139)*s)/(vec3(1.0)+vec3(1.17)*s);}
|
|
512
|
+
vec3 multiScatterToSingleScatterAlbedo(vec3 rho_ms) {vec3 s=4.09712+4.20863*rho_ms-sqrt(9.59217+41.6808*rho_ms+17.7126*rho_ms*rho_ms);return 1.0-s*s;}
|
|
513
|
+
vec3 multiScatterToSingleScatterAlbedo(vec3 rho_ms,float aniso) {vec3 s=4.09712+4.20863*rho_ms-sqrt(9.59217+41.6808*rho_ms+17.7126*rho_ms*rho_ms);return (1.0-s*s)/maxEps(1.0-aniso*s*s);}
|
|
514
|
+
float min3(vec3 v) {return min(v.x,min(v.y,v.z));}
|
|
515
|
+
float max3(vec3 v) {return max(v.x,max(v.y,v.z));}
|
|
516
|
+
float uint2float(uint i) {return uintBitsToFloat(0x3F800000u | (i>>9u))-1.0;}
|
|
517
|
+
vec2 plasticSequence(const uint rstate) {return vec2(uint2float(rstate*3242174889u),
|
|
518
|
+
uint2float(rstate*2447445414u));}
|
|
519
|
+
#endif
|
|
520
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["helperFunctions",0,{name:t,shader:r}])},10874,e=>{"use strict";var i=e.i(25044);let t="logDepthDeclaration",r=`#ifdef LOGARITHMICDEPTH
|
|
521
|
+
uniform float logarithmicDepthConstant;varying float vFragmentDepth;
|
|
719
522
|
#endif
|
|
523
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["logDepthDeclaration",0,{name:t,shader:r}])},24152,e=>{"use strict";var i=e.i(25044);let t="logDepthVertex",r=`#ifdef LOGARITHMICDEPTH
|
|
524
|
+
vFragmentDepth=1.0+gl_Position.w;gl_Position.z=log2(max(0.000001,vFragmentDepth))*logarithmicDepthConstant;
|
|
525
|
+
#endif
|
|
526
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["logDepthVertex",0,{name:t,shader:r}])},49185,e=>{"use strict";var i=e.i(25044);let t="mainUVVaryingDeclaration",r=`#ifdef MAINUV{X}
|
|
527
|
+
varying vec2 vMainUV{X};
|
|
720
528
|
#endif
|
|
529
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["mainUVVaryingDeclaration",0,{name:t,shader:r}])},4100,e=>{"use strict";var i=e.i(25044);let t="meshUboDeclaration",r=`#ifdef WEBGL2
|
|
530
|
+
uniform mat4 world;uniform float visibility;
|
|
531
|
+
#else
|
|
532
|
+
layout(std140,column_major) uniform;uniform Mesh
|
|
533
|
+
{mat4 world;float visibility;};
|
|
721
534
|
#endif
|
|
722
|
-
|
|
535
|
+
#define WORLD_UBO
|
|
536
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["meshUboDeclaration",0,{name:t,shader:r}])},70020,93342,35567,67186,e=>{"use strict";var i=e.i(25044);let t="morphTargetsVertexGlobalDeclaration",r=`#ifdef MORPHTARGETS
|
|
723
537
|
uniform float morphTargetInfluences[NUM_MORPH_INFLUENCERS];
|
|
724
538
|
#ifdef MORPHTARGETS_TEXTURE
|
|
725
539
|
uniform float morphTargetTextureIndices[NUM_MORPH_INFLUENCERS];uniform vec3 morphTargetTextureInfo;uniform highp sampler2DArray morphTargets;vec3 readVector3FromRawSampler(int targetIndex,float vertexIndex)
|
|
@@ -740,7 +554,7 @@ float y=floor(vertexIndex/morphTargetTextureInfo.y);float x=vertexIndex-y*morphT
|
|
|
740
554
|
}
|
|
741
555
|
#endif
|
|
742
556
|
#endif
|
|
743
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["morphTargetsVertexGlobalDeclaration",0,{name:t,shader:r}],
|
|
557
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["morphTargetsVertexGlobalDeclaration",0,{name:t,shader:r}],70020);let a="morphTargetsVertexDeclaration",n=`#ifdef MORPHTARGETS
|
|
744
558
|
#ifndef MORPHTARGETS_TEXTURE
|
|
745
559
|
#ifdef MORPHTARGETS_POSITION
|
|
746
560
|
attribute vec3 position{X};
|
|
@@ -764,12 +578,12 @@ attribute vec4 color{X};
|
|
|
764
578
|
uniform float morphTargetCount;
|
|
765
579
|
#endif
|
|
766
580
|
#endif
|
|
767
|
-
`;i.ShaderStore.IncludesShadersStore[a]||(i.ShaderStore.IncludesShadersStore[a]=n),e.s(["morphTargetsVertexDeclaration",0,{name:a,shader:n}],
|
|
581
|
+
`;i.ShaderStore.IncludesShadersStore[a]||(i.ShaderStore.IncludesShadersStore[a]=n),e.s(["morphTargetsVertexDeclaration",0,{name:a,shader:n}],93342);let o="morphTargetsVertexGlobal",f=`#ifdef MORPHTARGETS
|
|
768
582
|
#ifdef MORPHTARGETS_TEXTURE
|
|
769
583
|
float vertexID;
|
|
770
584
|
#endif
|
|
771
585
|
#endif
|
|
772
|
-
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=f),e.s(["morphTargetsVertexGlobal",0,{name:o,shader:f}],
|
|
586
|
+
`;i.ShaderStore.IncludesShadersStore[o]||(i.ShaderStore.IncludesShadersStore[o]=f),e.s(["morphTargetsVertexGlobal",0,{name:o,shader:f}],35567);let c="morphTargetsVertex",d=`#ifdef MORPHTARGETS
|
|
773
587
|
#ifdef MORPHTARGETS_TEXTURE
|
|
774
588
|
#if {X}==0
|
|
775
589
|
for (int i=0; i<NUM_MORPH_INFLUENCERS; i++) {if (float(i)>=morphTargetCount) break;vertexID=float(gl_VertexID)*morphTargetTextureInfo.x;
|
|
@@ -829,17 +643,203 @@ colorUpdated+=(color{X}-color)*morphTargetInfluences[{X}];
|
|
|
829
643
|
#endif
|
|
830
644
|
#endif
|
|
831
645
|
#endif
|
|
832
|
-
`;i.ShaderStore.IncludesShadersStore[c]||(i.ShaderStore.IncludesShadersStore[c]=d),e.s(["morphTargetsVertex",0,{name:c,shader:d}],
|
|
833
|
-
#
|
|
834
|
-
|
|
646
|
+
`;i.ShaderStore.IncludesShadersStore[c]||(i.ShaderStore.IncludesShadersStore[c]=d),e.s(["morphTargetsVertex",0,{name:c,shader:d}],67186)},16300,e=>{"use strict";var i=e.i(25044);let t="pbrBRDFFunctions",r=`#define FRESNEL_MAXIMUM_ON_ROUGH 0.25
|
|
647
|
+
#define BRDF_DIFFUSE_MODEL_EON 0
|
|
648
|
+
#define BRDF_DIFFUSE_MODEL_BURLEY 1
|
|
649
|
+
#define BRDF_DIFFUSE_MODEL_LAMBERT 2
|
|
650
|
+
#define BRDF_DIFFUSE_MODEL_LEGACY 3
|
|
651
|
+
#define DIELECTRIC_SPECULAR_MODEL_GLTF 0
|
|
652
|
+
#define DIELECTRIC_SPECULAR_MODEL_OPENPBR 1
|
|
653
|
+
#define CONDUCTOR_SPECULAR_MODEL_GLTF 0
|
|
654
|
+
#define CONDUCTOR_SPECULAR_MODEL_OPENPBR 1
|
|
655
|
+
#if !defined(PBR_VERTEX_SHADER) && !defined(OPENPBR_VERTEX_SHADER)
|
|
656
|
+
#ifdef MS_BRDF_ENERGY_CONSERVATION
|
|
657
|
+
vec3 getEnergyConservationFactor(const vec3 specularEnvironmentR0,const vec3 environmentBrdf) {return 1.0+specularEnvironmentR0*(1.0/environmentBrdf.y-1.0);}
|
|
658
|
+
#endif
|
|
659
|
+
#if CONDUCTOR_SPECULAR_MODEL==CONDUCTOR_SPECULAR_MODEL_OPENPBR
|
|
660
|
+
#define F82_COS_THETA_MAX 0.142857143
|
|
661
|
+
#define F82_ONE_MINUS_CTM_POW5 0.462664366
|
|
662
|
+
#define F82_ONE_MINUS_CTM_POW6 0.396569457
|
|
663
|
+
#define F82_B_DENOMINATOR_RECIP 17.6512785
|
|
664
|
+
#define BRDF_Z_SCALE 16.0
|
|
665
|
+
vec3 getF82Specular(float NdotV,vec3 F0,vec3 edgeTint,float roughness) {vec3 white_minus_F0=vec3(1.0)-F0;vec3 b=(F0+white_minus_F0*F82_ONE_MINUS_CTM_POW5)*(vec3(1.0)-edgeTint)*F82_B_DENOMINATOR_RECIP;float cos_theta=max(roughness,NdotV);float one_minus_cos_theta=1.0-cos_theta;vec3 offset_from_F0=(white_minus_F0-b*cos_theta*one_minus_cos_theta)*pow(one_minus_cos_theta,5.0);return clamp(F0+offset_from_F0,0.0,1.0);}
|
|
666
|
+
vec3 getF82B(vec3 F0,vec3 edgeTint) {return (F0+(vec3(1.0)-F0)*F82_ONE_MINUS_CTM_POW5)*(vec3(1.0)-edgeTint)*F82_B_DENOMINATOR_RECIP;}
|
|
667
|
+
vec3 getF82DirectionalAlbedo(vec3 F0,vec3 F90,vec3 b,vec3 environmentBrdf) {return (F90-F0)*environmentBrdf.x+F0*environmentBrdf.y-b*environmentBrdf.z;}
|
|
668
|
+
vec3 getF82AverageFresnel(vec3 F0,vec3 b) {return F0+(vec3(1.0)-F0)/21.0-b/126.0;}
|
|
835
669
|
#endif
|
|
670
|
+
#ifdef FUZZENVIRONMENTBRDF
|
|
671
|
+
vec3 getFuzzBRDFLookup(float NdotV,float perceptualRoughness) {vec2 UV=vec2(perceptualRoughness,NdotV);vec4 brdfLookup=texture2D(environmentFuzzBrdfSampler,UV);const vec2 RiRange=vec2(0.0,0.75);const vec2 ARange =vec2(0.005,0.88);const vec2 BRange =vec2(-0.18,0.002);brdfLookup.r=mix(ARange.x, ARange.y, brdfLookup.r);brdfLookup.g=mix(BRange.x, BRange.y, brdfLookup.g);brdfLookup.b=mix(RiRange.x,RiRange.y,brdfLookup.b);return brdfLookup.rgb;}
|
|
836
672
|
#endif
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
673
|
+
#ifdef ENVIRONMENTBRDF
|
|
674
|
+
vec3 getBRDFLookup(float NdotV,float perceptualRoughness) {vec2 UV=vec2(NdotV,perceptualRoughness);vec4 brdfLookup=texture2D(environmentBrdfSampler,UV);
|
|
675
|
+
#ifdef ENVIRONMENTBRDF_RGBD
|
|
676
|
+
brdfLookup.rgb=fromRGBD(brdfLookup.rgba);
|
|
677
|
+
#endif
|
|
678
|
+
return brdfLookup.rgb;}
|
|
679
|
+
vec3 getReflectanceFromBRDFLookup(const vec3 specularEnvironmentR0,const vec3 specularEnvironmentR90,const vec3 environmentBrdf) {
|
|
680
|
+
#ifdef BRDF_V_HEIGHT_CORRELATED
|
|
681
|
+
vec3 reflectance=(specularEnvironmentR90-specularEnvironmentR0)*environmentBrdf.x+specularEnvironmentR0*environmentBrdf.y;
|
|
682
|
+
#else
|
|
683
|
+
vec3 reflectance=specularEnvironmentR0*environmentBrdf.x+specularEnvironmentR90*environmentBrdf.y;
|
|
684
|
+
#endif
|
|
685
|
+
return reflectance;}
|
|
686
|
+
vec3 getReflectanceFromBRDFLookup(const vec3 specularEnvironmentR0,const vec3 environmentBrdf) {
|
|
687
|
+
#ifdef BRDF_V_HEIGHT_CORRELATED
|
|
688
|
+
vec3 reflectance=mix(environmentBrdf.xxx,environmentBrdf.yyy,specularEnvironmentR0);
|
|
689
|
+
#else
|
|
690
|
+
vec3 reflectance=specularEnvironmentR0*environmentBrdf.x+environmentBrdf.y;
|
|
691
|
+
#endif
|
|
692
|
+
return reflectance;}
|
|
693
|
+
#endif
|
|
694
|
+
/* NOT USED
|
|
695
|
+
#if defined(SHEEN) && defined(SHEEN_SOFTER)
|
|
696
|
+
float getBRDFLookupCharlieSheen(float NdotV,float perceptualRoughness)
|
|
697
|
+
{float c=1.0-NdotV;float c3=c*c*c;return 0.65584461*c3+1.0/(4.16526551+exp(-7.97291361*perceptualRoughness+6.33516894));}
|
|
698
|
+
#endif
|
|
699
|
+
*/
|
|
700
|
+
#if !defined(ENVIRONMENTBRDF) || defined(REFLECTIONMAP_SKYBOX) || defined(ALPHAFRESNEL)
|
|
701
|
+
vec3 getReflectanceFromAnalyticalBRDFLookup_Jones(float VdotN,vec3 reflectance0,vec3 reflectance90,float smoothness)
|
|
702
|
+
{float weight=mix(FRESNEL_MAXIMUM_ON_ROUGH,1.0,smoothness);return reflectance0+weight*(reflectance90-reflectance0)*pow5(saturate(1.0-VdotN));}
|
|
703
|
+
#endif
|
|
704
|
+
#if defined(SHEEN) && defined(ENVIRONMENTBRDF)
|
|
705
|
+
/**
|
|
706
|
+
* The sheen BRDF not containing F can be easily stored in the blue channel of the BRDF texture.
|
|
707
|
+
* The blue channel contains DCharlie*VAshikhmin*NdotL as a lokkup table
|
|
708
|
+
*/
|
|
709
|
+
vec3 getSheenReflectanceFromBRDFLookup(const vec3 reflectance0,const vec3 environmentBrdf) {vec3 sheenEnvironmentReflectance=reflectance0*environmentBrdf.b;return sheenEnvironmentReflectance;}
|
|
710
|
+
#endif
|
|
711
|
+
vec3 fresnelSchlickGGX(float VdotH,vec3 reflectance0,vec3 reflectance90)
|
|
712
|
+
{return reflectance0+(reflectance90-reflectance0)*pow5(1.0-VdotH);}
|
|
713
|
+
float fresnelSchlickGGX(float VdotH,float reflectance0,float reflectance90)
|
|
714
|
+
{return reflectance0+(reflectance90-reflectance0)*pow5(1.0-VdotH);}
|
|
715
|
+
#ifdef CLEARCOAT
|
|
716
|
+
vec3 getR0RemappedForClearCoat(vec3 f0) {
|
|
717
|
+
#ifdef CLEARCOAT_DEFAULTIOR
|
|
718
|
+
#ifdef MOBILE
|
|
719
|
+
return saturate(f0*(f0*0.526868+0.529324)-0.0482256);
|
|
720
|
+
#else
|
|
721
|
+
return saturate(f0*(f0*(0.941892-0.263008*f0)+0.346479)-0.0285998);
|
|
722
|
+
#endif
|
|
723
|
+
#else
|
|
724
|
+
vec3 s=sqrt(f0);vec3 t=(vClearCoatRefractionParams.z+vClearCoatRefractionParams.w*s)/(vClearCoatRefractionParams.w+vClearCoatRefractionParams.z*s);return square(t);
|
|
725
|
+
#endif
|
|
726
|
+
}
|
|
727
|
+
#endif
|
|
728
|
+
#ifdef IRIDESCENCE
|
|
729
|
+
const mat3 XYZ_TO_REC709=mat3(
|
|
730
|
+
3.2404542,-0.9692660, 0.0556434,
|
|
731
|
+
-1.5371385, 1.8760108,-0.2040259,
|
|
732
|
+
-0.4985314, 0.0415560, 1.0572252
|
|
733
|
+
);vec3 getIORTfromAirToSurfaceR0(vec3 f0) {vec3 sqrtF0=sqrt(f0);return (1.+sqrtF0)/(1.-sqrtF0);}
|
|
734
|
+
vec3 getR0fromIORs(vec3 iorT,float iorI) {return square((iorT-vec3(iorI))/(iorT+vec3(iorI)));}
|
|
735
|
+
float getR0fromIORs(float iorT,float iorI) {return square((iorT-iorI)/(iorT+iorI));}
|
|
736
|
+
vec3 evalSensitivity(float opd,vec3 shift) {float phase=2.0*PI*opd*1.0e-9;const vec3 val=vec3(5.4856e-13,4.4201e-13,5.2481e-13);const vec3 pos=vec3(1.6810e+06,1.7953e+06,2.2084e+06);const vec3 var=vec3(4.3278e+09,9.3046e+09,6.6121e+09);vec3 xyz=val*sqrt(2.0*PI*var)*cos(pos*phase+shift)*exp(-square(phase)*var);xyz.x+=9.7470e-14*sqrt(2.0*PI*4.5282e+09)*cos(2.2399e+06*phase+shift[0])*exp(-4.5282e+09*square(phase));xyz/=1.0685e-7;vec3 srgb=XYZ_TO_REC709*xyz;return srgb;}
|
|
737
|
+
vec3 evalIridescence(float outsideIOR,float eta2,float cosTheta1,float thinFilmThickness,vec3 baseF0) {vec3 I=vec3(1.0);float iridescenceIOR=mix(outsideIOR,eta2,smoothstep(0.0,0.03,thinFilmThickness));float sinTheta2Sq=square(outsideIOR/iridescenceIOR)*(1.0-square(cosTheta1));float cosTheta2Sq=1.0-sinTheta2Sq;if (cosTheta2Sq<0.0) {return I;}
|
|
738
|
+
float cosTheta2=sqrt(cosTheta2Sq);float R0=getR0fromIORs(iridescenceIOR,outsideIOR);float R12=fresnelSchlickGGX(cosTheta1,R0,1.);float R21=R12;float T121=1.0-R12;float phi12=0.0;if (iridescenceIOR<outsideIOR) phi12=PI;float phi21=PI-phi12;vec3 baseIOR=getIORTfromAirToSurfaceR0(clamp(baseF0,0.0,0.9999));
|
|
739
|
+
vec3 R1=getR0fromIORs(baseIOR,iridescenceIOR);float maxR1=max(R1.r,max(R1.g,R1.b));if (maxR1<1e-6) {return max(vec3(R12),vec3(0.0));}
|
|
740
|
+
vec3 R23=fresnelSchlickGGX(cosTheta2,R1,vec3(1.));vec3 phi23=vec3(0.0);if (baseIOR[0]<iridescenceIOR) phi23[0]=PI;if (baseIOR[1]<iridescenceIOR) phi23[1]=PI;if (baseIOR[2]<iridescenceIOR) phi23[2]=PI;float opd=2.0*iridescenceIOR*thinFilmThickness*cosTheta2;vec3 phi=vec3(phi21)+phi23;vec3 R123=clamp(R12*R23,1e-5,0.9999);vec3 r123=sqrt(R123);vec3 Rs=square(T121)*R23/(vec3(1.0)-R123);vec3 C0=R12+Rs;I=C0;vec3 Cm=Rs-T121;for (int m=1; m<=2; ++m)
|
|
741
|
+
{Cm*=r123;vec3 Sm=2.0*evalSensitivity(float(m)*opd,float(m)*phi);I+=Cm*Sm;}
|
|
742
|
+
return max(I,vec3(0.0));}
|
|
743
|
+
#endif
|
|
744
|
+
float normalDistributionFunction_TrowbridgeReitzGGX(float NdotH,float alphaG)
|
|
745
|
+
{float a2=square(alphaG);float d=NdotH*NdotH*(a2-1.0)+1.0;return a2/(PI*d*d);}
|
|
746
|
+
#ifdef SHEEN
|
|
747
|
+
float normalDistributionFunction_CharlieSheen(float NdotH,float alphaG)
|
|
748
|
+
{float invR=1./alphaG;float cos2h=NdotH*NdotH;float sin2h=1.-cos2h;return (2.+invR)*pow(sin2h,invR*.5)/(2.*PI);}
|
|
749
|
+
#endif
|
|
750
|
+
#ifdef ANISOTROPIC
|
|
751
|
+
float normalDistributionFunction_BurleyGGX_Anisotropic(float NdotH,float TdotH,float BdotH,const vec2 alphaTB) {float a2=alphaTB.x*alphaTB.y;vec3 v=vec3(alphaTB.y*TdotH,alphaTB.x *BdotH,a2*NdotH);float v2=dot(v,v);float w2=a2/v2;return a2*w2*w2*RECIPROCAL_PI;}
|
|
752
|
+
#endif
|
|
753
|
+
#ifdef BRDF_V_HEIGHT_CORRELATED
|
|
754
|
+
float smithVisibility_GGXCorrelated(float NdotL,float NdotV,float alphaG) {
|
|
755
|
+
#ifdef MOBILE
|
|
756
|
+
float GGXV=NdotL*(NdotV*(1.0-alphaG)+alphaG);float GGXL=NdotV*(NdotL*(1.0-alphaG)+alphaG);return 0.5/(GGXV+GGXL);
|
|
757
|
+
#else
|
|
758
|
+
float a2=alphaG*alphaG;float GGXV=NdotL*sqrt(NdotV*(NdotV-a2*NdotV)+a2);float GGXL=NdotV*sqrt(NdotL*(NdotL-a2*NdotL)+a2);return 0.5/(GGXV+GGXL);
|
|
759
|
+
#endif
|
|
760
|
+
}
|
|
761
|
+
#else
|
|
762
|
+
float smithVisibilityG1_TrowbridgeReitzGGXFast(float dot,float alphaG)
|
|
763
|
+
{
|
|
764
|
+
#ifdef MOBILE
|
|
765
|
+
return 1.0/(dot+alphaG+(1.0-alphaG)*dot ));
|
|
766
|
+
#else
|
|
767
|
+
float alphaSquared=alphaG*alphaG;return 1.0/(dot+sqrt(alphaSquared+(1.0-alphaSquared)*dot*dot));
|
|
768
|
+
#endif
|
|
769
|
+
}
|
|
770
|
+
float smithVisibility_TrowbridgeReitzGGXFast(float NdotL,float NdotV,float alphaG)
|
|
771
|
+
{float visibility=smithVisibilityG1_TrowbridgeReitzGGXFast(NdotL,alphaG)*smithVisibilityG1_TrowbridgeReitzGGXFast(NdotV,alphaG);return visibility;}
|
|
772
|
+
#endif
|
|
773
|
+
#ifdef ANISOTROPIC
|
|
774
|
+
float smithVisibility_GGXCorrelated_Anisotropic(float NdotL,float NdotV,float TdotV,float BdotV,float TdotL,float BdotL,const vec2 alphaTB) {float lambdaV=NdotL*length(vec3(alphaTB.x*TdotV,alphaTB.y*BdotV,NdotV));float lambdaL=NdotV*length(vec3(alphaTB.x*TdotL,alphaTB.y*BdotL,NdotL));float v=0.5/(lambdaV+lambdaL);return v;}
|
|
775
|
+
#endif
|
|
776
|
+
#ifdef CLEARCOAT
|
|
777
|
+
float visibility_Kelemen(float VdotH) {return 0.25/(VdotH*VdotH); }
|
|
778
|
+
#endif
|
|
779
|
+
#ifdef SHEEN
|
|
780
|
+
float visibility_Ashikhmin(float NdotL,float NdotV)
|
|
781
|
+
{return 1./(4.*(NdotL+NdotV-NdotL*NdotV));}
|
|
782
|
+
/* NOT USED
|
|
783
|
+
#ifdef SHEEN_SOFTER
|
|
784
|
+
float l(float x,float alphaG)
|
|
785
|
+
{float oneMinusAlphaSq=(1.0-alphaG)*(1.0-alphaG);float a=mix(21.5473,25.3245,oneMinusAlphaSq);float b=mix(3.82987,3.32435,oneMinusAlphaSq);float c=mix(0.19823,0.16801,oneMinusAlphaSq);float d=mix(-1.97760,-1.27393,oneMinusAlphaSq);float e=mix(-4.32054,-4.85967,oneMinusAlphaSq);return a/(1.0+b*pow(x,c))+d*x+e;}
|
|
786
|
+
float lambdaSheen(float cosTheta,float alphaG)
|
|
787
|
+
{return abs(cosTheta)<0.5 ? exp(l(cosTheta,alphaG)) : exp(2.0*l(0.5,alphaG)-l(1.0-cosTheta,alphaG));}
|
|
788
|
+
float visibility_CharlieSheen(float NdotL,float NdotV,float alphaG)
|
|
789
|
+
{float G=1.0/(1.0+lambdaSheen(NdotV,alphaG)+lambdaSheen(NdotL,alphaG));return G/(4.0*NdotV*NdotL);}
|
|
790
|
+
#endif
|
|
791
|
+
*/
|
|
792
|
+
#endif
|
|
793
|
+
float diffuseBRDF_Burley(float NdotL,float NdotV,float VdotH,float roughness) {float diffuseFresnelNV=pow5(saturateEps(1.0-NdotL));float diffuseFresnelNL=pow5(saturateEps(1.0-NdotV));float diffuseFresnel90=0.5+2.0*VdotH*VdotH*roughness;float fresnel =
|
|
794
|
+
(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNL) *
|
|
795
|
+
(1.0+(diffuseFresnel90-1.0)*diffuseFresnelNV);return fresnel/PI;}
|
|
796
|
+
const float constant1_FON=0.5-2.0/(3.0*PI);const float constant2_FON=2.0/3.0-28.0/(15.0*PI);float E_FON_approx(float mu,float roughness)
|
|
797
|
+
{float sigma=roughness;
|
|
798
|
+
float mucomp=1.0-mu;float mucomp2=mucomp*mucomp;const mat2 Gcoeffs=mat2(0.0571085289,-0.332181442,
|
|
799
|
+
0.491881867,0.0714429953);float GoverPi=dot(Gcoeffs*vec2(mucomp,mucomp2),vec2(1.0,mucomp2));return (1.0+sigma*GoverPi)/(1.0+constant1_FON*sigma);}
|
|
800
|
+
vec3 diffuseBRDF_EON(vec3 albedo,float roughness,float NdotL,float NdotV,float LdotV)
|
|
801
|
+
{vec3 rho=albedo;float sigma=roughness;
|
|
802
|
+
float mu_i=NdotL;
|
|
803
|
+
float mu_o=NdotV;
|
|
804
|
+
float s=LdotV-mu_i*mu_o;
|
|
805
|
+
float sovertF=s>0.0 ? s/max(mu_i,mu_o) : s;
|
|
806
|
+
float AF=1.0/(1.0+constant1_FON*sigma);
|
|
807
|
+
vec3 f_ss=(rho*RECIPROCAL_PI)*AF*(1.0+sigma*sovertF);
|
|
808
|
+
float EFo=E_FON_approx(mu_o,sigma);
|
|
809
|
+
float EFi=E_FON_approx(mu_i,sigma);
|
|
810
|
+
float avgEF=AF*(1.0+constant2_FON*sigma);
|
|
811
|
+
vec3 rho_ms=(rho*rho)*avgEF/(vec3(1.0)-rho*(1.0-avgEF));const float eps=1.0e-7;vec3 f_ms=(rho_ms*RECIPROCAL_PI)*max(eps,1.0-EFo)
|
|
812
|
+
* max(eps,1.0-EFi)
|
|
813
|
+
/ max(eps,1.0-avgEF);return (f_ss+f_ms);}
|
|
814
|
+
#ifdef SS_TRANSLUCENCY
|
|
815
|
+
vec3 transmittanceBRDF_Burley(const vec3 tintColor,const vec3 diffusionDistance,float thickness) {vec3 S=1./maxEps(diffusionDistance);vec3 temp=exp((-0.333333333*thickness)*S);return tintColor.rgb*0.25*(temp*temp*temp+3.0*temp);}
|
|
816
|
+
float computeWrappedDiffuseNdotL(float NdotL,float w) {float t=1.0+w;float invt2=1.0/square(t);return saturate((NdotL+w)*invt2);}
|
|
817
|
+
#endif
|
|
818
|
+
#endif
|
|
819
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["pbrBRDFFunctions",0,{name:t,shader:r}])},83089,e=>{"use strict";var i=e.i(25044);e.i(77074),e.i(4100);let t="pbrUboDeclaration",r=`layout(std140,column_major) uniform;uniform Material {vec2 vAlbedoInfos;vec2 vBaseWeightInfos;vec2 vBaseDiffuseRoughnessInfos;vec4 vAmbientInfos;vec2 vOpacityInfos;vec2 vEmissiveInfos;vec2 vLightmapInfos;vec3 vReflectivityInfos;vec2 vMicroSurfaceSamplerInfos;vec3 vBumpInfos;mat4 albedoMatrix;mat4 baseWeightMatrix;mat4 baseDiffuseRoughnessMatrix;mat4 ambientMatrix;mat4 opacityMatrix;mat4 emissiveMatrix;mat4 lightmapMatrix;mat4 reflectivityMatrix;mat4 microSurfaceSamplerMatrix;mat4 bumpMatrix;vec2 vTangentSpaceParams;vec4 vAlbedoColor;float baseWeight;float baseDiffuseRoughness;vec4 vLightingIntensity;float pointSize;vec4 vReflectivityColor;vec3 vEmissiveColor;vec3 vAmbientColor;vec2 vDebugMode;vec4 vMetallicReflectanceFactors;vec2 vMetallicReflectanceInfos;mat4 metallicReflectanceMatrix;vec2 vReflectanceInfos;mat4 reflectanceMatrix;vec4 cameraInfo;vec4 vTextureRepetitionHexTilingParams;vec2 vReflectionInfos;mat4 reflectionMatrix;vec3 vReflectionMicrosurfaceInfos;vec3 vReflectionPosition;vec3 vReflectionSize;vec2 vReflectionFilteringInfo;vec3 vReflectionDominantDirection;vec3 vReflectionColor;vec3 vSphericalL00;vec3 vSphericalL1_1;vec3 vSphericalL10;vec3 vSphericalL11;vec3 vSphericalL2_2;vec3 vSphericalL2_1;vec3 vSphericalL20;vec3 vSphericalL21;vec3 vSphericalL22;vec3 vSphericalX;vec3 vSphericalY;vec3 vSphericalZ;vec3 vSphericalXX_ZZ;vec3 vSphericalYY_ZZ;vec3 vSphericalZZ;vec3 vSphericalXY;vec3 vSphericalYZ;vec3 vSphericalZX;
|
|
820
|
+
#define ADDITIONAL_UBO_DECLARATION
|
|
821
|
+
};
|
|
822
|
+
#include<sceneUboDeclaration>
|
|
823
|
+
#include<meshUboDeclaration>
|
|
824
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["pbrUboDeclaration",0,{name:t,shader:r}])},77074,e=>{"use strict";var i=e.i(25044);let t="sceneUboDeclaration",r=`layout(std140,column_major) uniform;uniform Scene {mat4 viewProjection;
|
|
825
|
+
#ifdef MULTIVIEW
|
|
826
|
+
mat4 viewProjectionR;
|
|
827
|
+
#endif
|
|
828
|
+
mat4 view;mat4 projection;vec4 vEyePosition;mat4 inverseProjection;};
|
|
829
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["sceneUboDeclaration",0,{name:t,shader:r}])},94198,e=>{"use strict";var i=e.i(25044);let t="vertexColorMixing",r=`#if defined(VERTEXCOLOR) || defined(INSTANCESCOLOR) && defined(INSTANCES)
|
|
830
|
+
vColor=vec4(1.0);
|
|
831
|
+
#ifdef VERTEXCOLOR
|
|
832
|
+
#ifdef VERTEXALPHA
|
|
833
|
+
vColor*=colorUpdated;
|
|
834
|
+
#else
|
|
835
|
+
vColor.rgb*=colorUpdated.rgb;
|
|
836
|
+
#endif
|
|
837
|
+
#endif
|
|
838
|
+
#ifdef INSTANCESCOLOR
|
|
839
|
+
vColor*=instanceColor;
|
|
840
840
|
#endif
|
|
841
841
|
#endif
|
|
842
|
-
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["
|
|
842
|
+
`;i.ShaderStore.IncludesShadersStore[t]||(i.ShaderStore.IncludesShadersStore[t]=r),e.s(["vertexColorMixing",0,{name:t,shader:r}])},57459,e=>{"use strict";var i=e.i(25044),t=e.i(40560);let r="pbrVertexDeclaration",a=`uniform mat4 view;uniform mat4 viewProjection;uniform vec4 vEyePosition;
|
|
843
843
|
#ifdef MULTIVIEW
|
|
844
844
|
mat4 viewProjectionR;
|
|
845
845
|
#endif
|
|
@@ -964,7 +964,7 @@ uniform vec4 vDetailInfos;uniform mat4 detailMatrix;
|
|
|
964
964
|
#endif
|
|
965
965
|
#include<decalVertexDeclaration>
|
|
966
966
|
#define ADDITIONAL_VERTEX_DECLARATION
|
|
967
|
-
`;i.ShaderStore.IncludesShadersStore[r]||(i.ShaderStore.IncludesShadersStore[r]=a);var n=e.i(
|
|
967
|
+
`;i.ShaderStore.IncludesShadersStore[r]||(i.ShaderStore.IncludesShadersStore[r]=a);var n=e.i(77074),o=e.i(4100),f=e.i(83089),c=e.i(43465),d=e.i(49185),l=e.i(31660),s=e.i(16300),E=e.i(12211),m=e.i(60661),v=e.i(88305),S=e.i(84520),u=e.i(4434),I=e.i(8823),N=e.i(69263),_=e.i(86040),A=e.i(74912),R=e.i(65573),T=e.i(80430),p=e.i(70020),h=e.i(93342),x=e.i(10874),M=e.i(35567),V=e.i(67186),C=e.i(16450),O=e.i(67412),L=e.i(11832),g=e.i(4283),D=e.i(15732),F=e.i(51799),P=e.i(11218),U=e.i(16642),b=e.i(46327),G=e.i(61822),X=e.i(94198),B=e.i(24152);let y="pbrVertexShader",H=`#define PBR_VERTEX_SHADER
|
|
968
968
|
#define CUSTOM_VERTEX_EXTENSION
|
|
969
969
|
precision highp float;
|
|
970
970
|
#include<__decl__pbrVertex>
|
|
@@ -1195,4 +1195,4 @@ gl_PointSize=pointSize;
|
|
|
1195
1195
|
#include<logDepthVertex>
|
|
1196
1196
|
#define CUSTOM_VERTEX_MAIN_END
|
|
1197
1197
|
}
|
|
1198
|
-
`;for(let e of(i.ShaderStore.ShadersStore[y]||(i.ShaderStore.ShadersStore[y]=H),[t.decalVertexDeclaration,{name:r,shader:a},n.sceneUboDeclaration,o.meshUboDeclaration,f.pbrUboDeclaration,c.uvAttributeDeclaration,d.mainUVVaryingDeclaration,l.helperFunctions,s.pbrBRDFFunctions,E.bonesDeclaration,m.bakedVertexAnimationDeclaration,v.instancesDeclaration,S.prePassVertexDeclaration,u.samplerVertexDeclaration,I.harmonicsFunctions,N.bumpVertexDeclaration,_.clipPlaneVertexDeclaration,A.fogVertexDeclaration,R.lightVxFragmentDeclaration,T.lightVxUboDeclaration,p.morphTargetsVertexGlobalDeclaration,h.morphTargetsVertexDeclaration,x.logDepthDeclaration,M.morphTargetsVertexGlobal,V.morphTargetsVertex,C.instancesVertex,O.bonesVertex,L.bakedVertexAnimation,g.prePassVertex,D.uvVariableDeclaration,F.samplerVertexImplementation,P.bumpVertex,U.clipPlaneVertex,b.fogVertex,G.shadowsVertex,X.vertexColorMixing,B.logDepthVertex]))i.ShaderStore.IncludesShadersStore[e.name]||(i.ShaderStore.IncludesShadersStore[e.name]=e.shader);e.s(["pbrVertexShader",0,{name:y,shader:H}],
|
|
1198
|
+
`;for(let e of(i.ShaderStore.ShadersStore[y]||(i.ShaderStore.ShadersStore[y]=H),[t.decalVertexDeclaration,{name:r,shader:a},n.sceneUboDeclaration,o.meshUboDeclaration,f.pbrUboDeclaration,c.uvAttributeDeclaration,d.mainUVVaryingDeclaration,l.helperFunctions,s.pbrBRDFFunctions,E.bonesDeclaration,m.bakedVertexAnimationDeclaration,v.instancesDeclaration,S.prePassVertexDeclaration,u.samplerVertexDeclaration,I.harmonicsFunctions,N.bumpVertexDeclaration,_.clipPlaneVertexDeclaration,A.fogVertexDeclaration,R.lightVxFragmentDeclaration,T.lightVxUboDeclaration,p.morphTargetsVertexGlobalDeclaration,h.morphTargetsVertexDeclaration,x.logDepthDeclaration,M.morphTargetsVertexGlobal,V.morphTargetsVertex,C.instancesVertex,O.bonesVertex,L.bakedVertexAnimation,g.prePassVertex,D.uvVariableDeclaration,F.samplerVertexImplementation,P.bumpVertex,U.clipPlaneVertex,b.fogVertex,G.shadowsVertex,X.vertexColorMixing,B.logDepthVertex]))i.ShaderStore.IncludesShadersStore[e.name]||(i.ShaderStore.IncludesShadersStore[e.name]=e.shader);e.s(["pbrVertexShader",0,{name:y,shader:H}],57459)}]);
|