@roomle/web-sdk 3.6.0 → 3.7.0-alpha.2

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.
Files changed (149) hide show
  1. package/lib/{BufferGeometry-DLEagG41.mjs → BufferGeometry-C696z6r3.mjs} +2 -2
  2. package/lib/{BufferGeometry-DLEagG41.mjs.map → BufferGeometry-C696z6r3.mjs.map} +1 -1
  3. package/lib/ConfiguratorKernel.js +54 -73
  4. package/lib/ConfiguratorKernel.wasm +0 -0
  5. package/lib/{GLTFExporter-D8qsdwDK.mjs → GLTFExporter-AfQIvZAD.mjs} +141 -141
  6. package/lib/{GLTFExporter-D8qsdwDK.mjs.map → GLTFExporter-AfQIvZAD.mjs.map} +1 -1
  7. package/lib/{Object3D-DSjIOhON.mjs → Object3D-C3wqWk6O.mjs} +1 -1
  8. package/lib/{Object3D-DSjIOhON.mjs.map → Object3D-C3wqWk6O.mjs.map} +1 -1
  9. package/lib/{PointLightHelper-BnjxGaOG.mjs → PointLightHelper-wVSmrAnD.mjs} +4 -4
  10. package/lib/{PointLightHelper-BnjxGaOG.mjs.map → PointLightHelper-wVSmrAnD.mjs.map} +1 -1
  11. package/lib/RoomleCore.js +59 -79
  12. package/lib/RoomleCore.wasm +0 -0
  13. package/lib/RoomleToolsCore.js +54 -74
  14. package/lib/RoomleToolsCore.wasm +0 -0
  15. package/lib/{SpotLightHelper-DqsfqCrs.mjs → SpotLightHelper-C7J95t4f.mjs} +3 -3
  16. package/lib/{SpotLightHelper-DqsfqCrs.mjs.map → SpotLightHelper-C7J95t4f.mjs.map} +1 -1
  17. package/lib/{USDZExporter-DxIqi8St.mjs → USDZExporter-BBk0APeK.mjs} +3 -3
  18. package/lib/{USDZExporter-DxIqi8St.mjs.map → USDZExporter-BBk0APeK.mjs.map} +1 -1
  19. package/lib/{Vector4-DGmBYfpK.mjs → Vector4-DUqY3Egg.mjs} +2 -2
  20. package/lib/{Vector4-DGmBYfpK.mjs.map → Vector4-DUqY3Egg.mjs.map} +1 -1
  21. package/lib/{api-xDJ-Uyom.mjs → api-oYzhcs_W.mjs} +2 -2
  22. package/lib/{api-xDJ-Uyom.mjs.map → api-oYzhcs_W.mjs.map} +1 -1
  23. package/lib/asset-loader.worker-A7nEeQB4.mjs +6 -0
  24. package/lib/asset-loader.worker-A7nEeQB4.mjs.map +1 -0
  25. package/lib/{banana-for-scale-C_iNmlCT.mjs → banana-for-scale-D8t2dmc7.mjs} +4 -4
  26. package/lib/banana-for-scale-D8t2dmc7.mjs.map +1 -0
  27. package/lib/budgeteer.sw-CQWYbQSc.mjs +6 -0
  28. package/lib/budgeteer.sw-CQWYbQSc.mjs.map +1 -0
  29. package/lib/{common-utils-DMSTohiS.mjs → common-utils-qErzZAiR.mjs} +2 -2
  30. package/lib/common-utils-qErzZAiR.mjs.map +1 -0
  31. package/lib/{component-dimensioning-CvRmUja4.mjs → component-dimensioning-DlB7-9Om.mjs} +49 -49
  32. package/lib/{component-dimensioning-CvRmUja4.mjs.map → component-dimensioning-DlB7-9Om.mjs.map} +1 -1
  33. package/lib/{component-raycast-helper-CEp7wy9c.mjs → component-raycast-helper-C6ptEb0K.mjs} +27 -32
  34. package/lib/component-raycast-helper-C6ptEb0K.mjs.map +1 -0
  35. package/lib/component-raycast-helper-LrhRpeDD.mjs +2 -0
  36. package/lib/configurator-CRMunIq7.mjs +45 -0
  37. package/lib/{configurator-CmuhFgC9.mjs.map → configurator-CRMunIq7.mjs.map} +1 -1
  38. package/lib/configurator-DqiW717d.mjs +2 -0
  39. package/lib/{continuous-drawing-helper-v_5UAM9A.mjs → continuous-drawing-helper-BwulJHKj.mjs} +12 -12
  40. package/lib/continuous-drawing-helper-BwulJHKj.mjs.map +1 -0
  41. package/lib/dat.gui.module-CZHqOVGq.mjs +1500 -0
  42. package/lib/dat.gui.module-CZHqOVGq.mjs.map +1 -0
  43. package/lib/{decorate-C1QnXPYw.mjs → decorate-BAtqSPNS.mjs} +3 -3
  44. package/lib/decorate-BAtqSPNS.mjs.map +1 -0
  45. package/lib/{dimensioning-helper-Fwpt1HTT.mjs → dimensioning-helper--Y0Y-Wr1.mjs} +42 -42
  46. package/lib/{dimensioning-helper-Fwpt1HTT.mjs.map → dimensioning-helper--Y0Y-Wr1.mjs.map} +1 -1
  47. package/lib/dimensioning-helper-BpUreWo2.mjs +2 -0
  48. package/lib/{fflate.module-dFNj5UPI.mjs → fflate.module-CBz7CLOg.mjs} +1 -1
  49. package/lib/{fflate.module-dFNj5UPI.mjs.map → fflate.module-CBz7CLOg.mjs.map} +1 -1
  50. package/lib/{glb-viewer-BzNA9-zH.mjs → glb-viewer-CXEoIw1b.mjs} +48 -48
  51. package/lib/glb-viewer-CXEoIw1b.mjs.map +1 -0
  52. package/lib/glb-viewer-IDXgmONx.mjs +2 -0
  53. package/lib/{homag-intelligence-BwGjJEws.mjs → homag-intelligence-gb9MqBrz.mjs} +6 -3
  54. package/lib/{homag-intelligence-BwGjJEws.mjs.map → homag-intelligence-gb9MqBrz.mjs.map} +1 -1
  55. package/lib/{imos-ix-poc-export-helper-CQh94HsO.mjs → imos-ix-poc-export-helper-CW7QZhhn.mjs} +5 -4
  56. package/lib/imos-ix-poc-export-helper-CW7QZhhn.mjs.map +1 -0
  57. package/lib/{kernel-BAQSG9r5.mjs → kernel-C7YDLxq8.mjs} +3 -2
  58. package/lib/kernel-C7YDLxq8.mjs.map +1 -0
  59. package/lib/{kernel-utils-H74uNY1h.mjs → kernel-utils-DCnHzW4n.mjs} +15 -15
  60. package/lib/kernel-utils-DCnHzW4n.mjs.map +1 -0
  61. package/lib/{layer-C_JtkhdO.mjs → layer-CFAr2mK_.mjs} +1 -1
  62. package/lib/{layer-C_JtkhdO.mjs.map → layer-CFAr2mK_.mjs.map} +1 -1
  63. package/lib/{main-CtVIB52l.mjs → main-BJZ9-cDk.mjs} +14470 -14187
  64. package/lib/main-BJZ9-cDk.mjs.map +1 -0
  65. package/lib/{material-viewer-Bq4smZ6f.mjs → material-viewer-D8Nmpwg0.mjs} +41 -41
  66. package/lib/material-viewer-D8Nmpwg0.mjs.map +1 -0
  67. package/lib/packages-Uv53SHfb.mjs +4 -0
  68. package/lib/planner-5VarJrpy.mjs +44 -0
  69. package/lib/{planner-CVw_xzGh.mjs.map → planner-5VarJrpy.mjs.map} +1 -1
  70. package/lib/planner-DJcn-iih.mjs +2 -0
  71. package/lib/{plugin-system-D9K46xJk.mjs → plugin-system-DInww4H_.mjs} +3 -3
  72. package/lib/{plugin-system-D9K46xJk.mjs.map → plugin-system-DInww4H_.mjs.map} +1 -1
  73. package/lib/rolldown-runtime-DgwB9i60.mjs +13 -0
  74. package/lib/roomle-headless-setup-LoBO7UJe.mjs +1150 -0
  75. package/lib/roomle-headless-setup-LoBO7UJe.mjs.map +1 -0
  76. package/lib/roomle-headless.d.ts +9910 -0
  77. package/lib/roomle-headless.js +321 -0
  78. package/lib/roomle-headless.js.map +1 -0
  79. package/lib/roomle-renderer-DVlJsHYn.mjs +49 -0
  80. package/lib/roomle-renderer-DVlJsHYn.mjs.map +1 -0
  81. package/lib/roomle-sdk.d.ts +466 -1129
  82. package/lib/roomle-sdk.js +8 -7
  83. package/lib/roomle-webgpu-renderer-CVxBRv6o.mjs +217 -0
  84. package/lib/roomle-webgpu-renderer-CVxBRv6o.mjs.map +1 -0
  85. package/lib/{scene-renderer-D8HkTFeZ.mjs → scene-renderer-BHZrQYAH.mjs} +501 -518
  86. package/lib/scene-renderer-BHZrQYAH.mjs.map +1 -0
  87. package/lib/script-loader-gpkcl1h-.mjs +86 -0
  88. package/lib/script-loader-gpkcl1h-.mjs.map +1 -0
  89. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/package.json +1 -1
  90. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/configuratorCallback.d.ts +3 -3
  91. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/configuratorCallback.js +3 -3
  92. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/configuratorCallback.js.map +1 -1
  93. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/configuratorCoreInterface.d.ts +5 -3
  94. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/configuratorCoreInterface.js +1 -1
  95. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/configuratorCoreInterface.js.map +1 -1
  96. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/plannerCoreCallback.d.ts +1 -0
  97. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/plannerCoreCallback.js +3 -0
  98. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/plannerCoreCallback.js.map +1 -1
  99. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/plannerCoreInterface.d.ts +4 -3
  100. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/plannerCoreInterface.js.map +1 -1
  101. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/loader/configurationLoader.d.ts +3 -2
  102. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/loader/configurationLoader.js +31 -9
  103. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/loader/configurationLoader.js.map +1 -1
  104. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/loader/configurationManager.js +8 -1
  105. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/loader/configurationManager.js.map +1 -1
  106. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/ConfiguratorKernel.js +54 -73
  107. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm +0 -0
  108. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleCore.js +59 -79
  109. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleCore.wasm +0 -0
  110. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleToolsCore.js +54 -74
  111. package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleToolsCore.wasm +0 -0
  112. package/lib/{stats-helper-HM0TaIM5.mjs → stats-helper-Cv5SoEWT.mjs} +4 -3
  113. package/lib/{stats-helper-HM0TaIM5.mjs.map → stats-helper-Cv5SoEWT.mjs.map} +1 -1
  114. package/lib/{three.core-CLIofecG.mjs → three.core-mM-jZdgg.mjs} +926 -926
  115. package/lib/{three.core-CLIofecG.mjs.map → three.core-mM-jZdgg.mjs.map} +1 -1
  116. package/lib/{three.module-C4Q1skJQ.mjs → three.module-Bmy3sVQ-.mjs} +1210 -1210
  117. package/lib/{three.module-C4Q1skJQ.mjs.map → three.module-Bmy3sVQ-.mjs.map} +1 -1
  118. package/lib/{three.webgpu-dFspy2yF.mjs → three.webgpu-BbVYfCDp.mjs} +5360 -2940
  119. package/lib/{three.webgpu-dFspy2yF.mjs.map → three.webgpu-BbVYfCDp.mjs.map} +1 -1
  120. package/lib/three.webgpu-Bnp8Whu8.mjs +3 -0
  121. package/lib/threejs-utils-Bq4pVWBA.mjs +753 -0
  122. package/lib/threejs-utils-Bq4pVWBA.mjs.map +1 -0
  123. package/lib/{tools-core-Bf9WsK5v.mjs → tools-core-DqnhFefF.mjs} +6 -6
  124. package/lib/{tools-core-Bf9WsK5v.mjs.map → tools-core-DqnhFefF.mjs.map} +1 -1
  125. package/lib/workers-BJYv3y38.mjs +6 -0
  126. package/lib/workers-BJYv3y38.mjs.map +1 -0
  127. package/package.json +20 -5
  128. package/lib/banana-for-scale-C_iNmlCT.mjs.map +0 -1
  129. package/lib/common-utils-DMSTohiS.mjs.map +0 -1
  130. package/lib/component-raycast-helper-CEp7wy9c.mjs.map +0 -1
  131. package/lib/configurator-BaUt4_LF.mjs +0 -2
  132. package/lib/configurator-CmuhFgC9.mjs +0 -45
  133. package/lib/continuous-drawing-helper-v_5UAM9A.mjs.map +0 -1
  134. package/lib/decorate-C1QnXPYw.mjs.map +0 -1
  135. package/lib/dimensioning-helper-DTcW85Oq.mjs +0 -2
  136. package/lib/glb-viewer-BzNA9-zH.mjs.map +0 -1
  137. package/lib/glb-viewer-DOxBD5k-.mjs +0 -2
  138. package/lib/imos-ix-poc-export-helper-CQh94HsO.mjs.map +0 -1
  139. package/lib/kernel-BAQSG9r5.mjs.map +0 -1
  140. package/lib/kernel-utils-H74uNY1h.mjs.map +0 -1
  141. package/lib/main-CtVIB52l.mjs.map +0 -1
  142. package/lib/material-viewer-Bq4smZ6f.mjs.map +0 -1
  143. package/lib/planner-CVw_xzGh.mjs +0 -44
  144. package/lib/planner-si70gWA2.mjs +0 -2
  145. package/lib/scene-renderer-D8HkTFeZ.mjs.map +0 -1
  146. package/lib/script-loader-D8xCRzTr.mjs +0 -45
  147. package/lib/script-loader-D8xCRzTr.mjs.map +0 -1
  148. package/lib/threejs-utils-jEzvlJF1.mjs +0 -2233
  149. package/lib/threejs-utils-jEzvlJF1.mjs.map +0 -1
@@ -1,4 +1,4 @@
1
- import { $n as e, $r as t, $t as n, Cr as r, Ct as i, Dr as a, E as o, Er as s, Et as c, Fr as l, Ft as u, Gn as d, Gr as f, Gt as p, H as m, Hr as h, Ir as g, It as _, Jr as v, Jt as y, K as b, Kn as x, Kr as S, Kt as C, L as w, Lr as T, Lt as E, M as D, Mt as O, N as ee, Nr as te, Nt as k, Or as A, Pr as j, Pt as M, Qr as ne, R as N, Rr as P, S as re, St as F, T as I, Tt as ie, U as L, Vr as ae, Wr as R, X as z, Xr as oe, Yr as se, Zn as ce, Zt as B, b as le, c as ue, cr as de, ei as fe, en as pe, g as V, h as H, i as me, j as U, jr as he, kr as ge, l as _e, ln as ve, mn as ye, ni as be, p as xe, pn as Se, pt as Ce, qn as we, qr as Te, qt as Ee, s as De, sr as Oe, ti as W, tn as ke, tr as Ae, ur as je, w as Me, wt as Ne, x as G, z as Pe, zr as Fe } from "./three.core-CLIofecG.mjs";
1
+ import { A as e, B as t, Bi as n, Bn as r, Br as i, C as a, Cr as o, Di as s, Dn as c, Fi as l, Ft as u, Gn as d, Hi as f, Hr as p, Ii as m, J as h, K as g, Kt as _, Mi as v, Ni as y, Nr as b, On as x, Pi as S, Qt as C, R as w, Ri as T, Si as E, Sr as D, T as O, Ti as k, Tn as A, Vi as j, Wn as M, Xt as N, Yt as ee, Zt as te, _i as P, a as ne, ai as F, an as I, bi as L, bn as R, cn as re, di as z, f as ie, fi as ae, gi as oe, j as B, ji as V, jr as se, k as ce, kn as le, kr as ue, li as de, ln as fe, m as pe, mi as me, mt as he, nt as H, on as ge, ot as _e, p as ve, q as ye, rt as be, sn as U, st as xe, tt as Se, ui as Ce, un as we, ut as Te, vi as Ee, vn as De, wi as Oe, wr as ke, x as Ae, xi as W, xn as je, yi as Me, yn as Ne, z as G, zi as Pe, zr as Fe } from "./three.core-mM-jZdgg.mjs";
2
2
  //#region ../../node_modules/three/build/three.module.js
3
3
  function Ie() {
4
4
  let e = null, t = !1, n = null, r = null;
@@ -239,21 +239,21 @@ var K = {
239
239
  sprite_frag: "uniform vec3 diffuse;\nuniform float opacity;\n#include <common>\n#include <uv_pars_fragment>\n#include <map_pars_fragment>\n#include <alphamap_pars_fragment>\n#include <alphatest_pars_fragment>\n#include <alphahash_pars_fragment>\n#include <fog_pars_fragment>\n#include <logdepthbuf_pars_fragment>\n#include <clipping_planes_pars_fragment>\nvoid main() {\n vec4 diffuseColor = vec4( diffuse, opacity );\n #include <clipping_planes_fragment>\n vec3 outgoingLight = vec3( 0.0 );\n #include <logdepthbuf_fragment>\n #include <map_fragment>\n #include <alphamap_fragment>\n #include <alphatest_fragment>\n #include <alphahash_fragment>\n outgoingLight = diffuseColor.rgb;\n #include <opaque_fragment>\n #include <tonemapping_fragment>\n #include <colorspace_fragment>\n #include <fog_fragment>\n}"
240
240
  }, q = {
241
241
  common: {
242
- diffuse: { value: /* @__PURE__ */ new H(16777215) },
242
+ diffuse: { value: /* @__PURE__ */ new a(16777215) },
243
243
  opacity: { value: 1 },
244
244
  map: { value: null },
245
- mapTransform: { value: /* @__PURE__ */ new O() },
245
+ mapTransform: { value: /* @__PURE__ */ new I() },
246
246
  alphaMap: { value: null },
247
- alphaMapTransform: { value: /* @__PURE__ */ new O() },
247
+ alphaMapTransform: { value: /* @__PURE__ */ new I() },
248
248
  alphaTest: { value: 0 }
249
249
  },
250
250
  specularmap: {
251
251
  specularMap: { value: null },
252
- specularMapTransform: { value: /* @__PURE__ */ new O() }
252
+ specularMapTransform: { value: /* @__PURE__ */ new I() }
253
253
  },
254
254
  envmap: {
255
255
  envMap: { value: null },
256
- envMapRotation: { value: /* @__PURE__ */ new O() },
256
+ envMapRotation: { value: /* @__PURE__ */ new I() },
257
257
  flipEnvMap: { value: -1 },
258
258
  reflectivity: { value: 1 },
259
259
  ior: { value: 1.5 },
@@ -263,47 +263,47 @@ var K = {
263
263
  aomap: {
264
264
  aoMap: { value: null },
265
265
  aoMapIntensity: { value: 1 },
266
- aoMapTransform: { value: /* @__PURE__ */ new O() }
266
+ aoMapTransform: { value: /* @__PURE__ */ new I() }
267
267
  },
268
268
  lightmap: {
269
269
  lightMap: { value: null },
270
270
  lightMapIntensity: { value: 1 },
271
- lightMapTransform: { value: /* @__PURE__ */ new O() }
271
+ lightMapTransform: { value: /* @__PURE__ */ new I() }
272
272
  },
273
273
  bumpmap: {
274
274
  bumpMap: { value: null },
275
- bumpMapTransform: { value: /* @__PURE__ */ new O() },
275
+ bumpMapTransform: { value: /* @__PURE__ */ new I() },
276
276
  bumpScale: { value: 1 }
277
277
  },
278
278
  normalmap: {
279
279
  normalMap: { value: null },
280
- normalMapTransform: { value: /* @__PURE__ */ new O() },
281
- normalScale: { value: /* @__PURE__ */ new T(1, 1) }
280
+ normalMapTransform: { value: /* @__PURE__ */ new I() },
281
+ normalScale: { value: /* @__PURE__ */ new L(1, 1) }
282
282
  },
283
283
  displacementmap: {
284
284
  displacementMap: { value: null },
285
- displacementMapTransform: { value: /* @__PURE__ */ new O() },
285
+ displacementMapTransform: { value: /* @__PURE__ */ new I() },
286
286
  displacementScale: { value: 1 },
287
287
  displacementBias: { value: 0 }
288
288
  },
289
289
  emissivemap: {
290
290
  emissiveMap: { value: null },
291
- emissiveMapTransform: { value: /* @__PURE__ */ new O() }
291
+ emissiveMapTransform: { value: /* @__PURE__ */ new I() }
292
292
  },
293
293
  metalnessmap: {
294
294
  metalnessMap: { value: null },
295
- metalnessMapTransform: { value: /* @__PURE__ */ new O() }
295
+ metalnessMapTransform: { value: /* @__PURE__ */ new I() }
296
296
  },
297
297
  roughnessmap: {
298
298
  roughnessMap: { value: null },
299
- roughnessMapTransform: { value: /* @__PURE__ */ new O() }
299
+ roughnessMapTransform: { value: /* @__PURE__ */ new I() }
300
300
  },
301
301
  gradientmap: { gradientMap: { value: null } },
302
302
  fog: {
303
303
  fogDensity: { value: 25e-5 },
304
304
  fogNear: { value: 1 },
305
305
  fogFar: { value: 2e3 },
306
- fogColor: { value: /* @__PURE__ */ new H(16777215) }
306
+ fogColor: { value: /* @__PURE__ */ new a(16777215) }
307
307
  },
308
308
  lights: {
309
309
  ambientLightColor: { value: [] },
@@ -393,30 +393,30 @@ var K = {
393
393
  ltc_2: { value: null }
394
394
  },
395
395
  points: {
396
- diffuse: { value: /* @__PURE__ */ new H(16777215) },
396
+ diffuse: { value: /* @__PURE__ */ new a(16777215) },
397
397
  opacity: { value: 1 },
398
398
  size: { value: 1 },
399
399
  scale: { value: 1 },
400
400
  map: { value: null },
401
401
  alphaMap: { value: null },
402
- alphaMapTransform: { value: /* @__PURE__ */ new O() },
402
+ alphaMapTransform: { value: /* @__PURE__ */ new I() },
403
403
  alphaTest: { value: 0 },
404
- uvTransform: { value: /* @__PURE__ */ new O() }
404
+ uvTransform: { value: /* @__PURE__ */ new I() }
405
405
  },
406
406
  sprite: {
407
- diffuse: { value: /* @__PURE__ */ new H(16777215) },
407
+ diffuse: { value: /* @__PURE__ */ new a(16777215) },
408
408
  opacity: { value: 1 },
409
- center: { value: /* @__PURE__ */ new T(.5, .5) },
409
+ center: { value: /* @__PURE__ */ new L(.5, .5) },
410
410
  rotation: { value: 0 },
411
411
  map: { value: null },
412
- mapTransform: { value: /* @__PURE__ */ new O() },
412
+ mapTransform: { value: /* @__PURE__ */ new I() },
413
413
  alphaMap: { value: null },
414
- alphaMapTransform: { value: /* @__PURE__ */ new O() },
414
+ alphaMapTransform: { value: /* @__PURE__ */ new I() },
415
415
  alphaTest: { value: 0 }
416
416
  }
417
417
  }, J = {
418
418
  basic: {
419
- uniforms: /* @__PURE__ */ t([
419
+ uniforms: /* @__PURE__ */ Pe([
420
420
  q.common,
421
421
  q.specularmap,
422
422
  q.envmap,
@@ -428,7 +428,7 @@ var K = {
428
428
  fragmentShader: K.meshbasic_frag
429
429
  },
430
430
  lambert: {
431
- uniforms: /* @__PURE__ */ t([
431
+ uniforms: /* @__PURE__ */ Pe([
432
432
  q.common,
433
433
  q.specularmap,
434
434
  q.envmap,
@@ -441,7 +441,7 @@ var K = {
441
441
  q.fog,
442
442
  q.lights,
443
443
  {
444
- emissive: { value: /* @__PURE__ */ new H(0) },
444
+ emissive: { value: /* @__PURE__ */ new a(0) },
445
445
  envMapIntensity: { value: 1 }
446
446
  }
447
447
  ]),
@@ -449,7 +449,7 @@ var K = {
449
449
  fragmentShader: K.meshlambert_frag
450
450
  },
451
451
  phong: {
452
- uniforms: /* @__PURE__ */ t([
452
+ uniforms: /* @__PURE__ */ Pe([
453
453
  q.common,
454
454
  q.specularmap,
455
455
  q.envmap,
@@ -462,8 +462,8 @@ var K = {
462
462
  q.fog,
463
463
  q.lights,
464
464
  {
465
- emissive: { value: /* @__PURE__ */ new H(0) },
466
- specular: { value: /* @__PURE__ */ new H(1118481) },
465
+ emissive: { value: /* @__PURE__ */ new a(0) },
466
+ specular: { value: /* @__PURE__ */ new a(1118481) },
467
467
  shininess: { value: 30 },
468
468
  envMapIntensity: { value: 1 }
469
469
  }
@@ -472,7 +472,7 @@ var K = {
472
472
  fragmentShader: K.meshphong_frag
473
473
  },
474
474
  standard: {
475
- uniforms: /* @__PURE__ */ t([
475
+ uniforms: /* @__PURE__ */ Pe([
476
476
  q.common,
477
477
  q.envmap,
478
478
  q.aomap,
@@ -486,7 +486,7 @@ var K = {
486
486
  q.fog,
487
487
  q.lights,
488
488
  {
489
- emissive: { value: /* @__PURE__ */ new H(0) },
489
+ emissive: { value: /* @__PURE__ */ new a(0) },
490
490
  roughness: { value: 1 },
491
491
  metalness: { value: 0 },
492
492
  envMapIntensity: { value: 1 }
@@ -496,7 +496,7 @@ var K = {
496
496
  fragmentShader: K.meshphysical_frag
497
497
  },
498
498
  toon: {
499
- uniforms: /* @__PURE__ */ t([
499
+ uniforms: /* @__PURE__ */ Pe([
500
500
  q.common,
501
501
  q.aomap,
502
502
  q.lightmap,
@@ -507,13 +507,13 @@ var K = {
507
507
  q.gradientmap,
508
508
  q.fog,
509
509
  q.lights,
510
- { emissive: { value: /* @__PURE__ */ new H(0) } }
510
+ { emissive: { value: /* @__PURE__ */ new a(0) } }
511
511
  ]),
512
512
  vertexShader: K.meshtoon_vert,
513
513
  fragmentShader: K.meshtoon_frag
514
514
  },
515
515
  matcap: {
516
- uniforms: /* @__PURE__ */ t([
516
+ uniforms: /* @__PURE__ */ Pe([
517
517
  q.common,
518
518
  q.bumpmap,
519
519
  q.normalmap,
@@ -525,12 +525,12 @@ var K = {
525
525
  fragmentShader: K.meshmatcap_frag
526
526
  },
527
527
  points: {
528
- uniforms: /* @__PURE__ */ t([q.points, q.fog]),
528
+ uniforms: /* @__PURE__ */ Pe([q.points, q.fog]),
529
529
  vertexShader: K.points_vert,
530
530
  fragmentShader: K.points_frag
531
531
  },
532
532
  dashed: {
533
- uniforms: /* @__PURE__ */ t([
533
+ uniforms: /* @__PURE__ */ Pe([
534
534
  q.common,
535
535
  q.fog,
536
536
  {
@@ -543,12 +543,12 @@ var K = {
543
543
  fragmentShader: K.linedashed_frag
544
544
  },
545
545
  depth: {
546
- uniforms: /* @__PURE__ */ t([q.common, q.displacementmap]),
546
+ uniforms: /* @__PURE__ */ Pe([q.common, q.displacementmap]),
547
547
  vertexShader: K.depth_vert,
548
548
  fragmentShader: K.depth_frag
549
549
  },
550
550
  normal: {
551
- uniforms: /* @__PURE__ */ t([
551
+ uniforms: /* @__PURE__ */ Pe([
552
552
  q.common,
553
553
  q.bumpmap,
554
554
  q.normalmap,
@@ -559,13 +559,13 @@ var K = {
559
559
  fragmentShader: K.meshnormal_frag
560
560
  },
561
561
  sprite: {
562
- uniforms: /* @__PURE__ */ t([q.sprite, q.fog]),
562
+ uniforms: /* @__PURE__ */ Pe([q.sprite, q.fog]),
563
563
  vertexShader: K.sprite_vert,
564
564
  fragmentShader: K.sprite_frag
565
565
  },
566
566
  background: {
567
567
  uniforms: {
568
- uvTransform: { value: /* @__PURE__ */ new O() },
568
+ uvTransform: { value: /* @__PURE__ */ new I() },
569
569
  t2D: { value: null },
570
570
  backgroundIntensity: { value: 1 }
571
571
  },
@@ -578,7 +578,7 @@ var K = {
578
578
  flipEnvMap: { value: -1 },
579
579
  backgroundBlurriness: { value: 0 },
580
580
  backgroundIntensity: { value: 1 },
581
- backgroundRotation: { value: /* @__PURE__ */ new O() }
581
+ backgroundRotation: { value: /* @__PURE__ */ new I() }
582
582
  },
583
583
  vertexShader: K.backgroundCube_vert,
584
584
  fragmentShader: K.backgroundCube_frag
@@ -598,11 +598,11 @@ var K = {
598
598
  fragmentShader: K.equirect_frag
599
599
  },
600
600
  distance: {
601
- uniforms: /* @__PURE__ */ t([
601
+ uniforms: /* @__PURE__ */ Pe([
602
602
  q.common,
603
603
  q.displacementmap,
604
604
  {
605
- referencePosition: { value: /* @__PURE__ */ new P() },
605
+ referencePosition: { value: /* @__PURE__ */ new W() },
606
606
  nearDistance: { value: 1 },
607
607
  farDistance: { value: 1e3 }
608
608
  }
@@ -611,11 +611,11 @@ var K = {
611
611
  fragmentShader: K.distance_frag
612
612
  },
613
613
  shadow: {
614
- uniforms: /* @__PURE__ */ t([
614
+ uniforms: /* @__PURE__ */ Pe([
615
615
  q.lights,
616
616
  q.fog,
617
617
  {
618
- color: { value: /* @__PURE__ */ new H(0) },
618
+ color: { value: /* @__PURE__ */ new a(0) },
619
619
  opacity: { value: 1 }
620
620
  }
621
621
  ]),
@@ -624,51 +624,51 @@ var K = {
624
624
  }
625
625
  };
626
626
  J.physical = {
627
- uniforms: /* @__PURE__ */ t([J.standard.uniforms, {
627
+ uniforms: /* @__PURE__ */ Pe([J.standard.uniforms, {
628
628
  clearcoat: { value: 0 },
629
629
  clearcoatMap: { value: null },
630
- clearcoatMapTransform: { value: /* @__PURE__ */ new O() },
630
+ clearcoatMapTransform: { value: /* @__PURE__ */ new I() },
631
631
  clearcoatNormalMap: { value: null },
632
- clearcoatNormalMapTransform: { value: /* @__PURE__ */ new O() },
633
- clearcoatNormalScale: { value: /* @__PURE__ */ new T(1, 1) },
632
+ clearcoatNormalMapTransform: { value: /* @__PURE__ */ new I() },
633
+ clearcoatNormalScale: { value: /* @__PURE__ */ new L(1, 1) },
634
634
  clearcoatRoughness: { value: 0 },
635
635
  clearcoatRoughnessMap: { value: null },
636
- clearcoatRoughnessMapTransform: { value: /* @__PURE__ */ new O() },
636
+ clearcoatRoughnessMapTransform: { value: /* @__PURE__ */ new I() },
637
637
  dispersion: { value: 0 },
638
638
  iridescence: { value: 0 },
639
639
  iridescenceMap: { value: null },
640
- iridescenceMapTransform: { value: /* @__PURE__ */ new O() },
640
+ iridescenceMapTransform: { value: /* @__PURE__ */ new I() },
641
641
  iridescenceIOR: { value: 1.3 },
642
642
  iridescenceThicknessMinimum: { value: 100 },
643
643
  iridescenceThicknessMaximum: { value: 400 },
644
644
  iridescenceThicknessMap: { value: null },
645
- iridescenceThicknessMapTransform: { value: /* @__PURE__ */ new O() },
645
+ iridescenceThicknessMapTransform: { value: /* @__PURE__ */ new I() },
646
646
  sheen: { value: 0 },
647
- sheenColor: { value: /* @__PURE__ */ new H(0) },
647
+ sheenColor: { value: /* @__PURE__ */ new a(0) },
648
648
  sheenColorMap: { value: null },
649
- sheenColorMapTransform: { value: /* @__PURE__ */ new O() },
649
+ sheenColorMapTransform: { value: /* @__PURE__ */ new I() },
650
650
  sheenRoughness: { value: 1 },
651
651
  sheenRoughnessMap: { value: null },
652
- sheenRoughnessMapTransform: { value: /* @__PURE__ */ new O() },
652
+ sheenRoughnessMapTransform: { value: /* @__PURE__ */ new I() },
653
653
  transmission: { value: 0 },
654
654
  transmissionMap: { value: null },
655
- transmissionMapTransform: { value: /* @__PURE__ */ new O() },
656
- transmissionSamplerSize: { value: /* @__PURE__ */ new T() },
655
+ transmissionMapTransform: { value: /* @__PURE__ */ new I() },
656
+ transmissionSamplerSize: { value: /* @__PURE__ */ new L() },
657
657
  transmissionSamplerMap: { value: null },
658
658
  thickness: { value: 0 },
659
659
  thicknessMap: { value: null },
660
- thicknessMapTransform: { value: /* @__PURE__ */ new O() },
660
+ thicknessMapTransform: { value: /* @__PURE__ */ new I() },
661
661
  attenuationDistance: { value: 0 },
662
- attenuationColor: { value: /* @__PURE__ */ new H(0) },
663
- specularColor: { value: /* @__PURE__ */ new H(1, 1, 1) },
662
+ attenuationColor: { value: /* @__PURE__ */ new a(0) },
663
+ specularColor: { value: /* @__PURE__ */ new a(1, 1, 1) },
664
664
  specularColorMap: { value: null },
665
- specularColorMapTransform: { value: /* @__PURE__ */ new O() },
665
+ specularColorMapTransform: { value: /* @__PURE__ */ new I() },
666
666
  specularIntensity: { value: 1 },
667
667
  specularIntensityMap: { value: null },
668
- specularIntensityMapTransform: { value: /* @__PURE__ */ new O() },
669
- anisotropyVector: { value: /* @__PURE__ */ new T() },
668
+ specularIntensityMapTransform: { value: /* @__PURE__ */ new I() },
669
+ anisotropyVector: { value: /* @__PURE__ */ new L() },
670
670
  anisotropyMap: { value: null },
671
- anisotropyMapTransform: { value: /* @__PURE__ */ new O() }
671
+ anisotropyMapTransform: { value: /* @__PURE__ */ new I() }
672
672
  }]),
673
673
  vertexShader: K.meshphysical_vert,
674
674
  fragmentShader: K.meshphysical_frag
@@ -677,10 +677,10 @@ var Re = {
677
677
  r: 0,
678
678
  b: 0,
679
679
  g: 0
680
- }, Y = /* @__PURE__ */ new w(), X = /* @__PURE__ */ new k();
681
- function ze(e, t, n, r, i, a) {
682
- let o = new H(0), s = i === !0 ? 0 : 1, c, l, u = null, d = 0, p = null;
683
- function m(e) {
680
+ }, Y = /* @__PURE__ */ new Se(), X = /* @__PURE__ */ new ge();
681
+ function ze(e, t, n, r, o, s) {
682
+ let c = new a(0), l = o === !0 ? 0 : 1, u, d, f = null, h = 0, g = null;
683
+ function _(e) {
684
684
  let n = e.isScene === !0 ? e.background : null;
685
685
  if (n && n.isTexture) {
686
686
  let r = e.backgroundBlurriness > 0;
@@ -688,17 +688,17 @@ function ze(e, t, n, r, i, a) {
688
688
  }
689
689
  return n;
690
690
  }
691
- function h(t) {
692
- let r = !1, i = m(t);
693
- i === null ? _(o, s) : i && i.isColor && (_(i, 1), r = !0);
694
- let c = e.xr.getEnvironmentBlendMode();
695
- c === "additive" ? n.buffers.color.setClear(0, 0, 0, 1, a) : c === "alpha-blend" && n.buffers.color.setClear(0, 0, 0, 0, a), (e.autoClear || r) && (n.buffers.depth.setTest(!0), n.buffers.depth.setMask(!0), n.buffers.color.setMask(!0), e.clear(e.autoClearColor, e.autoClearDepth, e.autoClearStencil));
691
+ function v(t) {
692
+ let r = !1, i = _(t);
693
+ i === null ? b(c, l) : i && i.isColor && (b(i, 1), r = !0);
694
+ let a = e.xr.getEnvironmentBlendMode();
695
+ a === "additive" ? n.buffers.color.setClear(0, 0, 0, 1, s) : a === "alpha-blend" && n.buffers.color.setClear(0, 0, 0, 0, s), (e.autoClear || r) && (n.buffers.depth.setTest(!0), n.buffers.depth.setMask(!0), n.buffers.color.setMask(!0), e.clear(e.autoClearColor, e.autoClearDepth, e.autoClearStencil));
696
696
  }
697
- function g(t, n) {
698
- let i = m(n);
699
- i && (i.isCubeTexture || i.mapping === 306) ? (l === void 0 && (l = new M(new De(1, 1, 1), new je({
697
+ function y(t, n) {
698
+ let a = _(n);
699
+ a && (a.isCubeTexture || a.mapping === 306) ? (d === void 0 && (d = new U(new ie(1, 1, 1), new p({
700
700
  name: "BackgroundCubeMaterial",
701
- uniforms: f(J.backgroundCube.uniforms),
701
+ uniforms: V(J.backgroundCube.uniforms),
702
702
  vertexShader: J.backgroundCube.vertexShader,
703
703
  fragmentShader: J.backgroundCube.fragmentShader,
704
704
  side: 1,
@@ -706,13 +706,13 @@ function ze(e, t, n, r, i, a) {
706
706
  depthWrite: !1,
707
707
  fog: !1,
708
708
  allowOverride: !1
709
- })), l.geometry.deleteAttribute("normal"), l.geometry.deleteAttribute("uv"), l.onBeforeRender = function(e, t, n) {
709
+ })), d.geometry.deleteAttribute("normal"), d.geometry.deleteAttribute("uv"), d.onBeforeRender = function(e, t, n) {
710
710
  this.matrixWorld.copyPosition(n.matrixWorld);
711
- }, Object.defineProperty(l.material, "envMap", { get: function() {
711
+ }, Object.defineProperty(d.material, "envMap", { get: function() {
712
712
  return this.uniforms.envMap.value;
713
- } }), r.update(l)), Y.copy(n.backgroundRotation), Y.x *= -1, Y.y *= -1, Y.z *= -1, i.isCubeTexture && i.isRenderTargetTexture === !1 && (Y.y *= -1, Y.z *= -1), l.material.uniforms.envMap.value = i, l.material.uniforms.flipEnvMap.value = i.isCubeTexture && i.isRenderTargetTexture === !1 ? -1 : 1, l.material.uniforms.backgroundBlurriness.value = n.backgroundBlurriness, l.material.uniforms.backgroundIntensity.value = n.backgroundIntensity, l.material.uniforms.backgroundRotation.value.setFromMatrix4(X.makeRotationFromEuler(Y)), l.material.toneMapped = V.getTransfer(i.colorSpace) !== de, (u !== i || d !== i.version || p !== e.toneMapping) && (l.material.needsUpdate = !0, u = i, d = i.version, p = e.toneMapping), l.layers.enableAll(), t.unshift(l, l.geometry, l.material, 0, 0, null)) : i && i.isTexture && (c === void 0 && (c = new M(new ke(2, 2), new je({
713
+ } }), r.update(d)), Y.copy(n.backgroundRotation), Y.x *= -1, Y.y *= -1, Y.z *= -1, a.isCubeTexture && a.isRenderTargetTexture === !1 && (Y.y *= -1, Y.z *= -1), d.material.uniforms.envMap.value = a, d.material.uniforms.flipEnvMap.value = a.isCubeTexture && a.isRenderTargetTexture === !1 ? -1 : 1, d.material.uniforms.backgroundBlurriness.value = n.backgroundBlurriness, d.material.uniforms.backgroundIntensity.value = n.backgroundIntensity, d.material.uniforms.backgroundRotation.value.setFromMatrix4(X.makeRotationFromEuler(Y)), d.material.toneMapped = O.getTransfer(a.colorSpace) !== i, (f !== a || h !== a.version || g !== e.toneMapping) && (d.material.needsUpdate = !0, f = a, h = a.version, g = e.toneMapping), d.layers.enableAll(), t.unshift(d, d.geometry, d.material, 0, 0, null)) : a && a.isTexture && (u === void 0 && (u = new U(new le(2, 2), new p({
714
714
  name: "BackgroundMaterial",
715
- uniforms: f(J.background.uniforms),
715
+ uniforms: V(J.background.uniforms),
716
716
  vertexShader: J.background.vertexShader,
717
717
  fragmentShader: J.background.fragmentShader,
718
718
  side: 0,
@@ -720,32 +720,32 @@ function ze(e, t, n, r, i, a) {
720
720
  depthWrite: !1,
721
721
  fog: !1,
722
722
  allowOverride: !1
723
- })), c.geometry.deleteAttribute("normal"), Object.defineProperty(c.material, "map", { get: function() {
723
+ })), u.geometry.deleteAttribute("normal"), Object.defineProperty(u.material, "map", { get: function() {
724
724
  return this.uniforms.t2D.value;
725
- } }), r.update(c)), c.material.uniforms.t2D.value = i, c.material.uniforms.backgroundIntensity.value = n.backgroundIntensity, c.material.toneMapped = V.getTransfer(i.colorSpace) !== de, i.matrixAutoUpdate === !0 && i.updateMatrix(), c.material.uniforms.uvTransform.value.copy(i.matrix), (u !== i || d !== i.version || p !== e.toneMapping) && (c.material.needsUpdate = !0, u = i, d = i.version, p = e.toneMapping), c.layers.enableAll(), t.unshift(c, c.geometry, c.material, 0, 0, null));
725
+ } }), r.update(u)), u.material.uniforms.t2D.value = a, u.material.uniforms.backgroundIntensity.value = n.backgroundIntensity, u.material.toneMapped = O.getTransfer(a.colorSpace) !== i, a.matrixAutoUpdate === !0 && a.updateMatrix(), u.material.uniforms.uvTransform.value.copy(a.matrix), (f !== a || h !== a.version || g !== e.toneMapping) && (u.material.needsUpdate = !0, f = a, h = a.version, g = e.toneMapping), u.layers.enableAll(), t.unshift(u, u.geometry, u.material, 0, 0, null));
726
726
  }
727
- function _(t, r) {
728
- t.getRGB(Re, oe(e)), n.buffers.color.setClear(Re.r, Re.g, Re.b, r, a);
727
+ function b(t, r) {
728
+ t.getRGB(Re, m(e)), n.buffers.color.setClear(Re.r, Re.g, Re.b, r, s);
729
729
  }
730
- function v() {
731
- l !== void 0 && (l.geometry.dispose(), l.material.dispose(), l = void 0), c !== void 0 && (c.geometry.dispose(), c.material.dispose(), c = void 0);
730
+ function x() {
731
+ d !== void 0 && (d.geometry.dispose(), d.material.dispose(), d = void 0), u !== void 0 && (u.geometry.dispose(), u.material.dispose(), u = void 0);
732
732
  }
733
733
  return {
734
734
  getClearColor: function() {
735
- return o;
735
+ return c;
736
736
  },
737
737
  setClearColor: function(e, t = 1) {
738
- o.set(e), s = t, _(o, s);
738
+ c.set(e), l = t, b(c, l);
739
739
  },
740
740
  getClearAlpha: function() {
741
- return s;
741
+ return l;
742
742
  },
743
743
  setClearAlpha: function(e) {
744
- s = e, _(o, s);
744
+ l = e, b(c, l);
745
745
  },
746
- render: h,
747
- addToRenderList: g,
748
- dispose: v
746
+ render: v,
747
+ addToRenderList: y,
748
+ dispose: x
749
749
  };
750
750
  }
751
751
  function Be(e, t) {
@@ -999,7 +999,7 @@ function He(e, t, n, r) {
999
999
  return t === "mediump" && e.getShaderPrecisionFormat(e.VERTEX_SHADER, e.MEDIUM_FLOAT).precision > 0 && e.getShaderPrecisionFormat(e.FRAGMENT_SHADER, e.MEDIUM_FLOAT).precision > 0 ? "mediump" : "lowp";
1000
1000
  }
1001
1001
  let l = n.precision === void 0 ? "highp" : n.precision, u = c(l);
1002
- u !== l && (W("WebGLRenderer:", l, "not supported, using", u, "instead."), l = u);
1002
+ u !== l && (j("WebGLRenderer:", l, "not supported, using", u, "instead."), l = u);
1003
1003
  let d = n.logarithmicDepthBuffer === !0, f = n.reversedDepthBuffer === !0 && t.has("EXT_clip_control"), p = e.getParameter(e.MAX_TEXTURE_IMAGE_UNITS), m = e.getParameter(e.MAX_VERTEX_TEXTURE_IMAGE_UNITS), h = e.getParameter(e.MAX_TEXTURE_SIZE), g = e.getParameter(e.MAX_CUBE_MAP_TEXTURE_SIZE), _ = e.getParameter(e.MAX_VERTEX_ATTRIBS), v = e.getParameter(e.MAX_VERTEX_UNIFORM_VECTORS), y = e.getParameter(e.MAX_VARYING_VECTORS), b = e.getParameter(e.MAX_FRAGMENT_UNIFORM_VECTORS), x = e.getParameter(e.MAX_SAMPLES), S = e.getParameter(e.SAMPLES);
1004
1004
  return {
1005
1005
  isWebGL2: !0,
@@ -1023,7 +1023,7 @@ function He(e, t, n, r) {
1023
1023
  };
1024
1024
  }
1025
1025
  function Ue(e) {
1026
- let t = this, n = null, r = 0, i = !1, a = !1, o = new pe(), s = new O(), c = {
1026
+ let t = this, n = null, r = 0, i = !1, a = !1, o = new x(), s = new I(), c = {
1027
1027
  value: null,
1028
1028
  needsUpdate: !1
1029
1029
  };
@@ -1069,7 +1069,7 @@ var We = 4, Ge = [
1069
1069
  .446,
1070
1070
  .526,
1071
1071
  .582
1072
- ], Ke = 20, qe = 256, Je = /* @__PURE__ */ new B(), Ye = /* @__PURE__ */ new H(), Xe = null, Ze = 0, Qe = 0, $e = !1, et = /* @__PURE__ */ new P(), tt = class {
1072
+ ], Ke = 20, qe = 256, Je = /* @__PURE__ */ new A(), Ye = /* @__PURE__ */ new a(), Xe = null, Ze = 0, Qe = 0, $e = !1, et = /* @__PURE__ */ new W(), tt = class {
1073
1073
  constructor(e) {
1074
1074
  this._renderer = e, this._pingPongRenderTarget = null, this._lodMax = 0, this._cubeSize = 0, this._sizeLods = [], this._sigmas = [], this._lodMeshes = [], this._backgroundBox = null, this._cubemapMaterial = null, this._equirectMaterial = null, this._blurMaterial = null, this._ggxMaterial = null;
1075
1075
  }
@@ -1111,12 +1111,12 @@ var We = 4, Ge = [
1111
1111
  }
1112
1112
  _allocateTargets() {
1113
1113
  let e = 3 * Math.max(this._cubeSize, 112), t = 4 * this._cubeSize, n = {
1114
- magFilter: F,
1115
- minFilter: F,
1114
+ magFilter: _,
1115
+ minFilter: _,
1116
1116
  generateMipmaps: !1,
1117
- type: z,
1118
- format: Se,
1119
- colorSpace: ie,
1117
+ type: he,
1118
+ format: M,
1119
+ colorSpace: te,
1120
1120
  depthBuffer: !1
1121
1121
  }, r = rt(e, t, n);
1122
1122
  if (this._pingPongRenderTarget === null || this._pingPongRenderTarget.width !== e || this._pingPongRenderTarget.height !== t) {
@@ -1127,40 +1127,40 @@ var We = 4, Ge = [
1127
1127
  return r;
1128
1128
  }
1129
1129
  _compileMaterial(e) {
1130
- let t = new M(new _e(), e);
1130
+ let t = new U(new pe(), e);
1131
1131
  this._renderer.compile(t, Je);
1132
1132
  }
1133
- _sceneToCubeUV(e, t, r, i, a) {
1134
- let o = new n(90, 1, t, r), s = [
1133
+ _sceneToCubeUV(e, t, n, r, i) {
1134
+ let a = new c(90, 1, t, n), o = [
1135
1135
  1,
1136
1136
  -1,
1137
1137
  1,
1138
1138
  1,
1139
1139
  1,
1140
1140
  1
1141
- ], c = [
1141
+ ], s = [
1142
1142
  1,
1143
1143
  1,
1144
1144
  1,
1145
1145
  -1,
1146
1146
  -1,
1147
1147
  -1
1148
- ], l = this._renderer, d = l.autoClear, f = l.toneMapping;
1149
- l.getClearColor(Ye), l.toneMapping = 0, l.autoClear = !1, l.state.buffers.depth.getReversed() && (l.setRenderTarget(i), l.clearDepth(), l.setRenderTarget(null)), this._backgroundBox === null && (this._backgroundBox = new M(new De(), new u({
1148
+ ], l = this._renderer, u = l.autoClear, d = l.toneMapping;
1149
+ l.getClearColor(Ye), l.toneMapping = 0, l.autoClear = !1, l.state.buffers.depth.getReversed() && (l.setRenderTarget(r), l.clearDepth(), l.setRenderTarget(null)), this._backgroundBox === null && (this._backgroundBox = new U(new ie(), new re({
1150
1150
  name: "PMREM.Background",
1151
1151
  side: 1,
1152
1152
  depthWrite: !1,
1153
1153
  depthTest: !1
1154
1154
  })));
1155
- let p = this._backgroundBox, m = p.material, h = !1, g = e.background;
1156
- g ? g.isColor && (m.color.copy(g), e.background = null, h = !0) : (m.color.copy(Ye), h = !0);
1155
+ let f = this._backgroundBox, p = f.material, m = !1, h = e.background;
1156
+ h ? h.isColor && (p.color.copy(h), e.background = null, m = !0) : (p.color.copy(Ye), m = !0);
1157
1157
  for (let t = 0; t < 6; t++) {
1158
1158
  let n = t % 3;
1159
- n === 0 ? (o.up.set(0, s[t], 0), o.position.set(a.x, a.y, a.z), o.lookAt(a.x + c[t], a.y, a.z)) : n === 1 ? (o.up.set(0, 0, s[t]), o.position.set(a.x, a.y, a.z), o.lookAt(a.x, a.y + c[t], a.z)) : (o.up.set(0, s[t], 0), o.position.set(a.x, a.y, a.z), o.lookAt(a.x, a.y, a.z + c[t]));
1160
- let r = this._cubeSize;
1161
- it(i, n * r, t > 2 ? r : 0, r, r), l.setRenderTarget(i), h && l.render(p, o), l.render(e, o);
1159
+ n === 0 ? (a.up.set(0, o[t], 0), a.position.set(i.x, i.y, i.z), a.lookAt(i.x + s[t], i.y, i.z)) : n === 1 ? (a.up.set(0, 0, o[t]), a.position.set(i.x, i.y, i.z), a.lookAt(i.x, i.y + s[t], i.z)) : (a.up.set(0, o[t], 0), a.position.set(i.x, i.y, i.z), a.lookAt(i.x, i.y, i.z + s[t]));
1160
+ let c = this._cubeSize;
1161
+ it(r, n * c, t > 2 ? c : 0, c, c), l.setRenderTarget(r), m && l.render(f, a), l.render(e, a);
1162
1162
  }
1163
- l.toneMapping = f, l.autoClear = d, e.background = g;
1163
+ l.toneMapping = d, l.autoClear = u, e.background = h;
1164
1164
  }
1165
1165
  _textureToCubeUV(e, t) {
1166
1166
  let n = this._renderer, r = e.mapping === 301 || e.mapping === 302;
@@ -1191,11 +1191,11 @@ var We = 4, Ge = [
1191
1191
  }
1192
1192
  _halfBlur(e, t, n, r, i, a, o) {
1193
1193
  let s = this._renderer, c = this._blurMaterial;
1194
- a !== "latitudinal" && a !== "longitudinal" && v("blur direction must be either latitudinal or longitudinal!");
1194
+ a !== "latitudinal" && a !== "longitudinal" && S("blur direction must be either latitudinal or longitudinal!");
1195
1195
  let l = this._lodMeshes[r];
1196
1196
  l.material = c;
1197
1197
  let u = c.uniforms, d = this._sizeLods[n] - 1, f = isFinite(i) ? Math.PI / (2 * d) : 2 * Math.PI / (2 * Ke - 1), p = i / f, m = isFinite(i) ? 1 + Math.floor(3 * p) : Ke;
1198
- m > Ke && W(`sigmaRadians, ${i}, is too large and will clip, as it requested ${m} samples when the maximum is set to ${Ke}`);
1198
+ m > Ke && j(`sigmaRadians, ${i}, is too large and will clip, as it requested ${m} samples when the maximum is set to ${Ke}`);
1199
1199
  let h = [], g = 0;
1200
1200
  for (let e = 0; e < Ke; ++e) {
1201
1201
  let t = e / p, n = Math.exp(-t * t / 2);
@@ -1205,8 +1205,8 @@ var We = 4, Ge = [
1205
1205
  u.envMap.value = e.texture, u.samples.value = m, u.weights.value = h, u.latitudinal.value = a === "latitudinal", o && (u.poleAxis.value = o);
1206
1206
  let { _lodMax: _ } = this;
1207
1207
  u.dTheta.value = f, u.mipInt.value = _ - n;
1208
- let y = this._sizeLods[r];
1209
- it(t, 3 * y * (r > _ - We ? r - _ + We : 0), 4 * (this._cubeSize - y), 3 * y, 2 * y), s.setRenderTarget(t), s.render(l, Je);
1208
+ let v = this._sizeLods[r];
1209
+ it(t, 3 * v * (r > _ - We ? r - _ + We : 0), 4 * (this._cubeSize - v), 3 * v, 2 * v), s.setRenderTarget(t), s.render(l, Je);
1210
1210
  }
1211
1211
  };
1212
1212
  function nt(e) {
@@ -1262,8 +1262,8 @@ function nt(e) {
1262
1262
  ];
1263
1263
  m.set(i, 6 * e);
1264
1264
  }
1265
- let h = new _e();
1266
- h.setAttribute("position", new ue(f, 3)), h.setAttribute("uv", new ue(p, 2)), h.setAttribute("faceIndex", new ue(m, 1)), r.push(new M(h, null)), i > We && i--;
1265
+ let h = new pe();
1266
+ h.setAttribute("position", new ve(f, 3)), h.setAttribute("uv", new ve(p, 2)), h.setAttribute("faceIndex", new ve(m, 1)), r.push(new U(h, null)), i > We && i--;
1267
1267
  }
1268
1268
  return {
1269
1269
  lodMeshes: r,
@@ -1272,14 +1272,14 @@ function nt(e) {
1272
1272
  };
1273
1273
  }
1274
1274
  function rt(e, t, n) {
1275
- let r = new h(e, t, n);
1275
+ let r = new k(e, t, n);
1276
1276
  return r.texture.mapping = 306, r.texture.name = "PMREM.cubeUv", r.scissorTest = !0, r;
1277
1277
  }
1278
1278
  function it(e, t, n, r, i) {
1279
1279
  e.viewport.set(t, n, r, i), e.scissor.set(t, n, r, i);
1280
1280
  }
1281
1281
  function at(e, t, n) {
1282
- return new je({
1282
+ return new p({
1283
1283
  name: "PMREMGGXConvolution",
1284
1284
  defines: {
1285
1285
  GGX_SAMPLES: qe,
@@ -1300,8 +1300,8 @@ function at(e, t, n) {
1300
1300
  });
1301
1301
  }
1302
1302
  function ot(e, t, n) {
1303
- let r = new Float32Array(Ke), i = new P(0, 1, 0);
1304
- return new je({
1303
+ let r = new Float32Array(Ke), i = new W(0, 1, 0);
1304
+ return new p({
1305
1305
  name: "SphericalGaussianBlur",
1306
1306
  defines: {
1307
1307
  n: Ke,
@@ -1326,7 +1326,7 @@ function ot(e, t, n) {
1326
1326
  });
1327
1327
  }
1328
1328
  function st() {
1329
- return new je({
1329
+ return new p({
1330
1330
  name: "EquirectangularToCubeUV",
1331
1331
  uniforms: { envMap: { value: null } },
1332
1332
  vertexShader: ct(),
@@ -1337,7 +1337,7 @@ function st() {
1337
1337
  });
1338
1338
  }
1339
1339
  function Z() {
1340
- return new je({
1340
+ return new p({
1341
1341
  name: "CubemapToCubeUV",
1342
1342
  uniforms: {
1343
1343
  envMap: { value: null },
@@ -1353,7 +1353,7 @@ function Z() {
1353
1353
  function ct() {
1354
1354
  return "\n\n precision mediump float;\n precision mediump int;\n\n attribute float faceIndex;\n\n varying vec3 vOutputDirection;\n\n // RH coordinate system; PMREM face-indexing convention\n vec3 getDirection( vec2 uv, float face ) {\n\n uv = 2.0 * uv - 1.0;\n\n vec3 direction = vec3( uv, 1.0 );\n\n if ( face == 0.0 ) {\n\n direction = direction.zyx; // ( 1, v, u ) pos x\n\n } else if ( face == 1.0 ) {\n\n direction = direction.xzy;\n direction.xz *= -1.0; // ( -u, 1, -v ) pos y\n\n } else if ( face == 2.0 ) {\n\n direction.x *= -1.0; // ( -u, v, 1 ) pos z\n\n } else if ( face == 3.0 ) {\n\n direction = direction.zyx;\n direction.xz *= -1.0; // ( -1, v, -u ) neg x\n\n } else if ( face == 4.0 ) {\n\n direction = direction.xzy;\n direction.xy *= -1.0; // ( -u, -1, v ) neg y\n\n } else if ( face == 5.0 ) {\n\n direction.z *= -1.0; // ( u, v, -1 ) neg z\n\n }\n\n return direction;\n\n }\n\n void main() {\n\n vOutputDirection = getDirection( uv, faceIndex );\n gl_Position = vec4( position, 1.0 );\n\n }\n ";
1355
1355
  }
1356
- var lt = class extends h {
1356
+ var lt = class extends k {
1357
1357
  constructor(e = 1, t = {}) {
1358
1358
  super(e, e, t), this.isWebGLCubeRenderTarget = !0;
1359
1359
  let n = {
@@ -1361,7 +1361,7 @@ var lt = class extends h {
1361
1361
  height: e,
1362
1362
  depth: 1
1363
1363
  };
1364
- this.texture = new re([
1364
+ this.texture = new B([
1365
1365
  n,
1366
1366
  n,
1367
1367
  n,
@@ -1376,17 +1376,17 @@ var lt = class extends h {
1376
1376
  uniforms: { tEquirect: { value: null } },
1377
1377
  vertexShader: "\n\n varying vec3 vWorldDirection;\n\n vec3 transformDirection( in vec3 dir, in mat4 matrix ) {\n\n return normalize( ( matrix * vec4( dir, 0.0 ) ).xyz );\n\n }\n\n void main() {\n\n vWorldDirection = transformDirection( position, modelMatrix );\n\n #include <begin_vertex>\n #include <project_vertex>\n\n }\n ",
1378
1378
  fragmentShader: "\n\n uniform sampler2D tEquirect;\n\n varying vec3 vWorldDirection;\n\n #include <common>\n\n void main() {\n\n vec3 direction = normalize( vWorldDirection );\n\n vec2 sampleUV = equirectUv( direction );\n\n gl_FragColor = texture2D( tEquirect, sampleUV );\n\n }\n "
1379
- }, r = new De(5, 5, 5), i = new je({
1379
+ }, r = new ie(5, 5, 5), i = new p({
1380
1380
  name: "CubemapFromEquirect",
1381
- uniforms: f(n.uniforms),
1381
+ uniforms: V(n.uniforms),
1382
1382
  vertexShader: n.vertexShader,
1383
1383
  fragmentShader: n.fragmentShader,
1384
1384
  side: 1,
1385
1385
  blending: 0
1386
1386
  });
1387
1387
  i.uniforms.tEquirect.value = t;
1388
- let a = new M(r, i), o = t.minFilter;
1389
- return t.minFilter === 1008 && (t.minFilter = F), new le(1, 10, this).update(e, a), t.minFilter = o, a.geometry.dispose(), a.material.dispose(), this;
1388
+ let a = new U(r, i), o = t.minFilter;
1389
+ return t.minFilter === 1008 && (t.minFilter = _), new ce(1, 10, this).update(e, a), t.minFilter = o, a.geometry.dispose(), a.material.dispose(), this;
1390
1390
  }
1391
1391
  clear(e, t = !0, n = !0, r = !0) {
1392
1392
  let i = e.getRenderTarget();
@@ -1474,62 +1474,62 @@ function dt(e) {
1474
1474
  },
1475
1475
  get: function(e) {
1476
1476
  let t = n(e);
1477
- return t === null && be("WebGLRenderer: " + e + " extension not supported."), t;
1477
+ return t === null && f("WebGLRenderer: " + e + " extension not supported."), t;
1478
1478
  }
1479
1479
  };
1480
1480
  }
1481
1481
  function ft(e, t, n, r) {
1482
- let i = {}, o = /* @__PURE__ */ new WeakMap();
1483
- function c(e) {
1484
- let a = e.target;
1485
- a.index !== null && t.remove(a.index);
1486
- for (let e in a.attributes) t.remove(a.attributes[e]);
1487
- a.removeEventListener("dispose", c), delete i[a.id];
1488
- let s = o.get(a);
1489
- s && (t.remove(s), o.delete(a)), r.releaseStatesOfGeometry(a), a.isInstancedBufferGeometry === !0 && delete a._maxInstanceCount, n.memory.geometries--;
1482
+ let i = {}, a = /* @__PURE__ */ new WeakMap();
1483
+ function o(e) {
1484
+ let s = e.target;
1485
+ s.index !== null && t.remove(s.index);
1486
+ for (let e in s.attributes) t.remove(s.attributes[e]);
1487
+ s.removeEventListener("dispose", o), delete i[s.id];
1488
+ let c = a.get(s);
1489
+ c && (t.remove(c), a.delete(s)), r.releaseStatesOfGeometry(s), s.isInstancedBufferGeometry === !0 && delete s._maxInstanceCount, n.memory.geometries--;
1490
1490
  }
1491
- function l(e, t) {
1492
- return i[t.id] === !0 ? t : (t.addEventListener("dispose", c), i[t.id] = !0, n.memory.geometries++, t);
1491
+ function s(e, t) {
1492
+ return i[t.id] === !0 ? t : (t.addEventListener("dispose", o), i[t.id] = !0, n.memory.geometries++, t);
1493
1493
  }
1494
- function u(n) {
1494
+ function c(n) {
1495
1495
  let r = n.attributes;
1496
1496
  for (let n in r) t.update(r[n], e.ARRAY_BUFFER);
1497
1497
  }
1498
- function d(e) {
1499
- let n = [], r = e.index, i = e.attributes.position, c = 0;
1498
+ function l(e) {
1499
+ let n = [], r = e.index, i = e.attributes.position, o = 0;
1500
1500
  if (i === void 0) return;
1501
1501
  if (r !== null) {
1502
1502
  let e = r.array;
1503
- c = r.version;
1503
+ o = r.version;
1504
1504
  for (let t = 0, r = e.length; t < r; t += 3) {
1505
1505
  let r = e[t + 0], i = e[t + 1], a = e[t + 2];
1506
1506
  n.push(r, i, i, a, a, r);
1507
1507
  }
1508
1508
  } else {
1509
1509
  let e = i.array;
1510
- c = i.version;
1510
+ o = i.version;
1511
1511
  for (let t = 0, r = e.length / 3 - 1; t < r; t += 3) {
1512
1512
  let e = t + 0, r = t + 1, i = t + 2;
1513
1513
  n.push(e, r, r, i, i, e);
1514
1514
  }
1515
1515
  }
1516
- let l = new (i.count >= 65535 ? a : s)(n, 1);
1517
- l.version = c;
1518
- let u = o.get(e);
1519
- u && t.remove(u), o.set(e, l);
1516
+ let s = new (i.count >= 65535 ? Ce : de)(n, 1);
1517
+ s.version = o;
1518
+ let c = a.get(e);
1519
+ c && t.remove(c), a.set(e, s);
1520
1520
  }
1521
- function f(e) {
1522
- let t = o.get(e);
1521
+ function u(e) {
1522
+ let t = a.get(e);
1523
1523
  if (t) {
1524
1524
  let n = e.index;
1525
- n !== null && t.version < n.version && d(e);
1526
- } else d(e);
1527
- return o.get(e);
1525
+ n !== null && t.version < n.version && l(e);
1526
+ } else l(e);
1527
+ return a.get(e);
1528
1528
  }
1529
1529
  return {
1530
- get: l,
1531
- update: u,
1532
- getWireframeAttribute: f
1530
+ get: s,
1531
+ update: c,
1532
+ getWireframeAttribute: u
1533
1533
  };
1534
1534
  }
1535
1535
  function pt(e, t, n) {
@@ -1596,7 +1596,7 @@ function mt(e) {
1596
1596
  n.points += i * t;
1597
1597
  break;
1598
1598
  default:
1599
- v("WebGLInfo: Unknown draw mode:", r);
1599
+ S("WebGLInfo: Unknown draw mode:", r);
1600
1600
  break;
1601
1601
  }
1602
1602
  }
@@ -1613,7 +1613,7 @@ function mt(e) {
1613
1613
  };
1614
1614
  }
1615
1615
  function ht(e, t, n) {
1616
- let r = /* @__PURE__ */ new WeakMap(), i = new Fe();
1616
+ let r = /* @__PURE__ */ new WeakMap(), i = new E();
1617
1617
  function a(a, o, s) {
1618
1618
  let c = a.morphTargetInfluences, l = o.morphAttributes.position || o.morphAttributes.normal || o.morphAttributes.color, u = l === void 0 ? 0 : l.length, d = r.get(o);
1619
1619
  if (d === void 0 || d.count !== u) {
@@ -1622,8 +1622,8 @@ function ht(e, t, n) {
1622
1622
  e === !0 && (f = 1), n === !0 && (f = 2), a === !0 && (f = 3);
1623
1623
  let p = o.attributes.position.count * f, m = 1;
1624
1624
  p > t.maxTextureSize && (m = Math.ceil(p / t.maxTextureSize), p = t.maxTextureSize);
1625
- let h = new Float32Array(p * m * 4 * u), g = new I(h, p, m, u);
1626
- g.type = L, g.needsUpdate = !0;
1625
+ let h = new Float32Array(p * m * 4 * u), g = new G(h, p, m, u);
1626
+ g.type = xe, g.needsUpdate = !0;
1627
1627
  let _ = f * 4;
1628
1628
  for (let t = 0; t < u; t++) {
1629
1629
  let r = s[t], o = c[t], u = l[t], d = p * m * 4 * t;
@@ -1635,7 +1635,7 @@ function ht(e, t, n) {
1635
1635
  d = {
1636
1636
  count: u,
1637
1637
  texture: g,
1638
- size: new T(p, m)
1638
+ size: new L(p, m)
1639
1639
  }, r.set(o, d);
1640
1640
  function v() {
1641
1641
  g.dispose(), r.delete(o), o.removeEventListener("dispose", v);
@@ -1685,16 +1685,16 @@ var _t = {
1685
1685
  5: "CUSTOM_TONE_MAPPING"
1686
1686
  };
1687
1687
  function vt(e, t, n, r, i) {
1688
- let a = new h(t, n, {
1688
+ let a = new k(t, n, {
1689
1689
  type: e,
1690
1690
  depthBuffer: r,
1691
1691
  stencilBuffer: i
1692
- }), o = new h(t, n, {
1693
- type: z,
1692
+ }), o = new k(t, n, {
1693
+ type: he,
1694
1694
  depthBuffer: !1,
1695
1695
  stencilBuffer: !1
1696
- }), s = new _e();
1697
- s.setAttribute("position", new m([
1696
+ }), s = new pe();
1697
+ s.setAttribute("position", new _e([
1698
1698
  -1,
1699
1699
  3,
1700
1700
  0,
@@ -1704,7 +1704,7 @@ function vt(e, t, n, r, i) {
1704
1704
  3,
1705
1705
  -1,
1706
1706
  0
1707
- ], 3)), s.setAttribute("uv", new m([
1707
+ ], 3)), s.setAttribute("uv", new _e([
1708
1708
  0,
1709
1709
  2,
1710
1710
  0,
@@ -1712,58 +1712,58 @@ function vt(e, t, n, r, i) {
1712
1712
  2,
1713
1713
  0
1714
1714
  ], 2));
1715
- let c = new we({
1715
+ let c = new ke({
1716
1716
  uniforms: { tDiffuse: { value: null } },
1717
1717
  vertexShader: "\n precision highp float;\n\n uniform mat4 modelViewMatrix;\n uniform mat4 projectionMatrix;\n\n attribute vec3 position;\n attribute vec2 uv;\n\n varying vec2 vUv;\n\n void main() {\n vUv = uv;\n gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );\n }",
1718
1718
  fragmentShader: "\n precision highp float;\n\n uniform sampler2D tDiffuse;\n\n varying vec2 vUv;\n\n #include <tonemapping_pars_fragment>\n #include <colorspace_pars_fragment>\n\n void main() {\n gl_FragColor = texture2D( tDiffuse, vUv );\n\n #ifdef LINEAR_TONE_MAPPING\n gl_FragColor.rgb = LinearToneMapping( gl_FragColor.rgb );\n #elif defined( REINHARD_TONE_MAPPING )\n gl_FragColor.rgb = ReinhardToneMapping( gl_FragColor.rgb );\n #elif defined( CINEON_TONE_MAPPING )\n gl_FragColor.rgb = CineonToneMapping( gl_FragColor.rgb );\n #elif defined( ACES_FILMIC_TONE_MAPPING )\n gl_FragColor.rgb = ACESFilmicToneMapping( gl_FragColor.rgb );\n #elif defined( AGX_TONE_MAPPING )\n gl_FragColor.rgb = AgXToneMapping( gl_FragColor.rgb );\n #elif defined( NEUTRAL_TONE_MAPPING )\n gl_FragColor.rgb = NeutralToneMapping( gl_FragColor.rgb );\n #elif defined( CUSTOM_TONE_MAPPING )\n gl_FragColor.rgb = CustomToneMapping( gl_FragColor.rgb );\n #endif\n\n #ifdef SRGB_TRANSFER\n gl_FragColor = sRGBTransferOETF( gl_FragColor );\n #endif\n }",
1719
1719
  depthTest: !1,
1720
1720
  depthWrite: !1
1721
- }), l = new M(s, c), u = new B(-1, 1, 1, -1, 0, 1), d = null, f = null, p = !1, g, _ = null, v = [], y = !1;
1721
+ }), l = new U(s, c), u = new A(-1, 1, 1, -1, 0, 1), d = null, f = null, p = !1, m, h = null, g = [], _ = !1;
1722
1722
  this.setSize = function(e, t) {
1723
1723
  a.setSize(e, t), o.setSize(e, t);
1724
- for (let n = 0; n < v.length; n++) {
1725
- let r = v[n];
1724
+ for (let n = 0; n < g.length; n++) {
1725
+ let r = g[n];
1726
1726
  r.setSize && r.setSize(e, t);
1727
1727
  }
1728
1728
  }, this.setEffects = function(e) {
1729
- v = e, y = v.length > 0 && v[0].isRenderPass === !0;
1729
+ g = e, _ = g.length > 0 && g[0].isRenderPass === !0;
1730
1730
  let t = a.width, n = a.height;
1731
- for (let e = 0; e < v.length; e++) {
1732
- let r = v[e];
1731
+ for (let e = 0; e < g.length; e++) {
1732
+ let r = g[e];
1733
1733
  r.setSize && r.setSize(t, n);
1734
1734
  }
1735
1735
  }, this.begin = function(e, t) {
1736
- if (p || e.toneMapping === 0 && v.length === 0) return !1;
1737
- if (_ = t, t !== null) {
1736
+ if (p || e.toneMapping === 0 && g.length === 0) return !1;
1737
+ if (h = t, t !== null) {
1738
1738
  let e = t.width, n = t.height;
1739
1739
  (a.width !== e || a.height !== n) && this.setSize(e, n);
1740
1740
  }
1741
- return y === !1 && e.setRenderTarget(a), g = e.toneMapping, e.toneMapping = 0, !0;
1741
+ return _ === !1 && e.setRenderTarget(a), m = e.toneMapping, e.toneMapping = 0, !0;
1742
1742
  }, this.hasRenderPass = function() {
1743
- return y;
1743
+ return _;
1744
1744
  }, this.end = function(e, t) {
1745
- e.toneMapping = g, p = !0;
1745
+ e.toneMapping = m, p = !0;
1746
1746
  let n = a, r = o;
1747
- for (let i = 0; i < v.length; i++) {
1748
- let a = v[i];
1747
+ for (let i = 0; i < g.length; i++) {
1748
+ let a = g[i];
1749
1749
  if (a.enabled !== !1 && (a.render(e, r, n, t), a.needsSwap !== !1)) {
1750
1750
  let e = n;
1751
1751
  n = r, r = e;
1752
1752
  }
1753
1753
  }
1754
1754
  if (d !== e.outputColorSpace || f !== e.toneMapping) {
1755
- d = e.outputColorSpace, f = e.toneMapping, c.defines = {}, V.getTransfer(d) === "srgb" && (c.defines.SRGB_TRANSFER = "");
1755
+ d = e.outputColorSpace, f = e.toneMapping, c.defines = {}, O.getTransfer(d) === "srgb" && (c.defines.SRGB_TRANSFER = "");
1756
1756
  let t = _t[f];
1757
1757
  t && (c.defines[t] = ""), c.needsUpdate = !0;
1758
1758
  }
1759
- c.uniforms.tDiffuse.value = n.texture, e.setRenderTarget(_), e.render(l, u), _ = null, p = !1;
1759
+ c.uniforms.tDiffuse.value = n.texture, e.setRenderTarget(h), e.render(l, u), h = null, p = !1;
1760
1760
  }, this.isCompositing = function() {
1761
1761
  return p;
1762
1762
  }, this.dispose = function() {
1763
1763
  a.dispose(), o.dispose(), s.dispose(), c.dispose();
1764
1764
  };
1765
1765
  }
1766
- var yt = /* @__PURE__ */ new r(), bt = /* @__PURE__ */ new ee(1, 1), xt = /* @__PURE__ */ new I(), St = /* @__PURE__ */ new Me(), Ct = /* @__PURE__ */ new re(), wt = [], Tt = [], Et = new Float32Array(16), Dt = new Float32Array(9), Ot = new Float32Array(4);
1766
+ var yt = /* @__PURE__ */ new F(), bt = /* @__PURE__ */ new h(1, 1), xt = /* @__PURE__ */ new G(), St = /* @__PURE__ */ new w(), Ct = /* @__PURE__ */ new B(), wt = [], Tt = [], Et = new Float32Array(16), Dt = new Float32Array(9), Ot = new Float32Array(4);
1767
1767
  function kt(e, t, n) {
1768
1768
  let r = e[0];
1769
1769
  if (r <= 0 || r > 0) return e;
@@ -2156,14 +2156,14 @@ function On(e, t) {
2156
2156
  }
2157
2157
  return r.join("\n");
2158
2158
  }
2159
- var kn = /* @__PURE__ */ new O();
2159
+ var kn = /* @__PURE__ */ new I();
2160
2160
  function An(e) {
2161
- V._getMatrix(kn, V.workingColorSpace, e);
2161
+ O._getMatrix(kn, O.workingColorSpace, e);
2162
2162
  let t = `mat3( ${kn.elements.map((e) => e.toFixed(4))} )`;
2163
- switch (V.getTransfer(e)) {
2164
- case c: return [t, "LinearTransferOETF"];
2165
- case de: return [t, "sRGBTransferOETF"];
2166
- default: return W("WebGLProgram: Unsupported color space: ", e), [t, "LinearTransferOETF"];
2163
+ switch (O.getTransfer(e)) {
2164
+ case C: return [t, "LinearTransferOETF"];
2165
+ case i: return [t, "sRGBTransferOETF"];
2166
+ default: return j("WebGLProgram: Unsupported color space: ", e), [t, "LinearTransferOETF"];
2167
2167
  }
2168
2168
  }
2169
2169
  function jn(e, t, n) {
@@ -2194,11 +2194,11 @@ var Nn = {
2194
2194
  };
2195
2195
  function Pn(e, t) {
2196
2196
  let n = Nn[t];
2197
- return n === void 0 ? (W("WebGLProgram: Unsupported toneMapping:", t), "vec3 " + e + "( vec3 color ) { return LinearToneMapping( color ); }") : "vec3 " + e + "( vec3 color ) { return " + n + "ToneMapping( color ); }";
2197
+ return n === void 0 ? (j("WebGLProgram: Unsupported toneMapping:", t), "vec3 " + e + "( vec3 color ) { return LinearToneMapping( color ); }") : "vec3 " + e + "( vec3 color ) { return " + n + "ToneMapping( color ); }";
2198
2198
  }
2199
- var Fn = /* @__PURE__ */ new P();
2199
+ var Fn = /* @__PURE__ */ new W();
2200
2200
  function In() {
2201
- return V.getLuminanceCoefficients(Fn), [
2201
+ return O.getLuminanceCoefficients(Fn), [
2202
2202
  "float luminance( const in vec3 rgb ) {",
2203
2203
  ` const vec3 weights = vec3( ${Fn.x.toFixed(4)}, ${Fn.y.toFixed(4)}, ${Fn.z.toFixed(4)} );`,
2204
2204
  " return dot( weights, rgb );",
@@ -2247,7 +2247,7 @@ function Kn(e, t) {
2247
2247
  let n = K[t];
2248
2248
  if (n === void 0) {
2249
2249
  let e = Gn.get(t);
2250
- if (e !== void 0) n = K[e], W("WebGLRenderer: Shader chunk \"%s\" has been deprecated. Use \"%s\" instead.", t, e);
2250
+ if (e !== void 0) n = K[e], j("WebGLRenderer: Shader chunk \"%s\" has been deprecated. Use \"%s\" instead.", t, e);
2251
2251
  else throw Error("Can not resolve #include <" + t + ">");
2252
2252
  }
2253
2253
  return Wn(n);
@@ -2320,7 +2320,7 @@ function ar(e) {
2320
2320
  };
2321
2321
  }
2322
2322
  function or(e, t, n, r) {
2323
- let i = e.getContext(), a = n.defines, o = n.vertexShader, s = n.fragmentShader, c = Qn(n), l = er(n), u = nr(n), d = ir(n), f = ar(n), p = Ln(n), m = Rn(a), h = i.createProgram(), g, _, y = n.glslVersion ? "#version " + n.glslVersion + "\n" : "";
2323
+ let i = e.getContext(), a = n.defines, o = n.vertexShader, s = n.fragmentShader, c = Qn(n), l = er(n), u = nr(n), d = ir(n), f = ar(n), p = Ln(n), m = Rn(a), h = i.createProgram(), g, _, v = n.glslVersion ? "#version " + n.glslVersion + "\n" : "";
2324
2324
  n.isRawShaderMaterial ? (g = [
2325
2325
  "#define SHADER_TYPE " + n.shaderType,
2326
2326
  "#define SHADER_NAME " + n.shaderName,
@@ -2538,7 +2538,7 @@ function or(e, t, n, r) {
2538
2538
  In(),
2539
2539
  n.useDepthPacking ? "#define DEPTH_PACKING " + n.depthPacking : "",
2540
2540
  "\n"
2541
- ].filter(Bn).join("\n")), o = Wn(o), o = Vn(o, n), o = Hn(o, n), s = Wn(s), s = Vn(s, n), s = Hn(s, n), o = Jn(o), s = Jn(s), n.isRawShaderMaterial !== !0 && (y = "#version 300 es\n", g = [
2541
+ ].filter(Bn).join("\n")), o = Wn(o), o = Vn(o, n), o = Hn(o, n), s = Wn(s), s = Vn(s, n), s = Hn(s, n), o = Jn(o), s = Jn(s), n.isRawShaderMaterial !== !0 && (v = "#version 300 es\n", g = [
2542
2542
  p,
2543
2543
  "#define attribute in",
2544
2544
  "#define varying out",
@@ -2558,17 +2558,17 @@ function or(e, t, n, r) {
2558
2558
  "#define texture2DProjGradEXT textureProjGrad",
2559
2559
  "#define textureCubeGradEXT textureGrad"
2560
2560
  ].join("\n") + "\n" + _);
2561
- let b = y + g + o, x = y + _ + s, S = Tn(i, i.VERTEX_SHADER, b), C = Tn(i, i.FRAGMENT_SHADER, x);
2562
- i.attachShader(h, S), i.attachShader(h, C), n.index0AttributeName === void 0 ? n.morphTargets === !0 && i.bindAttribLocation(h, 0, "position") : i.bindAttribLocation(h, 0, n.index0AttributeName), i.linkProgram(h);
2561
+ let y = v + g + o, b = v + _ + s, x = Tn(i, i.VERTEX_SHADER, y), C = Tn(i, i.FRAGMENT_SHADER, b);
2562
+ i.attachShader(h, x), i.attachShader(h, C), n.index0AttributeName === void 0 ? n.morphTargets === !0 && i.bindAttribLocation(h, 0, "position") : i.bindAttribLocation(h, 0, n.index0AttributeName), i.linkProgram(h);
2563
2563
  function w(t) {
2564
2564
  if (e.debug.checkShaderErrors) {
2565
- let n = i.getProgramInfoLog(h) || "", r = i.getShaderInfoLog(S) || "", a = i.getShaderInfoLog(C) || "", o = n.trim(), s = r.trim(), c = a.trim(), l = !0, u = !0;
2566
- if (i.getProgramParameter(h, i.LINK_STATUS) === !1) if (l = !1, typeof e.debug.onShaderError == "function") e.debug.onShaderError(i, h, S, C);
2565
+ let n = i.getProgramInfoLog(h) || "", r = i.getShaderInfoLog(x) || "", a = i.getShaderInfoLog(C) || "", o = n.trim(), s = r.trim(), c = a.trim(), l = !0, u = !0;
2566
+ if (i.getProgramParameter(h, i.LINK_STATUS) === !1) if (l = !1, typeof e.debug.onShaderError == "function") e.debug.onShaderError(i, h, x, C);
2567
2567
  else {
2568
- let e = jn(i, S, "vertex"), n = jn(i, C, "fragment");
2569
- v("THREE.WebGLProgram: Shader Error " + i.getError() + " - VALIDATE_STATUS " + i.getProgramParameter(h, i.VALIDATE_STATUS) + "\n\nMaterial Name: " + t.name + "\nMaterial Type: " + t.type + "\n\nProgram Info Log: " + o + "\n" + e + "\n" + n);
2568
+ let e = jn(i, x, "vertex"), n = jn(i, C, "fragment");
2569
+ S("THREE.WebGLProgram: Shader Error " + i.getError() + " - VALIDATE_STATUS " + i.getProgramParameter(h, i.VALIDATE_STATUS) + "\n\nMaterial Name: " + t.name + "\nMaterial Type: " + t.type + "\n\nProgram Info Log: " + o + "\n" + e + "\n" + n);
2570
2570
  }
2571
- else o === "" ? (s === "" || c === "") && (u = !1) : W("WebGLProgram: Program Info Log:", o);
2571
+ else o === "" ? (s === "" || c === "") && (u = !1) : j("WebGLProgram: Program Info Log:", o);
2572
2572
  u && (t.diagnostics = {
2573
2573
  runnable: l,
2574
2574
  programLog: o,
@@ -2582,7 +2582,7 @@ function or(e, t, n, r) {
2582
2582
  }
2583
2583
  });
2584
2584
  }
2585
- i.deleteShader(S), i.deleteShader(C), T = new wn(i, h), E = zn(i, h);
2585
+ i.deleteShader(x), i.deleteShader(C), T = new wn(i, h), E = zn(i, h);
2586
2586
  }
2587
2587
  let T;
2588
2588
  this.getUniforms = function() {
@@ -2597,7 +2597,7 @@ function or(e, t, n, r) {
2597
2597
  return D === !1 && (D = i.getProgramParameter(h, En)), D;
2598
2598
  }, this.destroy = function() {
2599
2599
  r.releaseStatesOfProgram(this), i.deleteProgram(h), this.program = void 0;
2600
- }, this.type = n.shaderType, this.name = n.shaderName, this.id = Dn++, this.cacheKey = t, this.usedTimes = 1, this.program = h, this.vertexShader = S, this.fragmentShader = C, this;
2600
+ }, this.type = n.shaderType, this.name = n.shaderName, this.id = Dn++, this.cacheKey = t, this.usedTimes = 1, this.program = h, this.vertexShader = x, this.fragmentShader = C, this;
2601
2601
  }
2602
2602
  var sr = 0, cr = class {
2603
2603
  constructor() {
@@ -2635,7 +2635,7 @@ var sr = 0, cr = class {
2635
2635
  }
2636
2636
  };
2637
2637
  function ur(e, t, n, r, i, a) {
2638
- let o = new Ce(), s = new cr(), c = /* @__PURE__ */ new Set(), l = [], u = /* @__PURE__ */ new Map(), d = r.logarithmicDepthBuffer, f = r.precision, p = {
2638
+ let o = new u(), s = new cr(), c = /* @__PURE__ */ new Set(), l = [], d = /* @__PURE__ */ new Map(), f = r.logarithmicDepthBuffer, p = r.precision, m = {
2639
2639
  MeshDepthMaterial: "depth",
2640
2640
  MeshDistanceMaterial: "distance",
2641
2641
  MeshNormalMaterial: "normal",
@@ -2652,115 +2652,115 @@ function ur(e, t, n, r, i, a) {
2652
2652
  ShadowMaterial: "shadow",
2653
2653
  SpriteMaterial: "sprite"
2654
2654
  };
2655
- function m(e) {
2655
+ function h(e) {
2656
2656
  return c.add(e), e === 0 ? "uv" : `uv${e}`;
2657
2657
  }
2658
- function h(i, o, l, u, h) {
2659
- let g = u.fog, _ = h.geometry, v = i.isMeshStandardMaterial || i.isMeshLambertMaterial || i.isMeshPhongMaterial ? u.environment : null, y = i.isMeshStandardMaterial || i.isMeshLambertMaterial && !i.envMap || i.isMeshPhongMaterial && !i.envMap, b = t.get(i.envMap || v, y), x = b && b.mapping === 306 ? b.image.height : null, S = p[i.type];
2660
- i.precision !== null && (f = r.getMaxPrecision(i.precision), f !== i.precision && W("WebGLProgram.getParameters:", i.precision, "not supported, using", f, "instead."));
2658
+ function g(i, o, l, u, d) {
2659
+ let g = u.fog, _ = d.geometry, v = i.isMeshStandardMaterial || i.isMeshLambertMaterial || i.isMeshPhongMaterial ? u.environment : null, y = i.isMeshStandardMaterial || i.isMeshLambertMaterial && !i.envMap || i.isMeshPhongMaterial && !i.envMap, b = t.get(i.envMap || v, y), x = b && b.mapping === 306 ? b.image.height : null, S = m[i.type];
2660
+ i.precision !== null && (p = r.getMaxPrecision(i.precision), p !== i.precision && j("WebGLProgram.getParameters:", i.precision, "not supported, using", p, "instead."));
2661
2661
  let C = _.morphAttributes.position || _.morphAttributes.normal || _.morphAttributes.color, w = C === void 0 ? 0 : C.length, T = 0;
2662
2662
  _.morphAttributes.position !== void 0 && (T = 1), _.morphAttributes.normal !== void 0 && (T = 2), _.morphAttributes.color !== void 0 && (T = 3);
2663
- let E, D, O, ee;
2663
+ let E, D, k, A;
2664
2664
  if (S) {
2665
2665
  let e = J[S];
2666
2666
  E = e.vertexShader, D = e.fragmentShader;
2667
- } else E = i.vertexShader, D = i.fragmentShader, s.update(i), O = s.getVertexShaderID(i), ee = s.getFragmentShaderID(i);
2668
- let te = e.getRenderTarget(), k = e.state.buffers.depth.getReversed(), A = h.isInstancedMesh === !0, j = h.isBatchedMesh === !0, M = !!i.map, ne = !!i.matcap, N = !!b, P = !!i.aoMap, re = !!i.lightMap, F = !!i.bumpMap, I = !!i.normalMap, L = !!i.displacementMap, ae = !!i.emissiveMap, R = !!i.metalnessMap, z = !!i.roughnessMap, oe = i.anisotropy > 0, se = i.clearcoat > 0, ce = i.dispersion > 0, B = i.iridescence > 0, le = i.sheen > 0, ue = i.transmission > 0, de = oe && !!i.anisotropyMap, fe = se && !!i.clearcoatMap, pe = se && !!i.clearcoatNormalMap, H = se && !!i.clearcoatRoughnessMap, me = B && !!i.iridescenceMap, U = B && !!i.iridescenceThicknessMap, he = le && !!i.sheenColorMap, ge = le && !!i.sheenRoughnessMap, _e = !!i.specularMap, ve = !!i.specularColorMap, ye = !!i.specularIntensityMap, be = ue && !!i.transmissionMap, xe = ue && !!i.thicknessMap, Se = !!i.gradientMap, Ce = !!i.alphaMap, we = i.alphaTest > 0, Te = !!i.alphaHash, Ee = !!i.extensions, De = 0;
2669
- i.toneMapped && (te === null || te.isXRRenderTarget === !0) && (De = e.toneMapping);
2670
- let Oe = {
2667
+ } else E = i.vertexShader, D = i.fragmentShader, s.update(i), k = s.getVertexShaderID(i), A = s.getFragmentShaderID(i);
2668
+ let M = e.getRenderTarget(), N = e.state.buffers.depth.getReversed(), ee = d.isInstancedMesh === !0, P = d.isBatchedMesh === !0, ne = !!i.map, F = !!i.matcap, I = !!b, L = !!i.aoMap, R = !!i.lightMap, re = !!i.bumpMap, z = !!i.normalMap, ie = !!i.displacementMap, ae = !!i.emissiveMap, oe = !!i.metalnessMap, B = !!i.roughnessMap, V = i.anisotropy > 0, se = i.clearcoat > 0, ce = i.dispersion > 0, le = i.iridescence > 0, ue = i.sheen > 0, de = i.transmission > 0, fe = V && !!i.anisotropyMap, pe = se && !!i.clearcoatMap, me = se && !!i.clearcoatNormalMap, he = se && !!i.clearcoatRoughnessMap, H = le && !!i.iridescenceMap, ge = le && !!i.iridescenceThicknessMap, _e = ue && !!i.sheenColorMap, ve = ue && !!i.sheenRoughnessMap, ye = !!i.specularMap, be = !!i.specularColorMap, U = !!i.specularIntensityMap, xe = de && !!i.transmissionMap, Se = de && !!i.thicknessMap, Ce = !!i.gradientMap, we = !!i.alphaMap, Te = i.alphaTest > 0, Ee = !!i.alphaHash, De = !!i.extensions, Oe = 0;
2669
+ i.toneMapped && (M === null || M.isXRRenderTarget === !0) && (Oe = e.toneMapping);
2670
+ let ke = {
2671
2671
  shaderID: S,
2672
2672
  shaderType: i.type,
2673
2673
  shaderName: i.name,
2674
2674
  vertexShader: E,
2675
2675
  fragmentShader: D,
2676
2676
  defines: i.defines,
2677
- customVertexShaderID: O,
2678
- customFragmentShaderID: ee,
2677
+ customVertexShaderID: k,
2678
+ customFragmentShaderID: A,
2679
2679
  isRawShaderMaterial: i.isRawShaderMaterial === !0,
2680
2680
  glslVersion: i.glslVersion,
2681
- precision: f,
2682
- batching: j,
2683
- batchingColor: j && h._colorsTexture !== null,
2684
- instancing: A,
2685
- instancingColor: A && h.instanceColor !== null,
2686
- instancingMorph: A && h.morphTexture !== null,
2687
- outputColorSpace: te === null ? e.outputColorSpace : te.isXRRenderTarget === !0 ? te.texture.colorSpace : ie,
2681
+ precision: p,
2682
+ batching: P,
2683
+ batchingColor: P && d._colorsTexture !== null,
2684
+ instancing: ee,
2685
+ instancingColor: ee && d.instanceColor !== null,
2686
+ instancingMorph: ee && d.morphTexture !== null,
2687
+ outputColorSpace: M === null ? e.outputColorSpace : M.isXRRenderTarget === !0 ? M.texture.colorSpace : te,
2688
2688
  alphaToCoverage: !!i.alphaToCoverage,
2689
- map: M,
2690
- matcap: ne,
2691
- envMap: N,
2692
- envMapMode: N && b.mapping,
2689
+ map: ne,
2690
+ matcap: F,
2691
+ envMap: I,
2692
+ envMapMode: I && b.mapping,
2693
2693
  envMapCubeUVHeight: x,
2694
- aoMap: P,
2695
- lightMap: re,
2696
- bumpMap: F,
2697
- normalMap: I,
2698
- displacementMap: L,
2694
+ aoMap: L,
2695
+ lightMap: R,
2696
+ bumpMap: re,
2697
+ normalMap: z,
2698
+ displacementMap: ie,
2699
2699
  emissiveMap: ae,
2700
- normalMapObjectSpace: I && i.normalMapType === 1,
2701
- normalMapTangentSpace: I && i.normalMapType === 0,
2702
- metalnessMap: R,
2703
- roughnessMap: z,
2704
- anisotropy: oe,
2705
- anisotropyMap: de,
2700
+ normalMapObjectSpace: z && i.normalMapType === 1,
2701
+ normalMapTangentSpace: z && i.normalMapType === 0,
2702
+ metalnessMap: oe,
2703
+ roughnessMap: B,
2704
+ anisotropy: V,
2705
+ anisotropyMap: fe,
2706
2706
  clearcoat: se,
2707
- clearcoatMap: fe,
2708
- clearcoatNormalMap: pe,
2709
- clearcoatRoughnessMap: H,
2707
+ clearcoatMap: pe,
2708
+ clearcoatNormalMap: me,
2709
+ clearcoatRoughnessMap: he,
2710
2710
  dispersion: ce,
2711
- iridescence: B,
2712
- iridescenceMap: me,
2713
- iridescenceThicknessMap: U,
2714
- sheen: le,
2715
- sheenColorMap: he,
2716
- sheenRoughnessMap: ge,
2717
- specularMap: _e,
2718
- specularColorMap: ve,
2719
- specularIntensityMap: ye,
2720
- transmission: ue,
2721
- transmissionMap: be,
2722
- thicknessMap: xe,
2723
- gradientMap: Se,
2711
+ iridescence: le,
2712
+ iridescenceMap: H,
2713
+ iridescenceThicknessMap: ge,
2714
+ sheen: ue,
2715
+ sheenColorMap: _e,
2716
+ sheenRoughnessMap: ve,
2717
+ specularMap: ye,
2718
+ specularColorMap: be,
2719
+ specularIntensityMap: U,
2720
+ transmission: de,
2721
+ transmissionMap: xe,
2722
+ thicknessMap: Se,
2723
+ gradientMap: Ce,
2724
2724
  opaque: i.transparent === !1 && i.blending === 1 && i.alphaToCoverage === !1,
2725
- alphaMap: Ce,
2726
- alphaTest: we,
2727
- alphaHash: Te,
2725
+ alphaMap: we,
2726
+ alphaTest: Te,
2727
+ alphaHash: Ee,
2728
2728
  combine: i.combine,
2729
- mapUv: M && m(i.map.channel),
2730
- aoMapUv: P && m(i.aoMap.channel),
2731
- lightMapUv: re && m(i.lightMap.channel),
2732
- bumpMapUv: F && m(i.bumpMap.channel),
2733
- normalMapUv: I && m(i.normalMap.channel),
2734
- displacementMapUv: L && m(i.displacementMap.channel),
2735
- emissiveMapUv: ae && m(i.emissiveMap.channel),
2736
- metalnessMapUv: R && m(i.metalnessMap.channel),
2737
- roughnessMapUv: z && m(i.roughnessMap.channel),
2738
- anisotropyMapUv: de && m(i.anisotropyMap.channel),
2739
- clearcoatMapUv: fe && m(i.clearcoatMap.channel),
2740
- clearcoatNormalMapUv: pe && m(i.clearcoatNormalMap.channel),
2741
- clearcoatRoughnessMapUv: H && m(i.clearcoatRoughnessMap.channel),
2742
- iridescenceMapUv: me && m(i.iridescenceMap.channel),
2743
- iridescenceThicknessMapUv: U && m(i.iridescenceThicknessMap.channel),
2744
- sheenColorMapUv: he && m(i.sheenColorMap.channel),
2745
- sheenRoughnessMapUv: ge && m(i.sheenRoughnessMap.channel),
2746
- specularMapUv: _e && m(i.specularMap.channel),
2747
- specularColorMapUv: ve && m(i.specularColorMap.channel),
2748
- specularIntensityMapUv: ye && m(i.specularIntensityMap.channel),
2749
- transmissionMapUv: be && m(i.transmissionMap.channel),
2750
- thicknessMapUv: xe && m(i.thicknessMap.channel),
2751
- alphaMapUv: Ce && m(i.alphaMap.channel),
2752
- vertexTangents: !!_.attributes.tangent && (I || oe),
2729
+ mapUv: ne && h(i.map.channel),
2730
+ aoMapUv: L && h(i.aoMap.channel),
2731
+ lightMapUv: R && h(i.lightMap.channel),
2732
+ bumpMapUv: re && h(i.bumpMap.channel),
2733
+ normalMapUv: z && h(i.normalMap.channel),
2734
+ displacementMapUv: ie && h(i.displacementMap.channel),
2735
+ emissiveMapUv: ae && h(i.emissiveMap.channel),
2736
+ metalnessMapUv: oe && h(i.metalnessMap.channel),
2737
+ roughnessMapUv: B && h(i.roughnessMap.channel),
2738
+ anisotropyMapUv: fe && h(i.anisotropyMap.channel),
2739
+ clearcoatMapUv: pe && h(i.clearcoatMap.channel),
2740
+ clearcoatNormalMapUv: me && h(i.clearcoatNormalMap.channel),
2741
+ clearcoatRoughnessMapUv: he && h(i.clearcoatRoughnessMap.channel),
2742
+ iridescenceMapUv: H && h(i.iridescenceMap.channel),
2743
+ iridescenceThicknessMapUv: ge && h(i.iridescenceThicknessMap.channel),
2744
+ sheenColorMapUv: _e && h(i.sheenColorMap.channel),
2745
+ sheenRoughnessMapUv: ve && h(i.sheenRoughnessMap.channel),
2746
+ specularMapUv: ye && h(i.specularMap.channel),
2747
+ specularColorMapUv: be && h(i.specularColorMap.channel),
2748
+ specularIntensityMapUv: U && h(i.specularIntensityMap.channel),
2749
+ transmissionMapUv: xe && h(i.transmissionMap.channel),
2750
+ thicknessMapUv: Se && h(i.thicknessMap.channel),
2751
+ alphaMapUv: we && h(i.alphaMap.channel),
2752
+ vertexTangents: !!_.attributes.tangent && (z || V),
2753
2753
  vertexColors: i.vertexColors,
2754
2754
  vertexAlphas: i.vertexColors === !0 && !!_.attributes.color && _.attributes.color.itemSize === 4,
2755
- pointsUvs: h.isPoints === !0 && !!_.attributes.uv && (M || Ce),
2755
+ pointsUvs: d.isPoints === !0 && !!_.attributes.uv && (ne || we),
2756
2756
  fog: !!g,
2757
2757
  useFog: i.fog === !0,
2758
2758
  fogExp2: !!g && g.isFogExp2,
2759
- flatShading: i.wireframe === !1 && (i.flatShading === !0 || _.attributes.normal === void 0 && I === !1 && (i.isMeshLambertMaterial || i.isMeshPhongMaterial || i.isMeshStandardMaterial || i.isMeshPhysicalMaterial)),
2759
+ flatShading: i.wireframe === !1 && (i.flatShading === !0 || _.attributes.normal === void 0 && z === !1 && (i.isMeshLambertMaterial || i.isMeshPhongMaterial || i.isMeshStandardMaterial || i.isMeshPhysicalMaterial)),
2760
2760
  sizeAttenuation: i.sizeAttenuation === !0,
2761
- logarithmicDepthBuffer: d,
2762
- reversedDepthBuffer: k,
2763
- skinning: h.isSkinnedMesh === !0,
2761
+ logarithmicDepthBuffer: f,
2762
+ reversedDepthBuffer: N,
2763
+ skinning: d.isSkinnedMesh === !0,
2764
2764
  morphTargets: _.morphAttributes.position !== void 0,
2765
2765
  morphNormals: _.morphAttributes.normal !== void 0,
2766
2766
  morphColors: _.morphAttributes.color !== void 0,
@@ -2782,66 +2782,66 @@ function ur(e, t, n, r, i, a) {
2782
2782
  dithering: i.dithering,
2783
2783
  shadowMapEnabled: e.shadowMap.enabled && l.length > 0,
2784
2784
  shadowMapType: e.shadowMap.type,
2785
- toneMapping: De,
2786
- decodeVideoTexture: M && i.map.isVideoTexture === !0 && V.getTransfer(i.map.colorSpace) === "srgb",
2787
- decodeVideoTextureEmissive: ae && i.emissiveMap.isVideoTexture === !0 && V.getTransfer(i.emissiveMap.colorSpace) === "srgb",
2785
+ toneMapping: Oe,
2786
+ decodeVideoTexture: ne && i.map.isVideoTexture === !0 && O.getTransfer(i.map.colorSpace) === "srgb",
2787
+ decodeVideoTextureEmissive: ae && i.emissiveMap.isVideoTexture === !0 && O.getTransfer(i.emissiveMap.colorSpace) === "srgb",
2788
2788
  premultipliedAlpha: i.premultipliedAlpha,
2789
2789
  doubleSided: i.side === 2,
2790
2790
  flipSided: i.side === 1,
2791
2791
  useDepthPacking: i.depthPacking >= 0,
2792
2792
  depthPacking: i.depthPacking || 0,
2793
2793
  index0AttributeName: i.index0AttributeName,
2794
- extensionClipCullDistance: Ee && i.extensions.clipCullDistance === !0 && n.has("WEBGL_clip_cull_distance"),
2795
- extensionMultiDraw: (Ee && i.extensions.multiDraw === !0 || j) && n.has("WEBGL_multi_draw"),
2794
+ extensionClipCullDistance: De && i.extensions.clipCullDistance === !0 && n.has("WEBGL_clip_cull_distance"),
2795
+ extensionMultiDraw: (De && i.extensions.multiDraw === !0 || P) && n.has("WEBGL_multi_draw"),
2796
2796
  rendererExtensionParallelShaderCompile: n.has("KHR_parallel_shader_compile"),
2797
2797
  customProgramCacheKey: i.customProgramCacheKey()
2798
2798
  };
2799
- return Oe.vertexUv1s = c.has(1), Oe.vertexUv2s = c.has(2), Oe.vertexUv3s = c.has(3), c.clear(), Oe;
2799
+ return ke.vertexUv1s = c.has(1), ke.vertexUv2s = c.has(2), ke.vertexUv3s = c.has(3), c.clear(), ke;
2800
2800
  }
2801
- function g(t) {
2801
+ function _(t) {
2802
2802
  let n = [];
2803
2803
  if (t.shaderID ? n.push(t.shaderID) : (n.push(t.customVertexShaderID), n.push(t.customFragmentShaderID)), t.defines !== void 0) for (let e in t.defines) n.push(e), n.push(t.defines[e]);
2804
- return t.isRawShaderMaterial === !1 && (_(n, t), v(n, t), n.push(e.outputColorSpace)), n.push(t.customProgramCacheKey), n.join();
2804
+ return t.isRawShaderMaterial === !1 && (v(n, t), y(n, t), n.push(e.outputColorSpace)), n.push(t.customProgramCacheKey), n.join();
2805
2805
  }
2806
- function _(e, t) {
2806
+ function v(e, t) {
2807
2807
  e.push(t.precision), e.push(t.outputColorSpace), e.push(t.envMapMode), e.push(t.envMapCubeUVHeight), e.push(t.mapUv), e.push(t.alphaMapUv), e.push(t.lightMapUv), e.push(t.aoMapUv), e.push(t.bumpMapUv), e.push(t.normalMapUv), e.push(t.displacementMapUv), e.push(t.emissiveMapUv), e.push(t.metalnessMapUv), e.push(t.roughnessMapUv), e.push(t.anisotropyMapUv), e.push(t.clearcoatMapUv), e.push(t.clearcoatNormalMapUv), e.push(t.clearcoatRoughnessMapUv), e.push(t.iridescenceMapUv), e.push(t.iridescenceThicknessMapUv), e.push(t.sheenColorMapUv), e.push(t.sheenRoughnessMapUv), e.push(t.specularMapUv), e.push(t.specularColorMapUv), e.push(t.specularIntensityMapUv), e.push(t.transmissionMapUv), e.push(t.thicknessMapUv), e.push(t.combine), e.push(t.fogExp2), e.push(t.sizeAttenuation), e.push(t.morphTargetsCount), e.push(t.morphAttributeCount), e.push(t.numDirLights), e.push(t.numPointLights), e.push(t.numSpotLights), e.push(t.numSpotLightMaps), e.push(t.numHemiLights), e.push(t.numRectAreaLights), e.push(t.numDirLightShadows), e.push(t.numPointLightShadows), e.push(t.numSpotLightShadows), e.push(t.numSpotLightShadowsWithMaps), e.push(t.numLightProbes), e.push(t.shadowMapType), e.push(t.toneMapping), e.push(t.numClippingPlanes), e.push(t.numClipIntersection), e.push(t.depthPacking);
2808
2808
  }
2809
- function v(e, t) {
2809
+ function y(e, t) {
2810
2810
  o.disableAll(), t.instancing && o.enable(0), t.instancingColor && o.enable(1), t.instancingMorph && o.enable(2), t.matcap && o.enable(3), t.envMap && o.enable(4), t.normalMapObjectSpace && o.enable(5), t.normalMapTangentSpace && o.enable(6), t.clearcoat && o.enable(7), t.iridescence && o.enable(8), t.alphaTest && o.enable(9), t.vertexColors && o.enable(10), t.vertexAlphas && o.enable(11), t.vertexUv1s && o.enable(12), t.vertexUv2s && o.enable(13), t.vertexUv3s && o.enable(14), t.vertexTangents && o.enable(15), t.anisotropy && o.enable(16), t.alphaHash && o.enable(17), t.batching && o.enable(18), t.dispersion && o.enable(19), t.batchingColor && o.enable(20), t.gradientMap && o.enable(21), e.push(o.mask), o.disableAll(), t.fog && o.enable(0), t.useFog && o.enable(1), t.flatShading && o.enable(2), t.logarithmicDepthBuffer && o.enable(3), t.reversedDepthBuffer && o.enable(4), t.skinning && o.enable(5), t.morphTargets && o.enable(6), t.morphNormals && o.enable(7), t.morphColors && o.enable(8), t.premultipliedAlpha && o.enable(9), t.shadowMapEnabled && o.enable(10), t.doubleSided && o.enable(11), t.flipSided && o.enable(12), t.useDepthPacking && o.enable(13), t.dithering && o.enable(14), t.transmission && o.enable(15), t.sheen && o.enable(16), t.opaque && o.enable(17), t.pointsUvs && o.enable(18), t.decodeVideoTexture && o.enable(19), t.decodeVideoTextureEmissive && o.enable(20), t.alphaToCoverage && o.enable(21), e.push(o.mask);
2811
2811
  }
2812
- function y(e) {
2813
- let t = p[e.type], n;
2812
+ function b(e) {
2813
+ let t = m[e.type], n;
2814
2814
  if (t) {
2815
2815
  let e = J[t];
2816
- n = A.clone(e.uniforms);
2816
+ n = z.clone(e.uniforms);
2817
2817
  } else n = e.uniforms;
2818
2818
  return n;
2819
2819
  }
2820
- function b(t, n) {
2821
- let r = u.get(n);
2822
- return r === void 0 ? (r = new or(e, n, t, i), l.push(r), u.set(n, r)) : ++r.usedTimes, r;
2820
+ function x(t, n) {
2821
+ let r = d.get(n);
2822
+ return r === void 0 ? (r = new or(e, n, t, i), l.push(r), d.set(n, r)) : ++r.usedTimes, r;
2823
2823
  }
2824
- function x(e) {
2824
+ function S(e) {
2825
2825
  if (--e.usedTimes === 0) {
2826
2826
  let t = l.indexOf(e);
2827
- l[t] = l[l.length - 1], l.pop(), u.delete(e.cacheKey), e.destroy();
2827
+ l[t] = l[l.length - 1], l.pop(), d.delete(e.cacheKey), e.destroy();
2828
2828
  }
2829
2829
  }
2830
- function S(e) {
2830
+ function C(e) {
2831
2831
  s.remove(e);
2832
2832
  }
2833
- function C() {
2833
+ function w() {
2834
2834
  s.dispose();
2835
2835
  }
2836
2836
  return {
2837
- getParameters: h,
2838
- getProgramCacheKey: g,
2839
- getUniforms: y,
2840
- acquireProgram: b,
2841
- releaseProgram: x,
2842
- releaseShaderCache: S,
2837
+ getParameters: g,
2838
+ getProgramCacheKey: _,
2839
+ getUniforms: b,
2840
+ acquireProgram: x,
2841
+ releaseProgram: S,
2842
+ releaseShaderCache: C,
2843
2843
  programs: l,
2844
- dispose: C
2844
+ dispose: w
2845
2845
  };
2846
2846
  }
2847
2847
  function dr() {
@@ -2950,15 +2950,15 @@ function gr() {
2950
2950
  switch (t.type) {
2951
2951
  case "DirectionalLight":
2952
2952
  n = {
2953
- direction: new P(),
2954
- color: new H()
2953
+ direction: new W(),
2954
+ color: new a()
2955
2955
  };
2956
2956
  break;
2957
2957
  case "SpotLight":
2958
2958
  n = {
2959
- position: new P(),
2960
- direction: new P(),
2961
- color: new H(),
2959
+ position: new W(),
2960
+ direction: new W(),
2961
+ color: new a(),
2962
2962
  distance: 0,
2963
2963
  coneCos: 0,
2964
2964
  penumbraCos: 0,
@@ -2967,25 +2967,25 @@ function gr() {
2967
2967
  break;
2968
2968
  case "PointLight":
2969
2969
  n = {
2970
- position: new P(),
2971
- color: new H(),
2970
+ position: new W(),
2971
+ color: new a(),
2972
2972
  distance: 0,
2973
2973
  decay: 0
2974
2974
  };
2975
2975
  break;
2976
2976
  case "HemisphereLight":
2977
2977
  n = {
2978
- direction: new P(),
2979
- skyColor: new H(),
2980
- groundColor: new H()
2978
+ direction: new W(),
2979
+ skyColor: new a(),
2980
+ groundColor: new a()
2981
2981
  };
2982
2982
  break;
2983
2983
  case "RectAreaLight":
2984
2984
  n = {
2985
- color: new H(),
2986
- position: new P(),
2987
- halfWidth: new P(),
2988
- halfHeight: new P()
2985
+ color: new a(),
2986
+ position: new W(),
2987
+ halfWidth: new W(),
2988
+ halfHeight: new W()
2989
2989
  };
2990
2990
  break;
2991
2991
  }
@@ -3004,7 +3004,7 @@ function _r() {
3004
3004
  shadowBias: 0,
3005
3005
  shadowNormalBias: 0,
3006
3006
  shadowRadius: 1,
3007
- shadowMapSize: new T()
3007
+ shadowMapSize: new L()
3008
3008
  };
3009
3009
  break;
3010
3010
  case "SpotLight":
@@ -3013,7 +3013,7 @@ function _r() {
3013
3013
  shadowBias: 0,
3014
3014
  shadowNormalBias: 0,
3015
3015
  shadowRadius: 1,
3016
- shadowMapSize: new T()
3016
+ shadowMapSize: new L()
3017
3017
  };
3018
3018
  break;
3019
3019
  case "PointLight":
@@ -3022,7 +3022,7 @@ function _r() {
3022
3022
  shadowBias: 0,
3023
3023
  shadowNormalBias: 0,
3024
3024
  shadowRadius: 1,
3025
- shadowMapSize: new T(),
3025
+ shadowMapSize: new L(),
3026
3026
  shadowCameraNear: 1,
3027
3027
  shadowCameraFar: 1e3
3028
3028
  };
@@ -3076,8 +3076,8 @@ function br(e) {
3076
3076
  numSpotLightShadowsWithMaps: 0,
3077
3077
  numLightProbes: 0
3078
3078
  };
3079
- for (let e = 0; e < 9; e++) r.probe.push(new P());
3080
- let i = new P(), a = new k(), o = new k();
3079
+ for (let e = 0; e < 9; e++) r.probe.push(new W());
3080
+ let i = new W(), a = new ge(), o = new ge();
3081
3081
  function s(i) {
3082
3082
  let a = 0, o = 0, s = 0;
3083
3083
  for (let e = 0; e < 9; e++) r.probe[e].set(0, 0, 0);
@@ -3200,38 +3200,38 @@ function Sr(e) {
3200
3200
  };
3201
3201
  }
3202
3202
  var Cr = "void main() {\n gl_Position = vec4( position, 1.0 );\n}", wr = "uniform sampler2D shadow_pass;\nuniform vec2 resolution;\nuniform float radius;\nvoid main() {\n const float samples = float( VSM_SAMPLES );\n float mean = 0.0;\n float squared_mean = 0.0;\n float uvStride = samples <= 1.0 ? 0.0 : 2.0 / ( samples - 1.0 );\n float uvStart = samples <= 1.0 ? 0.0 : - 1.0;\n for ( float i = 0.0; i < samples; i ++ ) {\n float uvOffset = uvStart + i * uvStride;\n #ifdef HORIZONTAL_PASS\n vec2 distribution = texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( uvOffset, 0.0 ) * radius ) / resolution ).rg;\n mean += distribution.x;\n squared_mean += distribution.y * distribution.y + distribution.x * distribution.x;\n #else\n float depth = texture2D( shadow_pass, ( gl_FragCoord.xy + vec2( 0.0, uvOffset ) * radius ) / resolution ).r;\n mean += depth;\n squared_mean += depth * depth;\n #endif\n }\n mean = mean / samples;\n squared_mean = squared_mean / samples;\n float std_dev = sqrt( max( 0.0, squared_mean - mean * mean ) );\n gl_FragColor = vec4( mean, std_dev, 0.0, 1.0 );\n}", Tr = [
3203
- /* @__PURE__ */ new P(1, 0, 0),
3204
- /* @__PURE__ */ new P(-1, 0, 0),
3205
- /* @__PURE__ */ new P(0, 1, 0),
3206
- /* @__PURE__ */ new P(0, -1, 0),
3207
- /* @__PURE__ */ new P(0, 0, 1),
3208
- /* @__PURE__ */ new P(0, 0, -1)
3203
+ /* @__PURE__ */ new W(1, 0, 0),
3204
+ /* @__PURE__ */ new W(-1, 0, 0),
3205
+ /* @__PURE__ */ new W(0, 1, 0),
3206
+ /* @__PURE__ */ new W(0, -1, 0),
3207
+ /* @__PURE__ */ new W(0, 0, 1),
3208
+ /* @__PURE__ */ new W(0, 0, -1)
3209
3209
  ], Er = [
3210
- /* @__PURE__ */ new P(0, -1, 0),
3211
- /* @__PURE__ */ new P(0, -1, 0),
3212
- /* @__PURE__ */ new P(0, 0, 1),
3213
- /* @__PURE__ */ new P(0, 0, -1),
3214
- /* @__PURE__ */ new P(0, -1, 0),
3215
- /* @__PURE__ */ new P(0, -1, 0)
3216
- ], Dr = /* @__PURE__ */ new k(), Or = /* @__PURE__ */ new P(), kr = /* @__PURE__ */ new P();
3217
- function Ar(e, t, n) {
3218
- let r = new b(), i = new T(), a = new T(), o = new Fe(), s = new _(), c = new E(), l = {}, u = n.maxTextureSize, f = {
3210
+ /* @__PURE__ */ new W(0, -1, 0),
3211
+ /* @__PURE__ */ new W(0, -1, 0),
3212
+ /* @__PURE__ */ new W(0, 0, 1),
3213
+ /* @__PURE__ */ new W(0, 0, -1),
3214
+ /* @__PURE__ */ new W(0, -1, 0),
3215
+ /* @__PURE__ */ new W(0, -1, 0)
3216
+ ], Dr = /* @__PURE__ */ new ge(), Or = /* @__PURE__ */ new W(), kr = /* @__PURE__ */ new W();
3217
+ function Ar(t, n, r) {
3218
+ let i = new Te(), a = new L(), o = new L(), s = new E(), c = new fe(), l = new we(), u = {}, d = r.maxTextureSize, f = {
3219
3219
  0: 1,
3220
3220
  1: 0,
3221
3221
  2: 2
3222
- }, p = new je({
3222
+ }, m = new p({
3223
3223
  defines: { VSM_SAMPLES: 8 },
3224
3224
  uniforms: {
3225
3225
  shadow_pass: { value: null },
3226
- resolution: { value: new T() },
3226
+ resolution: { value: new L() },
3227
3227
  radius: { value: 4 }
3228
3228
  },
3229
3229
  vertexShader: Cr,
3230
3230
  fragmentShader: wr
3231
- }), m = p.clone();
3232
- m.defines.HORIZONTAL_PASS = 1;
3233
- let g = new _e();
3234
- g.setAttribute("position", new ue(new Float32Array([
3231
+ }), v = m.clone();
3232
+ v.defines.HORIZONTAL_PASS = 1;
3233
+ let y = new pe();
3234
+ y.setAttribute("position", new ve(new Float32Array([
3235
3235
  -1,
3236
3236
  -1,
3237
3237
  .5,
@@ -3242,118 +3242,118 @@ function Ar(e, t, n) {
3242
3242
  3,
3243
3243
  .5
3244
3244
  ]), 3));
3245
- let v = new M(g, p), y = this;
3245
+ let b = new U(y, m), x = this;
3246
3246
  this.enabled = !1, this.autoUpdate = !0, this.needsUpdate = !1, this.type = 1;
3247
- let x = this.type;
3248
- this.render = function(t, n, s) {
3249
- if (y.enabled === !1 || y.autoUpdate === !1 && y.needsUpdate === !1 || t.length === 0) return;
3250
- this.type === 2 && (W("WebGLShadowMap: PCFSoftShadowMap has been deprecated. Using PCFShadowMap instead."), this.type = 1);
3251
- let c = e.getRenderTarget(), l = e.getActiveCubeFace(), f = e.getActiveMipmapLevel(), p = e.state;
3247
+ let S = this.type;
3248
+ this.render = function(n, r, c) {
3249
+ if (x.enabled === !1 || x.autoUpdate === !1 && x.needsUpdate === !1 || n.length === 0) return;
3250
+ this.type === 2 && (j("WebGLShadowMap: PCFSoftShadowMap has been deprecated. Using PCFShadowMap instead."), this.type = 1);
3251
+ let l = t.getRenderTarget(), u = t.getActiveCubeFace(), f = t.getActiveMipmapLevel(), p = t.state;
3252
3252
  p.setBlending(0), p.buffers.depth.getReversed() === !0 ? p.buffers.color.setClear(0, 0, 0, 0) : p.buffers.color.setClear(1, 1, 1, 1), p.buffers.depth.setTest(!0), p.setScissorTest(!1);
3253
- let m = x !== this.type;
3254
- m && n.traverse(function(e) {
3253
+ let m = S !== this.type;
3254
+ m && r.traverse(function(e) {
3255
3255
  e.material && (Array.isArray(e.material) ? e.material.forEach((e) => e.needsUpdate = !0) : e.material.needsUpdate = !0);
3256
3256
  });
3257
- for (let c = 0, l = t.length; c < l; c++) {
3258
- let l = t[c], f = l.shadow;
3257
+ for (let l = 0, u = n.length; l < u; l++) {
3258
+ let u = n[l], f = u.shadow;
3259
3259
  if (f === void 0) {
3260
- W("WebGLShadowMap:", l, "has no shadow.");
3260
+ j("WebGLShadowMap:", u, "has no shadow.");
3261
3261
  continue;
3262
3262
  }
3263
3263
  if (f.autoUpdate === !1 && f.needsUpdate === !1) continue;
3264
- i.copy(f.mapSize);
3265
- let g = f.getFrameExtents();
3266
- i.multiply(g), a.copy(f.mapSize), (i.x > u || i.y > u) && (i.x > u && (a.x = Math.floor(u / g.x), i.x = a.x * g.x, f.mapSize.x = a.x), i.y > u && (a.y = Math.floor(u / g.y), i.y = a.y * g.y, f.mapSize.y = a.y));
3267
- let _ = e.state.buffers.depth.getReversed();
3268
- if (f.camera._reversedDepth = _, f.map === null || m === !0) {
3264
+ a.copy(f.mapSize);
3265
+ let v = f.getFrameExtents();
3266
+ a.multiply(v), o.copy(f.mapSize), (a.x > d || a.y > d) && (a.x > d && (o.x = Math.floor(d / v.x), a.x = o.x * v.x, f.mapSize.x = o.x), a.y > d && (o.y = Math.floor(d / v.y), a.y = o.y * v.y, f.mapSize.y = o.y));
3267
+ let y = t.state.buffers.depth.getReversed();
3268
+ if (f.camera._reversedDepth = y, f.map === null || m === !0) {
3269
3269
  if (f.map !== null && (f.map.depthTexture !== null && (f.map.depthTexture.dispose(), f.map.depthTexture = null), f.map.dispose()), this.type === 3) {
3270
- if (l.isPointLight) {
3271
- W("WebGLShadowMap: VSM shadow maps are not supported for PointLights. Use PCF or BasicShadowMap instead.");
3270
+ if (u.isPointLight) {
3271
+ j("WebGLShadowMap: VSM shadow maps are not supported for PointLights. Use PCF or BasicShadowMap instead.");
3272
3272
  continue;
3273
3273
  }
3274
- f.map = new h(i.x, i.y, {
3275
- format: d,
3276
- type: z,
3277
- minFilter: F,
3278
- magFilter: F,
3274
+ f.map = new k(a.x, a.y, {
3275
+ format: D,
3276
+ type: he,
3277
+ minFilter: _,
3278
+ magFilter: _,
3279
3279
  generateMipmaps: !1
3280
- }), f.map.texture.name = l.name + ".shadowMap", f.map.depthTexture = new ee(i.x, i.y, L), f.map.depthTexture.name = l.name + ".shadowMapDepth", f.map.depthTexture.format = U, f.map.depthTexture.compareFunction = null, f.map.depthTexture.minFilter = C, f.map.depthTexture.magFilter = C;
3281
- } else l.isPointLight ? (f.map = new lt(i.x), f.map.depthTexture = new G(i.x, te)) : (f.map = new h(i.x, i.y), f.map.depthTexture = new ee(i.x, i.y, te)), f.map.depthTexture.name = l.name + ".shadowMap", f.map.depthTexture.format = U, this.type === 1 ? (f.map.depthTexture.compareFunction = _ ? 518 : 515, f.map.depthTexture.minFilter = F, f.map.depthTexture.magFilter = F) : (f.map.depthTexture.compareFunction = null, f.map.depthTexture.minFilter = C, f.map.depthTexture.magFilter = C);
3280
+ }), f.map.texture.name = u.name + ".shadowMap", f.map.depthTexture = new h(a.x, a.y, xe), f.map.depthTexture.name = u.name + ".shadowMapDepth", f.map.depthTexture.format = g, f.map.depthTexture.compareFunction = null, f.map.depthTexture.minFilter = Ne, f.map.depthTexture.magFilter = Ne;
3281
+ } else u.isPointLight ? (f.map = new lt(a.x), f.map.depthTexture = new e(a.x, oe)) : (f.map = new k(a.x, a.y), f.map.depthTexture = new h(a.x, a.y, oe)), f.map.depthTexture.name = u.name + ".shadowMap", f.map.depthTexture.format = g, this.type === 1 ? (f.map.depthTexture.compareFunction = y ? 518 : 515, f.map.depthTexture.minFilter = _, f.map.depthTexture.magFilter = _) : (f.map.depthTexture.compareFunction = null, f.map.depthTexture.minFilter = Ne, f.map.depthTexture.magFilter = Ne);
3282
3282
  f.camera.updateProjectionMatrix();
3283
3283
  }
3284
- let v = f.map.isWebGLCubeRenderTarget ? 6 : 1;
3285
- for (let t = 0; t < v; t++) {
3286
- if (f.map.isWebGLCubeRenderTarget) e.setRenderTarget(f.map, t), e.clear();
3284
+ let b = f.map.isWebGLCubeRenderTarget ? 6 : 1;
3285
+ for (let e = 0; e < b; e++) {
3286
+ if (f.map.isWebGLCubeRenderTarget) t.setRenderTarget(f.map, e), t.clear();
3287
3287
  else {
3288
- t === 0 && (e.setRenderTarget(f.map), e.clear());
3289
- let n = f.getViewport(t);
3290
- o.set(a.x * n.x, a.y * n.y, a.x * n.z, a.y * n.w), p.viewport(o);
3288
+ e === 0 && (t.setRenderTarget(f.map), t.clear());
3289
+ let n = f.getViewport(e);
3290
+ s.set(o.x * n.x, o.y * n.y, o.x * n.z, o.y * n.w), p.viewport(s);
3291
3291
  }
3292
- if (l.isPointLight) {
3293
- let e = f.camera, n = f.matrix, r = l.distance || e.far;
3294
- r !== e.far && (e.far = r, e.updateProjectionMatrix()), Or.setFromMatrixPosition(l.matrixWorld), e.position.copy(Or), kr.copy(e.position), kr.add(Tr[t]), e.up.copy(Er[t]), e.lookAt(kr), e.updateMatrixWorld(), n.makeTranslation(-Or.x, -Or.y, -Or.z), Dr.multiplyMatrices(e.projectionMatrix, e.matrixWorldInverse), f._frustum.setFromProjectionMatrix(Dr, e.coordinateSystem, e.reversedDepth);
3295
- } else f.updateMatrices(l);
3296
- r = f.getFrustum(), D(n, s, f.camera, l, this.type);
3292
+ if (u.isPointLight) {
3293
+ let t = f.camera, n = f.matrix, r = u.distance || t.far;
3294
+ r !== t.far && (t.far = r, t.updateProjectionMatrix()), Or.setFromMatrixPosition(u.matrixWorld), t.position.copy(Or), kr.copy(t.position), kr.add(Tr[e]), t.up.copy(Er[e]), t.lookAt(kr), t.updateMatrixWorld(), n.makeTranslation(-Or.x, -Or.y, -Or.z), Dr.multiplyMatrices(t.projectionMatrix, t.matrixWorldInverse), f._frustum.setFromProjectionMatrix(Dr, t.coordinateSystem, t.reversedDepth);
3295
+ } else f.updateMatrices(u);
3296
+ i = f.getFrustum(), T(r, c, f.camera, u, this.type);
3297
3297
  }
3298
- f.isPointLightShadow !== !0 && this.type === 3 && S(f, s), f.needsUpdate = !1;
3298
+ f.isPointLightShadow !== !0 && this.type === 3 && C(f, c), f.needsUpdate = !1;
3299
3299
  }
3300
- x = this.type, y.needsUpdate = !1, e.setRenderTarget(c, l, f);
3300
+ S = this.type, x.needsUpdate = !1, t.setRenderTarget(l, u, f);
3301
3301
  };
3302
- function S(n, r) {
3303
- let a = t.update(v);
3304
- p.defines.VSM_SAMPLES !== n.blurSamples && (p.defines.VSM_SAMPLES = n.blurSamples, m.defines.VSM_SAMPLES = n.blurSamples, p.needsUpdate = !0, m.needsUpdate = !0), n.mapPass === null && (n.mapPass = new h(i.x, i.y, {
3305
- format: d,
3306
- type: z
3307
- })), p.uniforms.shadow_pass.value = n.map.depthTexture, p.uniforms.resolution.value = n.mapSize, p.uniforms.radius.value = n.radius, e.setRenderTarget(n.mapPass), e.clear(), e.renderBufferDirect(r, null, a, p, v, null), m.uniforms.shadow_pass.value = n.mapPass.texture, m.uniforms.resolution.value = n.mapSize, m.uniforms.radius.value = n.radius, e.setRenderTarget(n.map), e.clear(), e.renderBufferDirect(r, null, a, m, v, null);
3308
- }
3309
- function w(t, n, r, i) {
3310
- let a = null, o = r.isPointLight === !0 ? t.customDistanceMaterial : t.customDepthMaterial;
3302
+ function C(e, r) {
3303
+ let i = n.update(b);
3304
+ m.defines.VSM_SAMPLES !== e.blurSamples && (m.defines.VSM_SAMPLES = e.blurSamples, v.defines.VSM_SAMPLES = e.blurSamples, m.needsUpdate = !0, v.needsUpdate = !0), e.mapPass === null && (e.mapPass = new k(a.x, a.y, {
3305
+ format: D,
3306
+ type: he
3307
+ })), m.uniforms.shadow_pass.value = e.map.depthTexture, m.uniforms.resolution.value = e.mapSize, m.uniforms.radius.value = e.radius, t.setRenderTarget(e.mapPass), t.clear(), t.renderBufferDirect(r, null, i, m, b, null), v.uniforms.shadow_pass.value = e.mapPass.texture, v.uniforms.resolution.value = e.mapSize, v.uniforms.radius.value = e.radius, t.setRenderTarget(e.map), t.clear(), t.renderBufferDirect(r, null, i, v, b, null);
3308
+ }
3309
+ function w(e, n, r, i) {
3310
+ let a = null, o = r.isPointLight === !0 ? e.customDistanceMaterial : e.customDepthMaterial;
3311
3311
  if (o !== void 0) a = o;
3312
- else if (a = r.isPointLight === !0 ? c : s, e.localClippingEnabled && n.clipShadows === !0 && Array.isArray(n.clippingPlanes) && n.clippingPlanes.length !== 0 || n.displacementMap && n.displacementScale !== 0 || n.alphaMap && n.alphaTest > 0 || n.map && n.alphaTest > 0 || n.alphaToCoverage === !0) {
3313
- let e = a.uuid, t = n.uuid, r = l[e];
3314
- r === void 0 && (r = {}, l[e] = r);
3312
+ else if (a = r.isPointLight === !0 ? l : c, t.localClippingEnabled && n.clipShadows === !0 && Array.isArray(n.clippingPlanes) && n.clippingPlanes.length !== 0 || n.displacementMap && n.displacementScale !== 0 || n.alphaMap && n.alphaTest > 0 || n.map && n.alphaTest > 0 || n.alphaToCoverage === !0) {
3313
+ let e = a.uuid, t = n.uuid, r = u[e];
3314
+ r === void 0 && (r = {}, u[e] = r);
3315
3315
  let i = r[t];
3316
3316
  i === void 0 && (i = a.clone(), r[t] = i, n.addEventListener("dispose", O)), a = i;
3317
3317
  }
3318
3318
  if (a.visible = n.visible, a.wireframe = n.wireframe, i === 3 ? a.side = n.shadowSide === null ? n.side : n.shadowSide : a.side = n.shadowSide === null ? f[n.side] : n.shadowSide, a.alphaMap = n.alphaMap, a.alphaTest = n.alphaToCoverage === !0 ? .5 : n.alphaTest, a.map = n.map, a.clipShadows = n.clipShadows, a.clippingPlanes = n.clippingPlanes, a.clipIntersection = n.clipIntersection, a.displacementMap = n.displacementMap, a.displacementScale = n.displacementScale, a.displacementBias = n.displacementBias, a.wireframeLinewidth = n.wireframeLinewidth, a.linewidth = n.linewidth, r.isPointLight === !0 && a.isMeshDistanceMaterial === !0) {
3319
- let t = e.properties.get(a);
3320
- t.light = r;
3319
+ let e = t.properties.get(a);
3320
+ e.light = r;
3321
3321
  }
3322
3322
  return a;
3323
3323
  }
3324
- function D(n, i, a, o, s) {
3325
- if (n.visible === !1) return;
3326
- if (n.layers.test(i.layers) && (n.isMesh || n.isLine || n.isPoints) && (n.castShadow || n.receiveShadow && s === 3) && (!n.frustumCulled || r.intersectsObject(n))) {
3327
- n.modelViewMatrix.multiplyMatrices(a.matrixWorldInverse, n.matrixWorld);
3328
- let r = t.update(n), c = n.material;
3324
+ function T(e, r, a, o, s) {
3325
+ if (e.visible === !1) return;
3326
+ if (e.layers.test(r.layers) && (e.isMesh || e.isLine || e.isPoints) && (e.castShadow || e.receiveShadow && s === 3) && (!e.frustumCulled || i.intersectsObject(e))) {
3327
+ e.modelViewMatrix.multiplyMatrices(a.matrixWorldInverse, e.matrixWorld);
3328
+ let i = n.update(e), c = e.material;
3329
3329
  if (Array.isArray(c)) {
3330
- let t = r.groups;
3331
- for (let l = 0, u = t.length; l < u; l++) {
3332
- let u = t[l], d = c[u.materialIndex];
3330
+ let n = i.groups;
3331
+ for (let l = 0, u = n.length; l < u; l++) {
3332
+ let u = n[l], d = c[u.materialIndex];
3333
3333
  if (d && d.visible) {
3334
- let t = w(n, d, o, s);
3335
- n.onBeforeShadow(e, n, i, a, r, t, u), e.renderBufferDirect(a, null, r, t, n, u), n.onAfterShadow(e, n, i, a, r, t, u);
3334
+ let n = w(e, d, o, s);
3335
+ e.onBeforeShadow(t, e, r, a, i, n, u), t.renderBufferDirect(a, null, i, n, e, u), e.onAfterShadow(t, e, r, a, i, n, u);
3336
3336
  }
3337
3337
  }
3338
3338
  } else if (c.visible) {
3339
- let t = w(n, c, o, s);
3340
- n.onBeforeShadow(e, n, i, a, r, t, null), e.renderBufferDirect(a, null, r, t, n, null), n.onAfterShadow(e, n, i, a, r, t, null);
3339
+ let n = w(e, c, o, s);
3340
+ e.onBeforeShadow(t, e, r, a, i, n, null), t.renderBufferDirect(a, null, i, n, e, null), e.onAfterShadow(t, e, r, a, i, n, null);
3341
3341
  }
3342
3342
  }
3343
- let c = n.children;
3344
- for (let e = 0, t = c.length; e < t; e++) D(c[e], i, a, o, s);
3343
+ let c = e.children;
3344
+ for (let e = 0, t = c.length; e < t; e++) T(c[e], r, a, o, s);
3345
3345
  }
3346
3346
  function O(e) {
3347
3347
  e.target.removeEventListener("dispose", O);
3348
- for (let t in l) {
3349
- let n = l[t], r = e.target.uuid;
3348
+ for (let t in u) {
3349
+ let n = u[t], r = e.target.uuid;
3350
3350
  r in n && (n[r].dispose(), delete n[r]);
3351
3351
  }
3352
3352
  }
3353
3353
  }
3354
3354
  function jr(e, t) {
3355
3355
  function n() {
3356
- let t = !1, n = new Fe(), r = null, i = new Fe(0, 0, 0, 0);
3356
+ let t = !1, n = new E(), r = null, i = new E(0, 0, 0, 0);
3357
3357
  return {
3358
3358
  setMask: function(n) {
3359
3359
  r !== n && !t && (e.colorMask(n, n, n, n), r = n);
@@ -3384,13 +3384,13 @@ function jr(e, t) {
3384
3384
  return r;
3385
3385
  },
3386
3386
  setTest: function(t) {
3387
- t ? R(e.DEPTH_TEST) : z(e.DEPTH_TEST);
3387
+ t ? B(e.DEPTH_TEST) : V(e.DEPTH_TEST);
3388
3388
  },
3389
3389
  setMask: function(t) {
3390
3390
  i !== t && !n && (e.depthMask(t), i = t);
3391
3391
  },
3392
3392
  setFunc: function(t) {
3393
- if (r && (t = Ae[t]), a !== t) {
3393
+ if (r && (t = b[t]), a !== t) {
3394
3394
  switch (t) {
3395
3395
  case 0:
3396
3396
  e.depthFunc(e.NEVER);
@@ -3436,7 +3436,7 @@ function jr(e, t) {
3436
3436
  let t = !1, n = null, r = null, i = null, a = null, o = null, s = null, c = null, l = null;
3437
3437
  return {
3438
3438
  setTest: function(n) {
3439
- t || (n ? R(e.STENCIL_TEST) : z(e.STENCIL_TEST));
3439
+ t || (n ? B(e.STENCIL_TEST) : V(e.STENCIL_TEST));
3440
3440
  },
3441
3441
  setMask: function(r) {
3442
3442
  n !== r && !t && (e.stencilMask(r), n = r);
@@ -3458,30 +3458,30 @@ function jr(e, t) {
3458
3458
  }
3459
3459
  };
3460
3460
  }
3461
- let a = new n(), o = new r(), s = new i(), c = /* @__PURE__ */ new WeakMap(), l = /* @__PURE__ */ new WeakMap(), u = {}, d = {}, f = /* @__PURE__ */ new WeakMap(), p = [], m = null, h = !1, g = null, _ = null, y = null, b = null, x = null, S = null, C = null, w = new H(0, 0, 0), T = 0, E = !1, D = null, O = null, ee = null, te = null, k = null, A = e.getParameter(e.MAX_COMBINED_TEXTURE_IMAGE_UNITS), j = !1, M = 0, ne = e.getParameter(e.VERSION);
3462
- ne.indexOf("WebGL") === -1 ? ne.indexOf("OpenGL ES") !== -1 && (M = parseFloat(/^OpenGL ES (\d)/.exec(ne)[1]), j = M >= 2) : (M = parseFloat(/^WebGL (\d)/.exec(ne)[1]), j = M >= 1);
3463
- let N = null, P = {}, re = e.getParameter(e.SCISSOR_BOX), F = e.getParameter(e.VIEWPORT), I = new Fe().fromArray(re), ie = new Fe().fromArray(F);
3464
- function L(t, n, r, i) {
3461
+ let o = new n(), s = new r(), c = new i(), l = /* @__PURE__ */ new WeakMap(), u = /* @__PURE__ */ new WeakMap(), d = {}, f = {}, p = /* @__PURE__ */ new WeakMap(), m = [], h = null, g = !1, _ = null, v = null, y = null, x = null, C = null, w = null, T = null, D = new a(0, 0, 0), O = 0, k = !1, A = null, j = null, M = null, N = null, ee = null, te = e.getParameter(e.MAX_COMBINED_TEXTURE_IMAGE_UNITS), P = !1, ne = 0, F = e.getParameter(e.VERSION);
3462
+ F.indexOf("WebGL") === -1 ? F.indexOf("OpenGL ES") !== -1 && (ne = parseFloat(/^OpenGL ES (\d)/.exec(F)[1]), P = ne >= 2) : (ne = parseFloat(/^WebGL (\d)/.exec(F)[1]), P = ne >= 1);
3463
+ let I = null, L = {}, R = e.getParameter(e.SCISSOR_BOX), re = e.getParameter(e.VIEWPORT), z = new E().fromArray(R), ie = new E().fromArray(re);
3464
+ function ae(t, n, r, i) {
3465
3465
  let a = new Uint8Array(4), o = e.createTexture();
3466
3466
  e.bindTexture(t, o), e.texParameteri(t, e.TEXTURE_MIN_FILTER, e.NEAREST), e.texParameteri(t, e.TEXTURE_MAG_FILTER, e.NEAREST);
3467
3467
  for (let o = 0; o < r; o++) t === e.TEXTURE_3D || t === e.TEXTURE_2D_ARRAY ? e.texImage3D(n, 0, e.RGBA, 1, 1, i, 0, e.RGBA, e.UNSIGNED_BYTE, a) : e.texImage2D(n + o, 0, e.RGBA, 1, 1, 0, e.RGBA, e.UNSIGNED_BYTE, a);
3468
3468
  return o;
3469
3469
  }
3470
- let ae = {};
3471
- ae[e.TEXTURE_2D] = L(e.TEXTURE_2D, e.TEXTURE_2D, 1), ae[e.TEXTURE_CUBE_MAP] = L(e.TEXTURE_CUBE_MAP, e.TEXTURE_CUBE_MAP_POSITIVE_X, 6), ae[e.TEXTURE_2D_ARRAY] = L(e.TEXTURE_2D_ARRAY, e.TEXTURE_2D_ARRAY, 1, 1), ae[e.TEXTURE_3D] = L(e.TEXTURE_3D, e.TEXTURE_3D, 1, 1), a.setClear(0, 0, 0, 1), o.setClear(1), s.setClear(0), R(e.DEPTH_TEST), o.setFunc(3), fe(!1), pe(1), R(e.CULL_FACE), ue(0);
3472
- function R(t) {
3473
- u[t] !== !0 && (e.enable(t), u[t] = !0);
3470
+ let oe = {};
3471
+ oe[e.TEXTURE_2D] = ae(e.TEXTURE_2D, e.TEXTURE_2D, 1), oe[e.TEXTURE_CUBE_MAP] = ae(e.TEXTURE_CUBE_MAP, e.TEXTURE_CUBE_MAP_POSITIVE_X, 6), oe[e.TEXTURE_2D_ARRAY] = ae(e.TEXTURE_2D_ARRAY, e.TEXTURE_2D_ARRAY, 1, 1), oe[e.TEXTURE_3D] = ae(e.TEXTURE_3D, e.TEXTURE_3D, 1, 1), o.setClear(0, 0, 0, 1), s.setClear(1), c.setClear(0), B(e.DEPTH_TEST), s.setFunc(3), me(!1), he(1), B(e.CULL_FACE), fe(0);
3472
+ function B(t) {
3473
+ d[t] !== !0 && (e.enable(t), d[t] = !0);
3474
3474
  }
3475
- function z(t) {
3476
- u[t] !== !1 && (e.disable(t), u[t] = !1);
3477
- }
3478
- function oe(t, n) {
3479
- return d[t] === n ? !1 : (e.bindFramebuffer(t, n), d[t] = n, t === e.DRAW_FRAMEBUFFER && (d[e.FRAMEBUFFER] = n), t === e.FRAMEBUFFER && (d[e.DRAW_FRAMEBUFFER] = n), !0);
3475
+ function V(t) {
3476
+ d[t] !== !1 && (e.disable(t), d[t] = !1);
3480
3477
  }
3481
3478
  function se(t, n) {
3482
- let r = p, i = !1;
3479
+ return f[t] === n ? !1 : (e.bindFramebuffer(t, n), f[t] = n, t === e.DRAW_FRAMEBUFFER && (f[e.FRAMEBUFFER] = n), t === e.FRAMEBUFFER && (f[e.DRAW_FRAMEBUFFER] = n), !0);
3480
+ }
3481
+ function ce(t, n) {
3482
+ let r = m, i = !1;
3483
3483
  if (t) {
3484
- r = f.get(n), r === void 0 && (r = [], f.set(n, r));
3484
+ r = p.get(n), r === void 0 && (r = [], p.set(n, r));
3485
3485
  let a = t.textures;
3486
3486
  if (r.length !== a.length || r[0] !== e.COLOR_ATTACHMENT0) {
3487
3487
  for (let t = 0, n = a.length; t < n; t++) r[t] = e.COLOR_ATTACHMENT0 + t;
@@ -3490,16 +3490,16 @@ function jr(e, t) {
3490
3490
  } else r[0] !== e.BACK && (r[0] = e.BACK, i = !0);
3491
3491
  i && e.drawBuffers(r);
3492
3492
  }
3493
- function ce(t) {
3494
- return m === t ? !1 : (e.useProgram(t), m = t, !0);
3493
+ function le(t) {
3494
+ return h === t ? !1 : (e.useProgram(t), h = t, !0);
3495
3495
  }
3496
- let B = {
3496
+ let ue = {
3497
3497
  100: e.FUNC_ADD,
3498
3498
  101: e.FUNC_SUBTRACT,
3499
3499
  102: e.FUNC_REVERSE_SUBTRACT
3500
3500
  };
3501
- B[103] = e.MIN, B[104] = e.MAX;
3502
- let le = {
3501
+ ue[103] = e.MIN, ue[104] = e.MAX;
3502
+ let de = {
3503
3503
  200: e.ZERO,
3504
3504
  201: e.ONE,
3505
3505
  202: e.SRC_COLOR,
@@ -3516,14 +3516,14 @@ function jr(e, t) {
3516
3516
  213: e.CONSTANT_ALPHA,
3517
3517
  214: e.ONE_MINUS_CONSTANT_ALPHA
3518
3518
  };
3519
- function ue(t, n, r, i, a, o, s, c, l, u) {
3519
+ function fe(t, n, r, i, a, o, s, c, l, u) {
3520
3520
  if (t === 0) {
3521
- h === !0 && (z(e.BLEND), h = !1);
3521
+ g === !0 && (V(e.BLEND), g = !1);
3522
3522
  return;
3523
3523
  }
3524
- if (h === !1 && (R(e.BLEND), h = !0), t !== 5) {
3525
- if (t !== g || u !== E) {
3526
- if ((_ !== 100 || x !== 100) && (e.blendEquation(e.FUNC_ADD), _ = 100, x = 100), u) switch (t) {
3524
+ if (g === !1 && (B(e.BLEND), g = !0), t !== 5) {
3525
+ if (t !== _ || u !== k) {
3526
+ if ((v !== 100 || C !== 100) && (e.blendEquation(e.FUNC_ADD), v = 100, C = 100), u) switch (t) {
3527
3527
  case 1:
3528
3528
  e.blendFuncSeparate(e.ONE, e.ONE_MINUS_SRC_ALPHA, e.ONE, e.ONE_MINUS_SRC_ALPHA);
3529
3529
  break;
@@ -3537,7 +3537,7 @@ function jr(e, t) {
3537
3537
  e.blendFuncSeparate(e.DST_COLOR, e.ONE_MINUS_SRC_ALPHA, e.ZERO, e.ONE);
3538
3538
  break;
3539
3539
  default:
3540
- v("WebGLState: Invalid blending: ", t);
3540
+ S("WebGLState: Invalid blending: ", t);
3541
3541
  break;
3542
3542
  }
3543
3543
  else switch (t) {
@@ -3548,703 +3548,703 @@ function jr(e, t) {
3548
3548
  e.blendFuncSeparate(e.SRC_ALPHA, e.ONE, e.ONE, e.ONE);
3549
3549
  break;
3550
3550
  case 3:
3551
- v("WebGLState: SubtractiveBlending requires material.premultipliedAlpha = true");
3551
+ S("WebGLState: SubtractiveBlending requires material.premultipliedAlpha = true");
3552
3552
  break;
3553
3553
  case 4:
3554
- v("WebGLState: MultiplyBlending requires material.premultipliedAlpha = true");
3554
+ S("WebGLState: MultiplyBlending requires material.premultipliedAlpha = true");
3555
3555
  break;
3556
3556
  default:
3557
- v("WebGLState: Invalid blending: ", t);
3557
+ S("WebGLState: Invalid blending: ", t);
3558
3558
  break;
3559
3559
  }
3560
- y = null, b = null, S = null, C = null, w.set(0, 0, 0), T = 0, g = t, E = u;
3560
+ y = null, x = null, w = null, T = null, D.set(0, 0, 0), O = 0, _ = t, k = u;
3561
3561
  }
3562
3562
  return;
3563
3563
  }
3564
- a ||= n, o ||= r, s ||= i, (n !== _ || a !== x) && (e.blendEquationSeparate(B[n], B[a]), _ = n, x = a), (r !== y || i !== b || o !== S || s !== C) && (e.blendFuncSeparate(le[r], le[i], le[o], le[s]), y = r, b = i, S = o, C = s), (c.equals(w) === !1 || l !== T) && (e.blendColor(c.r, c.g, c.b, l), w.copy(c), T = l), g = t, E = !1;
3564
+ a ||= n, o ||= r, s ||= i, (n !== v || a !== C) && (e.blendEquationSeparate(ue[n], ue[a]), v = n, C = a), (r !== y || i !== x || o !== w || s !== T) && (e.blendFuncSeparate(de[r], de[i], de[o], de[s]), y = r, x = i, w = o, T = s), (c.equals(D) === !1 || l !== O) && (e.blendColor(c.r, c.g, c.b, l), D.copy(c), O = l), _ = t, k = !1;
3565
3565
  }
3566
- function de(t, n) {
3567
- t.side === 2 ? z(e.CULL_FACE) : R(e.CULL_FACE);
3566
+ function pe(t, n) {
3567
+ t.side === 2 ? V(e.CULL_FACE) : B(e.CULL_FACE);
3568
3568
  let r = t.side === 1;
3569
- n && (r = !r), fe(r), t.blending === 1 && t.transparent === !1 ? ue(0) : ue(t.blending, t.blendEquation, t.blendSrc, t.blendDst, t.blendEquationAlpha, t.blendSrcAlpha, t.blendDstAlpha, t.blendColor, t.blendAlpha, t.premultipliedAlpha), o.setFunc(t.depthFunc), o.setTest(t.depthTest), o.setMask(t.depthWrite), a.setMask(t.colorWrite);
3569
+ n && (r = !r), me(r), t.blending === 1 && t.transparent === !1 ? fe(0) : fe(t.blending, t.blendEquation, t.blendSrc, t.blendDst, t.blendEquationAlpha, t.blendSrcAlpha, t.blendDstAlpha, t.blendColor, t.blendAlpha, t.premultipliedAlpha), s.setFunc(t.depthFunc), s.setTest(t.depthTest), s.setMask(t.depthWrite), o.setMask(t.colorWrite);
3570
3570
  let i = t.stencilWrite;
3571
- s.setTest(i), i && (s.setMask(t.stencilWriteMask), s.setFunc(t.stencilFunc, t.stencilRef, t.stencilFuncMask), s.setOp(t.stencilFail, t.stencilZFail, t.stencilZPass)), me(t.polygonOffset, t.polygonOffsetFactor, t.polygonOffsetUnits), t.alphaToCoverage === !0 ? R(e.SAMPLE_ALPHA_TO_COVERAGE) : z(e.SAMPLE_ALPHA_TO_COVERAGE);
3571
+ c.setTest(i), i && (c.setMask(t.stencilWriteMask), c.setFunc(t.stencilFunc, t.stencilRef, t.stencilFuncMask), c.setOp(t.stencilFail, t.stencilZFail, t.stencilZPass)), ge(t.polygonOffset, t.polygonOffsetFactor, t.polygonOffsetUnits), t.alphaToCoverage === !0 ? B(e.SAMPLE_ALPHA_TO_COVERAGE) : V(e.SAMPLE_ALPHA_TO_COVERAGE);
3572
3572
  }
3573
- function fe(t) {
3574
- D !== t && (t ? e.frontFace(e.CW) : e.frontFace(e.CCW), D = t);
3573
+ function me(t) {
3574
+ A !== t && (t ? e.frontFace(e.CW) : e.frontFace(e.CCW), A = t);
3575
3575
  }
3576
- function pe(t) {
3577
- t === 0 ? z(e.CULL_FACE) : (R(e.CULL_FACE), t !== O && (t === 1 ? e.cullFace(e.BACK) : t === 2 ? e.cullFace(e.FRONT) : e.cullFace(e.FRONT_AND_BACK))), O = t;
3576
+ function he(t) {
3577
+ t === 0 ? V(e.CULL_FACE) : (B(e.CULL_FACE), t !== j && (t === 1 ? e.cullFace(e.BACK) : t === 2 ? e.cullFace(e.FRONT) : e.cullFace(e.FRONT_AND_BACK))), j = t;
3578
3578
  }
3579
- function V(t) {
3580
- t !== ee && (j && e.lineWidth(t), ee = t);
3579
+ function H(t) {
3580
+ t !== M && (P && e.lineWidth(t), M = t);
3581
3581
  }
3582
- function me(t, n, r) {
3583
- t ? (R(e.POLYGON_OFFSET_FILL), (te !== n || k !== r) && (te = n, k = r, o.getReversed() && (n = -n), e.polygonOffset(n, r))) : z(e.POLYGON_OFFSET_FILL);
3582
+ function ge(t, n, r) {
3583
+ t ? (B(e.POLYGON_OFFSET_FILL), (N !== n || ee !== r) && (N = n, ee = r, s.getReversed() && (n = -n), e.polygonOffset(n, r))) : V(e.POLYGON_OFFSET_FILL);
3584
3584
  }
3585
- function U(t) {
3586
- t ? R(e.SCISSOR_TEST) : z(e.SCISSOR_TEST);
3585
+ function _e(t) {
3586
+ t ? B(e.SCISSOR_TEST) : V(e.SCISSOR_TEST);
3587
3587
  }
3588
- function he(t) {
3589
- t === void 0 && (t = e.TEXTURE0 + A - 1), N !== t && (e.activeTexture(t), N = t);
3588
+ function ve(t) {
3589
+ t === void 0 && (t = e.TEXTURE0 + te - 1), I !== t && (e.activeTexture(t), I = t);
3590
3590
  }
3591
- function ge(t, n, r) {
3592
- r === void 0 && (r = N === null ? e.TEXTURE0 + A - 1 : N);
3593
- let i = P[r];
3591
+ function ye(t, n, r) {
3592
+ r === void 0 && (r = I === null ? e.TEXTURE0 + te - 1 : I);
3593
+ let i = L[r];
3594
3594
  i === void 0 && (i = {
3595
3595
  type: void 0,
3596
3596
  texture: void 0
3597
- }, P[r] = i), (i.type !== t || i.texture !== n) && (N !== r && (e.activeTexture(r), N = r), e.bindTexture(t, n || ae[t]), i.type = t, i.texture = n);
3597
+ }, L[r] = i), (i.type !== t || i.texture !== n) && (I !== r && (e.activeTexture(r), I = r), e.bindTexture(t, n || oe[t]), i.type = t, i.texture = n);
3598
3598
  }
3599
- function _e() {
3600
- let t = P[N];
3599
+ function be() {
3600
+ let t = L[I];
3601
3601
  t !== void 0 && t.type !== void 0 && (e.bindTexture(t.type, null), t.type = void 0, t.texture = void 0);
3602
3602
  }
3603
- function ve() {
3603
+ function U() {
3604
3604
  try {
3605
3605
  e.compressedTexImage2D(...arguments);
3606
3606
  } catch (e) {
3607
- v("WebGLState:", e);
3607
+ S("WebGLState:", e);
3608
3608
  }
3609
3609
  }
3610
- function ye() {
3610
+ function xe() {
3611
3611
  try {
3612
3612
  e.compressedTexImage3D(...arguments);
3613
3613
  } catch (e) {
3614
- v("WebGLState:", e);
3614
+ S("WebGLState:", e);
3615
3615
  }
3616
3616
  }
3617
- function be() {
3617
+ function Se() {
3618
3618
  try {
3619
3619
  e.texSubImage2D(...arguments);
3620
3620
  } catch (e) {
3621
- v("WebGLState:", e);
3621
+ S("WebGLState:", e);
3622
3622
  }
3623
3623
  }
3624
- function xe() {
3624
+ function Ce() {
3625
3625
  try {
3626
3626
  e.texSubImage3D(...arguments);
3627
3627
  } catch (e) {
3628
- v("WebGLState:", e);
3628
+ S("WebGLState:", e);
3629
3629
  }
3630
3630
  }
3631
- function Se() {
3631
+ function we() {
3632
3632
  try {
3633
3633
  e.compressedTexSubImage2D(...arguments);
3634
3634
  } catch (e) {
3635
- v("WebGLState:", e);
3635
+ S("WebGLState:", e);
3636
3636
  }
3637
3637
  }
3638
- function Ce() {
3638
+ function Te() {
3639
3639
  try {
3640
3640
  e.compressedTexSubImage3D(...arguments);
3641
3641
  } catch (e) {
3642
- v("WebGLState:", e);
3642
+ S("WebGLState:", e);
3643
3643
  }
3644
3644
  }
3645
- function we() {
3645
+ function Ee() {
3646
3646
  try {
3647
3647
  e.texStorage2D(...arguments);
3648
3648
  } catch (e) {
3649
- v("WebGLState:", e);
3649
+ S("WebGLState:", e);
3650
3650
  }
3651
3651
  }
3652
- function Te() {
3652
+ function De() {
3653
3653
  try {
3654
3654
  e.texStorage3D(...arguments);
3655
3655
  } catch (e) {
3656
- v("WebGLState:", e);
3656
+ S("WebGLState:", e);
3657
3657
  }
3658
3658
  }
3659
- function Ee() {
3659
+ function Oe() {
3660
3660
  try {
3661
3661
  e.texImage2D(...arguments);
3662
3662
  } catch (e) {
3663
- v("WebGLState:", e);
3663
+ S("WebGLState:", e);
3664
3664
  }
3665
3665
  }
3666
- function De() {
3666
+ function ke() {
3667
3667
  try {
3668
3668
  e.texImage3D(...arguments);
3669
3669
  } catch (e) {
3670
- v("WebGLState:", e);
3670
+ S("WebGLState:", e);
3671
3671
  }
3672
3672
  }
3673
- function Oe(t) {
3674
- I.equals(t) === !1 && (e.scissor(t.x, t.y, t.z, t.w), I.copy(t));
3673
+ function Ae(t) {
3674
+ z.equals(t) === !1 && (e.scissor(t.x, t.y, t.z, t.w), z.copy(t));
3675
3675
  }
3676
3676
  function W(t) {
3677
3677
  ie.equals(t) === !1 && (e.viewport(t.x, t.y, t.z, t.w), ie.copy(t));
3678
3678
  }
3679
- function ke(t, n) {
3680
- let r = l.get(n);
3681
- r === void 0 && (r = /* @__PURE__ */ new WeakMap(), l.set(n, r));
3679
+ function je(t, n) {
3680
+ let r = u.get(n);
3681
+ r === void 0 && (r = /* @__PURE__ */ new WeakMap(), u.set(n, r));
3682
3682
  let i = r.get(t);
3683
3683
  i === void 0 && (i = e.getUniformBlockIndex(n, t.name), r.set(t, i));
3684
3684
  }
3685
- function je(t, n) {
3686
- let r = l.get(n).get(t);
3687
- c.get(n) !== r && (e.uniformBlockBinding(n, r, t.__bindingPointIndex), c.set(n, r));
3685
+ function Me(t, n) {
3686
+ let r = u.get(n).get(t);
3687
+ l.get(n) !== r && (e.uniformBlockBinding(n, r, t.__bindingPointIndex), l.set(n, r));
3688
3688
  }
3689
- function Me() {
3690
- e.disable(e.BLEND), e.disable(e.CULL_FACE), e.disable(e.DEPTH_TEST), e.disable(e.POLYGON_OFFSET_FILL), e.disable(e.SCISSOR_TEST), e.disable(e.STENCIL_TEST), e.disable(e.SAMPLE_ALPHA_TO_COVERAGE), e.blendEquation(e.FUNC_ADD), e.blendFunc(e.ONE, e.ZERO), e.blendFuncSeparate(e.ONE, e.ZERO, e.ONE, e.ZERO), e.blendColor(0, 0, 0, 0), e.colorMask(!0, !0, !0, !0), e.clearColor(0, 0, 0, 0), e.depthMask(!0), e.depthFunc(e.LESS), o.setReversed(!1), e.clearDepth(1), e.stencilMask(4294967295), e.stencilFunc(e.ALWAYS, 0, 4294967295), e.stencilOp(e.KEEP, e.KEEP, e.KEEP), e.clearStencil(0), e.cullFace(e.BACK), e.frontFace(e.CCW), e.polygonOffset(0, 0), e.activeTexture(e.TEXTURE0), e.bindFramebuffer(e.FRAMEBUFFER, null), e.bindFramebuffer(e.DRAW_FRAMEBUFFER, null), e.bindFramebuffer(e.READ_FRAMEBUFFER, null), e.useProgram(null), e.lineWidth(1), e.scissor(0, 0, e.canvas.width, e.canvas.height), e.viewport(0, 0, e.canvas.width, e.canvas.height), u = {}, N = null, P = {}, d = {}, f = /* @__PURE__ */ new WeakMap(), p = [], m = null, h = !1, g = null, _ = null, y = null, b = null, x = null, S = null, C = null, w = new H(0, 0, 0), T = 0, E = !1, D = null, O = null, ee = null, te = null, k = null, I.set(0, 0, e.canvas.width, e.canvas.height), ie.set(0, 0, e.canvas.width, e.canvas.height), a.reset(), o.reset(), s.reset();
3689
+ function Ne() {
3690
+ e.disable(e.BLEND), e.disable(e.CULL_FACE), e.disable(e.DEPTH_TEST), e.disable(e.POLYGON_OFFSET_FILL), e.disable(e.SCISSOR_TEST), e.disable(e.STENCIL_TEST), e.disable(e.SAMPLE_ALPHA_TO_COVERAGE), e.blendEquation(e.FUNC_ADD), e.blendFunc(e.ONE, e.ZERO), e.blendFuncSeparate(e.ONE, e.ZERO, e.ONE, e.ZERO), e.blendColor(0, 0, 0, 0), e.colorMask(!0, !0, !0, !0), e.clearColor(0, 0, 0, 0), e.depthMask(!0), e.depthFunc(e.LESS), s.setReversed(!1), e.clearDepth(1), e.stencilMask(4294967295), e.stencilFunc(e.ALWAYS, 0, 4294967295), e.stencilOp(e.KEEP, e.KEEP, e.KEEP), e.clearStencil(0), e.cullFace(e.BACK), e.frontFace(e.CCW), e.polygonOffset(0, 0), e.activeTexture(e.TEXTURE0), e.bindFramebuffer(e.FRAMEBUFFER, null), e.bindFramebuffer(e.DRAW_FRAMEBUFFER, null), e.bindFramebuffer(e.READ_FRAMEBUFFER, null), e.useProgram(null), e.lineWidth(1), e.scissor(0, 0, e.canvas.width, e.canvas.height), e.viewport(0, 0, e.canvas.width, e.canvas.height), d = {}, I = null, L = {}, f = {}, p = /* @__PURE__ */ new WeakMap(), m = [], h = null, g = !1, _ = null, v = null, y = null, x = null, C = null, w = null, T = null, D = new a(0, 0, 0), O = 0, k = !1, A = null, j = null, M = null, N = null, ee = null, z.set(0, 0, e.canvas.width, e.canvas.height), ie.set(0, 0, e.canvas.width, e.canvas.height), o.reset(), s.reset(), c.reset();
3691
3691
  }
3692
3692
  return {
3693
3693
  buffers: {
3694
- color: a,
3695
- depth: o,
3696
- stencil: s
3694
+ color: o,
3695
+ depth: s,
3696
+ stencil: c
3697
3697
  },
3698
- enable: R,
3699
- disable: z,
3700
- bindFramebuffer: oe,
3701
- drawBuffers: se,
3702
- useProgram: ce,
3703
- setBlending: ue,
3704
- setMaterial: de,
3705
- setFlipSided: fe,
3706
- setCullFace: pe,
3707
- setLineWidth: V,
3708
- setPolygonOffset: me,
3709
- setScissorTest: U,
3710
- activeTexture: he,
3711
- bindTexture: ge,
3712
- unbindTexture: _e,
3713
- compressedTexImage2D: ve,
3714
- compressedTexImage3D: ye,
3715
- texImage2D: Ee,
3716
- texImage3D: De,
3717
- updateUBOMapping: ke,
3718
- uniformBlockBinding: je,
3719
- texStorage2D: we,
3720
- texStorage3D: Te,
3721
- texSubImage2D: be,
3722
- texSubImage3D: xe,
3723
- compressedTexSubImage2D: Se,
3724
- compressedTexSubImage3D: Ce,
3725
- scissor: Oe,
3698
+ enable: B,
3699
+ disable: V,
3700
+ bindFramebuffer: se,
3701
+ drawBuffers: ce,
3702
+ useProgram: le,
3703
+ setBlending: fe,
3704
+ setMaterial: pe,
3705
+ setFlipSided: me,
3706
+ setCullFace: he,
3707
+ setLineWidth: H,
3708
+ setPolygonOffset: ge,
3709
+ setScissorTest: _e,
3710
+ activeTexture: ve,
3711
+ bindTexture: ye,
3712
+ unbindTexture: be,
3713
+ compressedTexImage2D: U,
3714
+ compressedTexImage3D: xe,
3715
+ texImage2D: Oe,
3716
+ texImage3D: ke,
3717
+ updateUBOMapping: je,
3718
+ uniformBlockBinding: Me,
3719
+ texStorage2D: Ee,
3720
+ texStorage3D: De,
3721
+ texSubImage2D: Se,
3722
+ texSubImage3D: Ce,
3723
+ compressedTexSubImage2D: we,
3724
+ compressedTexSubImage3D: Te,
3725
+ scissor: Ae,
3726
3726
  viewport: W,
3727
- reset: Me
3727
+ reset: Ne
3728
3728
  };
3729
3729
  }
3730
- function Mr(t, n, r, a, o, s, l) {
3731
- let u = n.has("WEBGL_multisampled_render_to_texture") ? n.get("WEBGL_multisampled_render_to_texture") : null, d = typeof navigator > "u" ? !1 : /OculusBrowser/g.test(navigator.userAgent), f = new T(), m = /* @__PURE__ */ new WeakMap(), h, g = /* @__PURE__ */ new WeakMap(), _ = !1;
3730
+ function Mr(e, t, n, r, i, a, o) {
3731
+ let s = t.has("WEBGL_multisampled_render_to_texture") ? t.get("WEBGL_multisampled_render_to_texture") : null, c = typeof navigator > "u" ? !1 : /OculusBrowser/g.test(navigator.userAgent), u = new L(), d = /* @__PURE__ */ new WeakMap(), f, p = /* @__PURE__ */ new WeakMap(), m = !1;
3732
3732
  try {
3733
- _ = typeof OffscreenCanvas < "u" && new OffscreenCanvas(1, 1).getContext("2d") !== null;
3733
+ m = typeof OffscreenCanvas < "u" && new OffscreenCanvas(1, 1).getContext("2d") !== null;
3734
3734
  } catch {}
3735
- function b(e, t) {
3736
- return _ ? new OffscreenCanvas(e, t) : Te("canvas");
3735
+ function h(e, t) {
3736
+ return m ? new OffscreenCanvas(e, t) : y("canvas");
3737
3737
  }
3738
- function x(e, t, n) {
3739
- let r = 1, i = ke(e);
3738
+ function g(e, t, n) {
3739
+ let r = 1, i = Oe(e);
3740
3740
  if ((i.width > n || i.height > n) && (r = n / Math.max(i.width, i.height)), r < 1) if (typeof HTMLImageElement < "u" && e instanceof HTMLImageElement || typeof HTMLCanvasElement < "u" && e instanceof HTMLCanvasElement || typeof ImageBitmap < "u" && e instanceof ImageBitmap || typeof VideoFrame < "u" && e instanceof VideoFrame) {
3741
3741
  let n = Math.floor(r * i.width), a = Math.floor(r * i.height);
3742
- h === void 0 && (h = b(n, a));
3743
- let o = t ? b(n, a) : h;
3744
- return o.width = n, o.height = a, o.getContext("2d").drawImage(e, 0, 0, n, a), W("WebGLRenderer: Texture has been resized from (" + i.width + "x" + i.height + ") to (" + n + "x" + a + ")."), o;
3745
- } else return "data" in e && W("WebGLRenderer: Image in DataTexture is too big (" + i.width + "x" + i.height + ")."), e;
3742
+ f === void 0 && (f = h(n, a));
3743
+ let o = t ? h(n, a) : f;
3744
+ return o.width = n, o.height = a, o.getContext("2d").drawImage(e, 0, 0, n, a), j("WebGLRenderer: Texture has been resized from (" + i.width + "x" + i.height + ") to (" + n + "x" + a + ")."), o;
3745
+ } else return "data" in e && j("WebGLRenderer: Image in DataTexture is too big (" + i.width + "x" + i.height + ")."), e;
3746
3746
  return e;
3747
3747
  }
3748
- function S(e) {
3748
+ function v(e) {
3749
3749
  return e.generateMipmaps;
3750
3750
  }
3751
- function w(e) {
3752
- t.generateMipmap(e);
3751
+ function b(t) {
3752
+ e.generateMipmap(t);
3753
3753
  }
3754
- function E(e) {
3755
- return e.isWebGLCubeRenderTarget ? t.TEXTURE_CUBE_MAP : e.isWebGL3DRenderTarget ? t.TEXTURE_3D : e.isWebGLArrayRenderTarget || e.isCompressedArrayTexture ? t.TEXTURE_2D_ARRAY : t.TEXTURE_2D;
3754
+ function x(t) {
3755
+ return t.isWebGLCubeRenderTarget ? e.TEXTURE_CUBE_MAP : t.isWebGL3DRenderTarget ? e.TEXTURE_3D : t.isWebGLArrayRenderTarget || t.isCompressedArrayTexture ? e.TEXTURE_2D_ARRAY : e.TEXTURE_2D;
3756
3756
  }
3757
- function O(e, r, i, a, o = !1) {
3758
- if (e !== null) {
3759
- if (t[e] !== void 0) return t[e];
3760
- W("WebGLRenderer: Attempt to use non-existing WebGL internal format '" + e + "'");
3757
+ function w(n, r, i, a, o = !1) {
3758
+ if (n !== null) {
3759
+ if (e[n] !== void 0) return e[n];
3760
+ j("WebGLRenderer: Attempt to use non-existing WebGL internal format '" + n + "'");
3761
3761
  }
3762
3762
  let s = r;
3763
- if (r === t.RED && (i === t.FLOAT && (s = t.R32F), i === t.HALF_FLOAT && (s = t.R16F), i === t.UNSIGNED_BYTE && (s = t.R8)), r === t.RED_INTEGER && (i === t.UNSIGNED_BYTE && (s = t.R8UI), i === t.UNSIGNED_SHORT && (s = t.R16UI), i === t.UNSIGNED_INT && (s = t.R32UI), i === t.BYTE && (s = t.R8I), i === t.SHORT && (s = t.R16I), i === t.INT && (s = t.R32I)), r === t.RG && (i === t.FLOAT && (s = t.RG32F), i === t.HALF_FLOAT && (s = t.RG16F), i === t.UNSIGNED_BYTE && (s = t.RG8)), r === t.RG_INTEGER && (i === t.UNSIGNED_BYTE && (s = t.RG8UI), i === t.UNSIGNED_SHORT && (s = t.RG16UI), i === t.UNSIGNED_INT && (s = t.RG32UI), i === t.BYTE && (s = t.RG8I), i === t.SHORT && (s = t.RG16I), i === t.INT && (s = t.RG32I)), r === t.RGB_INTEGER && (i === t.UNSIGNED_BYTE && (s = t.RGB8UI), i === t.UNSIGNED_SHORT && (s = t.RGB16UI), i === t.UNSIGNED_INT && (s = t.RGB32UI), i === t.BYTE && (s = t.RGB8I), i === t.SHORT && (s = t.RGB16I), i === t.INT && (s = t.RGB32I)), r === t.RGBA_INTEGER && (i === t.UNSIGNED_BYTE && (s = t.RGBA8UI), i === t.UNSIGNED_SHORT && (s = t.RGBA16UI), i === t.UNSIGNED_INT && (s = t.RGBA32UI), i === t.BYTE && (s = t.RGBA8I), i === t.SHORT && (s = t.RGBA16I), i === t.INT && (s = t.RGBA32I)), r === t.RGB && (i === t.UNSIGNED_INT_5_9_9_9_REV && (s = t.RGB9_E5), i === t.UNSIGNED_INT_10F_11F_11F_REV && (s = t.R11F_G11F_B10F)), r === t.RGBA) {
3764
- let e = o ? c : V.getTransfer(a);
3765
- i === t.FLOAT && (s = t.RGBA32F), i === t.HALF_FLOAT && (s = t.RGBA16F), i === t.UNSIGNED_BYTE && (s = e === "srgb" ? t.SRGB8_ALPHA8 : t.RGBA8), i === t.UNSIGNED_SHORT_4_4_4_4 && (s = t.RGBA4), i === t.UNSIGNED_SHORT_5_5_5_1 && (s = t.RGB5_A1);
3763
+ if (r === e.RED && (i === e.FLOAT && (s = e.R32F), i === e.HALF_FLOAT && (s = e.R16F), i === e.UNSIGNED_BYTE && (s = e.R8)), r === e.RED_INTEGER && (i === e.UNSIGNED_BYTE && (s = e.R8UI), i === e.UNSIGNED_SHORT && (s = e.R16UI), i === e.UNSIGNED_INT && (s = e.R32UI), i === e.BYTE && (s = e.R8I), i === e.SHORT && (s = e.R16I), i === e.INT && (s = e.R32I)), r === e.RG && (i === e.FLOAT && (s = e.RG32F), i === e.HALF_FLOAT && (s = e.RG16F), i === e.UNSIGNED_BYTE && (s = e.RG8)), r === e.RG_INTEGER && (i === e.UNSIGNED_BYTE && (s = e.RG8UI), i === e.UNSIGNED_SHORT && (s = e.RG16UI), i === e.UNSIGNED_INT && (s = e.RG32UI), i === e.BYTE && (s = e.RG8I), i === e.SHORT && (s = e.RG16I), i === e.INT && (s = e.RG32I)), r === e.RGB_INTEGER && (i === e.UNSIGNED_BYTE && (s = e.RGB8UI), i === e.UNSIGNED_SHORT && (s = e.RGB16UI), i === e.UNSIGNED_INT && (s = e.RGB32UI), i === e.BYTE && (s = e.RGB8I), i === e.SHORT && (s = e.RGB16I), i === e.INT && (s = e.RGB32I)), r === e.RGBA_INTEGER && (i === e.UNSIGNED_BYTE && (s = e.RGBA8UI), i === e.UNSIGNED_SHORT && (s = e.RGBA16UI), i === e.UNSIGNED_INT && (s = e.RGBA32UI), i === e.BYTE && (s = e.RGBA8I), i === e.SHORT && (s = e.RGBA16I), i === e.INT && (s = e.RGBA32I)), r === e.RGB && (i === e.UNSIGNED_INT_5_9_9_9_REV && (s = e.RGB9_E5), i === e.UNSIGNED_INT_10F_11F_11F_REV && (s = e.R11F_G11F_B10F)), r === e.RGBA) {
3764
+ let t = o ? C : O.getTransfer(a);
3765
+ i === e.FLOAT && (s = e.RGBA32F), i === e.HALF_FLOAT && (s = e.RGBA16F), i === e.UNSIGNED_BYTE && (s = t === "srgb" ? e.SRGB8_ALPHA8 : e.RGBA8), i === e.UNSIGNED_SHORT_4_4_4_4 && (s = e.RGBA4), i === e.UNSIGNED_SHORT_5_5_5_1 && (s = e.RGB5_A1);
3766
3766
  }
3767
- return (s === t.R16F || s === t.R32F || s === t.RG16F || s === t.RG32F || s === t.RGBA16F || s === t.RGBA32F) && n.get("EXT_color_buffer_float"), s;
3767
+ return (s === e.R16F || s === e.R32F || s === e.RG16F || s === e.RG32F || s === e.RGBA16F || s === e.RGBA32F) && t.get("EXT_color_buffer_float"), s;
3768
3768
  }
3769
- function ee(e, n) {
3769
+ function T(t, n) {
3770
3770
  let r;
3771
- return e ? n === null || n === 1014 || n === 1020 ? r = t.DEPTH24_STENCIL8 : n === 1015 ? r = t.DEPTH32F_STENCIL8 : n === 1012 && (r = t.DEPTH24_STENCIL8, W("DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.")) : n === null || n === 1014 || n === 1020 ? r = t.DEPTH_COMPONENT24 : n === 1015 ? r = t.DEPTH_COMPONENT32F : n === 1012 && (r = t.DEPTH_COMPONENT16), r;
3771
+ return t ? n === null || n === 1014 || n === 1020 ? r = e.DEPTH24_STENCIL8 : n === 1015 ? r = e.DEPTH32F_STENCIL8 : n === 1012 && (r = e.DEPTH24_STENCIL8, j("DepthTexture: 16 bit depth attachment is not supported with stencil. Using 24-bit attachment.")) : n === null || n === 1014 || n === 1020 ? r = e.DEPTH_COMPONENT24 : n === 1015 ? r = e.DEPTH_COMPONENT32F : n === 1012 && (r = e.DEPTH_COMPONENT16), r;
3772
3772
  }
3773
- function te(e, t) {
3774
- return S(e) === !0 || e.isFramebufferTexture && e.minFilter !== 1003 && e.minFilter !== 1006 ? Math.log2(Math.max(t.width, t.height)) + 1 : e.mipmaps !== void 0 && e.mipmaps.length > 0 ? e.mipmaps.length : e.isCompressedTexture && Array.isArray(e.image) ? t.mipmaps.length : 1;
3773
+ function E(e, t) {
3774
+ return v(e) === !0 || e.isFramebufferTexture && e.minFilter !== 1003 && e.minFilter !== 1006 ? Math.log2(Math.max(t.width, t.height)) + 1 : e.mipmaps !== void 0 && e.mipmaps.length > 0 ? e.mipmaps.length : e.isCompressedTexture && Array.isArray(e.image) ? t.mipmaps.length : 1;
3775
3775
  }
3776
- function k(e) {
3776
+ function D(e) {
3777
3777
  let t = e.target;
3778
- t.removeEventListener("dispose", k), j(t), t.isVideoTexture && m.delete(t);
3778
+ t.removeEventListener("dispose", D), A(t), t.isVideoTexture && d.delete(t);
3779
3779
  }
3780
- function A(e) {
3780
+ function k(e) {
3781
3781
  let t = e.target;
3782
- t.removeEventListener("dispose", A), ne(t);
3782
+ t.removeEventListener("dispose", k), te(t);
3783
3783
  }
3784
- function j(e) {
3785
- let t = a.get(e);
3784
+ function A(e) {
3785
+ let t = r.get(e);
3786
3786
  if (t.__webglInit === void 0) return;
3787
- let n = e.source, r = g.get(n);
3788
- if (r) {
3789
- let i = r[t.__cacheKey];
3790
- i.usedTimes--, i.usedTimes === 0 && M(e), Object.keys(r).length === 0 && g.delete(n);
3787
+ let n = e.source, i = p.get(n);
3788
+ if (i) {
3789
+ let r = i[t.__cacheKey];
3790
+ r.usedTimes--, r.usedTimes === 0 && M(e), Object.keys(i).length === 0 && p.delete(n);
3791
3791
  }
3792
- a.remove(e);
3793
- }
3794
- function M(e) {
3795
- let n = a.get(e);
3796
- t.deleteTexture(n.__webglTexture);
3797
- let r = e.source, i = g.get(r);
3798
- delete i[n.__cacheKey], l.memory.textures--;
3799
- }
3800
- function ne(e) {
3801
- let n = a.get(e);
3802
- if (e.depthTexture && (e.depthTexture.dispose(), a.remove(e.depthTexture)), e.isWebGLCubeRenderTarget) for (let e = 0; e < 6; e++) {
3803
- if (Array.isArray(n.__webglFramebuffer[e])) for (let r = 0; r < n.__webglFramebuffer[e].length; r++) t.deleteFramebuffer(n.__webglFramebuffer[e][r]);
3804
- else t.deleteFramebuffer(n.__webglFramebuffer[e]);
3805
- n.__webglDepthbuffer && t.deleteRenderbuffer(n.__webglDepthbuffer[e]);
3792
+ r.remove(e);
3793
+ }
3794
+ function M(t) {
3795
+ let n = r.get(t);
3796
+ e.deleteTexture(n.__webglTexture);
3797
+ let i = t.source, a = p.get(i);
3798
+ delete a[n.__cacheKey], o.memory.textures--;
3799
+ }
3800
+ function te(t) {
3801
+ let n = r.get(t);
3802
+ if (t.depthTexture && (t.depthTexture.dispose(), r.remove(t.depthTexture)), t.isWebGLCubeRenderTarget) for (let t = 0; t < 6; t++) {
3803
+ if (Array.isArray(n.__webglFramebuffer[t])) for (let r = 0; r < n.__webglFramebuffer[t].length; r++) e.deleteFramebuffer(n.__webglFramebuffer[t][r]);
3804
+ else e.deleteFramebuffer(n.__webglFramebuffer[t]);
3805
+ n.__webglDepthbuffer && e.deleteRenderbuffer(n.__webglDepthbuffer[t]);
3806
3806
  }
3807
3807
  else {
3808
- if (Array.isArray(n.__webglFramebuffer)) for (let e = 0; e < n.__webglFramebuffer.length; e++) t.deleteFramebuffer(n.__webglFramebuffer[e]);
3809
- else t.deleteFramebuffer(n.__webglFramebuffer);
3810
- if (n.__webglDepthbuffer && t.deleteRenderbuffer(n.__webglDepthbuffer), n.__webglMultisampledFramebuffer && t.deleteFramebuffer(n.__webglMultisampledFramebuffer), n.__webglColorRenderbuffer) for (let e = 0; e < n.__webglColorRenderbuffer.length; e++) n.__webglColorRenderbuffer[e] && t.deleteRenderbuffer(n.__webglColorRenderbuffer[e]);
3811
- n.__webglDepthRenderbuffer && t.deleteRenderbuffer(n.__webglDepthRenderbuffer);
3808
+ if (Array.isArray(n.__webglFramebuffer)) for (let t = 0; t < n.__webglFramebuffer.length; t++) e.deleteFramebuffer(n.__webglFramebuffer[t]);
3809
+ else e.deleteFramebuffer(n.__webglFramebuffer);
3810
+ if (n.__webglDepthbuffer && e.deleteRenderbuffer(n.__webglDepthbuffer), n.__webglMultisampledFramebuffer && e.deleteFramebuffer(n.__webglMultisampledFramebuffer), n.__webglColorRenderbuffer) for (let t = 0; t < n.__webglColorRenderbuffer.length; t++) n.__webglColorRenderbuffer[t] && e.deleteRenderbuffer(n.__webglColorRenderbuffer[t]);
3811
+ n.__webglDepthRenderbuffer && e.deleteRenderbuffer(n.__webglDepthRenderbuffer);
3812
3812
  }
3813
- let r = e.textures;
3814
- for (let e = 0, n = r.length; e < n; e++) {
3815
- let n = a.get(r[e]);
3816
- n.__webglTexture && (t.deleteTexture(n.__webglTexture), l.memory.textures--), a.remove(r[e]);
3813
+ let i = t.textures;
3814
+ for (let t = 0, n = i.length; t < n; t++) {
3815
+ let n = r.get(i[t]);
3816
+ n.__webglTexture && (e.deleteTexture(n.__webglTexture), o.memory.textures--), r.remove(i[t]);
3817
3817
  }
3818
- a.remove(e);
3818
+ r.remove(t);
3819
3819
  }
3820
- let N = 0;
3821
- function P() {
3822
- N = 0;
3820
+ let P = 0;
3821
+ function ne() {
3822
+ P = 0;
3823
3823
  }
3824
- function re() {
3825
- let e = N;
3826
- return e >= o.maxTextures && W("WebGLTextures: Trying to use " + e + " texture units while this GPU supports only " + o.maxTextures), N += 1, e;
3824
+ function F() {
3825
+ let e = P;
3826
+ return e >= i.maxTextures && j("WebGLTextures: Trying to use " + e + " texture units while this GPU supports only " + i.maxTextures), P += 1, e;
3827
3827
  }
3828
3828
  function I(e) {
3829
3829
  let t = [];
3830
3830
  return t.push(e.wrapS), t.push(e.wrapT), t.push(e.wrapR || 0), t.push(e.magFilter), t.push(e.minFilter), t.push(e.anisotropy), t.push(e.internalFormat), t.push(e.format), t.push(e.type), t.push(e.generateMipmaps), t.push(e.premultiplyAlpha), t.push(e.flipY), t.push(e.unpackAlignment), t.push(e.colorSpace), t.join();
3831
3831
  }
3832
- function ie(e, n) {
3833
- let i = a.get(e);
3834
- if (e.isVideoTexture && De(e), e.isRenderTargetTexture === !1 && e.isExternalTexture !== !0 && e.version > 0 && i.__version !== e.version) {
3835
- let t = e.image;
3836
- if (t === null) W("WebGLRenderer: Texture marked for update but no image data found.");
3837
- else if (t.complete === !1) W("WebGLRenderer: Texture marked for update but image is incomplete");
3832
+ function re(t, i) {
3833
+ let a = r.get(t);
3834
+ if (t.isVideoTexture && Te(t), t.isRenderTargetTexture === !1 && t.isExternalTexture !== !0 && t.version > 0 && a.__version !== t.version) {
3835
+ let e = t.image;
3836
+ if (e === null) j("WebGLRenderer: Texture marked for update but no image data found.");
3837
+ else if (e.complete === !1) j("WebGLRenderer: Texture marked for update but image is incomplete");
3838
3838
  else {
3839
- fe(i, e, n);
3839
+ fe(a, t, i);
3840
3840
  return;
3841
3841
  }
3842
- } else e.isExternalTexture && (i.__webglTexture = e.sourceTexture ? e.sourceTexture : null);
3843
- r.bindTexture(t.TEXTURE_2D, i.__webglTexture, t.TEXTURE0 + n);
3842
+ } else t.isExternalTexture && (a.__webglTexture = t.sourceTexture ? t.sourceTexture : null);
3843
+ n.bindTexture(e.TEXTURE_2D, a.__webglTexture, e.TEXTURE0 + i);
3844
3844
  }
3845
- function L(e, n) {
3846
- let i = a.get(e);
3847
- if (e.isRenderTargetTexture === !1 && e.version > 0 && i.__version !== e.version) {
3848
- fe(i, e, n);
3845
+ function z(t, i) {
3846
+ let a = r.get(t);
3847
+ if (t.isRenderTargetTexture === !1 && t.version > 0 && a.__version !== t.version) {
3848
+ fe(a, t, i);
3849
3849
  return;
3850
- } else e.isExternalTexture && (i.__webglTexture = e.sourceTexture ? e.sourceTexture : null);
3851
- r.bindTexture(t.TEXTURE_2D_ARRAY, i.__webglTexture, t.TEXTURE0 + n);
3850
+ } else t.isExternalTexture && (a.__webglTexture = t.sourceTexture ? t.sourceTexture : null);
3851
+ n.bindTexture(e.TEXTURE_2D_ARRAY, a.__webglTexture, e.TEXTURE0 + i);
3852
3852
  }
3853
- function ae(e, n) {
3854
- let i = a.get(e);
3855
- if (e.isRenderTargetTexture === !1 && e.version > 0 && i.__version !== e.version) {
3856
- fe(i, e, n);
3853
+ function ie(t, i) {
3854
+ let a = r.get(t);
3855
+ if (t.isRenderTargetTexture === !1 && t.version > 0 && a.__version !== t.version) {
3856
+ fe(a, t, i);
3857
3857
  return;
3858
3858
  }
3859
- r.bindTexture(t.TEXTURE_3D, i.__webglTexture, t.TEXTURE0 + n);
3859
+ n.bindTexture(e.TEXTURE_3D, a.__webglTexture, e.TEXTURE0 + i);
3860
3860
  }
3861
- function R(e, n) {
3862
- let i = a.get(e);
3863
- if (e.isCubeDepthTexture !== !0 && e.version > 0 && i.__version !== e.version) {
3864
- pe(i, e, n);
3861
+ function ae(t, i) {
3862
+ let a = r.get(t);
3863
+ if (t.isCubeDepthTexture !== !0 && t.version > 0 && a.__version !== t.version) {
3864
+ pe(a, t, i);
3865
3865
  return;
3866
3866
  }
3867
- r.bindTexture(t.TEXTURE_CUBE_MAP, i.__webglTexture, t.TEXTURE0 + n);
3868
- }
3869
- let z = {
3870
- [e]: t.REPEAT,
3871
- [xe]: t.CLAMP_TO_EDGE,
3872
- [p]: t.MIRRORED_REPEAT
3873
- }, oe = {
3874
- [C]: t.NEAREST,
3875
- [y]: t.NEAREST_MIPMAP_NEAREST,
3876
- [Ee]: t.NEAREST_MIPMAP_LINEAR,
3877
- [F]: t.LINEAR,
3878
- [Ne]: t.LINEAR_MIPMAP_NEAREST,
3879
- [i]: t.LINEAR_MIPMAP_LINEAR
3880
- }, ce = {
3881
- 512: t.NEVER,
3882
- 519: t.ALWAYS,
3883
- 513: t.LESS,
3884
- 515: t.LEQUAL,
3885
- 514: t.EQUAL,
3886
- 518: t.GEQUAL,
3887
- 516: t.GREATER,
3888
- 517: t.NOTEQUAL
3867
+ n.bindTexture(e.TEXTURE_CUBE_MAP, a.__webglTexture, e.TEXTURE0 + i);
3868
+ }
3869
+ let oe = {
3870
+ [se]: e.REPEAT,
3871
+ [Ae]: e.CLAMP_TO_EDGE,
3872
+ [De]: e.MIRRORED_REPEAT
3873
+ }, B = {
3874
+ [Ne]: e.NEAREST,
3875
+ [je]: e.NEAREST_MIPMAP_NEAREST,
3876
+ [R]: e.NEAREST_MIPMAP_LINEAR,
3877
+ [_]: e.LINEAR,
3878
+ [N]: e.LINEAR_MIPMAP_NEAREST,
3879
+ [ee]: e.LINEAR_MIPMAP_LINEAR
3880
+ }, V = {
3881
+ 512: e.NEVER,
3882
+ 519: e.ALWAYS,
3883
+ 513: e.LESS,
3884
+ 515: e.LEQUAL,
3885
+ 514: e.EQUAL,
3886
+ 518: e.GEQUAL,
3887
+ 516: e.GREATER,
3888
+ 517: e.NOTEQUAL
3889
3889
  };
3890
- function B(e, r) {
3891
- if (r.type === 1015 && n.has("OES_texture_float_linear") === !1 && (r.magFilter === 1006 || r.magFilter === 1007 || r.magFilter === 1005 || r.magFilter === 1008 || r.minFilter === 1006 || r.minFilter === 1007 || r.minFilter === 1005 || r.minFilter === 1008) && W("WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device."), t.texParameteri(e, t.TEXTURE_WRAP_S, z[r.wrapS]), t.texParameteri(e, t.TEXTURE_WRAP_T, z[r.wrapT]), (e === t.TEXTURE_3D || e === t.TEXTURE_2D_ARRAY) && t.texParameteri(e, t.TEXTURE_WRAP_R, z[r.wrapR]), t.texParameteri(e, t.TEXTURE_MAG_FILTER, oe[r.magFilter]), t.texParameteri(e, t.TEXTURE_MIN_FILTER, oe[r.minFilter]), r.compareFunction && (t.texParameteri(e, t.TEXTURE_COMPARE_MODE, t.COMPARE_REF_TO_TEXTURE), t.texParameteri(e, t.TEXTURE_COMPARE_FUNC, ce[r.compareFunction])), n.has("EXT_texture_filter_anisotropic") === !0) {
3892
- if (r.magFilter === 1003 || r.minFilter !== 1005 && r.minFilter !== 1008 || r.type === 1015 && n.has("OES_texture_float_linear") === !1) return;
3893
- if (r.anisotropy > 1 || a.get(r).__currentAnisotropy) {
3894
- let i = n.get("EXT_texture_filter_anisotropic");
3895
- t.texParameterf(e, i.TEXTURE_MAX_ANISOTROPY_EXT, Math.min(r.anisotropy, o.getMaxAnisotropy())), a.get(r).__currentAnisotropy = r.anisotropy;
3890
+ function ce(n, a) {
3891
+ if (a.type === 1015 && t.has("OES_texture_float_linear") === !1 && (a.magFilter === 1006 || a.magFilter === 1007 || a.magFilter === 1005 || a.magFilter === 1008 || a.minFilter === 1006 || a.minFilter === 1007 || a.minFilter === 1005 || a.minFilter === 1008) && j("WebGLRenderer: Unable to use linear filtering with floating point textures. OES_texture_float_linear not supported on this device."), e.texParameteri(n, e.TEXTURE_WRAP_S, oe[a.wrapS]), e.texParameteri(n, e.TEXTURE_WRAP_T, oe[a.wrapT]), (n === e.TEXTURE_3D || n === e.TEXTURE_2D_ARRAY) && e.texParameteri(n, e.TEXTURE_WRAP_R, oe[a.wrapR]), e.texParameteri(n, e.TEXTURE_MAG_FILTER, B[a.magFilter]), e.texParameteri(n, e.TEXTURE_MIN_FILTER, B[a.minFilter]), a.compareFunction && (e.texParameteri(n, e.TEXTURE_COMPARE_MODE, e.COMPARE_REF_TO_TEXTURE), e.texParameteri(n, e.TEXTURE_COMPARE_FUNC, V[a.compareFunction])), t.has("EXT_texture_filter_anisotropic") === !0) {
3892
+ if (a.magFilter === 1003 || a.minFilter !== 1005 && a.minFilter !== 1008 || a.type === 1015 && t.has("OES_texture_float_linear") === !1) return;
3893
+ if (a.anisotropy > 1 || r.get(a).__currentAnisotropy) {
3894
+ let o = t.get("EXT_texture_filter_anisotropic");
3895
+ e.texParameterf(n, o.TEXTURE_MAX_ANISOTROPY_EXT, Math.min(a.anisotropy, i.getMaxAnisotropy())), r.get(a).__currentAnisotropy = a.anisotropy;
3896
3896
  }
3897
3897
  }
3898
3898
  }
3899
- function le(e, n) {
3899
+ function le(t, n) {
3900
3900
  let r = !1;
3901
- e.__webglInit === void 0 && (e.__webglInit = !0, n.addEventListener("dispose", k));
3902
- let i = n.source, a = g.get(i);
3903
- a === void 0 && (a = {}, g.set(i, a));
3904
- let o = I(n);
3905
- if (o !== e.__cacheKey) {
3906
- a[o] === void 0 && (a[o] = {
3907
- texture: t.createTexture(),
3901
+ t.__webglInit === void 0 && (t.__webglInit = !0, n.addEventListener("dispose", D));
3902
+ let i = n.source, a = p.get(i);
3903
+ a === void 0 && (a = {}, p.set(i, a));
3904
+ let s = I(n);
3905
+ if (s !== t.__cacheKey) {
3906
+ a[s] === void 0 && (a[s] = {
3907
+ texture: e.createTexture(),
3908
3908
  usedTimes: 0
3909
- }, l.memory.textures++, r = !0), a[o].usedTimes++;
3910
- let i = a[e.__cacheKey];
3911
- i !== void 0 && (a[e.__cacheKey].usedTimes--, i.usedTimes === 0 && M(n)), e.__cacheKey = o, e.__webglTexture = a[o].texture;
3909
+ }, o.memory.textures++, r = !0), a[s].usedTimes++;
3910
+ let i = a[t.__cacheKey];
3911
+ i !== void 0 && (a[t.__cacheKey].usedTimes--, i.usedTimes === 0 && M(n)), t.__cacheKey = s, t.__webglTexture = a[s].texture;
3912
3912
  }
3913
3913
  return r;
3914
3914
  }
3915
3915
  function ue(e, t, n) {
3916
3916
  return Math.floor(Math.floor(e / n) / t);
3917
3917
  }
3918
- function de(e, n, i, a) {
3919
- let o = e.updateRanges;
3920
- if (o.length === 0) r.texSubImage2D(t.TEXTURE_2D, 0, 0, 0, n.width, n.height, i, a, n.data);
3918
+ function de(t, r, i, a) {
3919
+ let o = t.updateRanges;
3920
+ if (o.length === 0) n.texSubImage2D(e.TEXTURE_2D, 0, 0, 0, r.width, r.height, i, a, r.data);
3921
3921
  else {
3922
3922
  o.sort((e, t) => e.start - t.start);
3923
3923
  let s = 0;
3924
3924
  for (let e = 1; e < o.length; e++) {
3925
- let t = o[s], r = o[e], i = t.start + t.count, a = ue(r.start, n.width, 4), c = ue(t.start, n.width, 4);
3926
- r.start <= i + 1 && a === c && ue(r.start + r.count - 1, n.width, 4) === a ? t.count = Math.max(t.count, r.start + r.count - t.start) : (++s, o[s] = r);
3925
+ let t = o[s], n = o[e], i = t.start + t.count, a = ue(n.start, r.width, 4), c = ue(t.start, r.width, 4);
3926
+ n.start <= i + 1 && a === c && ue(n.start + n.count - 1, r.width, 4) === a ? t.count = Math.max(t.count, n.start + n.count - t.start) : (++s, o[s] = n);
3927
3927
  }
3928
3928
  o.length = s + 1;
3929
- let c = t.getParameter(t.UNPACK_ROW_LENGTH), l = t.getParameter(t.UNPACK_SKIP_PIXELS), u = t.getParameter(t.UNPACK_SKIP_ROWS);
3930
- t.pixelStorei(t.UNPACK_ROW_LENGTH, n.width);
3931
- for (let e = 0, s = o.length; e < s; e++) {
3932
- let s = o[e], c = Math.floor(s.start / 4), l = Math.ceil(s.count / 4), u = c % n.width, d = Math.floor(c / n.width), f = l;
3933
- t.pixelStorei(t.UNPACK_SKIP_PIXELS, u), t.pixelStorei(t.UNPACK_SKIP_ROWS, d), r.texSubImage2D(t.TEXTURE_2D, 0, u, d, f, 1, i, a, n.data);
3929
+ let c = e.getParameter(e.UNPACK_ROW_LENGTH), l = e.getParameter(e.UNPACK_SKIP_PIXELS), u = e.getParameter(e.UNPACK_SKIP_ROWS);
3930
+ e.pixelStorei(e.UNPACK_ROW_LENGTH, r.width);
3931
+ for (let t = 0, s = o.length; t < s; t++) {
3932
+ let s = o[t], c = Math.floor(s.start / 4), l = Math.ceil(s.count / 4), u = c % r.width, d = Math.floor(c / r.width), f = l;
3933
+ e.pixelStorei(e.UNPACK_SKIP_PIXELS, u), e.pixelStorei(e.UNPACK_SKIP_ROWS, d), n.texSubImage2D(e.TEXTURE_2D, 0, u, d, f, 1, i, a, r.data);
3934
3934
  }
3935
- e.clearUpdateRanges(), t.pixelStorei(t.UNPACK_ROW_LENGTH, c), t.pixelStorei(t.UNPACK_SKIP_PIXELS, l), t.pixelStorei(t.UNPACK_SKIP_ROWS, u);
3935
+ t.clearUpdateRanges(), e.pixelStorei(e.UNPACK_ROW_LENGTH, c), e.pixelStorei(e.UNPACK_SKIP_PIXELS, l), e.pixelStorei(e.UNPACK_SKIP_ROWS, u);
3936
3936
  }
3937
3937
  }
3938
- function fe(e, n, i) {
3939
- let c = t.TEXTURE_2D;
3940
- (n.isDataArrayTexture || n.isCompressedArrayTexture) && (c = t.TEXTURE_2D_ARRAY), n.isData3DTexture && (c = t.TEXTURE_3D);
3941
- let l = le(e, n), u = n.source;
3942
- r.bindTexture(c, e.__webglTexture, t.TEXTURE0 + i);
3943
- let d = a.get(u);
3944
- if (u.version !== d.__version || l === !0) {
3945
- r.activeTexture(t.TEXTURE0 + i);
3946
- let e = V.getPrimaries(V.workingColorSpace), a = n.colorSpace === "" ? null : V.getPrimaries(n.colorSpace), f = n.colorSpace === "" || e === a ? t.NONE : t.BROWSER_DEFAULT_WEBGL;
3947
- t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL, n.flipY), t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL, n.premultiplyAlpha), t.pixelStorei(t.UNPACK_ALIGNMENT, n.unpackAlignment), t.pixelStorei(t.UNPACK_COLORSPACE_CONVERSION_WEBGL, f);
3948
- let p = x(n.image, !1, o.maxTextureSize);
3949
- p = Oe(n, p);
3950
- let m = s.convert(n.format, n.colorSpace), h = s.convert(n.type), g = O(n.internalFormat, m, h, n.colorSpace, n.isVideoTexture);
3951
- B(c, n);
3952
- let _, v = n.mipmaps, y = n.isVideoTexture !== !0, b = d.__version === void 0 || l === !0, C = u.dataReady, T = te(n, p);
3953
- if (n.isDepthTexture) g = ee(n.format === D, n.type), b && (y ? r.texStorage2D(t.TEXTURE_2D, 1, g, p.width, p.height) : r.texImage2D(t.TEXTURE_2D, 0, g, p.width, p.height, 0, m, h, null));
3954
- else if (n.isDataTexture) if (v.length > 0) {
3955
- y && b && r.texStorage2D(t.TEXTURE_2D, T, g, v[0].width, v[0].height);
3956
- for (let e = 0, n = v.length; e < n; e++) _ = v[e], y ? C && r.texSubImage2D(t.TEXTURE_2D, e, 0, 0, _.width, _.height, m, h, _.data) : r.texImage2D(t.TEXTURE_2D, e, g, _.width, _.height, 0, m, h, _.data);
3957
- n.generateMipmaps = !1;
3958
- } else y ? (b && r.texStorage2D(t.TEXTURE_2D, T, g, p.width, p.height), C && de(n, p, m, h)) : r.texImage2D(t.TEXTURE_2D, 0, g, p.width, p.height, 0, m, h, p.data);
3959
- else if (n.isCompressedTexture) if (n.isCompressedArrayTexture) {
3960
- y && b && r.texStorage3D(t.TEXTURE_2D_ARRAY, T, g, v[0].width, v[0].height, p.depth);
3961
- for (let e = 0, i = v.length; e < i; e++) if (_ = v[e], n.format !== 1023) if (m !== null) if (y) {
3962
- if (C) if (n.layerUpdates.size > 0) {
3963
- let i = se(_.width, _.height, n.format, n.type);
3964
- for (let a of n.layerUpdates) {
3965
- let n = _.data.subarray(a * i / _.data.BYTES_PER_ELEMENT, (a + 1) * i / _.data.BYTES_PER_ELEMENT);
3966
- r.compressedTexSubImage3D(t.TEXTURE_2D_ARRAY, e, 0, 0, a, _.width, _.height, 1, m, n);
3938
+ function fe(t, o, s) {
3939
+ let c = e.TEXTURE_2D;
3940
+ (o.isDataArrayTexture || o.isCompressedArrayTexture) && (c = e.TEXTURE_2D_ARRAY), o.isData3DTexture && (c = e.TEXTURE_3D);
3941
+ let u = le(t, o), d = o.source;
3942
+ n.bindTexture(c, t.__webglTexture, e.TEXTURE0 + s);
3943
+ let f = r.get(d);
3944
+ if (d.version !== f.__version || u === !0) {
3945
+ n.activeTexture(e.TEXTURE0 + s);
3946
+ let t = O.getPrimaries(O.workingColorSpace), r = o.colorSpace === "" ? null : O.getPrimaries(o.colorSpace), p = o.colorSpace === "" || t === r ? e.NONE : e.BROWSER_DEFAULT_WEBGL;
3947
+ e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL, o.flipY), e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL, o.premultiplyAlpha), e.pixelStorei(e.UNPACK_ALIGNMENT, o.unpackAlignment), e.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL, p);
3948
+ let m = g(o.image, !1, i.maxTextureSize);
3949
+ m = Ee(o, m);
3950
+ let h = a.convert(o.format, o.colorSpace), _ = a.convert(o.type), y = w(o.internalFormat, h, _, o.colorSpace, o.isVideoTexture);
3951
+ ce(c, o);
3952
+ let x, S = o.mipmaps, C = o.isVideoTexture !== !0, D = f.__version === void 0 || u === !0, k = d.dataReady, A = E(o, m);
3953
+ if (o.isDepthTexture) y = T(o.format === ye, o.type), D && (C ? n.texStorage2D(e.TEXTURE_2D, 1, y, m.width, m.height) : n.texImage2D(e.TEXTURE_2D, 0, y, m.width, m.height, 0, h, _, null));
3954
+ else if (o.isDataTexture) if (S.length > 0) {
3955
+ C && D && n.texStorage2D(e.TEXTURE_2D, A, y, S[0].width, S[0].height);
3956
+ for (let t = 0, r = S.length; t < r; t++) x = S[t], C ? k && n.texSubImage2D(e.TEXTURE_2D, t, 0, 0, x.width, x.height, h, _, x.data) : n.texImage2D(e.TEXTURE_2D, t, y, x.width, x.height, 0, h, _, x.data);
3957
+ o.generateMipmaps = !1;
3958
+ } else C ? (D && n.texStorage2D(e.TEXTURE_2D, A, y, m.width, m.height), k && de(o, m, h, _)) : n.texImage2D(e.TEXTURE_2D, 0, y, m.width, m.height, 0, h, _, m.data);
3959
+ else if (o.isCompressedTexture) if (o.isCompressedArrayTexture) {
3960
+ C && D && n.texStorage3D(e.TEXTURE_2D_ARRAY, A, y, S[0].width, S[0].height, m.depth);
3961
+ for (let t = 0, r = S.length; t < r; t++) if (x = S[t], o.format !== 1023) if (h !== null) if (C) {
3962
+ if (k) if (o.layerUpdates.size > 0) {
3963
+ let r = l(x.width, x.height, o.format, o.type);
3964
+ for (let i of o.layerUpdates) {
3965
+ let a = x.data.subarray(i * r / x.data.BYTES_PER_ELEMENT, (i + 1) * r / x.data.BYTES_PER_ELEMENT);
3966
+ n.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY, t, 0, 0, i, x.width, x.height, 1, h, a);
3967
3967
  }
3968
- n.clearLayerUpdates();
3969
- } else r.compressedTexSubImage3D(t.TEXTURE_2D_ARRAY, e, 0, 0, 0, _.width, _.height, p.depth, m, _.data);
3970
- } else r.compressedTexImage3D(t.TEXTURE_2D_ARRAY, e, g, _.width, _.height, p.depth, 0, _.data, 0, 0);
3971
- else W("WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()");
3972
- else y ? C && r.texSubImage3D(t.TEXTURE_2D_ARRAY, e, 0, 0, 0, _.width, _.height, p.depth, m, h, _.data) : r.texImage3D(t.TEXTURE_2D_ARRAY, e, g, _.width, _.height, p.depth, 0, m, h, _.data);
3968
+ o.clearLayerUpdates();
3969
+ } else n.compressedTexSubImage3D(e.TEXTURE_2D_ARRAY, t, 0, 0, 0, x.width, x.height, m.depth, h, x.data);
3970
+ } else n.compressedTexImage3D(e.TEXTURE_2D_ARRAY, t, y, x.width, x.height, m.depth, 0, x.data, 0, 0);
3971
+ else j("WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()");
3972
+ else C ? k && n.texSubImage3D(e.TEXTURE_2D_ARRAY, t, 0, 0, 0, x.width, x.height, m.depth, h, _, x.data) : n.texImage3D(e.TEXTURE_2D_ARRAY, t, y, x.width, x.height, m.depth, 0, h, _, x.data);
3973
3973
  } else {
3974
- y && b && r.texStorage2D(t.TEXTURE_2D, T, g, v[0].width, v[0].height);
3975
- for (let e = 0, i = v.length; e < i; e++) _ = v[e], n.format === 1023 ? y ? C && r.texSubImage2D(t.TEXTURE_2D, e, 0, 0, _.width, _.height, m, h, _.data) : r.texImage2D(t.TEXTURE_2D, e, g, _.width, _.height, 0, m, h, _.data) : m === null ? W("WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()") : y ? C && r.compressedTexSubImage2D(t.TEXTURE_2D, e, 0, 0, _.width, _.height, m, _.data) : r.compressedTexImage2D(t.TEXTURE_2D, e, g, _.width, _.height, 0, _.data);
3974
+ C && D && n.texStorage2D(e.TEXTURE_2D, A, y, S[0].width, S[0].height);
3975
+ for (let t = 0, r = S.length; t < r; t++) x = S[t], o.format === 1023 ? C ? k && n.texSubImage2D(e.TEXTURE_2D, t, 0, 0, x.width, x.height, h, _, x.data) : n.texImage2D(e.TEXTURE_2D, t, y, x.width, x.height, 0, h, _, x.data) : h === null ? j("WebGLRenderer: Attempt to load unsupported compressed texture format in .uploadTexture()") : C ? k && n.compressedTexSubImage2D(e.TEXTURE_2D, t, 0, 0, x.width, x.height, h, x.data) : n.compressedTexImage2D(e.TEXTURE_2D, t, y, x.width, x.height, 0, x.data);
3976
3976
  }
3977
- else if (n.isDataArrayTexture) if (y) {
3978
- if (b && r.texStorage3D(t.TEXTURE_2D_ARRAY, T, g, p.width, p.height, p.depth), C) if (n.layerUpdates.size > 0) {
3979
- let e = se(p.width, p.height, n.format, n.type);
3980
- for (let i of n.layerUpdates) {
3981
- let n = p.data.subarray(i * e / p.data.BYTES_PER_ELEMENT, (i + 1) * e / p.data.BYTES_PER_ELEMENT);
3982
- r.texSubImage3D(t.TEXTURE_2D_ARRAY, 0, 0, 0, i, p.width, p.height, 1, m, h, n);
3977
+ else if (o.isDataArrayTexture) if (C) {
3978
+ if (D && n.texStorage3D(e.TEXTURE_2D_ARRAY, A, y, m.width, m.height, m.depth), k) if (o.layerUpdates.size > 0) {
3979
+ let t = l(m.width, m.height, o.format, o.type);
3980
+ for (let r of o.layerUpdates) {
3981
+ let i = m.data.subarray(r * t / m.data.BYTES_PER_ELEMENT, (r + 1) * t / m.data.BYTES_PER_ELEMENT);
3982
+ n.texSubImage3D(e.TEXTURE_2D_ARRAY, 0, 0, 0, r, m.width, m.height, 1, h, _, i);
3983
3983
  }
3984
- n.clearLayerUpdates();
3985
- } else r.texSubImage3D(t.TEXTURE_2D_ARRAY, 0, 0, 0, 0, p.width, p.height, p.depth, m, h, p.data);
3986
- } else r.texImage3D(t.TEXTURE_2D_ARRAY, 0, g, p.width, p.height, p.depth, 0, m, h, p.data);
3987
- else if (n.isData3DTexture) y ? (b && r.texStorage3D(t.TEXTURE_3D, T, g, p.width, p.height, p.depth), C && r.texSubImage3D(t.TEXTURE_3D, 0, 0, 0, 0, p.width, p.height, p.depth, m, h, p.data)) : r.texImage3D(t.TEXTURE_3D, 0, g, p.width, p.height, p.depth, 0, m, h, p.data);
3988
- else if (n.isFramebufferTexture) {
3989
- if (b) if (y) r.texStorage2D(t.TEXTURE_2D, T, g, p.width, p.height);
3984
+ o.clearLayerUpdates();
3985
+ } else n.texSubImage3D(e.TEXTURE_2D_ARRAY, 0, 0, 0, 0, m.width, m.height, m.depth, h, _, m.data);
3986
+ } else n.texImage3D(e.TEXTURE_2D_ARRAY, 0, y, m.width, m.height, m.depth, 0, h, _, m.data);
3987
+ else if (o.isData3DTexture) C ? (D && n.texStorage3D(e.TEXTURE_3D, A, y, m.width, m.height, m.depth), k && n.texSubImage3D(e.TEXTURE_3D, 0, 0, 0, 0, m.width, m.height, m.depth, h, _, m.data)) : n.texImage3D(e.TEXTURE_3D, 0, y, m.width, m.height, m.depth, 0, h, _, m.data);
3988
+ else if (o.isFramebufferTexture) {
3989
+ if (D) if (C) n.texStorage2D(e.TEXTURE_2D, A, y, m.width, m.height);
3990
3990
  else {
3991
- let e = p.width, n = p.height;
3992
- for (let i = 0; i < T; i++) r.texImage2D(t.TEXTURE_2D, i, g, e, n, 0, m, h, null), e >>= 1, n >>= 1;
3991
+ let t = m.width, r = m.height;
3992
+ for (let i = 0; i < A; i++) n.texImage2D(e.TEXTURE_2D, i, y, t, r, 0, h, _, null), t >>= 1, r >>= 1;
3993
3993
  }
3994
- } else if (v.length > 0) {
3995
- if (y && b) {
3996
- let e = ke(v[0]);
3997
- r.texStorage2D(t.TEXTURE_2D, T, g, e.width, e.height);
3994
+ } else if (S.length > 0) {
3995
+ if (C && D) {
3996
+ let t = Oe(S[0]);
3997
+ n.texStorage2D(e.TEXTURE_2D, A, y, t.width, t.height);
3998
3998
  }
3999
- for (let e = 0, n = v.length; e < n; e++) _ = v[e], y ? C && r.texSubImage2D(t.TEXTURE_2D, e, 0, 0, m, h, _) : r.texImage2D(t.TEXTURE_2D, e, g, m, h, _);
4000
- n.generateMipmaps = !1;
4001
- } else if (y) {
4002
- if (b) {
4003
- let e = ke(p);
4004
- r.texStorage2D(t.TEXTURE_2D, T, g, e.width, e.height);
3999
+ for (let t = 0, r = S.length; t < r; t++) x = S[t], C ? k && n.texSubImage2D(e.TEXTURE_2D, t, 0, 0, h, _, x) : n.texImage2D(e.TEXTURE_2D, t, y, h, _, x);
4000
+ o.generateMipmaps = !1;
4001
+ } else if (C) {
4002
+ if (D) {
4003
+ let t = Oe(m);
4004
+ n.texStorage2D(e.TEXTURE_2D, A, y, t.width, t.height);
4005
4005
  }
4006
- C && r.texSubImage2D(t.TEXTURE_2D, 0, 0, 0, m, h, p);
4007
- } else r.texImage2D(t.TEXTURE_2D, 0, g, m, h, p);
4008
- S(n) && w(c), d.__version = u.version, n.onUpdate && n.onUpdate(n);
4006
+ k && n.texSubImage2D(e.TEXTURE_2D, 0, 0, 0, h, _, m);
4007
+ } else n.texImage2D(e.TEXTURE_2D, 0, y, h, _, m);
4008
+ v(o) && b(c), f.__version = d.version, o.onUpdate && o.onUpdate(o);
4009
4009
  }
4010
- e.__version = n.version;
4010
+ t.__version = o.version;
4011
4011
  }
4012
- function pe(e, n, i) {
4013
- if (n.image.length !== 6) return;
4014
- let c = le(e, n), l = n.source;
4015
- r.bindTexture(t.TEXTURE_CUBE_MAP, e.__webglTexture, t.TEXTURE0 + i);
4016
- let u = a.get(l);
4012
+ function pe(t, o, s) {
4013
+ if (o.image.length !== 6) return;
4014
+ let c = le(t, o), l = o.source;
4015
+ n.bindTexture(e.TEXTURE_CUBE_MAP, t.__webglTexture, e.TEXTURE0 + s);
4016
+ let u = r.get(l);
4017
4017
  if (l.version !== u.__version || c === !0) {
4018
- r.activeTexture(t.TEXTURE0 + i);
4019
- let e = V.getPrimaries(V.workingColorSpace), a = n.colorSpace === "" ? null : V.getPrimaries(n.colorSpace), d = n.colorSpace === "" || e === a ? t.NONE : t.BROWSER_DEFAULT_WEBGL;
4020
- t.pixelStorei(t.UNPACK_FLIP_Y_WEBGL, n.flipY), t.pixelStorei(t.UNPACK_PREMULTIPLY_ALPHA_WEBGL, n.premultiplyAlpha), t.pixelStorei(t.UNPACK_ALIGNMENT, n.unpackAlignment), t.pixelStorei(t.UNPACK_COLORSPACE_CONVERSION_WEBGL, d);
4021
- let f = n.isCompressedTexture || n.image[0].isCompressedTexture, p = n.image[0] && n.image[0].isDataTexture, m = [];
4022
- for (let e = 0; e < 6; e++) !f && !p ? m[e] = x(n.image[e], !0, o.maxCubemapSize) : m[e] = p ? n.image[e].image : n.image[e], m[e] = Oe(n, m[e]);
4023
- let h = m[0], g = s.convert(n.format, n.colorSpace), _ = s.convert(n.type), v = O(n.internalFormat, g, _, n.colorSpace), y = n.isVideoTexture !== !0, b = u.__version === void 0 || c === !0, C = l.dataReady, T = te(n, h);
4024
- B(t.TEXTURE_CUBE_MAP, n);
4025
- let E;
4018
+ n.activeTexture(e.TEXTURE0 + s);
4019
+ let t = O.getPrimaries(O.workingColorSpace), r = o.colorSpace === "" ? null : O.getPrimaries(o.colorSpace), d = o.colorSpace === "" || t === r ? e.NONE : e.BROWSER_DEFAULT_WEBGL;
4020
+ e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL, o.flipY), e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL, o.premultiplyAlpha), e.pixelStorei(e.UNPACK_ALIGNMENT, o.unpackAlignment), e.pixelStorei(e.UNPACK_COLORSPACE_CONVERSION_WEBGL, d);
4021
+ let f = o.isCompressedTexture || o.image[0].isCompressedTexture, p = o.image[0] && o.image[0].isDataTexture, m = [];
4022
+ for (let e = 0; e < 6; e++) !f && !p ? m[e] = g(o.image[e], !0, i.maxCubemapSize) : m[e] = p ? o.image[e].image : o.image[e], m[e] = Ee(o, m[e]);
4023
+ let h = m[0], _ = a.convert(o.format, o.colorSpace), y = a.convert(o.type), x = w(o.internalFormat, _, y, o.colorSpace), S = o.isVideoTexture !== !0, C = u.__version === void 0 || c === !0, T = l.dataReady, D = E(o, h);
4024
+ ce(e.TEXTURE_CUBE_MAP, o);
4025
+ let k;
4026
4026
  if (f) {
4027
- y && b && r.texStorage2D(t.TEXTURE_CUBE_MAP, T, v, h.width, h.height);
4028
- for (let e = 0; e < 6; e++) {
4029
- E = m[e].mipmaps;
4030
- for (let i = 0; i < E.length; i++) {
4031
- let a = E[i];
4032
- n.format === 1023 ? y ? C && r.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + e, i, 0, 0, a.width, a.height, g, _, a.data) : r.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + e, i, v, a.width, a.height, 0, g, _, a.data) : g === null ? W("WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()") : y ? C && r.compressedTexSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + e, i, 0, 0, a.width, a.height, g, a.data) : r.compressedTexImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + e, i, v, a.width, a.height, 0, a.data);
4027
+ S && C && n.texStorage2D(e.TEXTURE_CUBE_MAP, D, x, h.width, h.height);
4028
+ for (let t = 0; t < 6; t++) {
4029
+ k = m[t].mipmaps;
4030
+ for (let r = 0; r < k.length; r++) {
4031
+ let i = k[r];
4032
+ o.format === 1023 ? S ? T && n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X + t, r, 0, 0, i.width, i.height, _, y, i.data) : n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X + t, r, x, i.width, i.height, 0, _, y, i.data) : _ === null ? j("WebGLRenderer: Attempt to load unsupported compressed texture format in .setTextureCube()") : S ? T && n.compressedTexSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X + t, r, 0, 0, i.width, i.height, _, i.data) : n.compressedTexImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X + t, r, x, i.width, i.height, 0, i.data);
4033
4033
  }
4034
4034
  }
4035
4035
  } else {
4036
- if (E = n.mipmaps, y && b) {
4037
- E.length > 0 && T++;
4038
- let e = ke(m[0]);
4039
- r.texStorage2D(t.TEXTURE_CUBE_MAP, T, v, e.width, e.height);
4036
+ if (k = o.mipmaps, S && C) {
4037
+ k.length > 0 && D++;
4038
+ let t = Oe(m[0]);
4039
+ n.texStorage2D(e.TEXTURE_CUBE_MAP, D, x, t.width, t.height);
4040
4040
  }
4041
- for (let e = 0; e < 6; e++) if (p) {
4042
- y ? C && r.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + e, 0, 0, 0, m[e].width, m[e].height, g, _, m[e].data) : r.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + e, 0, v, m[e].width, m[e].height, 0, g, _, m[e].data);
4043
- for (let n = 0; n < E.length; n++) {
4044
- let i = E[n].image[e].image;
4045
- y ? C && r.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + e, n + 1, 0, 0, i.width, i.height, g, _, i.data) : r.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + e, n + 1, v, i.width, i.height, 0, g, _, i.data);
4041
+ for (let t = 0; t < 6; t++) if (p) {
4042
+ S ? T && n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X + t, 0, 0, 0, m[t].width, m[t].height, _, y, m[t].data) : n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X + t, 0, x, m[t].width, m[t].height, 0, _, y, m[t].data);
4043
+ for (let r = 0; r < k.length; r++) {
4044
+ let i = k[r].image[t].image;
4045
+ S ? T && n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X + t, r + 1, 0, 0, i.width, i.height, _, y, i.data) : n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X + t, r + 1, x, i.width, i.height, 0, _, y, i.data);
4046
4046
  }
4047
4047
  } else {
4048
- y ? C && r.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + e, 0, 0, 0, g, _, m[e]) : r.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + e, 0, v, g, _, m[e]);
4049
- for (let n = 0; n < E.length; n++) {
4050
- let i = E[n];
4051
- y ? C && r.texSubImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + e, n + 1, 0, 0, g, _, i.image[e]) : r.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + e, n + 1, v, g, _, i.image[e]);
4048
+ S ? T && n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X + t, 0, 0, 0, _, y, m[t]) : n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X + t, 0, x, _, y, m[t]);
4049
+ for (let r = 0; r < k.length; r++) {
4050
+ let i = k[r];
4051
+ S ? T && n.texSubImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X + t, r + 1, 0, 0, _, y, i.image[t]) : n.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X + t, r + 1, x, _, y, i.image[t]);
4052
4052
  }
4053
4053
  }
4054
4054
  }
4055
- S(n) && w(t.TEXTURE_CUBE_MAP), u.__version = l.version, n.onUpdate && n.onUpdate(n);
4055
+ v(o) && b(e.TEXTURE_CUBE_MAP), u.__version = l.version, o.onUpdate && o.onUpdate(o);
4056
4056
  }
4057
- e.__version = n.version;
4057
+ t.__version = o.version;
4058
4058
  }
4059
- function H(e, n, i, o, c, l) {
4060
- let d = s.convert(i.format, i.colorSpace), f = s.convert(i.type), p = O(i.internalFormat, d, f, i.colorSpace), m = a.get(n), h = a.get(i);
4061
- if (h.__renderTarget = n, !m.__hasExternalTextures) {
4062
- let e = Math.max(1, n.width >> l), i = Math.max(1, n.height >> l);
4063
- c === t.TEXTURE_3D || c === t.TEXTURE_2D_ARRAY ? r.texImage3D(c, l, p, e, i, n.depth, 0, d, f, null) : r.texImage2D(c, l, p, e, i, 0, d, f, null);
4059
+ function me(t, i, o, c, l, u) {
4060
+ let d = a.convert(o.format, o.colorSpace), f = a.convert(o.type), p = w(o.internalFormat, d, f, o.colorSpace), m = r.get(i), h = r.get(o);
4061
+ if (h.__renderTarget = i, !m.__hasExternalTextures) {
4062
+ let t = Math.max(1, i.width >> u), r = Math.max(1, i.height >> u);
4063
+ l === e.TEXTURE_3D || l === e.TEXTURE_2D_ARRAY ? n.texImage3D(l, u, p, t, r, i.depth, 0, d, f, null) : n.texImage2D(l, u, p, t, r, 0, d, f, null);
4064
4064
  }
4065
- r.bindFramebuffer(t.FRAMEBUFFER, e), we(n) ? u.framebufferTexture2DMultisampleEXT(t.FRAMEBUFFER, o, c, h.__webglTexture, 0, Ce(n)) : (c === t.TEXTURE_2D || c >= t.TEXTURE_CUBE_MAP_POSITIVE_X && c <= t.TEXTURE_CUBE_MAP_NEGATIVE_Z) && t.framebufferTexture2D(t.FRAMEBUFFER, o, c, h.__webglTexture, l), r.bindFramebuffer(t.FRAMEBUFFER, null);
4065
+ n.bindFramebuffer(e.FRAMEBUFFER, t), we(i) ? s.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER, c, l, h.__webglTexture, 0, Ce(i)) : (l === e.TEXTURE_2D || l >= e.TEXTURE_CUBE_MAP_POSITIVE_X && l <= e.TEXTURE_CUBE_MAP_NEGATIVE_Z) && e.framebufferTexture2D(e.FRAMEBUFFER, c, l, h.__webglTexture, u), n.bindFramebuffer(e.FRAMEBUFFER, null);
4066
4066
  }
4067
- function me(e, n, r) {
4068
- if (t.bindRenderbuffer(t.RENDERBUFFER, e), n.depthBuffer) {
4069
- let i = n.depthTexture, a = i && i.isDepthTexture ? i.type : null, o = ee(n.stencilBuffer, a), s = n.stencilBuffer ? t.DEPTH_STENCIL_ATTACHMENT : t.DEPTH_ATTACHMENT;
4070
- we(n) ? u.renderbufferStorageMultisampleEXT(t.RENDERBUFFER, Ce(n), o, n.width, n.height) : r ? t.renderbufferStorageMultisample(t.RENDERBUFFER, Ce(n), o, n.width, n.height) : t.renderbufferStorage(t.RENDERBUFFER, o, n.width, n.height), t.framebufferRenderbuffer(t.FRAMEBUFFER, s, t.RENDERBUFFER, e);
4067
+ function he(t, n, r) {
4068
+ if (e.bindRenderbuffer(e.RENDERBUFFER, t), n.depthBuffer) {
4069
+ let i = n.depthTexture, a = i && i.isDepthTexture ? i.type : null, o = T(n.stencilBuffer, a), c = n.stencilBuffer ? e.DEPTH_STENCIL_ATTACHMENT : e.DEPTH_ATTACHMENT;
4070
+ we(n) ? s.renderbufferStorageMultisampleEXT(e.RENDERBUFFER, Ce(n), o, n.width, n.height) : r ? e.renderbufferStorageMultisample(e.RENDERBUFFER, Ce(n), o, n.width, n.height) : e.renderbufferStorage(e.RENDERBUFFER, o, n.width, n.height), e.framebufferRenderbuffer(e.FRAMEBUFFER, c, e.RENDERBUFFER, t);
4071
4071
  } else {
4072
- let e = n.textures;
4073
- for (let i = 0; i < e.length; i++) {
4074
- let a = e[i], o = s.convert(a.format, a.colorSpace), c = s.convert(a.type), l = O(a.internalFormat, o, c, a.colorSpace);
4075
- we(n) ? u.renderbufferStorageMultisampleEXT(t.RENDERBUFFER, Ce(n), l, n.width, n.height) : r ? t.renderbufferStorageMultisample(t.RENDERBUFFER, Ce(n), l, n.width, n.height) : t.renderbufferStorage(t.RENDERBUFFER, l, n.width, n.height);
4072
+ let t = n.textures;
4073
+ for (let i = 0; i < t.length; i++) {
4074
+ let o = t[i], c = a.convert(o.format, o.colorSpace), l = a.convert(o.type), u = w(o.internalFormat, c, l, o.colorSpace);
4075
+ we(n) ? s.renderbufferStorageMultisampleEXT(e.RENDERBUFFER, Ce(n), u, n.width, n.height) : r ? e.renderbufferStorageMultisample(e.RENDERBUFFER, Ce(n), u, n.width, n.height) : e.renderbufferStorage(e.RENDERBUFFER, u, n.width, n.height);
4076
4076
  }
4077
4077
  }
4078
- t.bindRenderbuffer(t.RENDERBUFFER, null);
4079
- }
4080
- function U(e, n, i) {
4081
- let o = n.isWebGLCubeRenderTarget === !0;
4082
- if (r.bindFramebuffer(t.FRAMEBUFFER, e), !(n.depthTexture && n.depthTexture.isDepthTexture)) throw Error("renderTarget.depthTexture must be an instance of THREE.DepthTexture");
4083
- let c = a.get(n.depthTexture);
4084
- if (c.__renderTarget = n, (!c.__webglTexture || n.depthTexture.image.width !== n.width || n.depthTexture.image.height !== n.height) && (n.depthTexture.image.width = n.width, n.depthTexture.image.height = n.height, n.depthTexture.needsUpdate = !0), o) {
4085
- if (c.__webglInit === void 0 && (c.__webglInit = !0, n.depthTexture.addEventListener("dispose", k)), c.__webglTexture === void 0) {
4086
- c.__webglTexture = t.createTexture(), r.bindTexture(t.TEXTURE_CUBE_MAP, c.__webglTexture), B(t.TEXTURE_CUBE_MAP, n.depthTexture);
4087
- let e = s.convert(n.depthTexture.format), i = s.convert(n.depthTexture.type), a;
4088
- n.depthTexture.format === 1026 ? a = t.DEPTH_COMPONENT24 : n.depthTexture.format === 1027 && (a = t.DEPTH24_STENCIL8);
4089
- for (let r = 0; r < 6; r++) t.texImage2D(t.TEXTURE_CUBE_MAP_POSITIVE_X + r, 0, a, n.width, n.height, 0, e, i, null);
4078
+ e.bindRenderbuffer(e.RENDERBUFFER, null);
4079
+ }
4080
+ function H(t, i, o) {
4081
+ let c = i.isWebGLCubeRenderTarget === !0;
4082
+ if (n.bindFramebuffer(e.FRAMEBUFFER, t), !(i.depthTexture && i.depthTexture.isDepthTexture)) throw Error("renderTarget.depthTexture must be an instance of THREE.DepthTexture");
4083
+ let l = r.get(i.depthTexture);
4084
+ if (l.__renderTarget = i, (!l.__webglTexture || i.depthTexture.image.width !== i.width || i.depthTexture.image.height !== i.height) && (i.depthTexture.image.width = i.width, i.depthTexture.image.height = i.height, i.depthTexture.needsUpdate = !0), c) {
4085
+ if (l.__webglInit === void 0 && (l.__webglInit = !0, i.depthTexture.addEventListener("dispose", D)), l.__webglTexture === void 0) {
4086
+ l.__webglTexture = e.createTexture(), n.bindTexture(e.TEXTURE_CUBE_MAP, l.__webglTexture), ce(e.TEXTURE_CUBE_MAP, i.depthTexture);
4087
+ let t = a.convert(i.depthTexture.format), r = a.convert(i.depthTexture.type), o;
4088
+ i.depthTexture.format === 1026 ? o = e.DEPTH_COMPONENT24 : i.depthTexture.format === 1027 && (o = e.DEPTH24_STENCIL8);
4089
+ for (let n = 0; n < 6; n++) e.texImage2D(e.TEXTURE_CUBE_MAP_POSITIVE_X + n, 0, o, i.width, i.height, 0, t, r, null);
4090
4090
  }
4091
- } else ie(n.depthTexture, 0);
4092
- let l = c.__webglTexture, d = Ce(n), f = o ? t.TEXTURE_CUBE_MAP_POSITIVE_X + i : t.TEXTURE_2D, p = n.depthTexture.format === 1027 ? t.DEPTH_STENCIL_ATTACHMENT : t.DEPTH_ATTACHMENT;
4093
- if (n.depthTexture.format === 1026) we(n) ? u.framebufferTexture2DMultisampleEXT(t.FRAMEBUFFER, p, f, l, 0, d) : t.framebufferTexture2D(t.FRAMEBUFFER, p, f, l, 0);
4094
- else if (n.depthTexture.format === 1027) we(n) ? u.framebufferTexture2DMultisampleEXT(t.FRAMEBUFFER, p, f, l, 0, d) : t.framebufferTexture2D(t.FRAMEBUFFER, p, f, l, 0);
4091
+ } else re(i.depthTexture, 0);
4092
+ let u = l.__webglTexture, d = Ce(i), f = c ? e.TEXTURE_CUBE_MAP_POSITIVE_X + o : e.TEXTURE_2D, p = i.depthTexture.format === 1027 ? e.DEPTH_STENCIL_ATTACHMENT : e.DEPTH_ATTACHMENT;
4093
+ if (i.depthTexture.format === 1026) we(i) ? s.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER, p, f, u, 0, d) : e.framebufferTexture2D(e.FRAMEBUFFER, p, f, u, 0);
4094
+ else if (i.depthTexture.format === 1027) we(i) ? s.framebufferTexture2DMultisampleEXT(e.FRAMEBUFFER, p, f, u, 0, d) : e.framebufferTexture2D(e.FRAMEBUFFER, p, f, u, 0);
4095
4095
  else throw Error("Unknown depthTexture format");
4096
4096
  }
4097
- function he(e) {
4098
- let n = a.get(e), i = e.isWebGLCubeRenderTarget === !0;
4099
- if (n.__boundDepthTexture !== e.depthTexture) {
4100
- let t = e.depthTexture;
4101
- if (n.__depthDisposeCallback && n.__depthDisposeCallback(), t) {
4102
- let e = () => {
4103
- delete n.__boundDepthTexture, delete n.__depthDisposeCallback, t.removeEventListener("dispose", e);
4097
+ function ge(t) {
4098
+ let i = r.get(t), a = t.isWebGLCubeRenderTarget === !0;
4099
+ if (i.__boundDepthTexture !== t.depthTexture) {
4100
+ let e = t.depthTexture;
4101
+ if (i.__depthDisposeCallback && i.__depthDisposeCallback(), e) {
4102
+ let t = () => {
4103
+ delete i.__boundDepthTexture, delete i.__depthDisposeCallback, e.removeEventListener("dispose", t);
4104
4104
  };
4105
- t.addEventListener("dispose", e), n.__depthDisposeCallback = e;
4105
+ e.addEventListener("dispose", t), i.__depthDisposeCallback = t;
4106
4106
  }
4107
- n.__boundDepthTexture = t;
4107
+ i.__boundDepthTexture = e;
4108
4108
  }
4109
- if (e.depthTexture && !n.__autoAllocateDepthBuffer) if (i) for (let t = 0; t < 6; t++) U(n.__webglFramebuffer[t], e, t);
4109
+ if (t.depthTexture && !i.__autoAllocateDepthBuffer) if (a) for (let e = 0; e < 6; e++) H(i.__webglFramebuffer[e], t, e);
4110
4110
  else {
4111
- let t = e.texture.mipmaps;
4112
- t && t.length > 0 ? U(n.__webglFramebuffer[0], e, 0) : U(n.__webglFramebuffer, e, 0);
4111
+ let e = t.texture.mipmaps;
4112
+ e && e.length > 0 ? H(i.__webglFramebuffer[0], t, 0) : H(i.__webglFramebuffer, t, 0);
4113
4113
  }
4114
- else if (i) {
4115
- n.__webglDepthbuffer = [];
4116
- for (let i = 0; i < 6; i++) if (r.bindFramebuffer(t.FRAMEBUFFER, n.__webglFramebuffer[i]), n.__webglDepthbuffer[i] === void 0) n.__webglDepthbuffer[i] = t.createRenderbuffer(), me(n.__webglDepthbuffer[i], e, !1);
4114
+ else if (a) {
4115
+ i.__webglDepthbuffer = [];
4116
+ for (let r = 0; r < 6; r++) if (n.bindFramebuffer(e.FRAMEBUFFER, i.__webglFramebuffer[r]), i.__webglDepthbuffer[r] === void 0) i.__webglDepthbuffer[r] = e.createRenderbuffer(), he(i.__webglDepthbuffer[r], t, !1);
4117
4117
  else {
4118
- let r = e.stencilBuffer ? t.DEPTH_STENCIL_ATTACHMENT : t.DEPTH_ATTACHMENT, a = n.__webglDepthbuffer[i];
4119
- t.bindRenderbuffer(t.RENDERBUFFER, a), t.framebufferRenderbuffer(t.FRAMEBUFFER, r, t.RENDERBUFFER, a);
4118
+ let n = t.stencilBuffer ? e.DEPTH_STENCIL_ATTACHMENT : e.DEPTH_ATTACHMENT, a = i.__webglDepthbuffer[r];
4119
+ e.bindRenderbuffer(e.RENDERBUFFER, a), e.framebufferRenderbuffer(e.FRAMEBUFFER, n, e.RENDERBUFFER, a);
4120
4120
  }
4121
4121
  } else {
4122
- let i = e.texture.mipmaps;
4123
- if (i && i.length > 0 ? r.bindFramebuffer(t.FRAMEBUFFER, n.__webglFramebuffer[0]) : r.bindFramebuffer(t.FRAMEBUFFER, n.__webglFramebuffer), n.__webglDepthbuffer === void 0) n.__webglDepthbuffer = t.createRenderbuffer(), me(n.__webglDepthbuffer, e, !1);
4122
+ let r = t.texture.mipmaps;
4123
+ if (r && r.length > 0 ? n.bindFramebuffer(e.FRAMEBUFFER, i.__webglFramebuffer[0]) : n.bindFramebuffer(e.FRAMEBUFFER, i.__webglFramebuffer), i.__webglDepthbuffer === void 0) i.__webglDepthbuffer = e.createRenderbuffer(), he(i.__webglDepthbuffer, t, !1);
4124
4124
  else {
4125
- let r = e.stencilBuffer ? t.DEPTH_STENCIL_ATTACHMENT : t.DEPTH_ATTACHMENT, i = n.__webglDepthbuffer;
4126
- t.bindRenderbuffer(t.RENDERBUFFER, i), t.framebufferRenderbuffer(t.FRAMEBUFFER, r, t.RENDERBUFFER, i);
4125
+ let n = t.stencilBuffer ? e.DEPTH_STENCIL_ATTACHMENT : e.DEPTH_ATTACHMENT, r = i.__webglDepthbuffer;
4126
+ e.bindRenderbuffer(e.RENDERBUFFER, r), e.framebufferRenderbuffer(e.FRAMEBUFFER, n, e.RENDERBUFFER, r);
4127
4127
  }
4128
4128
  }
4129
- r.bindFramebuffer(t.FRAMEBUFFER, null);
4130
- }
4131
- function ge(e, n, r) {
4132
- let i = a.get(e);
4133
- n !== void 0 && H(i.__webglFramebuffer, e, e.texture, t.COLOR_ATTACHMENT0, t.TEXTURE_2D, 0), r !== void 0 && he(e);
4134
- }
4135
- function _e(e) {
4136
- let n = e.texture, i = a.get(e), o = a.get(n);
4137
- e.addEventListener("dispose", A);
4138
- let c = e.textures, u = e.isWebGLCubeRenderTarget === !0, d = c.length > 1;
4139
- if (d || (o.__webglTexture === void 0 && (o.__webglTexture = t.createTexture()), o.__version = n.version, l.memory.textures++), u) {
4140
- i.__webglFramebuffer = [];
4141
- for (let e = 0; e < 6; e++) if (n.mipmaps && n.mipmaps.length > 0) {
4142
- i.__webglFramebuffer[e] = [];
4143
- for (let r = 0; r < n.mipmaps.length; r++) i.__webglFramebuffer[e][r] = t.createFramebuffer();
4144
- } else i.__webglFramebuffer[e] = t.createFramebuffer();
4129
+ n.bindFramebuffer(e.FRAMEBUFFER, null);
4130
+ }
4131
+ function _e(t, n, i) {
4132
+ let a = r.get(t);
4133
+ n !== void 0 && me(a.__webglFramebuffer, t, t.texture, e.COLOR_ATTACHMENT0, e.TEXTURE_2D, 0), i !== void 0 && ge(t);
4134
+ }
4135
+ function ve(t) {
4136
+ let i = t.texture, s = r.get(t), c = r.get(i);
4137
+ t.addEventListener("dispose", k);
4138
+ let l = t.textures, u = t.isWebGLCubeRenderTarget === !0, d = l.length > 1;
4139
+ if (d || (c.__webglTexture === void 0 && (c.__webglTexture = e.createTexture()), c.__version = i.version, o.memory.textures++), u) {
4140
+ s.__webglFramebuffer = [];
4141
+ for (let t = 0; t < 6; t++) if (i.mipmaps && i.mipmaps.length > 0) {
4142
+ s.__webglFramebuffer[t] = [];
4143
+ for (let n = 0; n < i.mipmaps.length; n++) s.__webglFramebuffer[t][n] = e.createFramebuffer();
4144
+ } else s.__webglFramebuffer[t] = e.createFramebuffer();
4145
4145
  } else {
4146
- if (n.mipmaps && n.mipmaps.length > 0) {
4147
- i.__webglFramebuffer = [];
4148
- for (let e = 0; e < n.mipmaps.length; e++) i.__webglFramebuffer[e] = t.createFramebuffer();
4149
- } else i.__webglFramebuffer = t.createFramebuffer();
4150
- if (d) for (let e = 0, n = c.length; e < n; e++) {
4151
- let n = a.get(c[e]);
4152
- n.__webglTexture === void 0 && (n.__webglTexture = t.createTexture(), l.memory.textures++);
4146
+ if (i.mipmaps && i.mipmaps.length > 0) {
4147
+ s.__webglFramebuffer = [];
4148
+ for (let t = 0; t < i.mipmaps.length; t++) s.__webglFramebuffer[t] = e.createFramebuffer();
4149
+ } else s.__webglFramebuffer = e.createFramebuffer();
4150
+ if (d) for (let t = 0, n = l.length; t < n; t++) {
4151
+ let n = r.get(l[t]);
4152
+ n.__webglTexture === void 0 && (n.__webglTexture = e.createTexture(), o.memory.textures++);
4153
4153
  }
4154
- if (e.samples > 0 && we(e) === !1) {
4155
- i.__webglMultisampledFramebuffer = t.createFramebuffer(), i.__webglColorRenderbuffer = [], r.bindFramebuffer(t.FRAMEBUFFER, i.__webglMultisampledFramebuffer);
4156
- for (let n = 0; n < c.length; n++) {
4157
- let r = c[n];
4158
- i.__webglColorRenderbuffer[n] = t.createRenderbuffer(), t.bindRenderbuffer(t.RENDERBUFFER, i.__webglColorRenderbuffer[n]);
4159
- let a = s.convert(r.format, r.colorSpace), o = s.convert(r.type), l = O(r.internalFormat, a, o, r.colorSpace, e.isXRRenderTarget === !0), u = Ce(e);
4160
- t.renderbufferStorageMultisample(t.RENDERBUFFER, u, l, e.width, e.height), t.framebufferRenderbuffer(t.FRAMEBUFFER, t.COLOR_ATTACHMENT0 + n, t.RENDERBUFFER, i.__webglColorRenderbuffer[n]);
4154
+ if (t.samples > 0 && we(t) === !1) {
4155
+ s.__webglMultisampledFramebuffer = e.createFramebuffer(), s.__webglColorRenderbuffer = [], n.bindFramebuffer(e.FRAMEBUFFER, s.__webglMultisampledFramebuffer);
4156
+ for (let n = 0; n < l.length; n++) {
4157
+ let r = l[n];
4158
+ s.__webglColorRenderbuffer[n] = e.createRenderbuffer(), e.bindRenderbuffer(e.RENDERBUFFER, s.__webglColorRenderbuffer[n]);
4159
+ let i = a.convert(r.format, r.colorSpace), o = a.convert(r.type), c = w(r.internalFormat, i, o, r.colorSpace, t.isXRRenderTarget === !0), u = Ce(t);
4160
+ e.renderbufferStorageMultisample(e.RENDERBUFFER, u, c, t.width, t.height), e.framebufferRenderbuffer(e.FRAMEBUFFER, e.COLOR_ATTACHMENT0 + n, e.RENDERBUFFER, s.__webglColorRenderbuffer[n]);
4161
4161
  }
4162
- t.bindRenderbuffer(t.RENDERBUFFER, null), e.depthBuffer && (i.__webglDepthRenderbuffer = t.createRenderbuffer(), me(i.__webglDepthRenderbuffer, e, !0)), r.bindFramebuffer(t.FRAMEBUFFER, null);
4162
+ e.bindRenderbuffer(e.RENDERBUFFER, null), t.depthBuffer && (s.__webglDepthRenderbuffer = e.createRenderbuffer(), he(s.__webglDepthRenderbuffer, t, !0)), n.bindFramebuffer(e.FRAMEBUFFER, null);
4163
4163
  }
4164
4164
  }
4165
4165
  if (u) {
4166
- r.bindTexture(t.TEXTURE_CUBE_MAP, o.__webglTexture), B(t.TEXTURE_CUBE_MAP, n);
4167
- for (let r = 0; r < 6; r++) if (n.mipmaps && n.mipmaps.length > 0) for (let a = 0; a < n.mipmaps.length; a++) H(i.__webglFramebuffer[r][a], e, n, t.COLOR_ATTACHMENT0, t.TEXTURE_CUBE_MAP_POSITIVE_X + r, a);
4168
- else H(i.__webglFramebuffer[r], e, n, t.COLOR_ATTACHMENT0, t.TEXTURE_CUBE_MAP_POSITIVE_X + r, 0);
4169
- S(n) && w(t.TEXTURE_CUBE_MAP), r.unbindTexture();
4166
+ n.bindTexture(e.TEXTURE_CUBE_MAP, c.__webglTexture), ce(e.TEXTURE_CUBE_MAP, i);
4167
+ for (let n = 0; n < 6; n++) if (i.mipmaps && i.mipmaps.length > 0) for (let r = 0; r < i.mipmaps.length; r++) me(s.__webglFramebuffer[n][r], t, i, e.COLOR_ATTACHMENT0, e.TEXTURE_CUBE_MAP_POSITIVE_X + n, r);
4168
+ else me(s.__webglFramebuffer[n], t, i, e.COLOR_ATTACHMENT0, e.TEXTURE_CUBE_MAP_POSITIVE_X + n, 0);
4169
+ v(i) && b(e.TEXTURE_CUBE_MAP), n.unbindTexture();
4170
4170
  } else if (d) {
4171
- for (let n = 0, o = c.length; n < o; n++) {
4172
- let o = c[n], s = a.get(o), l = t.TEXTURE_2D;
4173
- (e.isWebGL3DRenderTarget || e.isWebGLArrayRenderTarget) && (l = e.isWebGL3DRenderTarget ? t.TEXTURE_3D : t.TEXTURE_2D_ARRAY), r.bindTexture(l, s.__webglTexture), B(l, o), H(i.__webglFramebuffer, e, o, t.COLOR_ATTACHMENT0 + n, l, 0), S(o) && w(l);
4171
+ for (let i = 0, a = l.length; i < a; i++) {
4172
+ let a = l[i], o = r.get(a), c = e.TEXTURE_2D;
4173
+ (t.isWebGL3DRenderTarget || t.isWebGLArrayRenderTarget) && (c = t.isWebGL3DRenderTarget ? e.TEXTURE_3D : e.TEXTURE_2D_ARRAY), n.bindTexture(c, o.__webglTexture), ce(c, a), me(s.__webglFramebuffer, t, a, e.COLOR_ATTACHMENT0 + i, c, 0), v(a) && b(c);
4174
4174
  }
4175
- r.unbindTexture();
4175
+ n.unbindTexture();
4176
4176
  } else {
4177
- let a = t.TEXTURE_2D;
4178
- if ((e.isWebGL3DRenderTarget || e.isWebGLArrayRenderTarget) && (a = e.isWebGL3DRenderTarget ? t.TEXTURE_3D : t.TEXTURE_2D_ARRAY), r.bindTexture(a, o.__webglTexture), B(a, n), n.mipmaps && n.mipmaps.length > 0) for (let r = 0; r < n.mipmaps.length; r++) H(i.__webglFramebuffer[r], e, n, t.COLOR_ATTACHMENT0, a, r);
4179
- else H(i.__webglFramebuffer, e, n, t.COLOR_ATTACHMENT0, a, 0);
4180
- S(n) && w(a), r.unbindTexture();
4177
+ let r = e.TEXTURE_2D;
4178
+ if ((t.isWebGL3DRenderTarget || t.isWebGLArrayRenderTarget) && (r = t.isWebGL3DRenderTarget ? e.TEXTURE_3D : e.TEXTURE_2D_ARRAY), n.bindTexture(r, c.__webglTexture), ce(r, i), i.mipmaps && i.mipmaps.length > 0) for (let n = 0; n < i.mipmaps.length; n++) me(s.__webglFramebuffer[n], t, i, e.COLOR_ATTACHMENT0, r, n);
4179
+ else me(s.__webglFramebuffer, t, i, e.COLOR_ATTACHMENT0, r, 0);
4180
+ v(i) && b(r), n.unbindTexture();
4181
4181
  }
4182
- e.depthBuffer && he(e);
4182
+ t.depthBuffer && ge(t);
4183
4183
  }
4184
- function ve(e) {
4184
+ function be(e) {
4185
4185
  let t = e.textures;
4186
- for (let n = 0, i = t.length; n < i; n++) {
4187
- let i = t[n];
4188
- if (S(i)) {
4189
- let t = E(e), n = a.get(i).__webglTexture;
4190
- r.bindTexture(t, n), w(t), r.unbindTexture();
4186
+ for (let i = 0, a = t.length; i < a; i++) {
4187
+ let a = t[i];
4188
+ if (v(a)) {
4189
+ let t = x(e), i = r.get(a).__webglTexture;
4190
+ n.bindTexture(t, i), b(t), n.unbindTexture();
4191
4191
  }
4192
4192
  }
4193
4193
  }
4194
- let ye = [], be = [];
4195
- function Se(e) {
4196
- if (e.samples > 0) {
4197
- if (we(e) === !1) {
4198
- let n = e.textures, i = e.width, o = e.height, s = t.COLOR_BUFFER_BIT, c = e.stencilBuffer ? t.DEPTH_STENCIL_ATTACHMENT : t.DEPTH_ATTACHMENT, l = a.get(e), u = n.length > 1;
4199
- if (u) for (let e = 0; e < n.length; e++) r.bindFramebuffer(t.FRAMEBUFFER, l.__webglMultisampledFramebuffer), t.framebufferRenderbuffer(t.FRAMEBUFFER, t.COLOR_ATTACHMENT0 + e, t.RENDERBUFFER, null), r.bindFramebuffer(t.FRAMEBUFFER, l.__webglFramebuffer), t.framebufferTexture2D(t.DRAW_FRAMEBUFFER, t.COLOR_ATTACHMENT0 + e, t.TEXTURE_2D, null, 0);
4200
- r.bindFramebuffer(t.READ_FRAMEBUFFER, l.__webglMultisampledFramebuffer);
4201
- let f = e.texture.mipmaps;
4202
- f && f.length > 0 ? r.bindFramebuffer(t.DRAW_FRAMEBUFFER, l.__webglFramebuffer[0]) : r.bindFramebuffer(t.DRAW_FRAMEBUFFER, l.__webglFramebuffer);
4203
- for (let r = 0; r < n.length; r++) {
4204
- if (e.resolveDepthBuffer && (e.depthBuffer && (s |= t.DEPTH_BUFFER_BIT), e.stencilBuffer && e.resolveStencilBuffer && (s |= t.STENCIL_BUFFER_BIT)), u) {
4205
- t.framebufferRenderbuffer(t.READ_FRAMEBUFFER, t.COLOR_ATTACHMENT0, t.RENDERBUFFER, l.__webglColorRenderbuffer[r]);
4206
- let e = a.get(n[r]).__webglTexture;
4207
- t.framebufferTexture2D(t.DRAW_FRAMEBUFFER, t.COLOR_ATTACHMENT0, t.TEXTURE_2D, e, 0);
4194
+ let U = [], xe = [];
4195
+ function Se(t) {
4196
+ if (t.samples > 0) {
4197
+ if (we(t) === !1) {
4198
+ let i = t.textures, a = t.width, o = t.height, s = e.COLOR_BUFFER_BIT, l = t.stencilBuffer ? e.DEPTH_STENCIL_ATTACHMENT : e.DEPTH_ATTACHMENT, u = r.get(t), d = i.length > 1;
4199
+ if (d) for (let t = 0; t < i.length; t++) n.bindFramebuffer(e.FRAMEBUFFER, u.__webglMultisampledFramebuffer), e.framebufferRenderbuffer(e.FRAMEBUFFER, e.COLOR_ATTACHMENT0 + t, e.RENDERBUFFER, null), n.bindFramebuffer(e.FRAMEBUFFER, u.__webglFramebuffer), e.framebufferTexture2D(e.DRAW_FRAMEBUFFER, e.COLOR_ATTACHMENT0 + t, e.TEXTURE_2D, null, 0);
4200
+ n.bindFramebuffer(e.READ_FRAMEBUFFER, u.__webglMultisampledFramebuffer);
4201
+ let f = t.texture.mipmaps;
4202
+ f && f.length > 0 ? n.bindFramebuffer(e.DRAW_FRAMEBUFFER, u.__webglFramebuffer[0]) : n.bindFramebuffer(e.DRAW_FRAMEBUFFER, u.__webglFramebuffer);
4203
+ for (let n = 0; n < i.length; n++) {
4204
+ if (t.resolveDepthBuffer && (t.depthBuffer && (s |= e.DEPTH_BUFFER_BIT), t.stencilBuffer && t.resolveStencilBuffer && (s |= e.STENCIL_BUFFER_BIT)), d) {
4205
+ e.framebufferRenderbuffer(e.READ_FRAMEBUFFER, e.COLOR_ATTACHMENT0, e.RENDERBUFFER, u.__webglColorRenderbuffer[n]);
4206
+ let t = r.get(i[n]).__webglTexture;
4207
+ e.framebufferTexture2D(e.DRAW_FRAMEBUFFER, e.COLOR_ATTACHMENT0, e.TEXTURE_2D, t, 0);
4208
4208
  }
4209
- t.blitFramebuffer(0, 0, i, o, 0, 0, i, o, s, t.NEAREST), d === !0 && (ye.length = 0, be.length = 0, ye.push(t.COLOR_ATTACHMENT0 + r), e.depthBuffer && e.resolveDepthBuffer === !1 && (ye.push(c), be.push(c), t.invalidateFramebuffer(t.DRAW_FRAMEBUFFER, be)), t.invalidateFramebuffer(t.READ_FRAMEBUFFER, ye));
4209
+ e.blitFramebuffer(0, 0, a, o, 0, 0, a, o, s, e.NEAREST), c === !0 && (U.length = 0, xe.length = 0, U.push(e.COLOR_ATTACHMENT0 + n), t.depthBuffer && t.resolveDepthBuffer === !1 && (U.push(l), xe.push(l), e.invalidateFramebuffer(e.DRAW_FRAMEBUFFER, xe)), e.invalidateFramebuffer(e.READ_FRAMEBUFFER, U));
4210
4210
  }
4211
- if (r.bindFramebuffer(t.READ_FRAMEBUFFER, null), r.bindFramebuffer(t.DRAW_FRAMEBUFFER, null), u) for (let e = 0; e < n.length; e++) {
4212
- r.bindFramebuffer(t.FRAMEBUFFER, l.__webglMultisampledFramebuffer), t.framebufferRenderbuffer(t.FRAMEBUFFER, t.COLOR_ATTACHMENT0 + e, t.RENDERBUFFER, l.__webglColorRenderbuffer[e]);
4213
- let i = a.get(n[e]).__webglTexture;
4214
- r.bindFramebuffer(t.FRAMEBUFFER, l.__webglFramebuffer), t.framebufferTexture2D(t.DRAW_FRAMEBUFFER, t.COLOR_ATTACHMENT0 + e, t.TEXTURE_2D, i, 0);
4211
+ if (n.bindFramebuffer(e.READ_FRAMEBUFFER, null), n.bindFramebuffer(e.DRAW_FRAMEBUFFER, null), d) for (let t = 0; t < i.length; t++) {
4212
+ n.bindFramebuffer(e.FRAMEBUFFER, u.__webglMultisampledFramebuffer), e.framebufferRenderbuffer(e.FRAMEBUFFER, e.COLOR_ATTACHMENT0 + t, e.RENDERBUFFER, u.__webglColorRenderbuffer[t]);
4213
+ let a = r.get(i[t]).__webglTexture;
4214
+ n.bindFramebuffer(e.FRAMEBUFFER, u.__webglFramebuffer), e.framebufferTexture2D(e.DRAW_FRAMEBUFFER, e.COLOR_ATTACHMENT0 + t, e.TEXTURE_2D, a, 0);
4215
4215
  }
4216
- r.bindFramebuffer(t.DRAW_FRAMEBUFFER, l.__webglMultisampledFramebuffer);
4217
- } else if (e.depthBuffer && e.resolveDepthBuffer === !1 && d) {
4218
- let n = e.stencilBuffer ? t.DEPTH_STENCIL_ATTACHMENT : t.DEPTH_ATTACHMENT;
4219
- t.invalidateFramebuffer(t.DRAW_FRAMEBUFFER, [n]);
4216
+ n.bindFramebuffer(e.DRAW_FRAMEBUFFER, u.__webglMultisampledFramebuffer);
4217
+ } else if (t.depthBuffer && t.resolveDepthBuffer === !1 && c) {
4218
+ let n = t.stencilBuffer ? e.DEPTH_STENCIL_ATTACHMENT : e.DEPTH_ATTACHMENT;
4219
+ e.invalidateFramebuffer(e.DRAW_FRAMEBUFFER, [n]);
4220
4220
  }
4221
4221
  }
4222
4222
  }
4223
4223
  function Ce(e) {
4224
- return Math.min(o.maxSamples, e.samples);
4224
+ return Math.min(i.maxSamples, e.samples);
4225
4225
  }
4226
4226
  function we(e) {
4227
- let t = a.get(e);
4228
- return e.samples > 0 && n.has("WEBGL_multisampled_render_to_texture") === !0 && t.__useRenderToTexture !== !1;
4227
+ let n = r.get(e);
4228
+ return e.samples > 0 && t.has("WEBGL_multisampled_render_to_texture") === !0 && n.__useRenderToTexture !== !1;
4229
4229
  }
4230
- function De(e) {
4231
- let t = l.render.frame;
4232
- m.get(e) !== t && (m.set(e, t), e.update());
4230
+ function Te(e) {
4231
+ let t = o.render.frame;
4232
+ d.get(e) !== t && (d.set(e, t), e.update());
4233
4233
  }
4234
- function Oe(e, t) {
4234
+ function Ee(e, t) {
4235
4235
  let n = e.colorSpace, r = e.format, i = e.type;
4236
- return e.isCompressedTexture === !0 || e.isVideoTexture === !0 || n !== "srgb-linear" && n !== "" && (V.getTransfer(n) === "srgb" ? (r !== 1023 || i !== 1009) && W("WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType.") : v("WebGLTextures: Unsupported texture color space:", n)), t;
4236
+ return e.isCompressedTexture === !0 || e.isVideoTexture === !0 || n !== "srgb-linear" && n !== "" && (O.getTransfer(n) === "srgb" ? (r !== 1023 || i !== 1009) && j("WebGLTextures: sRGB encoded textures have to use RGBAFormat and UnsignedByteType.") : S("WebGLTextures: Unsupported texture color space:", n)), t;
4237
4237
  }
4238
- function ke(e) {
4239
- return typeof HTMLImageElement < "u" && e instanceof HTMLImageElement ? (f.width = e.naturalWidth || e.width, f.height = e.naturalHeight || e.height) : typeof VideoFrame < "u" && e instanceof VideoFrame ? (f.width = e.displayWidth, f.height = e.displayHeight) : (f.width = e.width, f.height = e.height), f;
4238
+ function Oe(e) {
4239
+ return typeof HTMLImageElement < "u" && e instanceof HTMLImageElement ? (u.width = e.naturalWidth || e.width, u.height = e.naturalHeight || e.height) : typeof VideoFrame < "u" && e instanceof VideoFrame ? (u.width = e.displayWidth, u.height = e.displayHeight) : (u.width = e.width, u.height = e.height), u;
4240
4240
  }
4241
- this.allocateTextureUnit = re, this.resetTextureUnits = P, this.setTexture2D = ie, this.setTexture2DArray = L, this.setTexture3D = ae, this.setTextureCube = R, this.rebindTextures = ge, this.setupRenderTarget = _e, this.updateRenderTargetMipmap = ve, this.updateMultisampleRenderTarget = Se, this.setupDepthRenderbuffer = he, this.setupFrameBufferTexture = H, this.useMultisampledRTT = we, this.isReversedDepthBuffer = function() {
4242
- return r.buffers.depth.getReversed();
4241
+ this.allocateTextureUnit = F, this.resetTextureUnits = ne, this.setTexture2D = re, this.setTexture2DArray = z, this.setTexture3D = ie, this.setTextureCube = ae, this.rebindTextures = _e, this.setupRenderTarget = ve, this.updateRenderTargetMipmap = be, this.updateMultisampleRenderTarget = Se, this.setupDepthRenderbuffer = ge, this.setupFrameBufferTexture = me, this.useMultisampledRTT = we, this.isReversedDepthBuffer = function() {
4242
+ return n.buffers.depth.getReversed();
4243
4243
  };
4244
4244
  }
4245
4245
  function Nr(e, t) {
4246
4246
  function n(n, r = "") {
4247
- let i, a = V.getTransfer(r);
4247
+ let i, a = O.getTransfer(r);
4248
4248
  if (n === 1009) return e.UNSIGNED_BYTE;
4249
4249
  if (n === 1017) return e.UNSIGNED_SHORT_4_4_4_4;
4250
4250
  if (n === 1018) return e.UNSIGNED_SHORT_5_5_5_1;
@@ -4330,13 +4330,13 @@ var Pr = "\nvoid main() {\n\n gl_Position = vec4( position, 1.0 );\n\n}", Fr = "
4330
4330
  }
4331
4331
  init(e, t) {
4332
4332
  if (this.texture === null) {
4333
- let n = new Pe(e.texture);
4333
+ let n = new be(e.texture);
4334
4334
  (e.depthNear !== t.depthNear || e.depthFar !== t.depthFar) && (this.depthNear = e.depthNear, this.depthFar = e.depthFar), this.texture = n;
4335
4335
  }
4336
4336
  }
4337
4337
  getMesh(e) {
4338
4338
  if (this.texture !== null && this.mesh === null) {
4339
- let t = e.cameras[0].viewport, n = new je({
4339
+ let t = e.cameras[0].viewport, n = new p({
4340
4340
  vertexShader: Pr,
4341
4341
  fragmentShader: Fr,
4342
4342
  uniforms: {
@@ -4345,7 +4345,7 @@ var Pr = "\nvoid main() {\n\n gl_Position = vec4( position, 1.0 );\n\n}", Fr = "
4345
4345
  depthHeight: { value: t.w }
4346
4346
  }
4347
4347
  });
4348
- this.mesh = new M(new ke(20, 20), n);
4348
+ this.mesh = new U(new le(20, 20), n);
4349
4349
  }
4350
4350
  return this.mesh;
4351
4351
  }
@@ -4355,225 +4355,225 @@ var Pr = "\nvoid main() {\n\n gl_Position = vec4( position, 1.0 );\n\n}", Fr = "
4355
4355
  getDepthTexture() {
4356
4356
  return this.texture;
4357
4357
  }
4358
- }, Lr = class extends N {
4358
+ }, Lr = class extends H {
4359
4359
  constructor(e, t) {
4360
4360
  super();
4361
- let r = this, i = null, a = 1, o = null, s = "local-floor", c = 1, l = null, u = null, d = null, f = null, p = null, m = null, g = typeof XRWebGLBinding < "u", _ = new Ir(), v = {}, y = t.getContextAttributes(), b = null, x = null, S = [], C = [], w = new T(), E = null, O = new n();
4362
- O.viewport = new Fe();
4363
- let k = new n();
4364
- k.viewport = new Fe();
4365
- let A = [O, k], j = new me(), M = null, ne = null;
4361
+ let n = this, i = null, a = 1, o = null, l = "local-floor", u = 1, d = null, f = null, p = null, m = null, _ = null, v = null, y = typeof XRWebGLBinding < "u", b = new Ir(), x = {}, S = t.getContextAttributes(), C = null, w = null, T = [], D = [], O = new L(), A = null, N = new c();
4362
+ N.viewport = new E();
4363
+ let ee = new c();
4364
+ ee.viewport = new E();
4365
+ let te = [N, ee], P = new ne(), F = null, I = null;
4366
4366
  this.cameraAutoUpdate = !0, this.enabled = !1, this.isPresenting = !1, this.getController = function(e) {
4367
- let t = S[e];
4368
- return t === void 0 && (t = new R(), S[e] = t), t.getTargetRaySpace();
4367
+ let t = T[e];
4368
+ return t === void 0 && (t = new s(), T[e] = t), t.getTargetRaySpace();
4369
4369
  }, this.getControllerGrip = function(e) {
4370
- let t = S[e];
4371
- return t === void 0 && (t = new R(), S[e] = t), t.getGripSpace();
4370
+ let t = T[e];
4371
+ return t === void 0 && (t = new s(), T[e] = t), t.getGripSpace();
4372
4372
  }, this.getHand = function(e) {
4373
- let t = S[e];
4374
- return t === void 0 && (t = new R(), S[e] = t), t.getHandSpace();
4373
+ let t = T[e];
4374
+ return t === void 0 && (t = new s(), T[e] = t), t.getHandSpace();
4375
4375
  };
4376
- function N(e) {
4377
- let t = C.indexOf(e.inputSource);
4376
+ function R(e) {
4377
+ let t = D.indexOf(e.inputSource);
4378
4378
  if (t === -1) return;
4379
- let n = S[t];
4380
- n !== void 0 && (n.update(e.inputSource, e.frame, l || o), n.dispatchEvent({
4379
+ let n = T[t];
4380
+ n !== void 0 && (n.update(e.inputSource, e.frame, d || o), n.dispatchEvent({
4381
4381
  type: e.type,
4382
4382
  data: e.inputSource
4383
4383
  }));
4384
4384
  }
4385
4385
  function re() {
4386
- i.removeEventListener("select", N), i.removeEventListener("selectstart", N), i.removeEventListener("selectend", N), i.removeEventListener("squeeze", N), i.removeEventListener("squeezestart", N), i.removeEventListener("squeezeend", N), i.removeEventListener("end", re), i.removeEventListener("inputsourceschange", F);
4387
- for (let e = 0; e < S.length; e++) {
4388
- let t = C[e];
4389
- t !== null && (C[e] = null, S[e].disconnect(t));
4386
+ i.removeEventListener("select", R), i.removeEventListener("selectstart", R), i.removeEventListener("selectend", R), i.removeEventListener("squeeze", R), i.removeEventListener("squeezestart", R), i.removeEventListener("squeezeend", R), i.removeEventListener("end", re), i.removeEventListener("inputsourceschange", z);
4387
+ for (let e = 0; e < T.length; e++) {
4388
+ let t = D[e];
4389
+ t !== null && (D[e] = null, T[e].disconnect(t));
4390
4390
  }
4391
- M = null, ne = null, _.reset();
4392
- for (let e in v) delete v[e];
4393
- e.setRenderTarget(b), p = null, f = null, d = null, i = null, x = null, ce.stop(), r.isPresenting = !1, e.setPixelRatio(E), e.setSize(w.width, w.height, !1), r.dispatchEvent({ type: "sessionend" });
4391
+ F = null, I = null, b.reset();
4392
+ for (let e in x) delete x[e];
4393
+ e.setRenderTarget(C), _ = null, m = null, p = null, i = null, w = null, de.stop(), n.isPresenting = !1, e.setPixelRatio(A), e.setSize(O.width, O.height, !1), n.dispatchEvent({ type: "sessionend" });
4394
4394
  }
4395
4395
  this.setFramebufferScaleFactor = function(e) {
4396
- a = e, r.isPresenting === !0 && W("WebXRManager: Cannot change framebuffer scale while presenting.");
4396
+ a = e, n.isPresenting === !0 && j("WebXRManager: Cannot change framebuffer scale while presenting.");
4397
4397
  }, this.setReferenceSpaceType = function(e) {
4398
- s = e, r.isPresenting === !0 && W("WebXRManager: Cannot change reference space type while presenting.");
4398
+ l = e, n.isPresenting === !0 && j("WebXRManager: Cannot change reference space type while presenting.");
4399
4399
  }, this.getReferenceSpace = function() {
4400
- return l || o;
4400
+ return d || o;
4401
4401
  }, this.setReferenceSpace = function(e) {
4402
- l = e;
4402
+ d = e;
4403
4403
  }, this.getBaseLayer = function() {
4404
- return f === null ? p : f;
4404
+ return m === null ? _ : m;
4405
4405
  }, this.getBinding = function() {
4406
- return d === null && g && (d = new XRWebGLBinding(i, t)), d;
4406
+ return p === null && y && (p = new XRWebGLBinding(i, t)), p;
4407
4407
  }, this.getFrame = function() {
4408
- return m;
4408
+ return v;
4409
4409
  }, this.getSession = function() {
4410
4410
  return i;
4411
- }, this.setSession = async function(n) {
4412
- if (i = n, i !== null) {
4413
- if (b = e.getRenderTarget(), i.addEventListener("select", N), i.addEventListener("selectstart", N), i.addEventListener("selectend", N), i.addEventListener("squeeze", N), i.addEventListener("squeezestart", N), i.addEventListener("squeezeend", N), i.addEventListener("end", re), i.addEventListener("inputsourceschange", F), y.xrCompatible !== !0 && await t.makeXRCompatible(), E = e.getPixelRatio(), e.getSize(w), g && "createProjectionLayer" in XRWebGLBinding.prototype) {
4411
+ }, this.setSession = async function(r) {
4412
+ if (i = r, i !== null) {
4413
+ if (C = e.getRenderTarget(), i.addEventListener("select", R), i.addEventListener("selectstart", R), i.addEventListener("selectend", R), i.addEventListener("squeeze", R), i.addEventListener("squeezestart", R), i.addEventListener("squeezeend", R), i.addEventListener("end", re), i.addEventListener("inputsourceschange", z), S.xrCompatible !== !0 && await t.makeXRCompatible(), A = e.getPixelRatio(), e.getSize(O), y && "createProjectionLayer" in XRWebGLBinding.prototype) {
4414
4414
  let n = null, r = null, o = null;
4415
- y.depth && (o = y.stencil ? t.DEPTH24_STENCIL8 : t.DEPTH_COMPONENT24, n = y.stencil ? D : U, r = y.stencil ? he : te);
4415
+ S.depth && (o = S.stencil ? t.DEPTH24_STENCIL8 : t.DEPTH_COMPONENT24, n = S.stencil ? ye : g, r = S.stencil ? me : oe);
4416
4416
  let s = {
4417
4417
  colorFormat: t.RGBA8,
4418
4418
  depthFormat: o,
4419
4419
  scaleFactor: a
4420
4420
  };
4421
- d = this.getBinding(), f = d.createProjectionLayer(s), i.updateRenderState({ layers: [f] }), e.setPixelRatio(1), e.setSize(f.textureWidth, f.textureHeight, !1), x = new h(f.textureWidth, f.textureHeight, {
4422
- format: Se,
4423
- type: ge,
4424
- depthTexture: new ee(f.textureWidth, f.textureHeight, r, void 0, void 0, void 0, void 0, void 0, void 0, n),
4425
- stencilBuffer: y.stencil,
4421
+ p = this.getBinding(), m = p.createProjectionLayer(s), i.updateRenderState({ layers: [m] }), e.setPixelRatio(1), e.setSize(m.textureWidth, m.textureHeight, !1), w = new k(m.textureWidth, m.textureHeight, {
4422
+ format: M,
4423
+ type: ae,
4424
+ depthTexture: new h(m.textureWidth, m.textureHeight, r, void 0, void 0, void 0, void 0, void 0, void 0, n),
4425
+ stencilBuffer: S.stencil,
4426
4426
  colorSpace: e.outputColorSpace,
4427
- samples: y.antialias ? 4 : 0,
4428
- resolveDepthBuffer: f.ignoreDepthValues === !1,
4429
- resolveStencilBuffer: f.ignoreDepthValues === !1
4427
+ samples: S.antialias ? 4 : 0,
4428
+ resolveDepthBuffer: m.ignoreDepthValues === !1,
4429
+ resolveStencilBuffer: m.ignoreDepthValues === !1
4430
4430
  });
4431
4431
  } else {
4432
4432
  let n = {
4433
- antialias: y.antialias,
4433
+ antialias: S.antialias,
4434
4434
  alpha: !0,
4435
- depth: y.depth,
4436
- stencil: y.stencil,
4435
+ depth: S.depth,
4436
+ stencil: S.stencil,
4437
4437
  framebufferScaleFactor: a
4438
4438
  };
4439
- p = new XRWebGLLayer(i, t, n), i.updateRenderState({ baseLayer: p }), e.setPixelRatio(1), e.setSize(p.framebufferWidth, p.framebufferHeight, !1), x = new h(p.framebufferWidth, p.framebufferHeight, {
4440
- format: Se,
4441
- type: ge,
4439
+ _ = new XRWebGLLayer(i, t, n), i.updateRenderState({ baseLayer: _ }), e.setPixelRatio(1), e.setSize(_.framebufferWidth, _.framebufferHeight, !1), w = new k(_.framebufferWidth, _.framebufferHeight, {
4440
+ format: M,
4441
+ type: ae,
4442
4442
  colorSpace: e.outputColorSpace,
4443
- stencilBuffer: y.stencil,
4444
- resolveDepthBuffer: p.ignoreDepthValues === !1,
4445
- resolveStencilBuffer: p.ignoreDepthValues === !1
4443
+ stencilBuffer: S.stencil,
4444
+ resolveDepthBuffer: _.ignoreDepthValues === !1,
4445
+ resolveStencilBuffer: _.ignoreDepthValues === !1
4446
4446
  });
4447
4447
  }
4448
- x.isXRRenderTarget = !0, this.setFoveation(c), l = null, o = await i.requestReferenceSpace(s), ce.setContext(i), ce.start(), r.isPresenting = !0, r.dispatchEvent({ type: "sessionstart" });
4448
+ w.isXRRenderTarget = !0, this.setFoveation(u), d = null, o = await i.requestReferenceSpace(l), de.setContext(i), de.start(), n.isPresenting = !0, n.dispatchEvent({ type: "sessionstart" });
4449
4449
  }
4450
4450
  }, this.getEnvironmentBlendMode = function() {
4451
4451
  if (i !== null) return i.environmentBlendMode;
4452
4452
  }, this.getDepthTexture = function() {
4453
- return _.getDepthTexture();
4453
+ return b.getDepthTexture();
4454
4454
  };
4455
- function F(e) {
4455
+ function z(e) {
4456
4456
  for (let t = 0; t < e.removed.length; t++) {
4457
- let n = e.removed[t], r = C.indexOf(n);
4458
- r >= 0 && (C[r] = null, S[r].disconnect(n));
4457
+ let n = e.removed[t], r = D.indexOf(n);
4458
+ r >= 0 && (D[r] = null, T[r].disconnect(n));
4459
4459
  }
4460
4460
  for (let t = 0; t < e.added.length; t++) {
4461
- let n = e.added[t], r = C.indexOf(n);
4461
+ let n = e.added[t], r = D.indexOf(n);
4462
4462
  if (r === -1) {
4463
- for (let e = 0; e < S.length; e++) if (e >= C.length) {
4464
- C.push(n), r = e;
4463
+ for (let e = 0; e < T.length; e++) if (e >= D.length) {
4464
+ D.push(n), r = e;
4465
4465
  break;
4466
- } else if (C[e] === null) {
4467
- C[e] = n, r = e;
4466
+ } else if (D[e] === null) {
4467
+ D[e] = n, r = e;
4468
4468
  break;
4469
4469
  }
4470
4470
  if (r === -1) break;
4471
4471
  }
4472
- let i = S[r];
4472
+ let i = T[r];
4473
4473
  i && i.connect(n);
4474
4474
  }
4475
4475
  }
4476
- let I = new P(), ie = new P();
4477
- function L(e, t, n) {
4478
- I.setFromMatrixPosition(t.matrixWorld), ie.setFromMatrixPosition(n.matrixWorld);
4479
- let r = I.distanceTo(ie), i = t.projectionMatrix.elements, a = n.projectionMatrix.elements, o = i[14] / (i[10] - 1), s = i[14] / (i[10] + 1), c = (i[9] + 1) / i[5], l = (i[9] - 1) / i[5], u = (i[8] - 1) / i[0], d = (a[8] + 1) / a[0], f = o * u, p = o * d, m = r / (-u + d), h = m * -u;
4476
+ let ie = new W(), B = new W();
4477
+ function V(e, t, n) {
4478
+ ie.setFromMatrixPosition(t.matrixWorld), B.setFromMatrixPosition(n.matrixWorld);
4479
+ let r = ie.distanceTo(B), i = t.projectionMatrix.elements, a = n.projectionMatrix.elements, o = i[14] / (i[10] - 1), s = i[14] / (i[10] + 1), c = (i[9] + 1) / i[5], l = (i[9] - 1) / i[5], u = (i[8] - 1) / i[0], d = (a[8] + 1) / a[0], f = o * u, p = o * d, m = r / (-u + d), h = m * -u;
4480
4480
  if (t.matrixWorld.decompose(e.position, e.quaternion, e.scale), e.translateX(h), e.translateZ(m), e.matrixWorld.compose(e.position, e.quaternion, e.scale), e.matrixWorldInverse.copy(e.matrixWorld).invert(), i[10] === -1) e.projectionMatrix.copy(t.projectionMatrix), e.projectionMatrixInverse.copy(t.projectionMatrixInverse);
4481
4481
  else {
4482
4482
  let t = o + m, n = s + m, i = f - h, a = p + (r - h), u = c * s / n * t, d = l * s / n * t;
4483
4483
  e.projectionMatrix.makePerspective(i, a, u, d, t, n), e.projectionMatrixInverse.copy(e.projectionMatrix).invert();
4484
4484
  }
4485
4485
  }
4486
- function ae(e, t) {
4486
+ function se(e, t) {
4487
4487
  t === null ? e.matrixWorld.copy(e.matrix) : e.matrixWorld.multiplyMatrices(t.matrixWorld, e.matrix), e.matrixWorldInverse.copy(e.matrixWorld).invert();
4488
4488
  }
4489
4489
  this.updateCamera = function(e) {
4490
4490
  if (i === null) return;
4491
4491
  let t = e.near, n = e.far;
4492
- _.texture !== null && (_.depthNear > 0 && (t = _.depthNear), _.depthFar > 0 && (n = _.depthFar)), j.near = k.near = O.near = t, j.far = k.far = O.far = n, (M !== j.near || ne !== j.far) && (i.updateRenderState({
4493
- depthNear: j.near,
4494
- depthFar: j.far
4495
- }), M = j.near, ne = j.far), j.layers.mask = e.layers.mask | 6, O.layers.mask = j.layers.mask & -5, k.layers.mask = j.layers.mask & -3;
4496
- let r = e.parent, a = j.cameras;
4497
- ae(j, r);
4498
- for (let e = 0; e < a.length; e++) ae(a[e], r);
4499
- a.length === 2 ? L(j, O, k) : j.projectionMatrix.copy(O.projectionMatrix), z(e, j, r);
4492
+ b.texture !== null && (b.depthNear > 0 && (t = b.depthNear), b.depthFar > 0 && (n = b.depthFar)), P.near = ee.near = N.near = t, P.far = ee.far = N.far = n, (F !== P.near || I !== P.far) && (i.updateRenderState({
4493
+ depthNear: P.near,
4494
+ depthFar: P.far
4495
+ }), F = P.near, I = P.far), P.layers.mask = e.layers.mask | 6, N.layers.mask = P.layers.mask & -5, ee.layers.mask = P.layers.mask & -3;
4496
+ let r = e.parent, a = P.cameras;
4497
+ se(P, r);
4498
+ for (let e = 0; e < a.length; e++) se(a[e], r);
4499
+ a.length === 2 ? V(P, N, ee) : P.projectionMatrix.copy(N.projectionMatrix), ce(e, P, r);
4500
4500
  };
4501
- function z(e, t, n) {
4502
- n === null ? e.matrix.copy(t.matrixWorld) : (e.matrix.copy(n.matrixWorld), e.matrix.invert(), e.matrix.multiply(t.matrixWorld)), e.matrix.decompose(e.position, e.quaternion, e.scale), e.updateMatrixWorld(!0), e.projectionMatrix.copy(t.projectionMatrix), e.projectionMatrixInverse.copy(t.projectionMatrixInverse), e.isPerspectiveCamera && (e.fov = ve * 2 * Math.atan(1 / e.projectionMatrix.elements[5]), e.zoom = 1);
4501
+ function ce(e, t, n) {
4502
+ n === null ? e.matrix.copy(t.matrixWorld) : (e.matrix.copy(n.matrixWorld), e.matrix.invert(), e.matrix.multiply(t.matrixWorld)), e.matrix.decompose(e.position, e.quaternion, e.scale), e.updateMatrixWorld(!0), e.projectionMatrix.copy(t.projectionMatrix), e.projectionMatrixInverse.copy(t.projectionMatrixInverse), e.isPerspectiveCamera && (e.fov = r * 2 * Math.atan(1 / e.projectionMatrix.elements[5]), e.zoom = 1);
4503
4503
  }
4504
4504
  this.getCamera = function() {
4505
- return j;
4505
+ return P;
4506
4506
  }, this.getFoveation = function() {
4507
- if (!(f === null && p === null)) return c;
4507
+ if (!(m === null && _ === null)) return u;
4508
4508
  }, this.setFoveation = function(e) {
4509
- c = e, f !== null && (f.fixedFoveation = e), p !== null && p.fixedFoveation !== void 0 && (p.fixedFoveation = e);
4509
+ u = e, m !== null && (m.fixedFoveation = e), _ !== null && _.fixedFoveation !== void 0 && (_.fixedFoveation = e);
4510
4510
  }, this.hasDepthSensing = function() {
4511
- return _.texture !== null;
4511
+ return b.texture !== null;
4512
4512
  }, this.getDepthSensingMesh = function() {
4513
- return _.getMesh(j);
4513
+ return b.getMesh(P);
4514
4514
  }, this.getCameraTexture = function(e) {
4515
- return v[e];
4515
+ return x[e];
4516
4516
  };
4517
- let oe = null;
4518
- function se(t, a) {
4519
- if (u = a.getViewerPose(l || o), m = a, u !== null) {
4520
- let t = u.views;
4521
- p !== null && (e.setRenderTargetFramebuffer(x, p.framebuffer), e.setRenderTarget(x));
4522
- let a = !1;
4523
- t.length !== j.cameras.length && (j.cameras.length = 0, a = !0);
4524
- for (let r = 0; r < t.length; r++) {
4525
- let i = t[r], o = null;
4526
- if (p !== null) o = p.getViewport(i);
4517
+ let le = null;
4518
+ function ue(t, r) {
4519
+ if (f = r.getViewerPose(d || o), v = r, f !== null) {
4520
+ let t = f.views;
4521
+ _ !== null && (e.setRenderTargetFramebuffer(w, _.framebuffer), e.setRenderTarget(w));
4522
+ let r = !1;
4523
+ t.length !== P.cameras.length && (P.cameras.length = 0, r = !0);
4524
+ for (let n = 0; n < t.length; n++) {
4525
+ let i = t[n], a = null;
4526
+ if (_ !== null) a = _.getViewport(i);
4527
4527
  else {
4528
- let t = d.getViewSubImage(f, i);
4529
- o = t.viewport, r === 0 && (e.setRenderTargetTextures(x, t.colorTexture, t.depthStencilTexture), e.setRenderTarget(x));
4528
+ let t = p.getViewSubImage(m, i);
4529
+ a = t.viewport, n === 0 && (e.setRenderTargetTextures(w, t.colorTexture, t.depthStencilTexture), e.setRenderTarget(w));
4530
4530
  }
4531
- let s = A[r];
4532
- s === void 0 && (s = new n(), s.layers.enable(r), s.viewport = new Fe(), A[r] = s), s.matrix.fromArray(i.transform.matrix), s.matrix.decompose(s.position, s.quaternion, s.scale), s.projectionMatrix.fromArray(i.projectionMatrix), s.projectionMatrixInverse.copy(s.projectionMatrix).invert(), s.viewport.set(o.x, o.y, o.width, o.height), r === 0 && (j.matrix.copy(s.matrix), j.matrix.decompose(j.position, j.quaternion, j.scale)), a === !0 && j.cameras.push(s);
4531
+ let o = te[n];
4532
+ o === void 0 && (o = new c(), o.layers.enable(n), o.viewport = new E(), te[n] = o), o.matrix.fromArray(i.transform.matrix), o.matrix.decompose(o.position, o.quaternion, o.scale), o.projectionMatrix.fromArray(i.projectionMatrix), o.projectionMatrixInverse.copy(o.projectionMatrix).invert(), o.viewport.set(a.x, a.y, a.width, a.height), n === 0 && (P.matrix.copy(o.matrix), P.matrix.decompose(P.position, P.quaternion, P.scale)), r === !0 && P.cameras.push(o);
4533
4533
  }
4534
- let o = i.enabledFeatures;
4535
- if (o && o.includes("depth-sensing") && i.depthUsage == "gpu-optimized" && g) {
4536
- d = r.getBinding();
4537
- let e = d.getDepthInformation(t[0]);
4538
- e && e.isValid && e.texture && _.init(e, i.renderState);
4534
+ let a = i.enabledFeatures;
4535
+ if (a && a.includes("depth-sensing") && i.depthUsage == "gpu-optimized" && y) {
4536
+ p = n.getBinding();
4537
+ let e = p.getDepthInformation(t[0]);
4538
+ e && e.isValid && e.texture && b.init(e, i.renderState);
4539
4539
  }
4540
- if (o && o.includes("camera-access") && g) {
4541
- e.state.unbindTexture(), d = r.getBinding();
4540
+ if (a && a.includes("camera-access") && y) {
4541
+ e.state.unbindTexture(), p = n.getBinding();
4542
4542
  for (let e = 0; e < t.length; e++) {
4543
4543
  let n = t[e].camera;
4544
4544
  if (n) {
4545
- let e = v[n];
4546
- e || (e = new Pe(), v[n] = e);
4547
- let t = d.getCameraImage(n);
4545
+ let e = x[n];
4546
+ e || (e = new be(), x[n] = e);
4547
+ let t = p.getCameraImage(n);
4548
4548
  e.sourceTexture = t;
4549
4549
  }
4550
4550
  }
4551
4551
  }
4552
4552
  }
4553
- for (let e = 0; e < S.length; e++) {
4554
- let t = C[e], n = S[e];
4555
- t !== null && n !== void 0 && n.update(t, a, l || o);
4553
+ for (let e = 0; e < T.length; e++) {
4554
+ let t = D[e], n = T[e];
4555
+ t !== null && n !== void 0 && n.update(t, r, d || o);
4556
4556
  }
4557
- oe && oe(t, a), a.detectedPlanes && r.dispatchEvent({
4557
+ le && le(t, r), r.detectedPlanes && n.dispatchEvent({
4558
4558
  type: "planesdetected",
4559
- data: a
4560
- }), m = null;
4559
+ data: r
4560
+ }), v = null;
4561
4561
  }
4562
- let ce = new Ie();
4563
- ce.setAnimationLoop(se), this.setAnimationLoop = function(e) {
4564
- oe = e;
4562
+ let de = new Ie();
4563
+ de.setAnimationLoop(ue), this.setAnimationLoop = function(e) {
4564
+ le = e;
4565
4565
  }, this.dispose = function() {};
4566
4566
  }
4567
- }, Rr = /* @__PURE__ */ new w(), zr = /* @__PURE__ */ new k();
4567
+ }, Rr = /* @__PURE__ */ new Se(), zr = /* @__PURE__ */ new ge();
4568
4568
  function Br(e, t) {
4569
4569
  function n(e, t) {
4570
4570
  e.matrixAutoUpdate === !0 && e.updateMatrix(), t.value.copy(e.matrix);
4571
4571
  }
4572
4572
  function r(t, n) {
4573
- n.color.getRGB(t.fogColor.value, oe(e)), n.isFog ? (t.fogNear.value = n.near, t.fogFar.value = n.far) : n.isFogExp2 && (t.fogDensity.value = n.density);
4573
+ n.color.getRGB(t.fogColor.value, m(e)), n.isFog ? (t.fogNear.value = n.near, t.fogFar.value = n.far) : n.isFogExp2 && (t.fogDensity.value = n.density);
4574
4574
  }
4575
4575
  function i(e, t, n, r, i) {
4576
- t.isMeshBasicMaterial ? a(e, t) : t.isMeshLambertMaterial ? (a(e, t), t.envMap && (e.envMapIntensity.value = t.envMapIntensity)) : t.isMeshToonMaterial ? (a(e, t), d(e, t)) : t.isMeshPhongMaterial ? (a(e, t), u(e, t), t.envMap && (e.envMapIntensity.value = t.envMapIntensity)) : t.isMeshStandardMaterial ? (a(e, t), f(e, t), t.isMeshPhysicalMaterial && p(e, t, i)) : t.isMeshMatcapMaterial ? (a(e, t), m(e, t)) : t.isMeshDepthMaterial ? a(e, t) : t.isMeshDistanceMaterial ? (a(e, t), h(e, t)) : t.isMeshNormalMaterial ? a(e, t) : t.isLineBasicMaterial ? (o(e, t), t.isLineDashedMaterial && s(e, t)) : t.isPointsMaterial ? c(e, t, n, r) : t.isSpriteMaterial ? l(e, t) : t.isShadowMaterial ? (e.color.value.copy(t.color), e.opacity.value = t.opacity) : t.isShaderMaterial && (t.uniformsNeedUpdate = !1);
4576
+ t.isMeshBasicMaterial ? a(e, t) : t.isMeshLambertMaterial ? (a(e, t), t.envMap && (e.envMapIntensity.value = t.envMapIntensity)) : t.isMeshToonMaterial ? (a(e, t), d(e, t)) : t.isMeshPhongMaterial ? (a(e, t), u(e, t), t.envMap && (e.envMapIntensity.value = t.envMapIntensity)) : t.isMeshStandardMaterial ? (a(e, t), f(e, t), t.isMeshPhysicalMaterial && p(e, t, i)) : t.isMeshMatcapMaterial ? (a(e, t), h(e, t)) : t.isMeshDepthMaterial ? a(e, t) : t.isMeshDistanceMaterial ? (a(e, t), g(e, t)) : t.isMeshNormalMaterial ? a(e, t) : t.isLineBasicMaterial ? (o(e, t), t.isLineDashedMaterial && s(e, t)) : t.isPointsMaterial ? c(e, t, n, r) : t.isSpriteMaterial ? l(e, t) : t.isShadowMaterial ? (e.color.value.copy(t.color), e.opacity.value = t.opacity) : t.isShaderMaterial && (t.uniformsNeedUpdate = !1);
4577
4577
  }
4578
4578
  function a(e, r) {
4579
4579
  e.opacity.value = r.opacity, r.color && e.diffuse.value.copy(r.color), r.emissive && e.emissive.value.copy(r.emissive).multiplyScalar(r.emissiveIntensity), r.map && (e.map.value = r.map, n(r.map, e.mapTransform)), r.alphaMap && (e.alphaMap.value = r.alphaMap, n(r.alphaMap, e.alphaMapTransform)), r.bumpMap && (e.bumpMap.value = r.bumpMap, n(r.bumpMap, e.bumpMapTransform), e.bumpScale.value = r.bumpScale, r.side === 1 && (e.bumpScale.value *= -1)), r.normalMap && (e.normalMap.value = r.normalMap, n(r.normalMap, e.normalMapTransform), e.normalScale.value.copy(r.normalScale), r.side === 1 && e.normalScale.value.negate()), r.displacementMap && (e.displacementMap.value = r.displacementMap, n(r.displacementMap, e.displacementMapTransform), e.displacementScale.value = r.displacementScale, e.displacementBias.value = r.displacementBias), r.emissiveMap && (e.emissiveMap.value = r.emissiveMap, n(r.emissiveMap, e.emissiveMapTransform)), r.specularMap && (e.specularMap.value = r.specularMap, n(r.specularMap, e.specularMapTransform)), r.alphaTest > 0 && (e.alphaTest.value = r.alphaTest);
@@ -4604,10 +4604,10 @@ function Br(e, t) {
4604
4604
  function p(e, t, r) {
4605
4605
  e.ior.value = t.ior, t.sheen > 0 && (e.sheenColor.value.copy(t.sheenColor).multiplyScalar(t.sheen), e.sheenRoughness.value = t.sheenRoughness, t.sheenColorMap && (e.sheenColorMap.value = t.sheenColorMap, n(t.sheenColorMap, e.sheenColorMapTransform)), t.sheenRoughnessMap && (e.sheenRoughnessMap.value = t.sheenRoughnessMap, n(t.sheenRoughnessMap, e.sheenRoughnessMapTransform))), t.clearcoat > 0 && (e.clearcoat.value = t.clearcoat, e.clearcoatRoughness.value = t.clearcoatRoughness, t.clearcoatMap && (e.clearcoatMap.value = t.clearcoatMap, n(t.clearcoatMap, e.clearcoatMapTransform)), t.clearcoatRoughnessMap && (e.clearcoatRoughnessMap.value = t.clearcoatRoughnessMap, n(t.clearcoatRoughnessMap, e.clearcoatRoughnessMapTransform)), t.clearcoatNormalMap && (e.clearcoatNormalMap.value = t.clearcoatNormalMap, n(t.clearcoatNormalMap, e.clearcoatNormalMapTransform), e.clearcoatNormalScale.value.copy(t.clearcoatNormalScale), t.side === 1 && e.clearcoatNormalScale.value.negate())), t.dispersion > 0 && (e.dispersion.value = t.dispersion), t.iridescence > 0 && (e.iridescence.value = t.iridescence, e.iridescenceIOR.value = t.iridescenceIOR, e.iridescenceThicknessMinimum.value = t.iridescenceThicknessRange[0], e.iridescenceThicknessMaximum.value = t.iridescenceThicknessRange[1], t.iridescenceMap && (e.iridescenceMap.value = t.iridescenceMap, n(t.iridescenceMap, e.iridescenceMapTransform)), t.iridescenceThicknessMap && (e.iridescenceThicknessMap.value = t.iridescenceThicknessMap, n(t.iridescenceThicknessMap, e.iridescenceThicknessMapTransform))), t.transmission > 0 && (e.transmission.value = t.transmission, e.transmissionSamplerMap.value = r.texture, e.transmissionSamplerSize.value.set(r.width, r.height), t.transmissionMap && (e.transmissionMap.value = t.transmissionMap, n(t.transmissionMap, e.transmissionMapTransform)), e.thickness.value = t.thickness, t.thicknessMap && (e.thicknessMap.value = t.thicknessMap, n(t.thicknessMap, e.thicknessMapTransform)), e.attenuationDistance.value = t.attenuationDistance, e.attenuationColor.value.copy(t.attenuationColor)), t.anisotropy > 0 && (e.anisotropyVector.value.set(t.anisotropy * Math.cos(t.anisotropyRotation), t.anisotropy * Math.sin(t.anisotropyRotation)), t.anisotropyMap && (e.anisotropyMap.value = t.anisotropyMap, n(t.anisotropyMap, e.anisotropyMapTransform))), e.specularIntensity.value = t.specularIntensity, e.specularColor.value.copy(t.specularColor), t.specularColorMap && (e.specularColorMap.value = t.specularColorMap, n(t.specularColorMap, e.specularColorMapTransform)), t.specularIntensityMap && (e.specularIntensityMap.value = t.specularIntensityMap, n(t.specularIntensityMap, e.specularIntensityMapTransform));
4606
4606
  }
4607
- function m(e, t) {
4607
+ function h(e, t) {
4608
4608
  t.matcap && (e.matcap.value = t.matcap);
4609
4609
  }
4610
- function h(e, n) {
4610
+ function g(e, n) {
4611
4611
  let r = t.get(n).light;
4612
4612
  e.referencePosition.value.setFromMatrixPosition(r.matrixWorld), e.nearDistance.value = r.shadow.camera.near, e.farDistance.value = r.shadow.camera.far;
4613
4613
  }
@@ -4638,7 +4638,7 @@ function Vr(e, t, n, r) {
4638
4638
  }
4639
4639
  function d() {
4640
4640
  for (let e = 0; e < s; e++) if (o.indexOf(e) === -1) return o.push(e), e;
4641
- return v("WebGLRenderer: Maximum number of simultaneously usable uniforms groups reached."), 0;
4641
+ return S("WebGLRenderer: Maximum number of simultaneously usable uniforms groups reached."), 0;
4642
4642
  }
4643
4643
  function f(t) {
4644
4644
  let n = i[t.id], r = t.uniforms, a = t.__cache;
@@ -4690,7 +4690,7 @@ function Vr(e, t, n, r) {
4690
4690
  boundary: 0,
4691
4691
  storage: 0
4692
4692
  };
4693
- return typeof e == "number" || typeof e == "boolean" ? (t.boundary = 4, t.storage = 4) : e.isVector2 ? (t.boundary = 8, t.storage = 8) : e.isVector3 || e.isColor ? (t.boundary = 16, t.storage = 12) : e.isVector4 ? (t.boundary = 16, t.storage = 16) : e.isMatrix3 ? (t.boundary = 48, t.storage = 48) : e.isMatrix4 ? (t.boundary = 64, t.storage = 64) : e.isTexture ? W("WebGLRenderer: Texture samplers can not be part of an uniforms group.") : W("WebGLRenderer: Unsupported uniform value type.", e), t;
4693
+ return typeof e == "number" || typeof e == "boolean" ? (t.boundary = 4, t.storage = 4) : e.isVector2 ? (t.boundary = 8, t.storage = 8) : e.isVector3 || e.isColor ? (t.boundary = 16, t.storage = 12) : e.isVector4 ? (t.boundary = 16, t.storage = 16) : e.isMatrix3 ? (t.boundary = 48, t.storage = 48) : e.isMatrix4 ? (t.boundary = 64, t.storage = 64) : e.isTexture ? j("WebGLRenderer: Texture samplers can not be part of an uniforms group.") : j("WebGLRenderer: Unsupported uniform value type.", e), t;
4694
4694
  }
4695
4695
  function g(t) {
4696
4696
  let n = t.target;
@@ -5223,73 +5223,73 @@ var Hr = new Uint16Array([
5223
5223
  1183
5224
5224
  ]), Ur = null;
5225
5225
  function Wr() {
5226
- return Ur === null && (Ur = new o(Hr, 16, 16, d, z), Ur.name = "DFG_LUT", Ur.minFilter = F, Ur.magFilter = F, Ur.wrapS = xe, Ur.wrapT = xe, Ur.generateMipmaps = !1, Ur.needsUpdate = !0), Ur;
5226
+ return Ur === null && (Ur = new t(Hr, 16, 16, D, he), Ur.name = "DFG_LUT", Ur.minFilter = _, Ur.magFilter = _, Ur.wrapS = Ae, Ur.wrapT = Ae, Ur.generateMipmaps = !1, Ur.needsUpdate = !0), Ur;
5227
5227
  }
5228
5228
  var Gr = class {
5229
5229
  constructor(e = {}) {
5230
- let { canvas: t = S(), context: n = null, depth: r = !0, stencil: a = !1, alpha: o = !1, antialias: s = !1, premultipliedAlpha: c = !0, preserveDrawingBuffer: u = !1, powerPreference: d = "default", failIfMajorPerformanceCaveat: f = !1, reversedDepthBuffer: p = !1, outputBufferType: m = ge } = e;
5230
+ let { canvas: t = v(), context: r = null, depth: i = !0, stencil: s = !1, alpha: c = !1, antialias: l = !1, premultipliedAlpha: u = !0, preserveDrawingBuffer: p = !1, powerPreference: m = "default", failIfMajorPerformanceCaveat: h = !1, reversedDepthBuffer: g = !1, outputBufferType: _ = ae } = e;
5231
5231
  this.isWebGLRenderer = !0;
5232
- let _;
5233
- if (n !== null) {
5234
- if (typeof WebGLRenderingContext < "u" && n instanceof WebGLRenderingContext) throw Error("THREE.WebGLRenderer: WebGL 1 is not supported since r163.");
5235
- _ = n.getContextAttributes().alpha;
5236
- } else _ = o;
5237
- let y = m, C = new Set([
5238
- ye,
5239
- x,
5240
- ce
5241
- ]), w = new Set([
5242
- ge,
5243
- te,
5244
- g,
5245
- he,
5246
- j,
5247
- l
5248
- ]), T = new Uint32Array(4), E = new Int32Array(4), D = null, O = null, ee = [], A = [], M = null;
5232
+ let y;
5233
+ if (r !== null) {
5234
+ if (typeof WebGLRenderingContext < "u" && r instanceof WebGLRenderingContext) throw Error("THREE.WebGLRenderer: WebGL 1 is not supported since r163.");
5235
+ y = r.getContextAttributes().alpha;
5236
+ } else y = c;
5237
+ let b = _, x = new Set([
5238
+ d,
5239
+ o,
5240
+ ue
5241
+ ]), C = new Set([
5242
+ ae,
5243
+ oe,
5244
+ Me,
5245
+ me,
5246
+ P,
5247
+ Ee
5248
+ ]), w = new Uint32Array(4), D = new Int32Array(4), A = null, M = null, N = [], ne = [], F = null;
5249
5249
  this.domElement = t, this.debug = {
5250
5250
  checkShaderErrors: !0,
5251
5251
  onShaderError: null
5252
5252
  }, this.autoClear = !0, this.autoClearColor = !0, this.autoClearDepth = !0, this.autoClearStencil = !0, this.sortObjects = !0, this.clippingPlanes = [], this.localClippingEnabled = !1, this.toneMapping = 0, this.toneMappingExposure = 1, this.transmissionResolutionScale = 1;
5253
- let N = this, re = !1;
5254
- this._outputColorSpace = Oe;
5255
- let F = 0, I = 0, L = null, R = -1, oe = null, se = new Fe(), B = new Fe(), le = null, ue = new H(0), de = 0, pe = t.width, me = t.height, U = 1, _e = null, ve = null, xe = new Fe(0, 0, pe, me), Se = new Fe(0, 0, pe, me), Ce = !1, we = new b(), Te = !1, Ee = !1, De = new k(), ke = new P(), Ae = new Fe(), je = {
5253
+ let I = this, L = !1;
5254
+ this._outputColorSpace = Fe;
5255
+ let R = 0, re = 0, z = null, ie = -1, B = null, V = new E(), se = new E(), ce = null, le = new a(0), de = 0, fe = t.width, pe = t.height, H = 1, _e = null, ve = null, ye = new E(0, 0, fe, pe), be = new E(0, 0, fe, pe), U = !1, xe = new Te(), Se = !1, Ce = !1, we = new ge(), De = new W(), ke = new E(), Ae = {
5256
5256
  background: null,
5257
5257
  fog: null,
5258
5258
  environment: null,
5259
5259
  overrideMaterial: null,
5260
5260
  isScene: !0
5261
- }, Me = !1;
5261
+ }, je = !1;
5262
5262
  function Ne() {
5263
- return L === null ? U : 1;
5263
+ return z === null ? H : 1;
5264
5264
  }
5265
- let G = n;
5265
+ let G = r;
5266
5266
  function Pe(e, n) {
5267
5267
  return t.getContext(e, n);
5268
5268
  }
5269
5269
  try {
5270
5270
  let e = {
5271
5271
  alpha: !0,
5272
- depth: r,
5273
- stencil: a,
5274
- antialias: s,
5275
- premultipliedAlpha: c,
5276
- preserveDrawingBuffer: u,
5277
- powerPreference: d,
5278
- failIfMajorPerformanceCaveat: f
5272
+ depth: i,
5273
+ stencil: s,
5274
+ antialias: l,
5275
+ premultipliedAlpha: u,
5276
+ preserveDrawingBuffer: p,
5277
+ powerPreference: m,
5278
+ failIfMajorPerformanceCaveat: h
5279
5279
  };
5280
5280
  if ("setAttribute" in t && t.setAttribute("data-engine", "three.js r183"), t.addEventListener("webglcontextlost", ct, !1), t.addEventListener("webglcontextrestored", lt, !1), t.addEventListener("webglcontextcreationerror", _t, !1), G === null) {
5281
5281
  let t = "webgl2";
5282
5282
  if (G = Pe(t, e), G === null) throw Pe(t) ? Error("Error creating WebGL context with your selected attributes.") : Error("Error creating WebGL context.");
5283
5283
  }
5284
5284
  } catch (e) {
5285
- throw v("WebGLRenderer: " + e.message), e;
5285
+ throw S("WebGLRenderer: " + e.message), e;
5286
5286
  }
5287
5287
  let K, q, J, Re, Y, X, We, Ge, Ke, qe, Je, Ye, Xe, Ze, Qe, $e, et, tt, nt, rt, it, at, ot;
5288
5288
  function st() {
5289
- K = new dt(G), K.init(), it = new Nr(G, K), q = new He(G, K, e, it), J = new jr(G, K), q.reversedDepthBuffer && p && J.buffers.depth.setReversed(!0), Re = new mt(G), Y = new dr(), X = new Mr(G, K, J, Y, q, it, Re), We = new ut(N), Ge = new Le(G), at = new Be(G, Ge), Ke = new ft(G, Ge, Re, at), qe = new gt(G, Ke, Ge, at, Re), tt = new ht(G, q, X), Qe = new Ue(Y), Je = new ur(N, We, K, q, at, Qe), Ye = new Br(N, Y), Xe = new hr(), Ze = new Sr(K), et = new ze(N, We, J, qe, _, c), $e = new Ar(N, qe, q), ot = new Vr(G, Re, q, J), nt = new Ve(G, K, Re), rt = new pt(G, K, Re), Re.programs = Je.programs, N.capabilities = q, N.extensions = K, N.properties = Y, N.renderLists = Xe, N.shadowMap = $e, N.state = J, N.info = Re;
5289
+ K = new dt(G), K.init(), it = new Nr(G, K), q = new He(G, K, e, it), J = new jr(G, K), q.reversedDepthBuffer && g && J.buffers.depth.setReversed(!0), Re = new mt(G), Y = new dr(), X = new Mr(G, K, J, Y, q, it, Re), We = new ut(I), Ge = new Le(G), at = new Be(G, Ge), Ke = new ft(G, Ge, Re, at), qe = new gt(G, Ke, Ge, at, Re), tt = new ht(G, q, X), Qe = new Ue(Y), Je = new ur(I, We, K, q, at, Qe), Ye = new Br(I, Y), Xe = new hr(), Ze = new Sr(K), et = new ze(I, We, J, qe, y, u), $e = new Ar(I, qe, q), ot = new Vr(G, Re, q, J), nt = new Ve(G, K, Re), rt = new pt(G, K, Re), Re.programs = Je.programs, I.capabilities = q, I.extensions = K, I.properties = Y, I.renderLists = Xe, I.shadowMap = $e, I.state = J, I.info = Re;
5290
5290
  }
5291
- st(), y !== 1009 && (M = new vt(y, t.width, t.height, r, a));
5292
- let Z = new Lr(N, G);
5291
+ st(), b !== 1009 && (F = new vt(b, t.width, t.height, i, s));
5292
+ let Z = new Lr(I, G);
5293
5293
  this.xr = Z, this.getContext = function() {
5294
5294
  return G;
5295
5295
  }, this.getContextAttributes = function() {
@@ -5301,23 +5301,23 @@ var Gr = class {
5301
5301
  let e = K.get("WEBGL_lose_context");
5302
5302
  e && e.restoreContext();
5303
5303
  }, this.getPixelRatio = function() {
5304
- return U;
5304
+ return H;
5305
5305
  }, this.setPixelRatio = function(e) {
5306
- e !== void 0 && (U = e, this.setSize(pe, me, !1));
5306
+ e !== void 0 && (H = e, this.setSize(fe, pe, !1));
5307
5307
  }, this.getSize = function(e) {
5308
- return e.set(pe, me);
5308
+ return e.set(fe, pe);
5309
5309
  }, this.setSize = function(e, n, r = !0) {
5310
5310
  if (Z.isPresenting) {
5311
- W("WebGLRenderer: Can't change size while VR device is presenting.");
5311
+ j("WebGLRenderer: Can't change size while VR device is presenting.");
5312
5312
  return;
5313
5313
  }
5314
- pe = e, me = n, t.width = Math.floor(e * U), t.height = Math.floor(n * U), r === !0 && (t.style.width = e + "px", t.style.height = n + "px"), M !== null && M.setSize(t.width, t.height), this.setViewport(0, 0, e, n);
5314
+ fe = e, pe = n, t.width = Math.floor(e * H), t.height = Math.floor(n * H), r === !0 && (t.style.width = e + "px", t.style.height = n + "px"), F !== null && F.setSize(t.width, t.height), this.setViewport(0, 0, e, n);
5315
5315
  }, this.getDrawingBufferSize = function(e) {
5316
- return e.set(pe * U, me * U).floor();
5316
+ return e.set(fe * H, pe * H).floor();
5317
5317
  }, this.setDrawingBufferSize = function(e, n, r) {
5318
- pe = e, me = n, U = r, t.width = Math.floor(e * r), t.height = Math.floor(n * r), this.setViewport(0, 0, e, n);
5318
+ fe = e, pe = n, H = r, t.width = Math.floor(e * r), t.height = Math.floor(n * r), this.setViewport(0, 0, e, n);
5319
5319
  }, this.setEffects = function(e) {
5320
- if (y === 1009) {
5320
+ if (b === 1009) {
5321
5321
  console.error("THREE.WebGLRenderer: setEffects() requires outputBufferType set to HalfFloatType or FloatType.");
5322
5322
  return;
5323
5323
  }
@@ -5327,21 +5327,21 @@ var Gr = class {
5327
5327
  break;
5328
5328
  }
5329
5329
  }
5330
- M.setEffects(e || []);
5330
+ F.setEffects(e || []);
5331
5331
  }, this.getCurrentViewport = function(e) {
5332
- return e.copy(se);
5332
+ return e.copy(V);
5333
5333
  }, this.getViewport = function(e) {
5334
- return e.copy(xe);
5334
+ return e.copy(ye);
5335
5335
  }, this.setViewport = function(e, t, n, r) {
5336
- e.isVector4 ? xe.set(e.x, e.y, e.z, e.w) : xe.set(e, t, n, r), J.viewport(se.copy(xe).multiplyScalar(U).round());
5336
+ e.isVector4 ? ye.set(e.x, e.y, e.z, e.w) : ye.set(e, t, n, r), J.viewport(V.copy(ye).multiplyScalar(H).round());
5337
5337
  }, this.getScissor = function(e) {
5338
- return e.copy(Se);
5338
+ return e.copy(be);
5339
5339
  }, this.setScissor = function(e, t, n, r) {
5340
- e.isVector4 ? Se.set(e.x, e.y, e.z, e.w) : Se.set(e, t, n, r), J.scissor(B.copy(Se).multiplyScalar(U).round());
5340
+ e.isVector4 ? be.set(e.x, e.y, e.z, e.w) : be.set(e, t, n, r), J.scissor(se.copy(be).multiplyScalar(H).round());
5341
5341
  }, this.getScissorTest = function() {
5342
- return Ce;
5342
+ return U;
5343
5343
  }, this.setScissorTest = function(e) {
5344
- J.setScissorTest(Ce = e);
5344
+ J.setScissorTest(U = e);
5345
5345
  }, this.setOpaqueSort = function(e) {
5346
5346
  _e = e;
5347
5347
  }, this.setTransparentSort = function(e) {
@@ -5358,13 +5358,13 @@ var Gr = class {
5358
5358
  let r = 0;
5359
5359
  if (e) {
5360
5360
  let e = !1;
5361
- if (L !== null) {
5362
- let t = L.texture.format;
5363
- e = C.has(t);
5361
+ if (z !== null) {
5362
+ let t = z.texture.format;
5363
+ e = x.has(t);
5364
5364
  }
5365
5365
  if (e) {
5366
- let e = L.texture.type, t = w.has(e), n = et.getClearColor(), r = et.getClearAlpha(), i = n.r, a = n.g, o = n.b;
5367
- t ? (T[0] = i, T[1] = a, T[2] = o, T[3] = r, G.clearBufferuiv(G.COLOR, 0, T)) : (E[0] = i, E[1] = a, E[2] = o, E[3] = r, G.clearBufferiv(G.COLOR, 0, E));
5366
+ let e = z.texture.type, t = C.has(e), n = et.getClearColor(), r = et.getClearAlpha(), i = n.r, a = n.g, o = n.b;
5367
+ t ? (w[0] = i, w[1] = a, w[2] = o, w[3] = r, G.clearBufferuiv(G.COLOR, 0, w)) : (D[0] = i, D[1] = a, D[2] = o, D[3] = r, G.clearBufferiv(G.COLOR, 0, D));
5368
5368
  } else r |= G.COLOR_BUFFER_BIT;
5369
5369
  }
5370
5370
  t && (r |= G.DEPTH_BUFFER_BIT), n && (r |= G.STENCIL_BUFFER_BIT, this.state.buffers.stencil.setMask(4294967295)), r !== 0 && G.clear(r);
@@ -5378,15 +5378,15 @@ var Gr = class {
5378
5378
  t.removeEventListener("webglcontextlost", ct, !1), t.removeEventListener("webglcontextrestored", lt, !1), t.removeEventListener("webglcontextcreationerror", _t, !1), et.dispose(), Xe.dispose(), Ze.dispose(), Y.dispose(), We.dispose(), qe.dispose(), at.dispose(), ot.dispose(), Je.dispose(), Z.dispose(), Z.removeEventListener("sessionstart", Tt), Z.removeEventListener("sessionend", Et), Dt.stop();
5379
5379
  };
5380
5380
  function ct(e) {
5381
- e.preventDefault(), ne("WebGLRenderer: Context Lost."), re = !0;
5381
+ e.preventDefault(), T("WebGLRenderer: Context Lost."), L = !0;
5382
5382
  }
5383
5383
  function lt() {
5384
- ne("WebGLRenderer: Context Restored."), re = !1;
5384
+ T("WebGLRenderer: Context Restored."), L = !1;
5385
5385
  let e = Re.autoReset, t = $e.enabled, n = $e.autoUpdate, r = $e.needsUpdate, i = $e.type;
5386
5386
  st(), Re.autoReset = e, $e.enabled = t, $e.autoUpdate = n, $e.needsUpdate = r, $e.type = i;
5387
5387
  }
5388
5388
  function _t(e) {
5389
- v("WebGLRenderer: A WebGL context could not be created. Reason: ", e.statusMessage);
5389
+ S("WebGLRenderer: A WebGL context could not be created. Reason: ", e.statusMessage);
5390
5390
  }
5391
5391
  function yt(e) {
5392
5392
  let t = e.target;
@@ -5402,7 +5402,7 @@ var Gr = class {
5402
5402
  }), e.isShaderMaterial && Je.releaseShaderCache(e));
5403
5403
  }
5404
5404
  this.renderBufferDirect = function(e, t, n, r, i, a) {
5405
- t === null && (t = je);
5405
+ t === null && (t = Ae);
5406
5406
  let o = i.isMesh && i.matrixWorld.determinant() < 0, s = Pt(e, t, n, r, i);
5407
5407
  J.setMaterial(r, o);
5408
5408
  let c = n.index, l = 1;
@@ -5410,38 +5410,38 @@ var Gr = class {
5410
5410
  if (c = Ke.getWireframeAttribute(n), c === void 0) return;
5411
5411
  l = 2;
5412
5412
  }
5413
- let u = n.drawRange, d = n.attributes.position, f = u.start * l, p = (u.start + u.count) * l;
5414
- a !== null && (f = Math.max(f, a.start * l), p = Math.min(p, (a.start + a.count) * l)), c === null ? d != null && (f = Math.max(f, 0), p = Math.min(p, d.count)) : (f = Math.max(f, 0), p = Math.min(p, c.count));
5415
- let m = p - f;
5416
- if (m < 0 || m === Infinity) return;
5413
+ let u = n.drawRange, d = n.attributes.position, p = u.start * l, m = (u.start + u.count) * l;
5414
+ a !== null && (p = Math.max(p, a.start * l), m = Math.min(m, (a.start + a.count) * l)), c === null ? d != null && (p = Math.max(p, 0), m = Math.min(m, d.count)) : (p = Math.max(p, 0), m = Math.min(m, c.count));
5415
+ let h = m - p;
5416
+ if (h < 0 || h === Infinity) return;
5417
5417
  at.setup(i, r, s, n, c);
5418
- let h, g = nt;
5419
- if (c !== null && (h = Ge.get(c), g = rt, g.setIndex(h)), i.isMesh) r.wireframe === !0 ? (J.setLineWidth(r.wireframeLinewidth * Ne()), g.setMode(G.LINES)) : g.setMode(G.TRIANGLES);
5418
+ let g, _ = nt;
5419
+ if (c !== null && (g = Ge.get(c), _ = rt, _.setIndex(g)), i.isMesh) r.wireframe === !0 ? (J.setLineWidth(r.wireframeLinewidth * Ne()), _.setMode(G.LINES)) : _.setMode(G.TRIANGLES);
5420
5420
  else if (i.isLine) {
5421
5421
  let e = r.linewidth;
5422
- e === void 0 && (e = 1), J.setLineWidth(e * Ne()), i.isLineSegments ? g.setMode(G.LINES) : i.isLineLoop ? g.setMode(G.LINE_LOOP) : g.setMode(G.LINE_STRIP);
5423
- } else i.isPoints ? g.setMode(G.POINTS) : i.isSprite && g.setMode(G.TRIANGLES);
5424
- if (i.isBatchedMesh) if (i._multiDrawInstances !== null) be("WebGLRenderer: renderMultiDrawInstances has been deprecated and will be removed in r184. Append to renderMultiDraw arguments and use indirection."), g.renderMultiDrawInstances(i._multiDrawStarts, i._multiDrawCounts, i._multiDrawCount, i._multiDrawInstances);
5425
- else if (K.get("WEBGL_multi_draw")) g.renderMultiDraw(i._multiDrawStarts, i._multiDrawCounts, i._multiDrawCount);
5422
+ e === void 0 && (e = 1), J.setLineWidth(e * Ne()), i.isLineSegments ? _.setMode(G.LINES) : i.isLineLoop ? _.setMode(G.LINE_LOOP) : _.setMode(G.LINE_STRIP);
5423
+ } else i.isPoints ? _.setMode(G.POINTS) : i.isSprite && _.setMode(G.TRIANGLES);
5424
+ if (i.isBatchedMesh) if (i._multiDrawInstances !== null) f("WebGLRenderer: renderMultiDrawInstances has been deprecated and will be removed in r184. Append to renderMultiDraw arguments and use indirection."), _.renderMultiDrawInstances(i._multiDrawStarts, i._multiDrawCounts, i._multiDrawCount, i._multiDrawInstances);
5425
+ else if (K.get("WEBGL_multi_draw")) _.renderMultiDraw(i._multiDrawStarts, i._multiDrawCounts, i._multiDrawCount);
5426
5426
  else {
5427
5427
  let e = i._multiDrawStarts, t = i._multiDrawCounts, n = i._multiDrawCount, a = c ? Ge.get(c).bytesPerElement : 1, o = Y.get(r).currentProgram.getUniforms();
5428
- for (let r = 0; r < n; r++) o.setValue(G, "_gl_DrawID", r), g.render(e[r] / a, t[r]);
5428
+ for (let r = 0; r < n; r++) o.setValue(G, "_gl_DrawID", r), _.render(e[r] / a, t[r]);
5429
5429
  }
5430
- else if (i.isInstancedMesh) g.renderInstances(f, m, i.count);
5430
+ else if (i.isInstancedMesh) _.renderInstances(p, h, i.count);
5431
5431
  else if (n.isInstancedBufferGeometry) {
5432
5432
  let e = n._maxInstanceCount === void 0 ? Infinity : n._maxInstanceCount, t = Math.min(n.instanceCount, e);
5433
- g.renderInstances(f, m, t);
5434
- } else g.render(f, m);
5433
+ _.renderInstances(p, h, t);
5434
+ } else _.render(p, h);
5435
5435
  };
5436
5436
  function St(e, t, n) {
5437
5437
  e.transparent === !0 && e.side === 2 && e.forceSinglePass === !1 ? (e.side = 1, e.needsUpdate = !0, jt(e, t, n), e.side = 0, e.needsUpdate = !0, jt(e, t, n), e.side = 2) : jt(e, t, n);
5438
5438
  }
5439
5439
  this.compile = function(e, t, n = null) {
5440
- n === null && (n = e), O = Ze.get(n), O.init(t), A.push(O), n.traverseVisible(function(e) {
5441
- e.isLight && e.layers.test(t.layers) && (O.pushLight(e), e.castShadow && O.pushShadow(e));
5440
+ n === null && (n = e), M = Ze.get(n), M.init(t), ne.push(M), n.traverseVisible(function(e) {
5441
+ e.isLight && e.layers.test(t.layers) && (M.pushLight(e), e.castShadow && M.pushShadow(e));
5442
5442
  }), e !== n && e.traverseVisible(function(e) {
5443
- e.isLight && e.layers.test(t.layers) && (O.pushLight(e), e.castShadow && O.pushShadow(e));
5444
- }), O.setupLights();
5443
+ e.isLight && e.layers.test(t.layers) && (M.pushLight(e), e.castShadow && M.pushShadow(e));
5444
+ }), M.setupLights();
5445
5445
  let r = /* @__PURE__ */ new Set();
5446
5446
  return e.traverse(function(e) {
5447
5447
  if (!(e.isMesh || e.isPoints || e.isLine || e.isSprite)) return;
@@ -5451,7 +5451,7 @@ var Gr = class {
5451
5451
  St(a, n, e), r.add(a);
5452
5452
  }
5453
5453
  else St(t, n, e), r.add(t);
5454
- }), O = A.pop(), r;
5454
+ }), M = ne.pop(), r;
5455
5455
  }, this.compileAsync = function(e, t, n = null) {
5456
5456
  let r = this.compile(e, t, n);
5457
5457
  return new Promise((t) => {
@@ -5482,55 +5482,55 @@ var Gr = class {
5482
5482
  Ct = e, Z.setAnimationLoop(e), e === null ? Dt.stop() : Dt.start();
5483
5483
  }, Z.addEventListener("sessionstart", Tt), Z.addEventListener("sessionend", Et), this.render = function(e, t) {
5484
5484
  if (t !== void 0 && t.isCamera !== !0) {
5485
- v("WebGLRenderer.render: camera is not an instance of THREE.Camera.");
5485
+ S("WebGLRenderer.render: camera is not an instance of THREE.Camera.");
5486
5486
  return;
5487
5487
  }
5488
- if (re === !0) return;
5489
- let n = Z.enabled === !0 && Z.isPresenting === !0, r = M !== null && (L === null || n) && M.begin(N, L);
5490
- if (e.matrixWorldAutoUpdate === !0 && e.updateMatrixWorld(), t.parent === null && t.matrixWorldAutoUpdate === !0 && t.updateMatrixWorld(), Z.enabled === !0 && Z.isPresenting === !0 && (M === null || M.isCompositing() === !1) && (Z.cameraAutoUpdate === !0 && Z.updateCamera(t), t = Z.getCamera()), e.isScene === !0 && e.onBeforeRender(N, e, t, L), O = Ze.get(e, A.length), O.init(t), A.push(O), De.multiplyMatrices(t.projectionMatrix, t.matrixWorldInverse), we.setFromProjectionMatrix(De, ae, t.reversedDepth), Ee = this.localClippingEnabled, Te = Qe.init(this.clippingPlanes, Ee), D = Xe.get(e, ee.length), D.init(), ee.push(D), Z.enabled === !0 && Z.isPresenting === !0) {
5491
- let e = N.xr.getDepthSensingMesh();
5492
- e !== null && Ot(e, t, -Infinity, N.sortObjects);
5488
+ if (L === !0) return;
5489
+ let n = Z.enabled === !0 && Z.isPresenting === !0, r = F !== null && (z === null || n) && F.begin(I, z);
5490
+ if (e.matrixWorldAutoUpdate === !0 && e.updateMatrixWorld(), t.parent === null && t.matrixWorldAutoUpdate === !0 && t.updateMatrixWorld(), Z.enabled === !0 && Z.isPresenting === !0 && (F === null || F.isCompositing() === !1) && (Z.cameraAutoUpdate === !0 && Z.updateCamera(t), t = Z.getCamera()), e.isScene === !0 && e.onBeforeRender(I, e, t, z), M = Ze.get(e, ne.length), M.init(t), ne.push(M), we.multiplyMatrices(t.projectionMatrix, t.matrixWorldInverse), xe.setFromProjectionMatrix(we, Oe, t.reversedDepth), Ce = this.localClippingEnabled, Se = Qe.init(this.clippingPlanes, Ce), A = Xe.get(e, N.length), A.init(), N.push(A), Z.enabled === !0 && Z.isPresenting === !0) {
5491
+ let e = I.xr.getDepthSensingMesh();
5492
+ e !== null && Ot(e, t, -Infinity, I.sortObjects);
5493
5493
  }
5494
- Ot(e, t, 0, N.sortObjects), D.finish(), N.sortObjects === !0 && D.sort(_e, ve), Me = Z.enabled === !1 || Z.isPresenting === !1 || Z.hasDepthSensing() === !1, Me && et.addToRenderList(D, e), this.info.render.frame++, Te === !0 && Qe.beginShadows();
5495
- let i = O.state.shadowsArray;
5496
- if ($e.render(i, e, t), Te === !0 && Qe.endShadows(), this.info.autoReset === !0 && this.info.reset(), (r && M.hasRenderPass()) === !1) {
5497
- let n = D.opaque, r = D.transmissive;
5498
- if (O.setupLights(), t.isArrayCamera) {
5494
+ Ot(e, t, 0, I.sortObjects), A.finish(), I.sortObjects === !0 && A.sort(_e, ve), je = Z.enabled === !1 || Z.isPresenting === !1 || Z.hasDepthSensing() === !1, je && et.addToRenderList(A, e), this.info.render.frame++, Se === !0 && Qe.beginShadows();
5495
+ let i = M.state.shadowsArray;
5496
+ if ($e.render(i, e, t), Se === !0 && Qe.endShadows(), this.info.autoReset === !0 && this.info.reset(), (r && F.hasRenderPass()) === !1) {
5497
+ let n = A.opaque, r = A.transmissive;
5498
+ if (M.setupLights(), t.isArrayCamera) {
5499
5499
  let i = t.cameras;
5500
5500
  if (r.length > 0) for (let t = 0, a = i.length; t < a; t++) {
5501
5501
  let a = i[t];
5502
5502
  Q(n, r, e, a);
5503
5503
  }
5504
- Me && et.render(e);
5504
+ je && et.render(e);
5505
5505
  for (let t = 0, n = i.length; t < n; t++) {
5506
5506
  let n = i[t];
5507
- kt(D, e, n, n.viewport);
5507
+ kt(A, e, n, n.viewport);
5508
5508
  }
5509
- } else r.length > 0 && Q(n, r, e, t), Me && et.render(e), kt(D, e, t);
5509
+ } else r.length > 0 && Q(n, r, e, t), je && et.render(e), kt(A, e, t);
5510
5510
  }
5511
- L !== null && I === 0 && (X.updateMultisampleRenderTarget(L), X.updateRenderTargetMipmap(L)), r && M.end(N), e.isScene === !0 && e.onAfterRender(N, e, t), at.resetDefaultState(), R = -1, oe = null, A.pop(), A.length > 0 ? (O = A[A.length - 1], Te === !0 && Qe.setGlobalState(N.clippingPlanes, O.state.camera)) : O = null, ee.pop(), D = ee.length > 0 ? ee[ee.length - 1] : null;
5511
+ z !== null && re === 0 && (X.updateMultisampleRenderTarget(z), X.updateRenderTargetMipmap(z)), r && F.end(I), e.isScene === !0 && e.onAfterRender(I, e, t), at.resetDefaultState(), ie = -1, B = null, ne.pop(), ne.length > 0 ? (M = ne[ne.length - 1], Se === !0 && Qe.setGlobalState(I.clippingPlanes, M.state.camera)) : M = null, N.pop(), A = N.length > 0 ? N[N.length - 1] : null;
5512
5512
  };
5513
5513
  function Ot(e, t, n, r) {
5514
5514
  if (e.visible === !1) return;
5515
5515
  if (e.layers.test(t.layers)) {
5516
5516
  if (e.isGroup) n = e.renderOrder;
5517
5517
  else if (e.isLOD) e.autoUpdate === !0 && e.update(t);
5518
- else if (e.isLight) O.pushLight(e), e.castShadow && O.pushShadow(e);
5518
+ else if (e.isLight) M.pushLight(e), e.castShadow && M.pushShadow(e);
5519
5519
  else if (e.isSprite) {
5520
- if (!e.frustumCulled || we.intersectsSprite(e)) {
5521
- r && Ae.setFromMatrixPosition(e.matrixWorld).applyMatrix4(De);
5520
+ if (!e.frustumCulled || xe.intersectsSprite(e)) {
5521
+ r && ke.setFromMatrixPosition(e.matrixWorld).applyMatrix4(we);
5522
5522
  let t = qe.update(e), i = e.material;
5523
- i.visible && D.push(e, t, i, n, Ae.z, null);
5523
+ i.visible && A.push(e, t, i, n, ke.z, null);
5524
5524
  }
5525
- } else if ((e.isMesh || e.isLine || e.isPoints) && (!e.frustumCulled || we.intersectsObject(e))) {
5525
+ } else if ((e.isMesh || e.isLine || e.isPoints) && (!e.frustumCulled || xe.intersectsObject(e))) {
5526
5526
  let t = qe.update(e), i = e.material;
5527
- if (r && (e.boundingSphere === void 0 ? (t.boundingSphere === null && t.computeBoundingSphere(), Ae.copy(t.boundingSphere.center)) : (e.boundingSphere === null && e.computeBoundingSphere(), Ae.copy(e.boundingSphere.center)), Ae.applyMatrix4(e.matrixWorld).applyMatrix4(De)), Array.isArray(i)) {
5527
+ if (r && (e.boundingSphere === void 0 ? (t.boundingSphere === null && t.computeBoundingSphere(), ke.copy(t.boundingSphere.center)) : (e.boundingSphere === null && e.computeBoundingSphere(), ke.copy(e.boundingSphere.center)), ke.applyMatrix4(e.matrixWorld).applyMatrix4(we)), Array.isArray(i)) {
5528
5528
  let r = t.groups;
5529
5529
  for (let a = 0, o = r.length; a < o; a++) {
5530
5530
  let o = r[a], s = i[o.materialIndex];
5531
- s && s.visible && D.push(e, t, s, n, Ae.z, o);
5531
+ s && s.visible && A.push(e, t, s, n, ke.z, o);
5532
5532
  }
5533
- } else i.visible && D.push(e, t, i, n, Ae.z, null);
5533
+ } else i.visible && A.push(e, t, i, n, ke.z, null);
5534
5534
  }
5535
5535
  }
5536
5536
  let i = e.children;
@@ -5538,31 +5538,31 @@ var Gr = class {
5538
5538
  }
5539
5539
  function kt(e, t, n, r) {
5540
5540
  let { opaque: i, transmissive: a, transparent: o } = e;
5541
- O.setupLightsView(n), Te === !0 && Qe.setGlobalState(N.clippingPlanes, n), r && J.viewport(se.copy(r)), i.length > 0 && $(i, t, n), a.length > 0 && $(a, t, n), o.length > 0 && $(o, t, n), J.buffers.depth.setTest(!0), J.buffers.depth.setMask(!0), J.buffers.color.setMask(!0), J.setPolygonOffset(!1);
5541
+ M.setupLightsView(n), Se === !0 && Qe.setGlobalState(I.clippingPlanes, n), r && J.viewport(V.copy(r)), i.length > 0 && $(i, t, n), a.length > 0 && $(a, t, n), o.length > 0 && $(o, t, n), J.buffers.depth.setTest(!0), J.buffers.depth.setMask(!0), J.buffers.color.setMask(!0), J.setPolygonOffset(!1);
5542
5542
  }
5543
5543
  function Q(e, t, n, r) {
5544
5544
  if ((n.isScene === !0 ? n.overrideMaterial : null) !== null) return;
5545
- if (O.state.transmissionRenderTarget[r.id] === void 0) {
5545
+ if (M.state.transmissionRenderTarget[r.id] === void 0) {
5546
5546
  let e = K.has("EXT_color_buffer_half_float") || K.has("EXT_color_buffer_float");
5547
- O.state.transmissionRenderTarget[r.id] = new h(1, 1, {
5547
+ M.state.transmissionRenderTarget[r.id] = new k(1, 1, {
5548
5548
  generateMipmaps: !0,
5549
- type: e ? z : ge,
5550
- minFilter: i,
5549
+ type: e ? he : ae,
5550
+ minFilter: ee,
5551
5551
  samples: q.samples,
5552
- stencilBuffer: a,
5552
+ stencilBuffer: s,
5553
5553
  resolveDepthBuffer: !1,
5554
5554
  resolveStencilBuffer: !1,
5555
- colorSpace: V.workingColorSpace
5555
+ colorSpace: O.workingColorSpace
5556
5556
  });
5557
5557
  }
5558
- let o = O.state.transmissionRenderTarget[r.id], s = r.viewport || se;
5559
- o.setSize(s.z * N.transmissionResolutionScale, s.w * N.transmissionResolutionScale);
5560
- let c = N.getRenderTarget(), l = N.getActiveCubeFace(), u = N.getActiveMipmapLevel();
5561
- N.setRenderTarget(o), N.getClearColor(ue), de = N.getClearAlpha(), de < 1 && N.setClearColor(16777215, .5), N.clear(), Me && et.render(n);
5562
- let d = N.toneMapping;
5563
- N.toneMapping = 0;
5564
- let f = r.viewport;
5565
- if (r.viewport !== void 0 && (r.viewport = void 0), O.setupLightsView(r), Te === !0 && Qe.setGlobalState(N.clippingPlanes, r), $(e, n, r), X.updateMultisampleRenderTarget(o), X.updateRenderTargetMipmap(o), K.has("WEBGL_multisampled_render_to_texture") === !1) {
5558
+ let i = M.state.transmissionRenderTarget[r.id], a = r.viewport || V;
5559
+ i.setSize(a.z * I.transmissionResolutionScale, a.w * I.transmissionResolutionScale);
5560
+ let o = I.getRenderTarget(), c = I.getActiveCubeFace(), l = I.getActiveMipmapLevel();
5561
+ I.setRenderTarget(i), I.getClearColor(le), de = I.getClearAlpha(), de < 1 && I.setClearColor(16777215, .5), I.clear(), je && et.render(n);
5562
+ let u = I.toneMapping;
5563
+ I.toneMapping = 0;
5564
+ let d = r.viewport;
5565
+ if (r.viewport !== void 0 && (r.viewport = void 0), M.setupLightsView(r), Se === !0 && Qe.setGlobalState(I.clippingPlanes, r), $(e, n, r), X.updateMultisampleRenderTarget(i), X.updateRenderTargetMipmap(i), K.has("WEBGL_multisampled_render_to_texture") === !1) {
5566
5566
  let e = !1;
5567
5567
  for (let i = 0, a = t.length; i < a; i++) {
5568
5568
  let { object: a, geometry: o, material: s, group: c } = t[i];
@@ -5571,9 +5571,9 @@ var Gr = class {
5571
5571
  s.side = 1, s.needsUpdate = !0, At(a, n, r, o, s, c), s.side = t, s.needsUpdate = !0, e = !0;
5572
5572
  }
5573
5573
  }
5574
- e === !0 && (X.updateMultisampleRenderTarget(o), X.updateRenderTargetMipmap(o));
5574
+ e === !0 && (X.updateMultisampleRenderTarget(i), X.updateRenderTargetMipmap(i));
5575
5575
  }
5576
- N.setRenderTarget(c, l, u), N.setClearColor(ue, de), f !== void 0 && (r.viewport = f), N.toneMapping = d;
5576
+ I.setRenderTarget(o, c, l), I.setClearColor(le, de), d !== void 0 && (r.viewport = d), I.toneMapping = u;
5577
5577
  }
5578
5578
  function $(e, t, n) {
5579
5579
  let r = t.isScene === !0 ? t.overrideMaterial : null;
@@ -5583,18 +5583,18 @@ var Gr = class {
5583
5583
  }
5584
5584
  }
5585
5585
  function At(e, t, n, r, i, a) {
5586
- e.onBeforeRender(N, t, n, r, i, a), e.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse, e.matrixWorld), e.normalMatrix.getNormalMatrix(e.modelViewMatrix), i.onBeforeRender(N, t, n, r, e, a), i.transparent === !0 && i.side === 2 && i.forceSinglePass === !1 ? (i.side = 1, i.needsUpdate = !0, N.renderBufferDirect(n, t, r, i, e, a), i.side = 0, i.needsUpdate = !0, N.renderBufferDirect(n, t, r, i, e, a), i.side = 2) : N.renderBufferDirect(n, t, r, i, e, a), e.onAfterRender(N, t, n, r, i, a);
5586
+ e.onBeforeRender(I, t, n, r, i, a), e.modelViewMatrix.multiplyMatrices(n.matrixWorldInverse, e.matrixWorld), e.normalMatrix.getNormalMatrix(e.modelViewMatrix), i.onBeforeRender(I, t, n, r, e, a), i.transparent === !0 && i.side === 2 && i.forceSinglePass === !1 ? (i.side = 1, i.needsUpdate = !0, I.renderBufferDirect(n, t, r, i, e, a), i.side = 0, i.needsUpdate = !0, I.renderBufferDirect(n, t, r, i, e, a), i.side = 2) : I.renderBufferDirect(n, t, r, i, e, a), e.onAfterRender(I, t, n, r, i, a);
5587
5587
  }
5588
5588
  function jt(e, t, n) {
5589
- t.isScene !== !0 && (t = je);
5590
- let r = Y.get(e), i = O.state.lights, a = O.state.shadowsArray, o = i.state.version, s = Je.getParameters(e, i.state, a, t, n), c = Je.getProgramCacheKey(s), l = r.programs;
5589
+ t.isScene !== !0 && (t = Ae);
5590
+ let r = Y.get(e), i = M.state.lights, a = M.state.shadowsArray, o = i.state.version, s = Je.getParameters(e, i.state, a, t, n), c = Je.getProgramCacheKey(s), l = r.programs;
5591
5591
  r.environment = e.isMeshStandardMaterial || e.isMeshLambertMaterial || e.isMeshPhongMaterial ? t.environment : null, r.fog = t.fog;
5592
5592
  let u = e.isMeshStandardMaterial || e.isMeshLambertMaterial && !e.envMap || e.isMeshPhongMaterial && !e.envMap;
5593
5593
  r.envMap = We.get(e.envMap || r.environment, u), r.envMapRotation = r.environment !== null && e.envMap === null ? t.environmentRotation : e.envMapRotation, l === void 0 && (e.addEventListener("dispose", yt), l = /* @__PURE__ */ new Map(), r.programs = l);
5594
5594
  let d = l.get(c);
5595
5595
  if (d !== void 0) {
5596
5596
  if (r.currentProgram === d && r.lightsStateVersion === o) return Nt(e, s), d;
5597
- } else s.uniforms = Je.getUniforms(e), e.onBeforeCompile(s, N), d = Je.acquireProgram(s, c), l.set(c, d), r.uniforms = s.uniforms;
5597
+ } else s.uniforms = Je.getUniforms(e), e.onBeforeCompile(s, I), d = Je.acquireProgram(s, c), l.set(c, d), r.uniforms = s.uniforms;
5598
5598
  let f = r.uniforms;
5599
5599
  return (!e.isShaderMaterial && !e.isRawShaderMaterial || e.clipping === !0) && (f.clippingPlanes = Qe.uniform), Nt(e, s), r.needsLights = It(e), r.lightsStateVersion = o, r.needsLights && (f.ambientLightColor.value = i.state.ambient, f.lightProbe.value = i.state.probe, f.directionalLights.value = i.state.directional, f.directionalLightShadows.value = i.state.directionalShadow, f.spotLights.value = i.state.spot, f.spotLightShadows.value = i.state.spotShadow, f.rectAreaLights.value = i.state.rectArea, f.ltc_1.value = i.state.rectAreaLTC1, f.ltc_2.value = i.state.rectAreaLTC2, f.pointLights.value = i.state.point, f.pointLightShadows.value = i.state.pointShadow, f.hemisphereLights.value = i.state.hemi, f.directionalShadowMatrix.value = i.state.directionalShadowMatrix, f.spotLightMatrix.value = i.state.spotLightMatrix, f.spotLightMap.value = i.state.spotLightMap, f.pointShadowMatrix.value = i.state.pointShadowMatrix), r.currentProgram = d, r.uniformsList = null, d;
5600
5600
  }
@@ -5610,12 +5610,12 @@ var Gr = class {
5610
5610
  n.outputColorSpace = t.outputColorSpace, n.batching = t.batching, n.batchingColor = t.batchingColor, n.instancing = t.instancing, n.instancingColor = t.instancingColor, n.instancingMorph = t.instancingMorph, n.skinning = t.skinning, n.morphTargets = t.morphTargets, n.morphNormals = t.morphNormals, n.morphColors = t.morphColors, n.morphTargetsCount = t.morphTargetsCount, n.numClippingPlanes = t.numClippingPlanes, n.numIntersection = t.numClipIntersection, n.vertexAlphas = t.vertexAlphas, n.vertexTangents = t.vertexTangents, n.toneMapping = t.toneMapping;
5611
5611
  }
5612
5612
  function Pt(e, t, n, r, i) {
5613
- t.isScene !== !0 && (t = je), X.resetTextureUnits();
5614
- let a = t.fog, o = r.isMeshStandardMaterial || r.isMeshLambertMaterial || r.isMeshPhongMaterial ? t.environment : null, s = L === null ? N.outputColorSpace : L.isXRRenderTarget === !0 ? L.texture.colorSpace : ie, c = r.isMeshStandardMaterial || r.isMeshLambertMaterial && !r.envMap || r.isMeshPhongMaterial && !r.envMap, l = We.get(r.envMap || o, c), u = r.vertexColors === !0 && !!n.attributes.color && n.attributes.color.itemSize === 4, d = !!n.attributes.tangent && (!!r.normalMap || r.anisotropy > 0), f = !!n.morphAttributes.position, p = !!n.morphAttributes.normal, m = !!n.morphAttributes.color, h = 0;
5615
- r.toneMapped && (L === null || L.isXRRenderTarget === !0) && (h = N.toneMapping);
5616
- let g = n.morphAttributes.position || n.morphAttributes.normal || n.morphAttributes.color, _ = g === void 0 ? 0 : g.length, v = Y.get(r), y = O.state.lights;
5617
- if (Te === !0 && (Ee === !0 || e !== oe)) {
5618
- let t = e === oe && r.id === R;
5613
+ t.isScene !== !0 && (t = Ae), X.resetTextureUnits();
5614
+ let a = t.fog, o = r.isMeshStandardMaterial || r.isMeshLambertMaterial || r.isMeshPhongMaterial ? t.environment : null, s = z === null ? I.outputColorSpace : z.isXRRenderTarget === !0 ? z.texture.colorSpace : te, c = r.isMeshStandardMaterial || r.isMeshLambertMaterial && !r.envMap || r.isMeshPhongMaterial && !r.envMap, l = We.get(r.envMap || o, c), u = r.vertexColors === !0 && !!n.attributes.color && n.attributes.color.itemSize === 4, d = !!n.attributes.tangent && (!!r.normalMap || r.anisotropy > 0), f = !!n.morphAttributes.position, p = !!n.morphAttributes.normal, m = !!n.morphAttributes.color, h = 0;
5615
+ r.toneMapped && (z === null || z.isXRRenderTarget === !0) && (h = I.toneMapping);
5616
+ let g = n.morphAttributes.position || n.morphAttributes.normal || n.morphAttributes.color, _ = g === void 0 ? 0 : g.length, v = Y.get(r), y = M.state.lights;
5617
+ if (Se === !0 && (Ce === !0 || e !== B)) {
5618
+ let t = e === B && r.id === ie;
5619
5619
  Qe.setState(r, e, t);
5620
5620
  }
5621
5621
  let b = !1;
@@ -5623,10 +5623,10 @@ var Gr = class {
5623
5623
  let x = v.currentProgram;
5624
5624
  b === !0 && (x = jt(r, t, i));
5625
5625
  let S = !1, C = !1, w = !1, T = x.getUniforms(), E = v.uniforms;
5626
- if (J.useProgram(x.program) && (S = !0, C = !0, w = !0), r.id !== R && (R = r.id, C = !0), S || oe !== e) {
5626
+ if (J.useProgram(x.program) && (S = !0, C = !0, w = !0), r.id !== ie && (ie = r.id, C = !0), S || B !== e) {
5627
5627
  J.buffers.depth.getReversed() && e.reversedDepth !== !0 && (e._reversedDepth = !0, e.updateProjectionMatrix()), T.setValue(G, "projectionMatrix", e.projectionMatrix), T.setValue(G, "viewMatrix", e.matrixWorldInverse);
5628
5628
  let t = T.map.cameraPosition;
5629
- t !== void 0 && t.setValue(G, ke.setFromMatrixPosition(e.matrixWorld)), q.logarithmicDepthBuffer && T.setValue(G, "logDepthBufFC", 2 / (Math.log(e.far + 1) / Math.LN2)), (r.isMeshPhongMaterial || r.isMeshToonMaterial || r.isMeshLambertMaterial || r.isMeshBasicMaterial || r.isMeshStandardMaterial || r.isShaderMaterial) && T.setValue(G, "isOrthographic", e.isOrthographicCamera === !0), oe !== e && (oe = e, C = !0, w = !0);
5629
+ t !== void 0 && t.setValue(G, De.setFromMatrixPosition(e.matrixWorld)), q.logarithmicDepthBuffer && T.setValue(G, "logDepthBufFC", 2 / (Math.log(e.far + 1) / Math.LN2)), (r.isMeshPhongMaterial || r.isMeshToonMaterial || r.isMeshLambertMaterial || r.isMeshBasicMaterial || r.isMeshStandardMaterial || r.isShaderMaterial) && T.setValue(G, "isOrthographic", e.isOrthographicCamera === !0), B !== e && (B = e, C = !0, w = !0);
5630
5630
  }
5631
5631
  if (v.needsLights && (y.state.directionalShadowMap.length > 0 && T.setValue(G, "directionalShadowMap", y.state.directionalShadowMap, X), y.state.spotShadowMap.length > 0 && T.setValue(G, "spotShadowMap", y.state.spotShadowMap, X), y.state.pointShadowMap.length > 0 && T.setValue(G, "pointShadowMap", y.state.pointShadowMap, X)), i.isSkinnedMesh) {
5632
5632
  T.setOptional(G, i, "bindMatrix"), T.setOptional(G, i, "bindMatrixInverse");
@@ -5635,7 +5635,7 @@ var Gr = class {
5635
5635
  }
5636
5636
  i.isBatchedMesh && (T.setOptional(G, i, "batchingTexture"), T.setValue(G, "batchingTexture", i._matricesTexture, X), T.setOptional(G, i, "batchingIdTexture"), T.setValue(G, "batchingIdTexture", i._indirectTexture, X), T.setOptional(G, i, "batchingColorTexture"), i._colorsTexture !== null && T.setValue(G, "batchingColorTexture", i._colorsTexture, X));
5637
5637
  let D = n.morphAttributes;
5638
- if ((D.position !== void 0 || D.normal !== void 0 || D.color !== void 0) && tt.update(i, n, x), (C || v.receiveShadow !== i.receiveShadow) && (v.receiveShadow = i.receiveShadow, T.setValue(G, "receiveShadow", i.receiveShadow)), (r.isMeshStandardMaterial || r.isMeshLambertMaterial || r.isMeshPhongMaterial) && r.envMap === null && t.environment !== null && (E.envMapIntensity.value = t.environmentIntensity), E.dfgLUT !== void 0 && (E.dfgLUT.value = Wr()), C && (T.setValue(G, "toneMappingExposure", N.toneMappingExposure), v.needsLights && Ft(E, w), a && r.fog === !0 && Ye.refreshFogUniforms(E, a), Ye.refreshMaterialUniforms(E, r, U, me, O.state.transmissionRenderTarget[e.id]), wn.upload(G, Mt(v), E, X)), r.isShaderMaterial && r.uniformsNeedUpdate === !0 && (wn.upload(G, Mt(v), E, X), r.uniformsNeedUpdate = !1), r.isSpriteMaterial && T.setValue(G, "center", i.center), T.setValue(G, "modelViewMatrix", i.modelViewMatrix), T.setValue(G, "normalMatrix", i.normalMatrix), T.setValue(G, "modelMatrix", i.matrixWorld), r.isShaderMaterial || r.isRawShaderMaterial) {
5638
+ if ((D.position !== void 0 || D.normal !== void 0 || D.color !== void 0) && tt.update(i, n, x), (C || v.receiveShadow !== i.receiveShadow) && (v.receiveShadow = i.receiveShadow, T.setValue(G, "receiveShadow", i.receiveShadow)), (r.isMeshStandardMaterial || r.isMeshLambertMaterial || r.isMeshPhongMaterial) && r.envMap === null && t.environment !== null && (E.envMapIntensity.value = t.environmentIntensity), E.dfgLUT !== void 0 && (E.dfgLUT.value = Wr()), C && (T.setValue(G, "toneMappingExposure", I.toneMappingExposure), v.needsLights && Ft(E, w), a && r.fog === !0 && Ye.refreshFogUniforms(E, a), Ye.refreshMaterialUniforms(E, r, H, pe, M.state.transmissionRenderTarget[e.id]), wn.upload(G, Mt(v), E, X)), r.isShaderMaterial && r.uniformsNeedUpdate === !0 && (wn.upload(G, Mt(v), E, X), r.uniformsNeedUpdate = !1), r.isSpriteMaterial && T.setValue(G, "center", i.center), T.setValue(G, "modelViewMatrix", i.modelViewMatrix), T.setValue(G, "normalMatrix", i.normalMatrix), T.setValue(G, "modelMatrix", i.matrixWorld), r.isShaderMaterial || r.isRawShaderMaterial) {
5639
5639
  let e = r.uniformsGroups;
5640
5640
  for (let t = 0, n = e.length; t < n; t++) {
5641
5641
  let n = e[t];
@@ -5651,11 +5651,11 @@ var Gr = class {
5651
5651
  return e.isMeshLambertMaterial || e.isMeshToonMaterial || e.isMeshPhongMaterial || e.isMeshStandardMaterial || e.isShadowMaterial || e.isShaderMaterial && e.lights === !0;
5652
5652
  }
5653
5653
  this.getActiveCubeFace = function() {
5654
- return F;
5654
+ return R;
5655
5655
  }, this.getActiveMipmapLevel = function() {
5656
- return I;
5656
+ return re;
5657
5657
  }, this.getRenderTarget = function() {
5658
- return L;
5658
+ return z;
5659
5659
  }, this.setRenderTargetTextures = function(e, t, n) {
5660
5660
  let r = Y.get(e);
5661
5661
  r.__autoAllocateDepthBuffer = e.resolveDepthBuffer === !1, r.__autoAllocateDepthBuffer === !1 && (r.__useRenderToTexture = !1), Y.get(e.texture).__webglTexture = t, Y.get(e.depthTexture).__webglTexture = r.__autoAllocateDepthBuffer ? void 0 : n, r.__hasExternalTextures = !0;
@@ -5665,12 +5665,12 @@ var Gr = class {
5665
5665
  };
5666
5666
  let Lt = G.createFramebuffer();
5667
5667
  this.setRenderTarget = function(e, t = 0, n = 0) {
5668
- L = e, F = t, I = n;
5668
+ z = e, R = t, re = n;
5669
5669
  let r = null, i = !1, a = !1;
5670
5670
  if (e) {
5671
5671
  let o = Y.get(e);
5672
5672
  if (o.__useDefaultFramebuffer !== void 0) {
5673
- J.bindFramebuffer(G.FRAMEBUFFER, o.__webglFramebuffer), se.copy(e.viewport), B.copy(e.scissor), le = e.scissorTest, J.viewport(se), J.scissor(B), J.setScissorTest(le), R = -1;
5673
+ J.bindFramebuffer(G.FRAMEBUFFER, o.__webglFramebuffer), V.copy(e.viewport), se.copy(e.scissor), ce = e.scissorTest, J.viewport(V), J.scissor(se), J.setScissorTest(ce), ie = -1;
5674
5674
  return;
5675
5675
  } else if (o.__webglFramebuffer === void 0) X.setupRenderTarget(e);
5676
5676
  else if (o.__hasExternalTextures) X.rebindTextures(e, Y.get(e.texture).__webglTexture, Y.get(e.depthTexture).__webglTexture);
@@ -5684,9 +5684,9 @@ var Gr = class {
5684
5684
  let s = e.texture;
5685
5685
  (s.isData3DTexture || s.isDataArrayTexture || s.isCompressedArrayTexture) && (a = !0);
5686
5686
  let c = Y.get(e).__webglFramebuffer;
5687
- e.isWebGLCubeRenderTarget ? (r = Array.isArray(c[t]) ? c[t][n] : c[t], i = !0) : r = e.samples > 0 && X.useMultisampledRTT(e) === !1 ? Y.get(e).__webglMultisampledFramebuffer : Array.isArray(c) ? c[n] : c, se.copy(e.viewport), B.copy(e.scissor), le = e.scissorTest;
5688
- } else se.copy(xe).multiplyScalar(U).floor(), B.copy(Se).multiplyScalar(U).floor(), le = Ce;
5689
- if (n !== 0 && (r = Lt), J.bindFramebuffer(G.FRAMEBUFFER, r) && J.drawBuffers(e, r), J.viewport(se), J.scissor(B), J.setScissorTest(le), i) {
5687
+ e.isWebGLCubeRenderTarget ? (r = Array.isArray(c[t]) ? c[t][n] : c[t], i = !0) : r = e.samples > 0 && X.useMultisampledRTT(e) === !1 ? Y.get(e).__webglMultisampledFramebuffer : Array.isArray(c) ? c[n] : c, V.copy(e.viewport), se.copy(e.scissor), ce = e.scissorTest;
5688
+ } else V.copy(ye).multiplyScalar(H).floor(), se.copy(be).multiplyScalar(H).floor(), ce = U;
5689
+ if (n !== 0 && (r = Lt), J.bindFramebuffer(G.FRAMEBUFFER, r) && J.drawBuffers(e, r), J.viewport(V), J.scissor(se), J.setScissorTest(ce), i) {
5690
5690
  let r = Y.get(e.texture);
5691
5691
  G.framebufferTexture2D(G.FRAMEBUFFER, G.COLOR_ATTACHMENT0, G.TEXTURE_CUBE_MAP_POSITIVE_X + t, r.__webglTexture, n);
5692
5692
  } else if (a) {
@@ -5699,10 +5699,10 @@ var Gr = class {
5699
5699
  let t = Y.get(e.texture);
5700
5700
  G.framebufferTexture2D(G.FRAMEBUFFER, G.COLOR_ATTACHMENT0, G.TEXTURE_2D, t.__webglTexture, n);
5701
5701
  }
5702
- R = -1;
5702
+ ie = -1;
5703
5703
  }, this.readRenderTargetPixels = function(e, t, n, r, i, a, o, s = 0) {
5704
5704
  if (!(e && e.isWebGLRenderTarget)) {
5705
- v("WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");
5705
+ S("WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");
5706
5706
  return;
5707
5707
  }
5708
5708
  let c = Y.get(e).__webglFramebuffer;
@@ -5711,33 +5711,33 @@ var Gr = class {
5711
5711
  try {
5712
5712
  let o = e.textures[s], c = o.format, l = o.type;
5713
5713
  if (e.textures.length > 1 && G.readBuffer(G.COLOR_ATTACHMENT0 + s), !q.textureFormatReadable(c)) {
5714
- v("WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");
5714
+ S("WebGLRenderer.readRenderTargetPixels: renderTarget is not in RGBA or implementation defined format.");
5715
5715
  return;
5716
5716
  }
5717
5717
  if (!q.textureTypeReadable(l)) {
5718
- v("WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");
5718
+ S("WebGLRenderer.readRenderTargetPixels: renderTarget is not in UnsignedByteType or implementation defined type.");
5719
5719
  return;
5720
5720
  }
5721
5721
  t >= 0 && t <= e.width - r && n >= 0 && n <= e.height - i && G.readPixels(t, n, r, i, it.convert(c), it.convert(l), a);
5722
5722
  } finally {
5723
- let e = L === null ? null : Y.get(L).__webglFramebuffer;
5723
+ let e = z === null ? null : Y.get(z).__webglFramebuffer;
5724
5724
  J.bindFramebuffer(G.FRAMEBUFFER, e);
5725
5725
  }
5726
5726
  }
5727
- }, this.readRenderTargetPixelsAsync = async function(e, t, n, r, i, a, o, s = 0) {
5727
+ }, this.readRenderTargetPixelsAsync = async function(e, t, r, i, a, o, s, c = 0) {
5728
5728
  if (!(e && e.isWebGLRenderTarget)) throw Error("THREE.WebGLRenderer.readRenderTargetPixels: renderTarget is not THREE.WebGLRenderTarget.");
5729
- let c = Y.get(e).__webglFramebuffer;
5730
- if (e.isWebGLCubeRenderTarget && o !== void 0 && (c = c[o]), c) if (t >= 0 && t <= e.width - r && n >= 0 && n <= e.height - i) {
5731
- J.bindFramebuffer(G.FRAMEBUFFER, c);
5732
- let o = e.textures[s], l = o.format, u = o.type;
5733
- if (e.textures.length > 1 && G.readBuffer(G.COLOR_ATTACHMENT0 + s), !q.textureFormatReadable(l)) throw Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.");
5734
- if (!q.textureTypeReadable(u)) throw Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.");
5735
- let d = G.createBuffer();
5736
- G.bindBuffer(G.PIXEL_PACK_BUFFER, d), G.bufferData(G.PIXEL_PACK_BUFFER, a.byteLength, G.STREAM_READ), G.readPixels(t, n, r, i, it.convert(l), it.convert(u), 0);
5737
- let f = L === null ? null : Y.get(L).__webglFramebuffer;
5738
- J.bindFramebuffer(G.FRAMEBUFFER, f);
5739
- let p = G.fenceSync(G.SYNC_GPU_COMMANDS_COMPLETE, 0);
5740
- return G.flush(), await fe(G, p, 4), G.bindBuffer(G.PIXEL_PACK_BUFFER, d), G.getBufferSubData(G.PIXEL_PACK_BUFFER, 0, a), G.deleteBuffer(d), G.deleteSync(p), a;
5729
+ let l = Y.get(e).__webglFramebuffer;
5730
+ if (e.isWebGLCubeRenderTarget && s !== void 0 && (l = l[s]), l) if (t >= 0 && t <= e.width - i && r >= 0 && r <= e.height - a) {
5731
+ J.bindFramebuffer(G.FRAMEBUFFER, l);
5732
+ let s = e.textures[c], u = s.format, d = s.type;
5733
+ if (e.textures.length > 1 && G.readBuffer(G.COLOR_ATTACHMENT0 + c), !q.textureFormatReadable(u)) throw Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in RGBA or implementation defined format.");
5734
+ if (!q.textureTypeReadable(d)) throw Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: renderTarget is not in UnsignedByteType or implementation defined type.");
5735
+ let f = G.createBuffer();
5736
+ G.bindBuffer(G.PIXEL_PACK_BUFFER, f), G.bufferData(G.PIXEL_PACK_BUFFER, o.byteLength, G.STREAM_READ), G.readPixels(t, r, i, a, it.convert(u), it.convert(d), 0);
5737
+ let p = z === null ? null : Y.get(z).__webglFramebuffer;
5738
+ J.bindFramebuffer(G.FRAMEBUFFER, p);
5739
+ let m = G.fenceSync(G.SYNC_GPU_COMMANDS_COMPLETE, 0);
5740
+ return G.flush(), await n(G, m, 4), G.bindBuffer(G.PIXEL_PACK_BUFFER, f), G.getBufferSubData(G.PIXEL_PACK_BUFFER, 0, o), G.deleteBuffer(f), G.deleteSync(m), o;
5741
5741
  } else throw Error("THREE.WebGLRenderer.readRenderTargetPixelsAsync: requested read bounds are out of range.");
5742
5742
  }, this.copyFramebufferToTexture = function(e, t = null, n = 0) {
5743
5743
  let r = 2 ** -n, i = Math.floor(e.image.width * r), a = Math.floor(e.image.height * r), o = t === null ? 0 : t.x, s = t === null ? 0 : t.y;
@@ -5774,11 +5774,11 @@ var Gr = class {
5774
5774
  }, this.initTexture = function(e) {
5775
5775
  e.isCubeTexture ? X.setTextureCube(e, 0) : e.isData3DTexture ? X.setTexture3D(e, 0) : e.isDataArrayTexture || e.isCompressedArrayTexture ? X.setTexture2DArray(e, 0) : X.setTexture2D(e, 0), J.unbindTexture();
5776
5776
  }, this.resetState = function() {
5777
- F = 0, I = 0, L = null, J.reset(), at.reset();
5777
+ R = 0, re = 0, z = null, J.reset(), at.reset();
5778
5778
  }, typeof __THREE_DEVTOOLS__ < "u" && __THREE_DEVTOOLS__.dispatchEvent(new CustomEvent("observe", { detail: this }));
5779
5779
  }
5780
5780
  get coordinateSystem() {
5781
- return ae;
5781
+ return Oe;
5782
5782
  }
5783
5783
  get outputColorSpace() {
5784
5784
  return this._outputColorSpace;
@@ -5786,10 +5786,10 @@ var Gr = class {
5786
5786
  set outputColorSpace(e) {
5787
5787
  this._outputColorSpace = e;
5788
5788
  let t = this.getContext();
5789
- t.drawingBufferColorSpace = V._getDrawingBufferColorSpace(e), t.unpackColorSpace = V._getUnpackColorSpace();
5789
+ t.drawingBufferColorSpace = O._getDrawingBufferColorSpace(e), t.unpackColorSpace = O._getUnpackColorSpace();
5790
5790
  }
5791
5791
  };
5792
5792
  //#endregion
5793
5793
  export { K as n, Gr as r, tt as t };
5794
5794
 
5795
- //# sourceMappingURL=three.module-C4Q1skJQ.mjs.map
5795
+ //# sourceMappingURL=three.module-Bmy3sVQ-.mjs.map