@roomle/web-sdk 3.6.0 → 3.7.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/{BufferGeometry-DLEagG41.mjs → BufferGeometry-BLeRuMkh.mjs} +1 -1
- package/lib/{BufferGeometry-DLEagG41.mjs.map → BufferGeometry-BLeRuMkh.mjs.map} +1 -1
- package/lib/ConfiguratorKernel.js +54 -73
- package/lib/ConfiguratorKernel.wasm +0 -0
- package/lib/{GLTFExporter-D8qsdwDK.mjs → GLTFExporter-CFXCqoLa.mjs} +141 -141
- package/lib/{GLTFExporter-D8qsdwDK.mjs.map → GLTFExporter-CFXCqoLa.mjs.map} +1 -1
- package/lib/{PointLightHelper-BnjxGaOG.mjs → PointLightHelper-BEJEy6l_.mjs} +2 -2
- package/lib/{PointLightHelper-BnjxGaOG.mjs.map → PointLightHelper-BEJEy6l_.mjs.map} +1 -1
- package/lib/RoomleCore.js +59 -79
- package/lib/RoomleCore.wasm +0 -0
- package/lib/RoomleToolsCore.js +54 -74
- package/lib/RoomleToolsCore.wasm +0 -0
- package/lib/{SpotLightHelper-DqsfqCrs.mjs → SpotLightHelper-aXFW8qaJ.mjs} +2 -2
- package/lib/{SpotLightHelper-DqsfqCrs.mjs.map → SpotLightHelper-aXFW8qaJ.mjs.map} +1 -1
- package/lib/{USDZExporter-DxIqi8St.mjs → USDZExporter-B4hsiwhd.mjs} +2 -2
- package/lib/{USDZExporter-DxIqi8St.mjs.map → USDZExporter-B4hsiwhd.mjs.map} +1 -1
- package/lib/{api-xDJ-Uyom.mjs → api-C2-6Jm5W.mjs} +2 -2
- package/lib/{api-xDJ-Uyom.mjs.map → api-C2-6Jm5W.mjs.map} +1 -1
- package/lib/{banana-for-scale-C_iNmlCT.mjs → banana-for-scale-BV_na-g3.mjs} +4 -4
- package/lib/banana-for-scale-BV_na-g3.mjs.map +1 -0
- package/lib/chunk-C97zSiVS.mjs +20 -0
- package/lib/{common-utils-DMSTohiS.mjs → common-utils-qErzZAiR.mjs} +2 -2
- package/lib/common-utils-qErzZAiR.mjs.map +1 -0
- package/lib/{component-dimensioning-CvRmUja4.mjs → component-dimensioning-DCQTqssC.mjs} +49 -49
- package/lib/{component-dimensioning-CvRmUja4.mjs.map → component-dimensioning-DCQTqssC.mjs.map} +1 -1
- package/lib/{component-raycast-helper-CEp7wy9c.mjs → component-raycast-helper-B3WXp3oq.mjs} +20 -24
- package/lib/component-raycast-helper-B3WXp3oq.mjs.map +1 -0
- package/lib/configurator-CrNkzBp9.mjs +2 -0
- package/lib/configurator-Dx6kcXY_.mjs +45 -0
- package/lib/{configurator-CmuhFgC9.mjs.map → configurator-Dx6kcXY_.mjs.map} +1 -1
- package/lib/{continuous-drawing-helper-v_5UAM9A.mjs → continuous-drawing-helper-DzULJ9d1.mjs} +12 -12
- package/lib/continuous-drawing-helper-DzULJ9d1.mjs.map +1 -0
- package/lib/{decorate-C1QnXPYw.mjs → decorate-BIflHDAa.mjs} +1 -1
- package/lib/{decorate-C1QnXPYw.mjs.map → decorate-BIflHDAa.mjs.map} +1 -1
- package/lib/{dimensioning-helper-Fwpt1HTT.mjs → dimensioning-helper-Cj20VTW0.mjs} +66 -57
- package/lib/{dimensioning-helper-Fwpt1HTT.mjs.map → dimensioning-helper-Cj20VTW0.mjs.map} +1 -1
- package/lib/{glb-viewer-BzNA9-zH.mjs → glb-viewer-BqFcaUlb.mjs} +52 -52
- package/lib/glb-viewer-BqFcaUlb.mjs.map +1 -0
- package/lib/glb-viewer-FYw7R-ya.mjs +2 -0
- package/lib/{homag-intelligence-BwGjJEws.mjs → homag-intelligence-Dkz0AhB4.mjs} +3 -3
- package/lib/{homag-intelligence-BwGjJEws.mjs.map → homag-intelligence-Dkz0AhB4.mjs.map} +1 -1
- package/lib/{imos-ix-poc-export-helper-CQh94HsO.mjs → imos-ix-poc-export-helper-BjIgAfUu.mjs} +4 -3
- package/lib/imos-ix-poc-export-helper-BjIgAfUu.mjs.map +1 -0
- package/lib/kernel-BAQSG9r5.mjs.map +1 -1
- package/lib/{kernel-utils-H74uNY1h.mjs → kernel-utils-CfGzR_WC.mjs} +15 -15
- package/lib/{kernel-utils-H74uNY1h.mjs.map → kernel-utils-CfGzR_WC.mjs.map} +1 -1
- package/lib/{layer-C_JtkhdO.mjs → layer-CFAr2mK_.mjs} +1 -1
- package/lib/{layer-C_JtkhdO.mjs.map → layer-CFAr2mK_.mjs.map} +1 -1
- package/lib/{main-CtVIB52l.mjs → main-DMIVdAcT.mjs} +14471 -14300
- package/lib/main-DMIVdAcT.mjs.map +1 -0
- package/lib/{material-viewer-Bq4smZ6f.mjs → material-viewer-BkwvhHbQ.mjs} +40 -40
- package/lib/material-viewer-BkwvhHbQ.mjs.map +1 -0
- package/lib/planner-BPlxsTRJ.mjs +44 -0
- package/lib/{planner-CVw_xzGh.mjs.map → planner-BPlxsTRJ.mjs.map} +1 -1
- package/lib/planner-oj08ktHE.mjs +2 -0
- package/lib/{plugin-system-D9K46xJk.mjs → plugin-system-XhOJU1MI.mjs} +3 -3
- package/lib/{plugin-system-D9K46xJk.mjs.map → plugin-system-XhOJU1MI.mjs.map} +1 -1
- package/lib/roomle-renderer-BwPvUqSW.mjs +49 -0
- package/lib/roomle-renderer-BwPvUqSW.mjs.map +1 -0
- package/lib/roomle-sdk.d.ts +114 -1116
- package/lib/roomle-sdk.js +6 -6
- package/lib/roomle-webgpu-renderer-CSC5zFdC.mjs +217 -0
- package/lib/roomle-webgpu-renderer-CSC5zFdC.mjs.map +1 -0
- package/lib/{scene-renderer-D8HkTFeZ.mjs → scene-renderer-DWY_zPvU.mjs} +496 -513
- package/lib/scene-renderer-DWY_zPvU.mjs.map +1 -0
- package/lib/{script-loader-D8xCRzTr.mjs → script-loader-CA-XHFKN.mjs} +3 -3
- package/lib/{script-loader-D8xCRzTr.mjs.map → script-loader-CA-XHFKN.mjs.map} +1 -1
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/package.json +1 -1
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/configuratorCoreInterface.d.ts +0 -1
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/src/embind/plannerCoreInterface.d.ts +3 -3
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/ConfiguratorKernel.js +54 -73
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/ConfiguratorKernel.wasm +0 -0
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleCore.js +59 -79
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleCore.wasm +0 -0
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleToolsCore.js +54 -74
- package/lib/static/roomle-core-hsc/node_modules/roomle-core-hsc/wasm_modern/RoomleToolsCore.wasm +0 -0
- package/lib/{stats-helper-HM0TaIM5.mjs → stats-helper-C954Cfgh.mjs} +4 -3
- package/lib/{stats-helper-HM0TaIM5.mjs.map → stats-helper-C954Cfgh.mjs.map} +1 -1
- package/lib/{three.core-CLIofecG.mjs → three.core-mM-jZdgg.mjs} +926 -926
- package/lib/{three.core-CLIofecG.mjs.map → three.core-mM-jZdgg.mjs.map} +1 -1
- package/lib/{three.module-C4Q1skJQ.mjs → three.module-Bmy3sVQ-.mjs} +1210 -1210
- package/lib/{three.module-C4Q1skJQ.mjs.map → three.module-Bmy3sVQ-.mjs.map} +1 -1
- package/lib/{three.webgpu-dFspy2yF.mjs → three.webgpu-0l2TztLa.mjs} +5355 -2935
- package/lib/{three.webgpu-dFspy2yF.mjs.map → three.webgpu-0l2TztLa.mjs.map} +1 -1
- package/lib/{threejs-utils-jEzvlJF1.mjs → threejs-utils-8zlxt158.mjs} +430 -431
- package/lib/threejs-utils-8zlxt158.mjs.map +1 -0
- package/lib/{tools-core-Bf9WsK5v.mjs → tools-core-BzhFD2Wk.mjs} +3 -3
- package/lib/{tools-core-Bf9WsK5v.mjs.map → tools-core-BzhFD2Wk.mjs.map} +1 -1
- package/package.json +1 -1
- package/lib/banana-for-scale-C_iNmlCT.mjs.map +0 -1
- package/lib/common-utils-DMSTohiS.mjs.map +0 -1
- package/lib/component-raycast-helper-CEp7wy9c.mjs.map +0 -1
- package/lib/configurator-BaUt4_LF.mjs +0 -2
- package/lib/configurator-CmuhFgC9.mjs +0 -45
- package/lib/continuous-drawing-helper-v_5UAM9A.mjs.map +0 -1
- package/lib/dimensioning-helper-DTcW85Oq.mjs +0 -2
- package/lib/glb-viewer-BzNA9-zH.mjs.map +0 -1
- package/lib/glb-viewer-DOxBD5k-.mjs +0 -2
- package/lib/imos-ix-poc-export-helper-CQh94HsO.mjs.map +0 -1
- package/lib/main-CtVIB52l.mjs.map +0 -1
- package/lib/material-viewer-Bq4smZ6f.mjs.map +0 -1
- package/lib/planner-CVw_xzGh.mjs +0 -44
- package/lib/planner-si70gWA2.mjs +0 -2
- package/lib/scene-renderer-D8HkTFeZ.mjs.map +0 -1
- package/lib/threejs-utils-jEzvlJF1.mjs.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
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
|
|
242
|
+
diffuse: { value: /* @__PURE__ */ new a(16777215) },
|
|
243
243
|
opacity: { value: 1 },
|
|
244
244
|
map: { value: null },
|
|
245
|
-
mapTransform: { value: /* @__PURE__ */ new
|
|
245
|
+
mapTransform: { value: /* @__PURE__ */ new I() },
|
|
246
246
|
alphaMap: { value: null },
|
|
247
|
-
alphaMapTransform: { value: /* @__PURE__ */ new
|
|
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
|
|
252
|
+
specularMapTransform: { value: /* @__PURE__ */ new I() }
|
|
253
253
|
},
|
|
254
254
|
envmap: {
|
|
255
255
|
envMap: { value: null },
|
|
256
|
-
envMapRotation: { value: /* @__PURE__ */ new
|
|
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
|
|
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
|
|
271
|
+
lightMapTransform: { value: /* @__PURE__ */ new I() }
|
|
272
272
|
},
|
|
273
273
|
bumpmap: {
|
|
274
274
|
bumpMap: { value: null },
|
|
275
|
-
bumpMapTransform: { value: /* @__PURE__ */ new
|
|
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
|
|
281
|
-
normalScale: { value: /* @__PURE__ */ new
|
|
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
|
|
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
|
|
291
|
+
emissiveMapTransform: { value: /* @__PURE__ */ new I() }
|
|
292
292
|
},
|
|
293
293
|
metalnessmap: {
|
|
294
294
|
metalnessMap: { value: null },
|
|
295
|
-
metalnessMapTransform: { value: /* @__PURE__ */ new
|
|
295
|
+
metalnessMapTransform: { value: /* @__PURE__ */ new I() }
|
|
296
296
|
},
|
|
297
297
|
roughnessmap: {
|
|
298
298
|
roughnessMap: { value: null },
|
|
299
|
-
roughnessMapTransform: { value: /* @__PURE__ */ new
|
|
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
|
|
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
|
|
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
|
|
402
|
+
alphaMapTransform: { value: /* @__PURE__ */ new I() },
|
|
403
403
|
alphaTest: { value: 0 },
|
|
404
|
-
uvTransform: { value: /* @__PURE__ */ new
|
|
404
|
+
uvTransform: { value: /* @__PURE__ */ new I() }
|
|
405
405
|
},
|
|
406
406
|
sprite: {
|
|
407
|
-
diffuse: { value: /* @__PURE__ */ new
|
|
407
|
+
diffuse: { value: /* @__PURE__ */ new a(16777215) },
|
|
408
408
|
opacity: { value: 1 },
|
|
409
|
-
center: { value: /* @__PURE__ */ new
|
|
409
|
+
center: { value: /* @__PURE__ */ new L(.5, .5) },
|
|
410
410
|
rotation: { value: 0 },
|
|
411
411
|
map: { value: null },
|
|
412
|
-
mapTransform: { value: /* @__PURE__ */ new
|
|
412
|
+
mapTransform: { value: /* @__PURE__ */ new I() },
|
|
413
413
|
alphaMap: { value: null },
|
|
414
|
-
alphaMapTransform: { value: /* @__PURE__ */ new
|
|
414
|
+
alphaMapTransform: { value: /* @__PURE__ */ new I() },
|
|
415
415
|
alphaTest: { value: 0 }
|
|
416
416
|
}
|
|
417
417
|
}, J = {
|
|
418
418
|
basic: {
|
|
419
|
-
uniforms: /* @__PURE__ */
|
|
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__ */
|
|
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
|
|
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__ */
|
|
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
|
|
466
|
-
specular: { value: /* @__PURE__ */ new
|
|
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__ */
|
|
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
|
|
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__ */
|
|
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
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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__ */
|
|
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
|
|
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
|
|
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__ */
|
|
601
|
+
uniforms: /* @__PURE__ */ Pe([
|
|
602
602
|
q.common,
|
|
603
603
|
q.displacementmap,
|
|
604
604
|
{
|
|
605
|
-
referencePosition: { value: /* @__PURE__ */ new
|
|
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__ */
|
|
614
|
+
uniforms: /* @__PURE__ */ Pe([
|
|
615
615
|
q.lights,
|
|
616
616
|
q.fog,
|
|
617
617
|
{
|
|
618
|
-
color: { value: /* @__PURE__ */ new
|
|
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__ */
|
|
627
|
+
uniforms: /* @__PURE__ */ Pe([J.standard.uniforms, {
|
|
628
628
|
clearcoat: { value: 0 },
|
|
629
629
|
clearcoatMap: { value: null },
|
|
630
|
-
clearcoatMapTransform: { value: /* @__PURE__ */ new
|
|
630
|
+
clearcoatMapTransform: { value: /* @__PURE__ */ new I() },
|
|
631
631
|
clearcoatNormalMap: { value: null },
|
|
632
|
-
clearcoatNormalMapTransform: { value: /* @__PURE__ */ new
|
|
633
|
-
clearcoatNormalScale: { value: /* @__PURE__ */ new
|
|
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
|
|
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
|
|
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
|
|
645
|
+
iridescenceThicknessMapTransform: { value: /* @__PURE__ */ new I() },
|
|
646
646
|
sheen: { value: 0 },
|
|
647
|
-
sheenColor: { value: /* @__PURE__ */ new
|
|
647
|
+
sheenColor: { value: /* @__PURE__ */ new a(0) },
|
|
648
648
|
sheenColorMap: { value: null },
|
|
649
|
-
sheenColorMapTransform: { value: /* @__PURE__ */ new
|
|
649
|
+
sheenColorMapTransform: { value: /* @__PURE__ */ new I() },
|
|
650
650
|
sheenRoughness: { value: 1 },
|
|
651
651
|
sheenRoughnessMap: { value: null },
|
|
652
|
-
sheenRoughnessMapTransform: { value: /* @__PURE__ */ new
|
|
652
|
+
sheenRoughnessMapTransform: { value: /* @__PURE__ */ new I() },
|
|
653
653
|
transmission: { value: 0 },
|
|
654
654
|
transmissionMap: { value: null },
|
|
655
|
-
transmissionMapTransform: { value: /* @__PURE__ */ new
|
|
656
|
-
transmissionSamplerSize: { value: /* @__PURE__ */ new
|
|
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
|
|
660
|
+
thicknessMapTransform: { value: /* @__PURE__ */ new I() },
|
|
661
661
|
attenuationDistance: { value: 0 },
|
|
662
|
-
attenuationColor: { value: /* @__PURE__ */ new
|
|
663
|
-
specularColor: { value: /* @__PURE__ */ new
|
|
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
|
|
665
|
+
specularColorMapTransform: { value: /* @__PURE__ */ new I() },
|
|
666
666
|
specularIntensity: { value: 1 },
|
|
667
667
|
specularIntensityMap: { value: null },
|
|
668
|
-
specularIntensityMapTransform: { value: /* @__PURE__ */ new
|
|
669
|
-
anisotropyVector: { value: /* @__PURE__ */ new
|
|
668
|
+
specularIntensityMapTransform: { value: /* @__PURE__ */ new I() },
|
|
669
|
+
anisotropyVector: { value: /* @__PURE__ */ new L() },
|
|
670
670
|
anisotropyMap: { value: null },
|
|
671
|
-
anisotropyMapTransform: { value: /* @__PURE__ */ new
|
|
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
|
|
681
|
-
function ze(e, t, n, r,
|
|
682
|
-
let
|
|
683
|
-
function
|
|
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
|
|
692
|
-
let r = !1, i =
|
|
693
|
-
i === null ?
|
|
694
|
-
let
|
|
695
|
-
|
|
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
|
|
698
|
-
let
|
|
699
|
-
|
|
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:
|
|
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
|
-
})),
|
|
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(
|
|
711
|
+
}, Object.defineProperty(d.material, "envMap", { get: function() {
|
|
712
712
|
return this.uniforms.envMap.value;
|
|
713
|
-
} }), r.update(
|
|
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:
|
|
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
|
-
})),
|
|
723
|
+
})), u.geometry.deleteAttribute("normal"), Object.defineProperty(u.material, "map", { get: function() {
|
|
724
724
|
return this.uniforms.t2D.value;
|
|
725
|
-
} }), r.update(
|
|
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
|
|
728
|
-
t.getRGB(Re,
|
|
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
|
|
731
|
-
|
|
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
|
|
735
|
+
return c;
|
|
736
736
|
},
|
|
737
737
|
setClearColor: function(e, t = 1) {
|
|
738
|
-
|
|
738
|
+
c.set(e), l = t, b(c, l);
|
|
739
739
|
},
|
|
740
740
|
getClearAlpha: function() {
|
|
741
|
-
return
|
|
741
|
+
return l;
|
|
742
742
|
},
|
|
743
743
|
setClearAlpha: function(e) {
|
|
744
|
-
|
|
744
|
+
l = e, b(c, l);
|
|
745
745
|
},
|
|
746
|
-
render:
|
|
747
|
-
addToRenderList:
|
|
748
|
-
dispose:
|
|
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 && (
|
|
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
|
|
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
|
|
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:
|
|
1115
|
-
minFilter:
|
|
1114
|
+
magFilter: _,
|
|
1115
|
+
minFilter: _,
|
|
1116
1116
|
generateMipmaps: !1,
|
|
1117
|
-
type:
|
|
1118
|
-
format:
|
|
1119
|
-
colorSpace:
|
|
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
|
|
1130
|
+
let t = new U(new pe(), e);
|
|
1131
1131
|
this._renderer.compile(t, Je);
|
|
1132
1132
|
}
|
|
1133
|
-
_sceneToCubeUV(e, t, r, i
|
|
1134
|
-
let
|
|
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
|
-
],
|
|
1141
|
+
], s = [
|
|
1142
1142
|
1,
|
|
1143
1143
|
1,
|
|
1144
1144
|
1,
|
|
1145
1145
|
-1,
|
|
1146
1146
|
-1,
|
|
1147
1147
|
-1
|
|
1148
|
-
], l = this._renderer,
|
|
1149
|
-
l.getClearColor(Ye), l.toneMapping = 0, l.autoClear = !1, l.state.buffers.depth.getReversed() && (l.setRenderTarget(
|
|
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
|
|
1156
|
-
|
|
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 ? (
|
|
1160
|
-
let
|
|
1161
|
-
it(
|
|
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 =
|
|
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" &&
|
|
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 &&
|
|
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
|
|
1209
|
-
it(t, 3 *
|
|
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
|
|
1266
|
-
h.setAttribute("position", new
|
|
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
|
|
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
|
|
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
|
|
1304
|
-
return new
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
1379
|
+
}, r = new ie(5, 5, 5), i = new p({
|
|
1380
1380
|
name: "CubemapFromEquirect",
|
|
1381
|
-
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
|
|
1389
|
-
return t.minFilter === 1008 && (t.minFilter =
|
|
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 &&
|
|
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 = {},
|
|
1483
|
-
function
|
|
1484
|
-
let
|
|
1485
|
-
|
|
1486
|
-
for (let e in
|
|
1487
|
-
|
|
1488
|
-
let
|
|
1489
|
-
|
|
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
|
|
1492
|
-
return i[t.id] === !0 ? t : (t.addEventListener("dispose",
|
|
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
|
|
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
|
|
1499
|
-
let n = [], r = e.index, i = e.attributes.position,
|
|
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
|
-
|
|
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
|
-
|
|
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
|
|
1517
|
-
|
|
1518
|
-
let
|
|
1519
|
-
|
|
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
|
|
1522
|
-
let t =
|
|
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 &&
|
|
1526
|
-
} else
|
|
1527
|
-
return
|
|
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:
|
|
1531
|
-
update:
|
|
1532
|
-
getWireframeAttribute:
|
|
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
|
-
|
|
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
|
|
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
|
|
1626
|
-
g.type =
|
|
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
|
|
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
|
|
1688
|
+
let a = new k(t, n, {
|
|
1689
1689
|
type: e,
|
|
1690
1690
|
depthBuffer: r,
|
|
1691
1691
|
stencilBuffer: i
|
|
1692
|
-
}), o = new
|
|
1693
|
-
type:
|
|
1692
|
+
}), o = new k(t, n, {
|
|
1693
|
+
type: he,
|
|
1694
1694
|
depthBuffer: !1,
|
|
1695
1695
|
stencilBuffer: !1
|
|
1696
|
-
}), s = new
|
|
1697
|
-
s.setAttribute("position", new
|
|
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
|
|
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
|
|
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
|
|
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 <
|
|
1725
|
-
let r =
|
|
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
|
-
|
|
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 <
|
|
1732
|
-
let r =
|
|
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 &&
|
|
1737
|
-
if (
|
|
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
|
|
1741
|
+
return _ === !1 && e.setRenderTarget(a), m = e.toneMapping, e.toneMapping = 0, !0;
|
|
1742
1742
|
}, this.hasRenderPass = function() {
|
|
1743
|
-
return
|
|
1743
|
+
return _;
|
|
1744
1744
|
}, this.end = function(e, t) {
|
|
1745
|
-
e.toneMapping =
|
|
1745
|
+
e.toneMapping = m, p = !0;
|
|
1746
1746
|
let n = a, r = o;
|
|
1747
|
-
for (let i = 0; i <
|
|
1748
|
-
let a =
|
|
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 = {},
|
|
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(
|
|
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
|
|
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
|
|
2159
|
+
var kn = /* @__PURE__ */ new I();
|
|
2160
2160
|
function An(e) {
|
|
2161
|
-
|
|
2161
|
+
O._getMatrix(kn, O.workingColorSpace, e);
|
|
2162
2162
|
let t = `mat3( ${kn.elements.map((e) => e.toFixed(4))} )`;
|
|
2163
|
-
switch (
|
|
2164
|
-
case
|
|
2165
|
-
case
|
|
2166
|
-
default: return
|
|
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 ? (
|
|
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
|
|
2199
|
+
var Fn = /* @__PURE__ */ new W();
|
|
2200
2200
|
function In() {
|
|
2201
|
-
return
|
|
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],
|
|
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, _,
|
|
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 && (
|
|
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
|
|
2562
|
-
i.attachShader(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(
|
|
2566
|
-
if (i.getProgramParameter(h, i.LINK_STATUS) === !1) if (l = !1, typeof e.debug.onShaderError == "function") e.debug.onShaderError(i, h,
|
|
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,
|
|
2569
|
-
|
|
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) :
|
|
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(
|
|
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 =
|
|
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
|
|
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
|
|
2655
|
+
function h(e) {
|
|
2656
2656
|
return c.add(e), e === 0 ? "uv" : `uv${e}`;
|
|
2657
2657
|
}
|
|
2658
|
-
function
|
|
2659
|
-
let g = u.fog, _ =
|
|
2660
|
-
i.precision !== null && (
|
|
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,
|
|
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),
|
|
2668
|
-
let
|
|
2669
|
-
i.toneMapped && (
|
|
2670
|
-
let
|
|
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:
|
|
2678
|
-
customFragmentShaderID:
|
|
2677
|
+
customVertexShaderID: k,
|
|
2678
|
+
customFragmentShaderID: A,
|
|
2679
2679
|
isRawShaderMaterial: i.isRawShaderMaterial === !0,
|
|
2680
2680
|
glslVersion: i.glslVersion,
|
|
2681
|
-
precision:
|
|
2682
|
-
batching:
|
|
2683
|
-
batchingColor:
|
|
2684
|
-
instancing:
|
|
2685
|
-
instancingColor:
|
|
2686
|
-
instancingMorph:
|
|
2687
|
-
outputColorSpace:
|
|
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:
|
|
2690
|
-
matcap:
|
|
2691
|
-
envMap:
|
|
2692
|
-
envMapMode:
|
|
2689
|
+
map: ne,
|
|
2690
|
+
matcap: F,
|
|
2691
|
+
envMap: I,
|
|
2692
|
+
envMapMode: I && b.mapping,
|
|
2693
2693
|
envMapCubeUVHeight: x,
|
|
2694
|
-
aoMap:
|
|
2695
|
-
lightMap:
|
|
2696
|
-
bumpMap:
|
|
2697
|
-
normalMap:
|
|
2698
|
-
displacementMap:
|
|
2694
|
+
aoMap: L,
|
|
2695
|
+
lightMap: R,
|
|
2696
|
+
bumpMap: re,
|
|
2697
|
+
normalMap: z,
|
|
2698
|
+
displacementMap: ie,
|
|
2699
2699
|
emissiveMap: ae,
|
|
2700
|
-
normalMapObjectSpace:
|
|
2701
|
-
normalMapTangentSpace:
|
|
2702
|
-
metalnessMap:
|
|
2703
|
-
roughnessMap:
|
|
2704
|
-
anisotropy:
|
|
2705
|
-
anisotropyMap:
|
|
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:
|
|
2708
|
-
clearcoatNormalMap:
|
|
2709
|
-
clearcoatRoughnessMap:
|
|
2707
|
+
clearcoatMap: pe,
|
|
2708
|
+
clearcoatNormalMap: me,
|
|
2709
|
+
clearcoatRoughnessMap: he,
|
|
2710
2710
|
dispersion: ce,
|
|
2711
|
-
iridescence:
|
|
2712
|
-
iridescenceMap:
|
|
2713
|
-
iridescenceThicknessMap:
|
|
2714
|
-
sheen:
|
|
2715
|
-
sheenColorMap:
|
|
2716
|
-
sheenRoughnessMap:
|
|
2717
|
-
specularMap:
|
|
2718
|
-
specularColorMap:
|
|
2719
|
-
specularIntensityMap:
|
|
2720
|
-
transmission:
|
|
2721
|
-
transmissionMap:
|
|
2722
|
-
thicknessMap:
|
|
2723
|
-
gradientMap:
|
|
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:
|
|
2726
|
-
alphaTest:
|
|
2727
|
-
alphaHash:
|
|
2725
|
+
alphaMap: we,
|
|
2726
|
+
alphaTest: Te,
|
|
2727
|
+
alphaHash: Ee,
|
|
2728
2728
|
combine: i.combine,
|
|
2729
|
-
mapUv:
|
|
2730
|
-
aoMapUv:
|
|
2731
|
-
lightMapUv:
|
|
2732
|
-
bumpMapUv:
|
|
2733
|
-
normalMapUv:
|
|
2734
|
-
displacementMapUv:
|
|
2735
|
-
emissiveMapUv: ae &&
|
|
2736
|
-
metalnessMapUv:
|
|
2737
|
-
roughnessMapUv:
|
|
2738
|
-
anisotropyMapUv:
|
|
2739
|
-
clearcoatMapUv:
|
|
2740
|
-
clearcoatNormalMapUv:
|
|
2741
|
-
clearcoatRoughnessMapUv:
|
|
2742
|
-
iridescenceMapUv:
|
|
2743
|
-
iridescenceThicknessMapUv:
|
|
2744
|
-
sheenColorMapUv:
|
|
2745
|
-
sheenRoughnessMapUv:
|
|
2746
|
-
specularMapUv:
|
|
2747
|
-
specularColorMapUv:
|
|
2748
|
-
specularIntensityMapUv:
|
|
2749
|
-
transmissionMapUv:
|
|
2750
|
-
thicknessMapUv:
|
|
2751
|
-
alphaMapUv:
|
|
2752
|
-
vertexTangents: !!_.attributes.tangent && (
|
|
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:
|
|
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 &&
|
|
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:
|
|
2762
|
-
reversedDepthBuffer:
|
|
2763
|
-
skinning:
|
|
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:
|
|
2786
|
-
decodeVideoTexture:
|
|
2787
|
-
decodeVideoTextureEmissive: ae && i.emissiveMap.isVideoTexture === !0 &&
|
|
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:
|
|
2795
|
-
extensionMultiDraw: (
|
|
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
|
|
2799
|
+
return ke.vertexUv1s = c.has(1), ke.vertexUv2s = c.has(2), ke.vertexUv3s = c.has(3), c.clear(), ke;
|
|
2800
2800
|
}
|
|
2801
|
-
function
|
|
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 && (
|
|
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
|
|
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
|
|
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
|
|
2813
|
-
let t =
|
|
2812
|
+
function b(e) {
|
|
2813
|
+
let t = m[e.type], n;
|
|
2814
2814
|
if (t) {
|
|
2815
2815
|
let e = J[t];
|
|
2816
|
-
n =
|
|
2816
|
+
n = z.clone(e.uniforms);
|
|
2817
2817
|
} else n = e.uniforms;
|
|
2818
2818
|
return n;
|
|
2819
2819
|
}
|
|
2820
|
-
function
|
|
2821
|
-
let r =
|
|
2822
|
-
return r === void 0 ? (r = new or(e, n, t, i), l.push(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
|
|
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(),
|
|
2827
|
+
l[t] = l[l.length - 1], l.pop(), d.delete(e.cacheKey), e.destroy();
|
|
2828
2828
|
}
|
|
2829
2829
|
}
|
|
2830
|
-
function
|
|
2830
|
+
function C(e) {
|
|
2831
2831
|
s.remove(e);
|
|
2832
2832
|
}
|
|
2833
|
-
function
|
|
2833
|
+
function w() {
|
|
2834
2834
|
s.dispose();
|
|
2835
2835
|
}
|
|
2836
2836
|
return {
|
|
2837
|
-
getParameters:
|
|
2838
|
-
getProgramCacheKey:
|
|
2839
|
-
getUniforms:
|
|
2840
|
-
acquireProgram:
|
|
2841
|
-
releaseProgram:
|
|
2842
|
-
releaseShaderCache:
|
|
2837
|
+
getParameters: g,
|
|
2838
|
+
getProgramCacheKey: _,
|
|
2839
|
+
getUniforms: b,
|
|
2840
|
+
acquireProgram: x,
|
|
2841
|
+
releaseProgram: S,
|
|
2842
|
+
releaseShaderCache: C,
|
|
2843
2843
|
programs: l,
|
|
2844
|
-
dispose:
|
|
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
|
|
2954
|
-
color: new
|
|
2953
|
+
direction: new W(),
|
|
2954
|
+
color: new a()
|
|
2955
2955
|
};
|
|
2956
2956
|
break;
|
|
2957
2957
|
case "SpotLight":
|
|
2958
2958
|
n = {
|
|
2959
|
-
position: new
|
|
2960
|
-
direction: new
|
|
2961
|
-
color: new
|
|
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
|
|
2971
|
-
color: new
|
|
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
|
|
2979
|
-
skyColor: new
|
|
2980
|
-
groundColor: new
|
|
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
|
|
2986
|
-
position: new
|
|
2987
|
-
halfWidth: new
|
|
2988
|
-
halfHeight: new
|
|
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
|
|
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
|
|
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
|
|
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
|
|
3080
|
-
let i = new
|
|
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
|
|
3204
|
-
/* @__PURE__ */ new
|
|
3205
|
-
/* @__PURE__ */ new
|
|
3206
|
-
/* @__PURE__ */ new
|
|
3207
|
-
/* @__PURE__ */ new
|
|
3208
|
-
/* @__PURE__ */ new
|
|
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
|
|
3211
|
-
/* @__PURE__ */ new
|
|
3212
|
-
/* @__PURE__ */ new
|
|
3213
|
-
/* @__PURE__ */ new
|
|
3214
|
-
/* @__PURE__ */ new
|
|
3215
|
-
/* @__PURE__ */ new
|
|
3216
|
-
], Dr = /* @__PURE__ */ new
|
|
3217
|
-
function Ar(
|
|
3218
|
-
let
|
|
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
|
-
},
|
|
3222
|
+
}, m = new p({
|
|
3223
3223
|
defines: { VSM_SAMPLES: 8 },
|
|
3224
3224
|
uniforms: {
|
|
3225
3225
|
shadow_pass: { value: null },
|
|
3226
|
-
resolution: { value: new
|
|
3226
|
+
resolution: { value: new L() },
|
|
3227
3227
|
radius: { value: 4 }
|
|
3228
3228
|
},
|
|
3229
3229
|
vertexShader: Cr,
|
|
3230
3230
|
fragmentShader: wr
|
|
3231
|
-
}),
|
|
3232
|
-
|
|
3233
|
-
let
|
|
3234
|
-
|
|
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
|
|
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
|
|
3248
|
-
this.render = function(
|
|
3249
|
-
if (
|
|
3250
|
-
this.type === 2 && (
|
|
3251
|
-
let
|
|
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 =
|
|
3254
|
-
m &&
|
|
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
|
|
3258
|
-
let
|
|
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
|
-
|
|
3260
|
+
j("WebGLShadowMap:", u, "has no shadow.");
|
|
3261
3261
|
continue;
|
|
3262
3262
|
}
|
|
3263
3263
|
if (f.autoUpdate === !1 && f.needsUpdate === !1) continue;
|
|
3264
|
-
|
|
3265
|
-
let
|
|
3266
|
-
|
|
3267
|
-
let
|
|
3268
|
-
if (f.camera._reversedDepth =
|
|
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 (
|
|
3271
|
-
|
|
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
|
|
3275
|
-
format:
|
|
3276
|
-
type:
|
|
3277
|
-
minFilter:
|
|
3278
|
-
magFilter:
|
|
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 =
|
|
3281
|
-
} else
|
|
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
|
|
3285
|
-
for (let
|
|
3286
|
-
if (f.map.isWebGLCubeRenderTarget)
|
|
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
|
-
|
|
3289
|
-
let n = f.getViewport(
|
|
3290
|
-
|
|
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 (
|
|
3293
|
-
let
|
|
3294
|
-
r !==
|
|
3295
|
-
} else f.updateMatrices(
|
|
3296
|
-
|
|
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 &&
|
|
3298
|
+
f.isPointLightShadow !== !0 && this.type === 3 && C(f, c), f.needsUpdate = !1;
|
|
3299
3299
|
}
|
|
3300
|
-
|
|
3300
|
+
S = this.type, x.needsUpdate = !1, t.setRenderTarget(l, u, f);
|
|
3301
3301
|
};
|
|
3302
|
-
function
|
|
3303
|
-
let
|
|
3304
|
-
|
|
3305
|
-
format:
|
|
3306
|
-
type:
|
|
3307
|
-
})),
|
|
3308
|
-
}
|
|
3309
|
-
function w(
|
|
3310
|
-
let a = null, o = r.isPointLight === !0 ?
|
|
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 ?
|
|
3313
|
-
let e = a.uuid, t = n.uuid, r =
|
|
3314
|
-
r === void 0 && (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
|
|
3320
|
-
|
|
3319
|
+
let e = t.properties.get(a);
|
|
3320
|
+
e.light = r;
|
|
3321
3321
|
}
|
|
3322
3322
|
return a;
|
|
3323
3323
|
}
|
|
3324
|
-
function
|
|
3325
|
-
if (
|
|
3326
|
-
if (
|
|
3327
|
-
|
|
3328
|
-
let
|
|
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
|
|
3331
|
-
for (let l = 0, u =
|
|
3332
|
-
let u =
|
|
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
|
|
3335
|
-
|
|
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
|
|
3340
|
-
|
|
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 =
|
|
3344
|
-
for (let e = 0, t = c.length; e < t; e++)
|
|
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
|
|
3349
|
-
let n =
|
|
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
|
|
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 ?
|
|
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 =
|
|
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 ?
|
|
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
|
|
3462
|
-
|
|
3463
|
-
let
|
|
3464
|
-
function
|
|
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
|
|
3471
|
-
|
|
3472
|
-
function
|
|
3473
|
-
|
|
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
|
|
3476
|
-
|
|
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
|
-
|
|
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 =
|
|
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
|
|
3494
|
-
return
|
|
3493
|
+
function le(t) {
|
|
3494
|
+
return h === t ? !1 : (e.useProgram(t), h = t, !0);
|
|
3495
3495
|
}
|
|
3496
|
-
let
|
|
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
|
-
|
|
3502
|
-
let
|
|
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
|
|
3519
|
+
function fe(t, n, r, i, a, o, s, c, l, u) {
|
|
3520
3520
|
if (t === 0) {
|
|
3521
|
-
|
|
3521
|
+
g === !0 && (V(e.BLEND), g = !1);
|
|
3522
3522
|
return;
|
|
3523
3523
|
}
|
|
3524
|
-
if (
|
|
3525
|
-
if (t !==
|
|
3526
|
-
if ((
|
|
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
|
-
|
|
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
|
-
|
|
3551
|
+
S("WebGLState: SubtractiveBlending requires material.premultipliedAlpha = true");
|
|
3552
3552
|
break;
|
|
3553
3553
|
case 4:
|
|
3554
|
-
|
|
3554
|
+
S("WebGLState: MultiplyBlending requires material.premultipliedAlpha = true");
|
|
3555
3555
|
break;
|
|
3556
3556
|
default:
|
|
3557
|
-
|
|
3557
|
+
S("WebGLState: Invalid blending: ", t);
|
|
3558
3558
|
break;
|
|
3559
3559
|
}
|
|
3560
|
-
y = null,
|
|
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 !==
|
|
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
|
|
3567
|
-
t.side === 2 ?
|
|
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),
|
|
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
|
-
|
|
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
|
|
3574
|
-
|
|
3573
|
+
function me(t) {
|
|
3574
|
+
A !== t && (t ? e.frontFace(e.CW) : e.frontFace(e.CCW), A = t);
|
|
3575
3575
|
}
|
|
3576
|
-
function
|
|
3577
|
-
t === 0 ?
|
|
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
|
|
3580
|
-
t !==
|
|
3579
|
+
function H(t) {
|
|
3580
|
+
t !== M && (P && e.lineWidth(t), M = t);
|
|
3581
3581
|
}
|
|
3582
|
-
function
|
|
3583
|
-
t ? (
|
|
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
|
|
3586
|
-
t ?
|
|
3585
|
+
function _e(t) {
|
|
3586
|
+
t ? B(e.SCISSOR_TEST) : V(e.SCISSOR_TEST);
|
|
3587
3587
|
}
|
|
3588
|
-
function
|
|
3589
|
-
t === void 0 && (t = e.TEXTURE0 +
|
|
3588
|
+
function ve(t) {
|
|
3589
|
+
t === void 0 && (t = e.TEXTURE0 + te - 1), I !== t && (e.activeTexture(t), I = t);
|
|
3590
3590
|
}
|
|
3591
|
-
function
|
|
3592
|
-
r === void 0 && (r =
|
|
3593
|
-
let i =
|
|
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
|
-
},
|
|
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
|
|
3600
|
-
let t =
|
|
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
|
|
3603
|
+
function U() {
|
|
3604
3604
|
try {
|
|
3605
3605
|
e.compressedTexImage2D(...arguments);
|
|
3606
3606
|
} catch (e) {
|
|
3607
|
-
|
|
3607
|
+
S("WebGLState:", e);
|
|
3608
3608
|
}
|
|
3609
3609
|
}
|
|
3610
|
-
function
|
|
3610
|
+
function xe() {
|
|
3611
3611
|
try {
|
|
3612
3612
|
e.compressedTexImage3D(...arguments);
|
|
3613
3613
|
} catch (e) {
|
|
3614
|
-
|
|
3614
|
+
S("WebGLState:", e);
|
|
3615
3615
|
}
|
|
3616
3616
|
}
|
|
3617
|
-
function
|
|
3617
|
+
function Se() {
|
|
3618
3618
|
try {
|
|
3619
3619
|
e.texSubImage2D(...arguments);
|
|
3620
3620
|
} catch (e) {
|
|
3621
|
-
|
|
3621
|
+
S("WebGLState:", e);
|
|
3622
3622
|
}
|
|
3623
3623
|
}
|
|
3624
|
-
function
|
|
3624
|
+
function Ce() {
|
|
3625
3625
|
try {
|
|
3626
3626
|
e.texSubImage3D(...arguments);
|
|
3627
3627
|
} catch (e) {
|
|
3628
|
-
|
|
3628
|
+
S("WebGLState:", e);
|
|
3629
3629
|
}
|
|
3630
3630
|
}
|
|
3631
|
-
function
|
|
3631
|
+
function we() {
|
|
3632
3632
|
try {
|
|
3633
3633
|
e.compressedTexSubImage2D(...arguments);
|
|
3634
3634
|
} catch (e) {
|
|
3635
|
-
|
|
3635
|
+
S("WebGLState:", e);
|
|
3636
3636
|
}
|
|
3637
3637
|
}
|
|
3638
|
-
function
|
|
3638
|
+
function Te() {
|
|
3639
3639
|
try {
|
|
3640
3640
|
e.compressedTexSubImage3D(...arguments);
|
|
3641
3641
|
} catch (e) {
|
|
3642
|
-
|
|
3642
|
+
S("WebGLState:", e);
|
|
3643
3643
|
}
|
|
3644
3644
|
}
|
|
3645
|
-
function
|
|
3645
|
+
function Ee() {
|
|
3646
3646
|
try {
|
|
3647
3647
|
e.texStorage2D(...arguments);
|
|
3648
3648
|
} catch (e) {
|
|
3649
|
-
|
|
3649
|
+
S("WebGLState:", e);
|
|
3650
3650
|
}
|
|
3651
3651
|
}
|
|
3652
|
-
function
|
|
3652
|
+
function De() {
|
|
3653
3653
|
try {
|
|
3654
3654
|
e.texStorage3D(...arguments);
|
|
3655
3655
|
} catch (e) {
|
|
3656
|
-
|
|
3656
|
+
S("WebGLState:", e);
|
|
3657
3657
|
}
|
|
3658
3658
|
}
|
|
3659
|
-
function
|
|
3659
|
+
function Oe() {
|
|
3660
3660
|
try {
|
|
3661
3661
|
e.texImage2D(...arguments);
|
|
3662
3662
|
} catch (e) {
|
|
3663
|
-
|
|
3663
|
+
S("WebGLState:", e);
|
|
3664
3664
|
}
|
|
3665
3665
|
}
|
|
3666
|
-
function
|
|
3666
|
+
function ke() {
|
|
3667
3667
|
try {
|
|
3668
3668
|
e.texImage3D(...arguments);
|
|
3669
3669
|
} catch (e) {
|
|
3670
|
-
|
|
3670
|
+
S("WebGLState:", e);
|
|
3671
3671
|
}
|
|
3672
3672
|
}
|
|
3673
|
-
function
|
|
3674
|
-
|
|
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
|
|
3680
|
-
let r =
|
|
3681
|
-
r === void 0 && (r = /* @__PURE__ */ new WeakMap(),
|
|
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
|
|
3686
|
-
let r =
|
|
3687
|
-
|
|
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
|
|
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),
|
|
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:
|
|
3695
|
-
depth:
|
|
3696
|
-
stencil:
|
|
3694
|
+
color: o,
|
|
3695
|
+
depth: s,
|
|
3696
|
+
stencil: c
|
|
3697
3697
|
},
|
|
3698
|
-
enable:
|
|
3699
|
-
disable:
|
|
3700
|
-
bindFramebuffer:
|
|
3701
|
-
drawBuffers:
|
|
3702
|
-
useProgram:
|
|
3703
|
-
setBlending:
|
|
3704
|
-
setMaterial:
|
|
3705
|
-
setFlipSided:
|
|
3706
|
-
setCullFace:
|
|
3707
|
-
setLineWidth:
|
|
3708
|
-
setPolygonOffset:
|
|
3709
|
-
setScissorTest:
|
|
3710
|
-
activeTexture:
|
|
3711
|
-
bindTexture:
|
|
3712
|
-
unbindTexture:
|
|
3713
|
-
compressedTexImage2D:
|
|
3714
|
-
compressedTexImage3D:
|
|
3715
|
-
texImage2D:
|
|
3716
|
-
texImage3D:
|
|
3717
|
-
updateUBOMapping:
|
|
3718
|
-
uniformBlockBinding:
|
|
3719
|
-
texStorage2D:
|
|
3720
|
-
texStorage3D:
|
|
3721
|
-
texSubImage2D:
|
|
3722
|
-
texSubImage3D:
|
|
3723
|
-
compressedTexSubImage2D:
|
|
3724
|
-
compressedTexSubImage3D:
|
|
3725
|
-
scissor:
|
|
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:
|
|
3727
|
+
reset: Ne
|
|
3728
3728
|
};
|
|
3729
3729
|
}
|
|
3730
|
-
function Mr(t, n, r, a, o
|
|
3731
|
-
let
|
|
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
|
-
|
|
3733
|
+
m = typeof OffscreenCanvas < "u" && new OffscreenCanvas(1, 1).getContext("2d") !== null;
|
|
3734
3734
|
} catch {}
|
|
3735
|
-
function
|
|
3736
|
-
return
|
|
3735
|
+
function h(e, t) {
|
|
3736
|
+
return m ? new OffscreenCanvas(e, t) : y("canvas");
|
|
3737
3737
|
}
|
|
3738
|
-
function
|
|
3739
|
-
let r = 1, i =
|
|
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
|
-
|
|
3743
|
-
let o = t ?
|
|
3744
|
-
return o.width = n, o.height = a, o.getContext("2d").drawImage(e, 0, 0, n, a),
|
|
3745
|
-
} else return "data" in 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
|
|
3748
|
+
function v(e) {
|
|
3749
3749
|
return e.generateMipmaps;
|
|
3750
3750
|
}
|
|
3751
|
-
function
|
|
3752
|
-
|
|
3751
|
+
function b(t) {
|
|
3752
|
+
e.generateMipmap(t);
|
|
3753
3753
|
}
|
|
3754
|
-
function
|
|
3755
|
-
return
|
|
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
|
|
3758
|
-
if (
|
|
3759
|
-
if (
|
|
3760
|
-
|
|
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 ===
|
|
3764
|
-
let
|
|
3765
|
-
i ===
|
|
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 ===
|
|
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
|
|
3769
|
+
function T(t, n) {
|
|
3770
3770
|
let r;
|
|
3771
|
-
return
|
|
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
|
|
3774
|
-
return
|
|
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
|
|
3776
|
+
function D(e) {
|
|
3777
3777
|
let t = e.target;
|
|
3778
|
-
t.removeEventListener("dispose",
|
|
3778
|
+
t.removeEventListener("dispose", D), A(t), t.isVideoTexture && d.delete(t);
|
|
3779
3779
|
}
|
|
3780
|
-
function
|
|
3780
|
+
function k(e) {
|
|
3781
3781
|
let t = e.target;
|
|
3782
|
-
t.removeEventListener("dispose",
|
|
3782
|
+
t.removeEventListener("dispose", k), te(t);
|
|
3783
3783
|
}
|
|
3784
|
-
function
|
|
3785
|
-
let t =
|
|
3784
|
+
function A(e) {
|
|
3785
|
+
let t = r.get(e);
|
|
3786
3786
|
if (t.__webglInit === void 0) return;
|
|
3787
|
-
let n = e.source,
|
|
3788
|
-
if (
|
|
3789
|
-
let
|
|
3790
|
-
|
|
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
|
-
|
|
3793
|
-
}
|
|
3794
|
-
function M(
|
|
3795
|
-
let n =
|
|
3796
|
-
|
|
3797
|
-
let
|
|
3798
|
-
delete
|
|
3799
|
-
}
|
|
3800
|
-
function
|
|
3801
|
-
let n =
|
|
3802
|
-
if (
|
|
3803
|
-
if (Array.isArray(n.__webglFramebuffer[
|
|
3804
|
-
else
|
|
3805
|
-
n.__webglDepthbuffer &&
|
|
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
|
|
3809
|
-
else
|
|
3810
|
-
if (n.__webglDepthbuffer &&
|
|
3811
|
-
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
|
|
3814
|
-
for (let
|
|
3815
|
-
let n =
|
|
3816
|
-
n.__webglTexture && (
|
|
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
|
-
|
|
3818
|
+
r.remove(t);
|
|
3819
3819
|
}
|
|
3820
|
-
let
|
|
3821
|
-
function
|
|
3822
|
-
|
|
3820
|
+
let P = 0;
|
|
3821
|
+
function ne() {
|
|
3822
|
+
P = 0;
|
|
3823
3823
|
}
|
|
3824
|
-
function
|
|
3825
|
-
let e =
|
|
3826
|
-
return 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
|
|
3833
|
-
let
|
|
3834
|
-
if (
|
|
3835
|
-
let
|
|
3836
|
-
if (
|
|
3837
|
-
else if (
|
|
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(
|
|
3839
|
+
fe(a, t, i);
|
|
3840
3840
|
return;
|
|
3841
3841
|
}
|
|
3842
|
-
} else
|
|
3843
|
-
|
|
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
|
|
3846
|
-
let
|
|
3847
|
-
if (
|
|
3848
|
-
fe(
|
|
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
|
|
3851
|
-
|
|
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
|
|
3854
|
-
let
|
|
3855
|
-
if (
|
|
3856
|
-
fe(
|
|
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
|
-
|
|
3859
|
+
n.bindTexture(e.TEXTURE_3D, a.__webglTexture, e.TEXTURE0 + i);
|
|
3860
3860
|
}
|
|
3861
|
-
function
|
|
3862
|
-
let
|
|
3863
|
-
if (
|
|
3864
|
-
pe(
|
|
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
|
-
|
|
3868
|
-
}
|
|
3869
|
-
let
|
|
3870
|
-
[
|
|
3871
|
-
[
|
|
3872
|
-
[
|
|
3873
|
-
},
|
|
3874
|
-
[
|
|
3875
|
-
[
|
|
3876
|
-
[
|
|
3877
|
-
[
|
|
3878
|
-
[
|
|
3879
|
-
[
|
|
3880
|
-
},
|
|
3881
|
-
512:
|
|
3882
|
-
519:
|
|
3883
|
-
513:
|
|
3884
|
-
515:
|
|
3885
|
-
514:
|
|
3886
|
-
518:
|
|
3887
|
-
516:
|
|
3888
|
-
517:
|
|
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
|
|
3891
|
-
if (
|
|
3892
|
-
if (
|
|
3893
|
-
if (
|
|
3894
|
-
let
|
|
3895
|
-
|
|
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(
|
|
3899
|
+
function le(t, n) {
|
|
3900
3900
|
let r = !1;
|
|
3901
|
-
|
|
3902
|
-
let i = n.source, a =
|
|
3903
|
-
a === void 0 && (a = {},
|
|
3904
|
-
let
|
|
3905
|
-
if (
|
|
3906
|
-
a[
|
|
3907
|
-
texture:
|
|
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
|
-
},
|
|
3910
|
-
let i = a[
|
|
3911
|
-
i !== void 0 && (a[
|
|
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(
|
|
3919
|
-
let o =
|
|
3920
|
-
if (o.length === 0)
|
|
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],
|
|
3926
|
-
|
|
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 =
|
|
3930
|
-
|
|
3931
|
-
for (let
|
|
3932
|
-
let s = o[
|
|
3933
|
-
|
|
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
|
-
|
|
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(
|
|
3939
|
-
let c =
|
|
3940
|
-
(
|
|
3941
|
-
let
|
|
3942
|
-
|
|
3943
|
-
let
|
|
3944
|
-
if (
|
|
3945
|
-
|
|
3946
|
-
let
|
|
3947
|
-
|
|
3948
|
-
let
|
|
3949
|
-
|
|
3950
|
-
let
|
|
3951
|
-
|
|
3952
|
-
let
|
|
3953
|
-
if (
|
|
3954
|
-
else if (
|
|
3955
|
-
|
|
3956
|
-
for (let
|
|
3957
|
-
|
|
3958
|
-
} else
|
|
3959
|
-
else if (
|
|
3960
|
-
|
|
3961
|
-
for (let
|
|
3962
|
-
if (
|
|
3963
|
-
let
|
|
3964
|
-
for (let
|
|
3965
|
-
let
|
|
3966
|
-
|
|
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
|
-
|
|
3969
|
-
} else
|
|
3970
|
-
} else
|
|
3971
|
-
else
|
|
3972
|
-
else
|
|
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
|
-
|
|
3975
|
-
for (let
|
|
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 (
|
|
3978
|
-
if (
|
|
3979
|
-
let
|
|
3980
|
-
for (let
|
|
3981
|
-
let
|
|
3982
|
-
|
|
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
|
-
|
|
3985
|
-
} else
|
|
3986
|
-
} else
|
|
3987
|
-
else if (
|
|
3988
|
-
else if (
|
|
3989
|
-
if (
|
|
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
|
|
3992
|
-
for (let i = 0; i <
|
|
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 (
|
|
3995
|
-
if (
|
|
3996
|
-
let
|
|
3997
|
-
|
|
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
|
|
4000
|
-
|
|
4001
|
-
} else if (
|
|
4002
|
-
if (
|
|
4003
|
-
let
|
|
4004
|
-
|
|
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
|
-
|
|
4007
|
-
} else
|
|
4008
|
-
|
|
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
|
-
|
|
4010
|
+
t.__version = o.version;
|
|
4011
4011
|
}
|
|
4012
|
-
function pe(
|
|
4013
|
-
if (
|
|
4014
|
-
let c = le(
|
|
4015
|
-
|
|
4016
|
-
let u =
|
|
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
|
-
|
|
4019
|
-
let
|
|
4020
|
-
|
|
4021
|
-
let f =
|
|
4022
|
-
for (let e = 0; e < 6; e++) !f && !p ? m[e] =
|
|
4023
|
-
let h = m[0],
|
|
4024
|
-
|
|
4025
|
-
let
|
|
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
|
-
|
|
4028
|
-
for (let
|
|
4029
|
-
|
|
4030
|
-
for (let
|
|
4031
|
-
let
|
|
4032
|
-
|
|
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 (
|
|
4037
|
-
|
|
4038
|
-
let
|
|
4039
|
-
|
|
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
|
|
4042
|
-
|
|
4043
|
-
for (let
|
|
4044
|
-
let i =
|
|
4045
|
-
|
|
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
|
-
|
|
4049
|
-
for (let
|
|
4050
|
-
let i =
|
|
4051
|
-
|
|
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
|
-
|
|
4055
|
+
v(o) && b(e.TEXTURE_CUBE_MAP), u.__version = l.version, o.onUpdate && o.onUpdate(o);
|
|
4056
4056
|
}
|
|
4057
|
-
|
|
4057
|
+
t.__version = o.version;
|
|
4058
4058
|
}
|
|
4059
|
-
function
|
|
4060
|
-
let d =
|
|
4061
|
-
if (h.__renderTarget =
|
|
4062
|
-
let
|
|
4063
|
-
|
|
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
|
-
|
|
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
|
|
4068
|
-
if (
|
|
4069
|
-
let i = n.depthTexture, a = i && i.isDepthTexture ? i.type : null, o =
|
|
4070
|
-
we(n) ?
|
|
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
|
|
4073
|
-
for (let i = 0; i <
|
|
4074
|
-
let
|
|
4075
|
-
we(n) ?
|
|
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
|
-
|
|
4079
|
-
}
|
|
4080
|
-
function
|
|
4081
|
-
let
|
|
4082
|
-
if (
|
|
4083
|
-
let
|
|
4084
|
-
if (
|
|
4085
|
-
if (
|
|
4086
|
-
|
|
4087
|
-
let
|
|
4088
|
-
|
|
4089
|
-
for (let
|
|
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
|
|
4092
|
-
let
|
|
4093
|
-
if (
|
|
4094
|
-
else if (
|
|
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
|
|
4098
|
-
let
|
|
4099
|
-
if (
|
|
4100
|
-
let
|
|
4101
|
-
if (
|
|
4102
|
-
let
|
|
4103
|
-
delete
|
|
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
|
-
|
|
4105
|
+
e.addEventListener("dispose", t), i.__depthDisposeCallback = t;
|
|
4106
4106
|
}
|
|
4107
|
-
|
|
4107
|
+
i.__boundDepthTexture = e;
|
|
4108
4108
|
}
|
|
4109
|
-
if (
|
|
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
|
|
4112
|
-
|
|
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 (
|
|
4115
|
-
|
|
4116
|
-
for (let
|
|
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
|
|
4119
|
-
|
|
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
|
|
4123
|
-
if (
|
|
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
|
|
4126
|
-
|
|
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
|
-
|
|
4130
|
-
}
|
|
4131
|
-
function
|
|
4132
|
-
let
|
|
4133
|
-
n !== void 0 &&
|
|
4134
|
-
}
|
|
4135
|
-
function
|
|
4136
|
-
let
|
|
4137
|
-
|
|
4138
|
-
let
|
|
4139
|
-
if (d || (
|
|
4140
|
-
|
|
4141
|
-
for (let
|
|
4142
|
-
|
|
4143
|
-
for (let
|
|
4144
|
-
} else
|
|
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 (
|
|
4147
|
-
|
|
4148
|
-
for (let
|
|
4149
|
-
} else
|
|
4150
|
-
if (d) for (let
|
|
4151
|
-
let n =
|
|
4152
|
-
n.__webglTexture === void 0 && (n.__webglTexture =
|
|
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 (
|
|
4155
|
-
|
|
4156
|
-
for (let n = 0; n <
|
|
4157
|
-
let r =
|
|
4158
|
-
|
|
4159
|
-
let
|
|
4160
|
-
|
|
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
|
-
|
|
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
|
-
|
|
4167
|
-
for (let
|
|
4168
|
-
else
|
|
4169
|
-
|
|
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
|
|
4172
|
-
let
|
|
4173
|
-
(
|
|
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
|
-
|
|
4175
|
+
n.unbindTexture();
|
|
4176
4176
|
} else {
|
|
4177
|
-
let
|
|
4178
|
-
if ((
|
|
4179
|
-
else
|
|
4180
|
-
|
|
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
|
-
|
|
4182
|
+
t.depthBuffer && ge(t);
|
|
4183
4183
|
}
|
|
4184
|
-
function
|
|
4184
|
+
function be(e) {
|
|
4185
4185
|
let t = e.textures;
|
|
4186
|
-
for (let
|
|
4187
|
-
let
|
|
4188
|
-
if (
|
|
4189
|
-
let t =
|
|
4190
|
-
|
|
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
|
|
4195
|
-
function Se(
|
|
4196
|
-
if (
|
|
4197
|
-
if (we(
|
|
4198
|
-
let
|
|
4199
|
-
if (
|
|
4200
|
-
|
|
4201
|
-
let f =
|
|
4202
|
-
f && f.length > 0 ?
|
|
4203
|
-
for (let
|
|
4204
|
-
if (
|
|
4205
|
-
|
|
4206
|
-
let
|
|
4207
|
-
|
|
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
|
-
|
|
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 (
|
|
4212
|
-
|
|
4213
|
-
let
|
|
4214
|
-
|
|
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
|
-
|
|
4217
|
-
} else if (
|
|
4218
|
-
let n =
|
|
4219
|
-
|
|
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(
|
|
4224
|
+
return Math.min(i.maxSamples, e.samples);
|
|
4225
4225
|
}
|
|
4226
4226
|
function we(e) {
|
|
4227
|
-
let
|
|
4228
|
-
return e.samples > 0 &&
|
|
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
|
|
4231
|
-
let t =
|
|
4232
|
-
|
|
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
|
|
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 !== "" && (
|
|
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
|
|
4239
|
-
return typeof HTMLImageElement < "u" && e instanceof HTMLImageElement ? (
|
|
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 =
|
|
4242
|
-
return
|
|
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 =
|
|
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
|
|
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
|
|
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
|
|
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
|
|
4358
|
+
}, Lr = class extends H {
|
|
4359
4359
|
constructor(e, t) {
|
|
4360
4360
|
super();
|
|
4361
|
-
let
|
|
4362
|
-
|
|
4363
|
-
let
|
|
4364
|
-
|
|
4365
|
-
let
|
|
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 =
|
|
4368
|
-
return t === void 0 && (t = new
|
|
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 =
|
|
4371
|
-
return t === void 0 && (t = new
|
|
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 =
|
|
4374
|
-
return t === void 0 && (t = new
|
|
4373
|
+
let t = T[e];
|
|
4374
|
+
return t === void 0 && (t = new s(), T[e] = t), t.getHandSpace();
|
|
4375
4375
|
};
|
|
4376
|
-
function
|
|
4377
|
-
let t =
|
|
4376
|
+
function R(e) {
|
|
4377
|
+
let t = D.indexOf(e.inputSource);
|
|
4378
4378
|
if (t === -1) return;
|
|
4379
|
-
let n =
|
|
4380
|
-
n !== void 0 && (n.update(e.inputSource, e.frame,
|
|
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",
|
|
4387
|
-
for (let e = 0; e <
|
|
4388
|
-
let t =
|
|
4389
|
-
t !== null && (
|
|
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
|
-
|
|
4392
|
-
for (let e in
|
|
4393
|
-
e.setRenderTarget(
|
|
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,
|
|
4396
|
+
a = e, n.isPresenting === !0 && j("WebXRManager: Cannot change framebuffer scale while presenting.");
|
|
4397
4397
|
}, this.setReferenceSpaceType = function(e) {
|
|
4398
|
-
|
|
4398
|
+
l = e, n.isPresenting === !0 && j("WebXRManager: Cannot change reference space type while presenting.");
|
|
4399
4399
|
}, this.getReferenceSpace = function() {
|
|
4400
|
-
return
|
|
4400
|
+
return d || o;
|
|
4401
4401
|
}, this.setReferenceSpace = function(e) {
|
|
4402
|
-
|
|
4402
|
+
d = e;
|
|
4403
4403
|
}, this.getBaseLayer = function() {
|
|
4404
|
-
return
|
|
4404
|
+
return m === null ? _ : m;
|
|
4405
4405
|
}, this.getBinding = function() {
|
|
4406
|
-
return
|
|
4406
|
+
return p === null && y && (p = new XRWebGLBinding(i, t)), p;
|
|
4407
4407
|
}, this.getFrame = function() {
|
|
4408
|
-
return
|
|
4408
|
+
return v;
|
|
4409
4409
|
}, this.getSession = function() {
|
|
4410
4410
|
return i;
|
|
4411
|
-
}, this.setSession = async function(
|
|
4412
|
-
if (i =
|
|
4413
|
-
if (
|
|
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
|
-
|
|
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
|
-
|
|
4422
|
-
format:
|
|
4423
|
-
type:
|
|
4424
|
-
depthTexture: new
|
|
4425
|
-
stencilBuffer:
|
|
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:
|
|
4428
|
-
resolveDepthBuffer:
|
|
4429
|
-
resolveStencilBuffer:
|
|
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:
|
|
4433
|
+
antialias: S.antialias,
|
|
4434
4434
|
alpha: !0,
|
|
4435
|
-
depth:
|
|
4436
|
-
stencil:
|
|
4435
|
+
depth: S.depth,
|
|
4436
|
+
stencil: S.stencil,
|
|
4437
4437
|
framebufferScaleFactor: a
|
|
4438
4438
|
};
|
|
4439
|
-
|
|
4440
|
-
format:
|
|
4441
|
-
type:
|
|
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:
|
|
4444
|
-
resolveDepthBuffer:
|
|
4445
|
-
resolveStencilBuffer:
|
|
4443
|
+
stencilBuffer: S.stencil,
|
|
4444
|
+
resolveDepthBuffer: _.ignoreDepthValues === !1,
|
|
4445
|
+
resolveStencilBuffer: _.ignoreDepthValues === !1
|
|
4446
4446
|
});
|
|
4447
4447
|
}
|
|
4448
|
-
|
|
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
|
|
4453
|
+
return b.getDepthTexture();
|
|
4454
4454
|
};
|
|
4455
|
-
function
|
|
4455
|
+
function z(e) {
|
|
4456
4456
|
for (let t = 0; t < e.removed.length; t++) {
|
|
4457
|
-
let n = e.removed[t], r =
|
|
4458
|
-
r >= 0 && (
|
|
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 =
|
|
4461
|
+
let n = e.added[t], r = D.indexOf(n);
|
|
4462
4462
|
if (r === -1) {
|
|
4463
|
-
for (let e = 0; e <
|
|
4464
|
-
|
|
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 (
|
|
4467
|
-
|
|
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 =
|
|
4472
|
+
let i = T[r];
|
|
4473
4473
|
i && i.connect(n);
|
|
4474
4474
|
}
|
|
4475
4475
|
}
|
|
4476
|
-
let
|
|
4477
|
-
function
|
|
4478
|
-
|
|
4479
|
-
let r =
|
|
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
|
|
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
|
-
|
|
4493
|
-
depthNear:
|
|
4494
|
-
depthFar:
|
|
4495
|
-
}),
|
|
4496
|
-
let r = e.parent, a =
|
|
4497
|
-
|
|
4498
|
-
for (let e = 0; e < a.length; e++)
|
|
4499
|
-
a.length === 2 ?
|
|
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
|
|
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 =
|
|
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
|
|
4505
|
+
return P;
|
|
4506
4506
|
}, this.getFoveation = function() {
|
|
4507
|
-
if (!(
|
|
4507
|
+
if (!(m === null && _ === null)) return u;
|
|
4508
4508
|
}, this.setFoveation = function(e) {
|
|
4509
|
-
|
|
4509
|
+
u = e, m !== null && (m.fixedFoveation = e), _ !== null && _.fixedFoveation !== void 0 && (_.fixedFoveation = e);
|
|
4510
4510
|
}, this.hasDepthSensing = function() {
|
|
4511
|
-
return
|
|
4511
|
+
return b.texture !== null;
|
|
4512
4512
|
}, this.getDepthSensingMesh = function() {
|
|
4513
|
-
return
|
|
4513
|
+
return b.getMesh(P);
|
|
4514
4514
|
}, this.getCameraTexture = function(e) {
|
|
4515
|
-
return
|
|
4515
|
+
return x[e];
|
|
4516
4516
|
};
|
|
4517
|
-
let
|
|
4518
|
-
function
|
|
4519
|
-
if (
|
|
4520
|
-
let t =
|
|
4521
|
-
|
|
4522
|
-
let
|
|
4523
|
-
t.length !==
|
|
4524
|
-
for (let
|
|
4525
|
-
let i = t[
|
|
4526
|
-
if (
|
|
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 =
|
|
4529
|
-
|
|
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
|
|
4532
|
-
|
|
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
|
|
4535
|
-
if (
|
|
4536
|
-
|
|
4537
|
-
let e =
|
|
4538
|
-
e && e.isValid && e.texture &&
|
|
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 (
|
|
4541
|
-
e.state.unbindTexture(),
|
|
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 =
|
|
4546
|
-
e || (e = new
|
|
4547
|
-
let t =
|
|
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 <
|
|
4554
|
-
let t =
|
|
4555
|
-
t !== null && n !== void 0 && n.update(t,
|
|
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
|
-
|
|
4557
|
+
le && le(t, r), r.detectedPlanes && n.dispatchEvent({
|
|
4558
4558
|
type: "planesdetected",
|
|
4559
|
-
data:
|
|
4560
|
-
}),
|
|
4559
|
+
data: r
|
|
4560
|
+
}), v = null;
|
|
4561
4561
|
}
|
|
4562
|
-
let
|
|
4563
|
-
|
|
4564
|
-
|
|
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
|
|
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,
|
|
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),
|
|
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
|
|
4607
|
+
function h(e, t) {
|
|
4608
4608
|
t.matcap && (e.matcap.value = t.matcap);
|
|
4609
4609
|
}
|
|
4610
|
-
function
|
|
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
|
|
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 ?
|
|
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
|
|
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 =
|
|
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 (
|
|
5234
|
-
if (typeof WebGLRenderingContext < "u" &&
|
|
5235
|
-
|
|
5236
|
-
} else
|
|
5237
|
-
let
|
|
5238
|
-
|
|
5239
|
-
|
|
5240
|
-
|
|
5241
|
-
]),
|
|
5242
|
-
|
|
5243
|
-
|
|
5244
|
-
|
|
5245
|
-
|
|
5246
|
-
|
|
5247
|
-
|
|
5248
|
-
]),
|
|
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
|
|
5254
|
-
this._outputColorSpace =
|
|
5255
|
-
let
|
|
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
|
-
},
|
|
5261
|
+
}, je = !1;
|
|
5262
5262
|
function Ne() {
|
|
5263
|
-
return
|
|
5263
|
+
return z === null ? H : 1;
|
|
5264
5264
|
}
|
|
5265
|
-
let G =
|
|
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:
|
|
5273
|
-
stencil:
|
|
5274
|
-
antialias:
|
|
5275
|
-
premultipliedAlpha:
|
|
5276
|
-
preserveDrawingBuffer:
|
|
5277
|
-
powerPreference:
|
|
5278
|
-
failIfMajorPerformanceCaveat:
|
|
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
|
|
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 &&
|
|
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(),
|
|
5292
|
-
let Z = new Lr(
|
|
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
|
|
5304
|
+
return H;
|
|
5305
5305
|
}, this.setPixelRatio = function(e) {
|
|
5306
|
-
e !== void 0 && (
|
|
5306
|
+
e !== void 0 && (H = e, this.setSize(fe, pe, !1));
|
|
5307
5307
|
}, this.getSize = function(e) {
|
|
5308
|
-
return e.set(
|
|
5308
|
+
return e.set(fe, pe);
|
|
5309
5309
|
}, this.setSize = function(e, n, r = !0) {
|
|
5310
5310
|
if (Z.isPresenting) {
|
|
5311
|
-
|
|
5311
|
+
j("WebGLRenderer: Can't change size while VR device is presenting.");
|
|
5312
5312
|
return;
|
|
5313
5313
|
}
|
|
5314
|
-
|
|
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(
|
|
5316
|
+
return e.set(fe * H, pe * H).floor();
|
|
5317
5317
|
}, this.setDrawingBufferSize = function(e, n, r) {
|
|
5318
|
-
|
|
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 (
|
|
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
|
-
|
|
5330
|
+
F.setEffects(e || []);
|
|
5331
5331
|
}, this.getCurrentViewport = function(e) {
|
|
5332
|
-
return e.copy(
|
|
5332
|
+
return e.copy(V);
|
|
5333
5333
|
}, this.getViewport = function(e) {
|
|
5334
|
-
return e.copy(
|
|
5334
|
+
return e.copy(ye);
|
|
5335
5335
|
}, this.setViewport = function(e, t, n, r) {
|
|
5336
|
-
e.isVector4 ?
|
|
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(
|
|
5338
|
+
return e.copy(be);
|
|
5339
5339
|
}, this.setScissor = function(e, t, n, r) {
|
|
5340
|
-
e.isVector4 ?
|
|
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
|
|
5342
|
+
return U;
|
|
5343
5343
|
}, this.setScissorTest = function(e) {
|
|
5344
|
-
J.setScissorTest(
|
|
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 (
|
|
5362
|
-
let t =
|
|
5363
|
-
e =
|
|
5361
|
+
if (z !== null) {
|
|
5362
|
+
let t = z.texture.format;
|
|
5363
|
+
e = x.has(t);
|
|
5364
5364
|
}
|
|
5365
5365
|
if (e) {
|
|
5366
|
-
let e =
|
|
5367
|
-
t ? (
|
|
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(),
|
|
5381
|
+
e.preventDefault(), T("WebGLRenderer: Context Lost."), L = !0;
|
|
5382
5382
|
}
|
|
5383
5383
|
function lt() {
|
|
5384
|
-
|
|
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
|
-
|
|
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 =
|
|
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,
|
|
5414
|
-
a !== null && (
|
|
5415
|
-
let
|
|
5416
|
-
if (
|
|
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
|
|
5419
|
-
if (c !== null && (
|
|
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 ?
|
|
5423
|
-
} else i.isPoints ?
|
|
5424
|
-
if (i.isBatchedMesh) if (i._multiDrawInstances !== null)
|
|
5425
|
-
else if (K.get("WEBGL_multi_draw"))
|
|
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),
|
|
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)
|
|
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
|
-
|
|
5434
|
-
} else
|
|
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),
|
|
5441
|
-
e.isLight && e.layers.test(t.layers) && (
|
|
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) && (
|
|
5444
|
-
}),
|
|
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
|
-
}),
|
|
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
|
-
|
|
5485
|
+
S("WebGLRenderer.render: camera is not an instance of THREE.Camera.");
|
|
5486
5486
|
return;
|
|
5487
5487
|
}
|
|
5488
|
-
if (
|
|
5489
|
-
let n = Z.enabled === !0 && Z.isPresenting === !0, r =
|
|
5490
|
-
if (e.matrixWorldAutoUpdate === !0 && e.updateMatrixWorld(), t.parent === null && t.matrixWorldAutoUpdate === !0 && t.updateMatrixWorld(), Z.enabled === !0 && Z.isPresenting === !0 && (
|
|
5491
|
-
let e =
|
|
5492
|
-
e !== null && Ot(e, t, -Infinity,
|
|
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,
|
|
5495
|
-
let i =
|
|
5496
|
-
if ($e.render(i, e, t),
|
|
5497
|
-
let n =
|
|
5498
|
-
if (
|
|
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
|
-
|
|
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(
|
|
5507
|
+
kt(A, e, n, n.viewport);
|
|
5508
5508
|
}
|
|
5509
|
-
} else r.length > 0 && Q(n, r, e, t),
|
|
5509
|
+
} else r.length > 0 && Q(n, r, e, t), je && et.render(e), kt(A, e, t);
|
|
5510
5510
|
}
|
|
5511
|
-
|
|
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)
|
|
5518
|
+
else if (e.isLight) M.pushLight(e), e.castShadow && M.pushShadow(e);
|
|
5519
5519
|
else if (e.isSprite) {
|
|
5520
|
-
if (!e.frustumCulled ||
|
|
5521
|
-
r &&
|
|
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 &&
|
|
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 ||
|
|
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(),
|
|
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 &&
|
|
5531
|
+
s && s.visible && A.push(e, t, s, n, ke.z, o);
|
|
5532
5532
|
}
|
|
5533
|
-
} else i.visible &&
|
|
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
|
-
|
|
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 (
|
|
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
|
-
|
|
5547
|
+
M.state.transmissionRenderTarget[r.id] = new k(1, 1, {
|
|
5548
5548
|
generateMipmaps: !0,
|
|
5549
|
-
type: e ?
|
|
5550
|
-
minFilter:
|
|
5549
|
+
type: e ? he : ae,
|
|
5550
|
+
minFilter: ee,
|
|
5551
5551
|
samples: q.samples,
|
|
5552
|
-
stencilBuffer:
|
|
5552
|
+
stencilBuffer: s,
|
|
5553
5553
|
resolveDepthBuffer: !1,
|
|
5554
5554
|
resolveStencilBuffer: !1,
|
|
5555
|
-
colorSpace:
|
|
5555
|
+
colorSpace: O.workingColorSpace
|
|
5556
5556
|
});
|
|
5557
5557
|
}
|
|
5558
|
-
let
|
|
5559
|
-
|
|
5560
|
-
let
|
|
5561
|
-
|
|
5562
|
-
let
|
|
5563
|
-
|
|
5564
|
-
let
|
|
5565
|
-
if (r.viewport !== void 0 && (r.viewport = void 0),
|
|
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(
|
|
5574
|
+
e === !0 && (X.updateMultisampleRenderTarget(i), X.updateRenderTargetMipmap(i));
|
|
5575
5575
|
}
|
|
5576
|
-
|
|
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(
|
|
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 =
|
|
5590
|
-
let r = Y.get(e), i =
|
|
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,
|
|
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 =
|
|
5614
|
-
let a = t.fog, o = r.isMeshStandardMaterial || r.isMeshLambertMaterial || r.isMeshPhongMaterial ? t.environment : null, s =
|
|
5615
|
-
r.toneMapped && (
|
|
5616
|
-
let g = n.morphAttributes.position || n.morphAttributes.normal || n.morphAttributes.color, _ = g === void 0 ? 0 : g.length, v = Y.get(r), y =
|
|
5617
|
-
if (
|
|
5618
|
-
let t = e ===
|
|
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 !==
|
|
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,
|
|
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",
|
|
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
|
|
5654
|
+
return R;
|
|
5655
5655
|
}, this.getActiveMipmapLevel = function() {
|
|
5656
|
-
return
|
|
5656
|
+
return re;
|
|
5657
5657
|
}, this.getRenderTarget = function() {
|
|
5658
|
-
return
|
|
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
|
-
|
|
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),
|
|
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,
|
|
5688
|
-
} else
|
|
5689
|
-
if (n !== 0 && (r = Lt), J.bindFramebuffer(G.FRAMEBUFFER, r) && J.drawBuffers(e, r), J.viewport(
|
|
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
|
-
|
|
5702
|
+
ie = -1;
|
|
5703
5703
|
}, this.readRenderTargetPixels = function(e, t, n, r, i, a, o, s = 0) {
|
|
5704
5704
|
if (!(e && e.isWebGLRenderTarget)) {
|
|
5705
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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 =
|
|
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,
|
|
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
|
|
5730
|
-
if (e.isWebGLCubeRenderTarget &&
|
|
5731
|
-
J.bindFramebuffer(G.FRAMEBUFFER,
|
|
5732
|
-
let
|
|
5733
|
-
if (e.textures.length > 1 && G.readBuffer(G.COLOR_ATTACHMENT0 +
|
|
5734
|
-
if (!q.textureTypeReadable(
|
|
5735
|
-
let
|
|
5736
|
-
G.bindBuffer(G.PIXEL_PACK_BUFFER,
|
|
5737
|
-
let
|
|
5738
|
-
J.bindFramebuffer(G.FRAMEBUFFER,
|
|
5739
|
-
let
|
|
5740
|
-
return G.flush(), await
|
|
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
|
-
|
|
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
|
|
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 =
|
|
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-
|
|
5795
|
+
//# sourceMappingURL=three.module-Bmy3sVQ-.mjs.map
|