three-low-poly 0.9.3 → 0.9.4

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/dist/index.es.js CHANGED
@@ -1,17 +1,17 @@
1
- import { Group as v, SphereGeometry as B, MeshStandardMaterial as d, Mesh as m, BufferGeometry as b, Float32BufferAttribute as F, BoxGeometry as x, ConeGeometry as C, CylinderGeometry as G, Vector2 as g, LatheGeometry as V, CircleGeometry as Q, ShaderMaterial as $, Shape as H, ExtrudeGeometry as D, MeshBasicMaterial as W, PointLight as Z, TorusGeometry as j, DodecahedronGeometry as O, MeshPhysicalMaterial as U, DoubleSide as q, CatmullRomCurve3 as ee, Vector3 as L, TubeGeometry as te, LineBasicMaterial as oe, Line as se, DataTexture as ne, RGBAFormat as ae, UnsignedByteType as re, RepeatWrapping as _, NearestFilter as ce } from "three";
2
- import { mergeGeometries as S } from "three/addons/utils/BufferGeometryUtils.js";
3
- class he extends v {
1
+ import { Group as v, SphereGeometry as T, MeshStandardMaterial as M, Mesh as m, BufferGeometry as g, Float32BufferAttribute as F, BoxGeometry as d, ConeGeometry as C, CylinderGeometry as G, Vector2 as b, LatheGeometry as N, CircleGeometry as D, ShaderMaterial as R, Shape as V, ExtrudeGeometry as U, MeshBasicMaterial as W, PointLight as X, TorusGeometry as J, DodecahedronGeometry as K, MeshPhysicalMaterial as _, DoubleSide as L, CatmullRomCurve3 as ee, Vector3 as q, TubeGeometry as te, LineBasicMaterial as oe, Line as se, Path as ne, DataTexture as ae, RGBAFormat as re, UnsignedByteType as ce, RepeatWrapping as O, NearestFilter as ie } from "three";
2
+ import { mergeGeometries as I } from "three/addons/utils/BufferGeometryUtils.js";
3
+ class pe extends v {
4
4
  constructor() {
5
5
  super();
6
- const e = [], t = 20, o = new B(0.1, 6, 6), s = new d({
6
+ const e = [], o = 20, t = new T(0.1, 6, 6), s = new M({
7
7
  color: 16777215,
8
8
  transparent: !0,
9
9
  opacity: 0.6,
10
10
  roughness: 0.3,
11
11
  metalness: 0.3
12
12
  });
13
- for (let r = 0; r < t; r++) {
14
- const i = new m(o, s);
13
+ for (let a = 0; a < o; a++) {
14
+ const i = new m(t, s);
15
15
  i.position.set(
16
16
  (Math.random() - 0.5) * 1.5,
17
17
  // Random x position within flask
@@ -21,24 +21,24 @@ class he extends v {
21
21
  // Random z position within flask
22
22
  ), e.push(i), this.add(i);
23
23
  }
24
- function n() {
25
- e.forEach((r) => {
26
- r.position.y += 0.02, r.position.y > 3 && (r.position.y = 0, r.position.x = (Math.random() - 0.5) * 1.5, r.position.z = (Math.random() - 0.5) * 1.5);
24
+ function r() {
25
+ e.forEach((a) => {
26
+ a.position.y += 0.02, a.position.y > 3 && (a.position.y = 0, a.position.x = (Math.random() - 0.5) * 1.5, a.position.z = (Math.random() - 0.5) * 1.5);
27
27
  });
28
28
  }
29
- function a() {
30
- requestAnimationFrame(a), n();
29
+ function n() {
30
+ requestAnimationFrame(n), r();
31
31
  }
32
- a();
32
+ n();
33
33
  }
34
34
  }
35
- class ye extends b {
36
- constructor(e = 2, t = 0.3, o = 0.6, s = 5, n = 5, a = Math.PI / 4) {
35
+ class xe extends g {
36
+ constructor(e = 2, o = 0.3, t = 0.6, s = 5, r = 5, n = Math.PI / 4) {
37
37
  super();
38
- const r = [], i = [];
39
- for (let M = 0; M < s; M++) {
40
- const f = M * t, p = f + t, y = M * o, I = y + o;
41
- r.push(
38
+ const a = [], i = [];
39
+ for (let p = 0; p < s; p++) {
40
+ const f = p * o, x = f + o, y = p * t, k = y + t;
41
+ a.push(
42
42
  // Vertical riser
43
43
  -e / 2,
44
44
  f,
@@ -49,120 +49,120 @@ class ye extends b {
49
49
  y,
50
50
  // Bottom-right
51
51
  e / 2,
52
- p,
52
+ x,
53
53
  y,
54
54
  // Top-right
55
55
  -e / 2,
56
- p,
56
+ x,
57
57
  y,
58
58
  // Top-left
59
59
  // Horizontal tread
60
60
  -e / 2,
61
- p,
61
+ x,
62
62
  y,
63
63
  // Top-left
64
64
  e / 2,
65
- p,
65
+ x,
66
66
  y,
67
67
  // Top-right
68
68
  e / 2,
69
- p,
70
- I,
69
+ x,
70
+ k,
71
71
  // Back-right
72
72
  -e / 2,
73
- p,
74
- I
73
+ x,
74
+ k
75
75
  // Back-left
76
76
  );
77
- const k = M * 8;
77
+ const S = p * 8;
78
78
  i.push(
79
- k,
80
- k + 1,
81
- k + 2,
82
- k,
83
- k + 2,
84
- k + 3
79
+ S,
80
+ S + 1,
81
+ S + 2,
82
+ S,
83
+ S + 2,
84
+ S + 3
85
85
  ), i.push(
86
- k + 4,
87
- k + 5,
88
- k + 6,
89
- k + 4,
90
- k + 6,
91
- k + 7
86
+ S + 4,
87
+ S + 5,
88
+ S + 6,
89
+ S + 4,
90
+ S + 6,
91
+ S + 7
92
92
  );
93
93
  }
94
- const c = s * t, l = s * o, w = e * 2;
95
- r.push(
94
+ const c = s * o, l = s * t, h = e * 2;
95
+ a.push(
96
96
  // Landing platform (4 vertices)
97
- -w / 2,
97
+ -h / 2,
98
98
  c,
99
99
  l,
100
100
  // Bottom-left
101
- w / 2,
101
+ h / 2,
102
102
  c,
103
103
  l,
104
104
  // Bottom-right
105
- w / 2,
105
+ h / 2,
106
106
  c,
107
- l + o,
107
+ l + t,
108
108
  // Top-right
109
- -w / 2,
109
+ -h / 2,
110
110
  c,
111
- l + o
111
+ l + t
112
112
  // Top-left
113
113
  );
114
- const u = s * 8;
114
+ const w = s * 8;
115
115
  i.push(
116
- u,
117
- u + 1,
118
- u + 2,
116
+ w,
117
+ w + 1,
118
+ w + 2,
119
119
  // First triangle for landing
120
- u,
121
- u + 2,
122
- u + 3
120
+ w,
121
+ w + 2,
122
+ w + 3
123
123
  // Second triangle for landing
124
124
  );
125
- for (let M = 0; M < 2; M++) {
126
- const f = M === 0 ? 1 : -1;
127
- for (let p = 0; p < n; p++) {
128
- const y = c + p * t, I = y + t, k = f * (w / 4), A = l + o, R = p * o * Math.cos(a), X = p * o * Math.sin(a), z = k + f * R - e / 2 * Math.cos(a), N = k + f * R + e / 2 * Math.cos(a), T = A + X, J = z + f * o * Math.cos(a), K = N + f * o * Math.cos(a), Y = T + o * Math.sin(a);
129
- r.push(
125
+ for (let p = 0; p < 2; p++) {
126
+ const f = p === 0 ? 1 : -1;
127
+ for (let x = 0; x < r; x++) {
128
+ const y = c + x * o, k = y + o, S = f * (h / 4), z = l + t, Z = x * t * Math.cos(n), Q = x * t * Math.sin(n), A = S + f * Z - e / 2 * Math.cos(n), E = S + f * Z + e / 2 * Math.cos(n), B = z + Q, $ = A + f * t * Math.cos(n), H = E + f * t * Math.cos(n), j = B + t * Math.sin(n);
129
+ a.push(
130
130
  // Vertical riser
131
- z,
131
+ A,
132
132
  y,
133
- T,
133
+ B,
134
134
  // Bottom-left
135
- N,
135
+ E,
136
136
  y,
137
- T,
137
+ B,
138
138
  // Bottom-right
139
- N,
140
- I,
141
- T,
139
+ E,
140
+ k,
141
+ B,
142
142
  // Top-right
143
- z,
144
- I,
145
- T,
143
+ A,
144
+ k,
145
+ B,
146
146
  // Top-left
147
147
  // Horizontal tread
148
- z,
149
- I,
150
- T,
148
+ A,
149
+ k,
150
+ B,
151
151
  // Top-left
152
- N,
153
- I,
154
- T,
152
+ E,
153
+ k,
154
+ B,
155
155
  // Top-right
156
- K,
157
- I,
158
- Y,
156
+ H,
157
+ k,
158
+ j,
159
159
  // Back-right
160
- J,
161
- I,
162
- Y
160
+ $,
161
+ k,
162
+ j
163
163
  // Back-left
164
164
  );
165
- const P = u + 4 + M * n * 8 + p * 8;
165
+ const P = w + 4 + p * r * 8 + x * 8;
166
166
  i.push(
167
167
  P,
168
168
  P + 1,
@@ -180,65 +180,65 @@ class ye extends b {
180
180
  );
181
181
  }
182
182
  }
183
- this.setIndex(i), this.setAttribute("position", new F(r, 3)), this.computeVertexNormals();
183
+ this.setIndex(i), this.setAttribute("position", new F(a, 3)), this.computeVertexNormals();
184
184
  }
185
185
  }
186
- class de extends b {
187
- constructor(e = 5, t = 3, o = 5, s = 0.2) {
186
+ class de extends g {
187
+ constructor(e = 5, o = 3, t = 5, s = 0.2) {
188
188
  super();
189
- const n = [
189
+ const r = [
190
190
  // Floor vertices
191
191
  -e / 2,
192
192
  0,
193
- -o / 2,
193
+ -t / 2,
194
194
  // 0
195
195
  e / 2,
196
196
  0,
197
- -o / 2,
197
+ -t / 2,
198
198
  // 1
199
199
  e / 2,
200
200
  0,
201
- o / 2,
201
+ t / 2,
202
202
  // 2
203
203
  -e / 2,
204
204
  0,
205
- o / 2,
205
+ t / 2,
206
206
  // 3
207
207
  // Back wall vertices
208
208
  -e / 2,
209
209
  0,
210
- -o / 2,
210
+ -t / 2,
211
211
  // 4
212
212
  e / 2,
213
213
  0,
214
- -o / 2,
214
+ -t / 2,
215
215
  // 5
216
216
  e / 2,
217
- t,
218
- -o / 2,
217
+ o,
218
+ -t / 2,
219
219
  // 6
220
220
  -e / 2,
221
- t,
222
- -o / 2,
221
+ o,
222
+ -t / 2,
223
223
  // 7
224
224
  // Left wall vertices
225
225
  -e / 2,
226
226
  0,
227
- -o / 2,
227
+ -t / 2,
228
228
  // 8
229
229
  -e / 2,
230
230
  0,
231
- o / 2,
231
+ t / 2,
232
232
  // 9
233
233
  -e / 2,
234
- t,
235
- o / 2,
234
+ o,
235
+ t / 2,
236
236
  // 10
237
237
  -e / 2,
238
- t,
239
- -o / 2
238
+ o,
239
+ -t / 2
240
240
  // 11
241
- ], a = [
241
+ ], n = [
242
242
  // Floor
243
243
  0,
244
244
  1,
@@ -261,60 +261,60 @@ class de extends b {
261
261
  10,
262
262
  11
263
263
  ];
264
- this.setIndex(a), this.setAttribute("position", new F(n, 3)), this.computeVertexNormals();
264
+ this.setIndex(n), this.setAttribute("position", new F(r, 3)), this.computeVertexNormals();
265
265
  }
266
266
  }
267
- class fe extends b {
268
- constructor(e = 2, t = 0.3, o = 0.5, s = 5, n = 2) {
267
+ class Ge extends g {
268
+ constructor(e = 2, o = 0.3, t = 0.5, s = 5, r = 2) {
269
269
  super();
270
- const a = [], r = [];
271
- for (let w = 0; w < s; w++) {
272
- const u = w * t, M = u + t, f = w * o, p = f + o;
273
- a.push(
270
+ const n = [], a = [];
271
+ for (let h = 0; h < s; h++) {
272
+ const w = h * o, p = w + o, f = h * t, x = f + t;
273
+ n.push(
274
274
  // Vertical riser
275
275
  -e / 2,
276
- u,
276
+ w,
277
277
  f,
278
278
  // Bottom-left
279
279
  e / 2,
280
- u,
280
+ w,
281
281
  f,
282
282
  // Bottom-right
283
283
  e / 2,
284
- M,
284
+ p,
285
285
  f,
286
286
  // Top-right
287
287
  -e / 2,
288
- M,
288
+ p,
289
289
  f,
290
290
  // Top-left
291
291
  // Horizontal tread
292
292
  -e / 2,
293
- M,
293
+ p,
294
294
  f,
295
295
  // Top-left
296
296
  e / 2,
297
- M,
297
+ p,
298
298
  f,
299
299
  // Top-right
300
300
  e / 2,
301
- M,
302
301
  p,
302
+ x,
303
303
  // Back-right
304
304
  -e / 2,
305
- M,
306
- p
305
+ p,
306
+ x
307
307
  // Back-left
308
308
  );
309
- const y = w * 8;
310
- r.push(
309
+ const y = h * 8;
310
+ a.push(
311
311
  y,
312
312
  y + 1,
313
313
  y + 2,
314
314
  y,
315
315
  y + 2,
316
316
  y + 3
317
- ), r.push(
317
+ ), a.push(
318
318
  y + 4,
319
319
  y + 5,
320
320
  y + 6,
@@ -323,8 +323,8 @@ class fe extends b {
323
323
  y + 7
324
324
  );
325
325
  }
326
- const i = s * t, c = s * o;
327
- a.push(
326
+ const i = s * o, c = s * t;
327
+ n.push(
328
328
  // Landing platform (4 vertices)
329
329
  -e / 2,
330
330
  i,
@@ -336,15 +336,15 @@ class fe extends b {
336
336
  // Bottom-right
337
337
  e / 2,
338
338
  i,
339
- c + n,
339
+ c + r,
340
340
  // Top-right
341
341
  -e / 2,
342
342
  i,
343
- c + n
343
+ c + r
344
344
  // Top-left
345
345
  );
346
346
  const l = s * 8;
347
- r.push(
347
+ a.push(
348
348
  l,
349
349
  l + 1,
350
350
  l + 2,
@@ -354,53 +354,53 @@ class fe extends b {
354
354
  l + 3
355
355
  // Second triangle for landing
356
356
  );
357
- for (let w = 0; w < s; w++) {
358
- const u = i + w * t, M = u + t, f = -e / 2 - w * o, p = f - o;
359
- a.push(
357
+ for (let h = 0; h < s; h++) {
358
+ const w = i + h * o, p = w + o, f = -e / 2 - h * t, x = f - t;
359
+ n.push(
360
360
  // Vertical riser
361
361
  f,
362
- u,
363
- c + n,
362
+ w,
363
+ c + r,
364
364
  // Bottom-left
365
365
  f,
366
- u,
367
- c + n - e,
366
+ w,
367
+ c + r - e,
368
368
  // Bottom-right
369
369
  f,
370
- M,
371
- c + n - e,
370
+ p,
371
+ c + r - e,
372
372
  // Top-right
373
373
  f,
374
- M,
375
- c + n,
374
+ p,
375
+ c + r,
376
376
  // Top-left
377
377
  // Horizontal tread
378
378
  f,
379
- M,
380
- c + n,
379
+ p,
380
+ c + r,
381
381
  // Top-left
382
382
  f,
383
- M,
384
- c + n - e,
383
+ p,
384
+ c + r - e,
385
385
  // Top-right
386
+ x,
386
387
  p,
387
- M,
388
- c + n - e,
388
+ c + r - e,
389
389
  // Back-right
390
+ x,
390
391
  p,
391
- M,
392
- c + n
392
+ c + r
393
393
  // Back-left
394
394
  );
395
- const y = l + 4 + w * 8;
396
- r.push(
395
+ const y = l + 4 + h * 8;
396
+ a.push(
397
397
  y,
398
398
  y + 1,
399
399
  y + 2,
400
400
  y,
401
401
  y + 2,
402
402
  y + 3
403
- ), r.push(
403
+ ), a.push(
404
404
  y + 4,
405
405
  y + 5,
406
406
  y + 6,
@@ -409,84 +409,84 @@ class fe extends b {
409
409
  y + 7
410
410
  );
411
411
  }
412
- this.setIndex(r), this.setAttribute("position", new F(a, 3)), this.computeVertexNormals();
412
+ this.setIndex(a), this.setAttribute("position", new F(n, 3)), this.computeVertexNormals();
413
413
  }
414
414
  }
415
- class Me extends b {
416
- constructor(e = 1, t = 0.4, o = 0.2, s = 20, n = 2, a = Math.PI / 8) {
415
+ class ve extends g {
416
+ constructor(e = 1, o = 0.4, t = 0.2, s = 20, r = 2, n = Math.PI / 8) {
417
417
  super();
418
- const r = [], i = [];
418
+ const a = [], i = [];
419
419
  let c = 0;
420
420
  for (let l = 0; l < s; l++) {
421
- const w = n * Math.cos(c), u = n * Math.sin(c), M = l * o, f = M + o;
422
- r.push(
421
+ const h = r * Math.cos(c), w = r * Math.sin(c), p = l * t, f = p + t;
422
+ a.push(
423
423
  // Front face (vertical riser)
424
- w - e / 2 * Math.cos(c),
425
- M,
426
- u - e / 2 * Math.sin(c),
424
+ h - e / 2 * Math.cos(c),
425
+ p,
426
+ w - e / 2 * Math.sin(c),
427
427
  // Bottom-left
428
- w + e / 2 * Math.cos(c),
429
- M,
430
- u + e / 2 * Math.sin(c),
428
+ h + e / 2 * Math.cos(c),
429
+ p,
430
+ w + e / 2 * Math.sin(c),
431
431
  // Bottom-right
432
- w + e / 2 * Math.cos(c),
432
+ h + e / 2 * Math.cos(c),
433
433
  f,
434
- u + e / 2 * Math.sin(c),
434
+ w + e / 2 * Math.sin(c),
435
435
  // Top-right
436
- w - e / 2 * Math.cos(c),
436
+ h - e / 2 * Math.cos(c),
437
437
  f,
438
- u - e / 2 * Math.sin(c)
438
+ w - e / 2 * Math.sin(c)
439
439
  // Top-left
440
- ), r.push(
440
+ ), a.push(
441
441
  // Top face (horizontal tread)
442
- w - e / 2 * Math.cos(c),
442
+ h - e / 2 * Math.cos(c),
443
443
  f,
444
- u - e / 2 * Math.sin(c),
444
+ w - e / 2 * Math.sin(c),
445
445
  // Top-left-front
446
- w + e / 2 * Math.cos(c),
446
+ h + e / 2 * Math.cos(c),
447
447
  f,
448
- u + e / 2 * Math.sin(c),
448
+ w + e / 2 * Math.sin(c),
449
449
  // Top-right-front
450
- w + e / 2 * Math.cos(c) - t * Math.sin(c),
450
+ h + e / 2 * Math.cos(c) - o * Math.sin(c),
451
451
  f,
452
- u + e / 2 * Math.sin(c) + t * Math.cos(c),
452
+ w + e / 2 * Math.sin(c) + o * Math.cos(c),
453
453
  // Back-right
454
- w - e / 2 * Math.cos(c) - t * Math.sin(c),
454
+ h - e / 2 * Math.cos(c) - o * Math.sin(c),
455
455
  f,
456
- u - e / 2 * Math.sin(c) + t * Math.cos(c)
456
+ w - e / 2 * Math.sin(c) + o * Math.cos(c)
457
457
  // Back-left
458
458
  );
459
- const p = l * 8;
459
+ const x = l * 8;
460
460
  i.push(
461
- p,
462
- p + 1,
463
- p + 2,
461
+ x,
462
+ x + 1,
463
+ x + 2,
464
464
  // First triangle for riser
465
- p,
466
- p + 2,
467
- p + 3
465
+ x,
466
+ x + 2,
467
+ x + 3
468
468
  // Second triangle for riser
469
469
  ), i.push(
470
- p + 4,
471
- p + 5,
472
- p + 6,
470
+ x + 4,
471
+ x + 5,
472
+ x + 6,
473
473
  // First triangle for tread
474
- p + 4,
475
- p + 6,
476
- p + 7
474
+ x + 4,
475
+ x + 6,
476
+ x + 7
477
477
  // Second triangle for tread
478
- ), c += a;
478
+ ), c += n;
479
479
  }
480
- this.setIndex(i), this.setAttribute("position", new F(r, 3)), this.computeVertexNormals();
480
+ this.setIndex(i), this.setAttribute("position", new F(a, 3)), this.computeVertexNormals();
481
481
  }
482
482
  }
483
- class pe extends b {
484
- constructor(e = 2, t = 0.3, o = 0.5, s = 10) {
483
+ class be extends g {
484
+ constructor(e = 2, o = 0.3, t = 0.5, s = 10) {
485
485
  super();
486
- const n = [], a = [];
487
- for (let r = 0; r < s; r++) {
488
- const i = r * t, c = i + t, l = r * o, w = l + o;
489
- n.push(
486
+ const r = [], n = [];
487
+ for (let a = 0; a < s; a++) {
488
+ const i = a * o, c = i + o, l = a * t, h = l + t;
489
+ r.push(
490
490
  // Bottom face of riser (front face)
491
491
  -e / 2,
492
492
  i,
@@ -515,105 +515,105 @@ class pe extends b {
515
515
  // 5: Top-right-front (repeated)
516
516
  e / 2,
517
517
  c,
518
- w,
518
+ h,
519
519
  // 6: Top-right-back
520
520
  -e / 2,
521
521
  c,
522
- w
522
+ h
523
523
  // 7: Top-left-back
524
524
  );
525
- const u = r * 8;
526
- a.push(
527
- u,
528
- u + 1,
529
- u + 2,
525
+ const w = a * 8;
526
+ n.push(
527
+ w,
528
+ w + 1,
529
+ w + 2,
530
530
  // First triangle for riser
531
- u,
532
- u + 2,
533
- u + 3
531
+ w,
532
+ w + 2,
533
+ w + 3
534
534
  // Second triangle for riser
535
- ), a.push(
536
- u + 4,
537
- u + 6,
538
- u + 5,
535
+ ), n.push(
536
+ w + 4,
537
+ w + 6,
538
+ w + 5,
539
539
  // First triangle for tread
540
- u + 4,
541
- u + 7,
542
- u + 6
540
+ w + 4,
541
+ w + 7,
542
+ w + 6
543
543
  // Second triangle for tread
544
544
  );
545
545
  }
546
- this.setIndex(a), this.setAttribute("position", new F(n, 3)), this.computeVertexNormals();
546
+ this.setIndex(n), this.setAttribute("position", new F(r, 3)), this.computeVertexNormals();
547
547
  }
548
548
  }
549
- class xe extends b {
550
- constructor(e = 0.4, t = 1.2, o = 0.2) {
549
+ class ge extends g {
550
+ constructor(e = 0.4, o = 1.2, t = 0.2) {
551
551
  super();
552
- const s = t * 0.6, n = new x(e / 2, s, o);
553
- n.translate(0, s / 2, 0);
554
- const a = e * 1.5, r = new x(a, e / 4, o);
555
- r.translate(0, s * 0.75, 0), this.copy(S([n, r], !0));
552
+ const s = o * 0.6, r = new d(e / 2, s, t);
553
+ r.translate(0, s / 2, 0);
554
+ const n = e * 1.5, a = new d(n, e / 4, t);
555
+ a.translate(0, s * 0.75, 0), this.copy(I([r, a], !1));
556
556
  }
557
557
  }
558
- class Ge extends b {
559
- constructor(e = 1.75, t = 0.75) {
558
+ class Se extends g {
559
+ constructor(e = 1.75, o = 0.75) {
560
560
  super();
561
- const o = e * 0.05, s = e * 0.15, n = e * 0.15, a = e * 0.75;
562
- let r = 0;
563
- const i = new x(t, o, t);
564
- i.translate(0, r + o / 2, 0), r += o;
565
- const c = new x(t * 0.8, s, t * 0.8);
566
- c.translate(0, r + s / 2, 0), r += s;
567
- const l = new x(t * 0.6, n, t * 0.6);
568
- l.translate(0, r + n / 2, 0), r += n;
569
- const w = new x(t * 0.4, a, t * 0.4);
570
- w.translate(0, r + a / 2, 0), r += a;
571
- const u = new C(t * 0.4 / Math.sqrt(2), 0.1, 4, 1, !1, Math.PI / 4);
572
- u.translate(0, r + 0.1 / 2, 0), this.copy(
573
- S([i, c, l, w, u], !0)
561
+ const t = e * 0.05, s = e * 0.15, r = e * 0.15, n = e * 0.75;
562
+ let a = 0;
563
+ const i = new d(o, t, o);
564
+ i.translate(0, a + t / 2, 0), a += t;
565
+ const c = new d(o * 0.8, s, o * 0.8);
566
+ c.translate(0, a + s / 2, 0), a += s;
567
+ const l = new d(o * 0.6, r, o * 0.6);
568
+ l.translate(0, a + r / 2, 0), a += r;
569
+ const h = new d(o * 0.4, n, o * 0.4);
570
+ h.translate(0, a + n / 2, 0), a += n;
571
+ const w = new C(o * 0.4 / Math.sqrt(2), 0.1, 4, 1, !1, Math.PI / 4);
572
+ w.translate(0, a + 0.1 / 2, 0), this.copy(
573
+ I([i, c, l, h, w], !1)
574
574
  );
575
575
  }
576
576
  }
577
- class ve extends b {
578
- constructor(e = 0.6, t = 1, o = 0.2) {
577
+ class ke extends g {
578
+ constructor(e = 0.6, o = 1, t = 0.2) {
579
579
  super();
580
- const s = t * 0.7, n = new x(e, s, o);
581
- n.translate(0, s / 2, 0);
582
- const a = t - s, r = new G(e / 2, e / 2, o, 16, 1, !1, 0, Math.PI);
583
- r.rotateY(Math.PI / 2), r.rotateX(Math.PI / 2), r.translate(0, s + a / 2 - o / 2 - 0.05, 0), this.copy(S([n, r], !0));
580
+ const s = o * 0.7, r = new d(e, s, t);
581
+ r.translate(0, s / 2, 0);
582
+ const n = o - s, a = new G(e / 2, e / 2, t, 16, 1, !1, 0, Math.PI);
583
+ a.rotateY(Math.PI / 2), a.rotateX(Math.PI / 2), a.translate(0, s + n / 2 - t / 2 - 0.05, 0), this.copy(I([r, a], !1));
584
584
  }
585
585
  }
586
- class ge extends b {
587
- constructor(e = 0.5, t = 0.8, o = 0.15) {
586
+ class Pe extends g {
587
+ constructor(e = 0.5, o = 0.8, t = 0.15) {
588
588
  super();
589
- const s = new x(e, t, o);
590
- s.translate(0, t / 2, 0), this.copy(s);
589
+ const s = new d(e, o, t);
590
+ s.translate(0, o / 2, 0), this.copy(s);
591
591
  }
592
592
  }
593
- class be extends b {
593
+ class Ie extends g {
594
594
  constructor(e = 2.25) {
595
595
  super();
596
- const t = new x(1.2, 0.5, 1.2);
597
- t.translate(0, 0.25, 0);
598
- const o = new x(1, e, 1);
599
- o.translate(0, 0.5 + e / 2, 0);
600
- const s = new x(1.4, 0.3, 1.4);
601
- s.translate(0, 0.5 + e + 0.15, 0), this.copy(S([t, o, s], !0));
596
+ const o = new d(1.2, 0.5, 1.2);
597
+ o.translate(0, 0.25, 0);
598
+ const t = new d(1, e, 1);
599
+ t.translate(0, 0.5 + e / 2, 0);
600
+ const s = new d(1.4, 0.3, 1.4);
601
+ s.translate(0, 0.5 + e + 0.15, 0), this.copy(I([o, t, s], !1));
602
602
  }
603
603
  }
604
- class ke extends b {
605
- constructor(e = 2, t = 0.05, o = 0.3) {
604
+ class Te extends g {
605
+ constructor(e = 2, o = 0.05, t = 0.3) {
606
606
  super();
607
- const s = new G(t, t, e, 8);
607
+ const s = new G(o, o, e, 8);
608
608
  s.translate(0, e / 2, 0);
609
- const n = new C(t * 1.5, o, 8);
610
- n.translate(0, e + o / 2, 0), this.copy(S([s, n], !0));
609
+ const r = new C(o * 1.5, t, 8);
610
+ r.translate(0, e + t / 2, 0), this.copy(I([s, r], !1));
611
611
  }
612
612
  }
613
- class Ie extends b {
613
+ class Be extends g {
614
614
  constructor(e = 0.1) {
615
615
  super();
616
- const t = [], o = [], s = [
616
+ const o = [], t = [], s = [
617
617
  [0, 1],
618
618
  // Top point
619
619
  [0.5, 0.75],
@@ -631,73 +631,73 @@ class Ie extends b {
631
631
  [-0.5, 0.75]
632
632
  // Left upper middle
633
633
  ];
634
- for (let a = 0; a < s.length; a++) {
635
- const [r, i] = s[a];
636
- t.push(r * e, i * e, 0);
634
+ for (let n = 0; n < s.length; n++) {
635
+ const [a, i] = s[n];
636
+ o.push(a * e, i * e, 0);
637
637
  }
638
- for (let a = 1; a < s.length - 1; a++)
639
- o.push(0, a, a + 1);
640
- o.push(0, s.length - 1, 1);
641
- const n = new F(t, 3);
642
- this.setAttribute("position", n), this.setIndex(o), this.computeVertexNormals();
638
+ for (let n = 1; n < s.length - 1; n++)
639
+ t.push(0, n, n + 1);
640
+ t.push(0, s.length - 1, 1);
641
+ const r = new F(o, 3);
642
+ this.setAttribute("position", r), this.setIndex(t), this.computeVertexNormals();
643
643
  }
644
644
  }
645
- class Pe extends b {
646
- constructor(e = 0.1, t = 0.1, o = 0.4, s = 8) {
645
+ class Fe extends g {
646
+ constructor(e = 0.1, o = 0.1, t = 0.4, s = 8) {
647
647
  super();
648
- const n = new G(e * 0.6, t * 0.6, o, s);
649
- n.translate(0, 0, 0);
650
- const a = new B(e, s, s), r = a.clone(), i = a.clone(), c = a.clone(), l = a.clone();
651
- r.translate(0, o / 2 + e * 0.6, -e * 0.6), i.translate(0, o / 2 + e * 0.6, e * 0.6), c.translate(0, -o / 2 - t * 0.6, -t * 0.6), l.translate(0, -o / 2 - t * 0.6, t * 0.6), this.copy(S([n, r, i, c, l], !0));
648
+ const r = new G(e * 0.6, o * 0.6, t, s);
649
+ r.translate(0, 0, 0);
650
+ const n = new T(e, s, s), a = n.clone(), i = n.clone(), c = n.clone(), l = n.clone();
651
+ a.translate(0, t / 2 + e * 0.6, -e * 0.6), i.translate(0, t / 2 + e * 0.6, e * 0.6), c.translate(0, -t / 2 - o * 0.6, -o * 0.6), l.translate(0, -t / 2 - o * 0.6, o * 0.6), this.copy(I([r, a, i, c, l], !1));
652
652
  }
653
653
  }
654
- class ie extends b {
654
+ class le extends g {
655
655
  constructor() {
656
656
  super();
657
- const e = new B(1, 16, 16), t = new G(0.2, 0.2, 2, 16, 1, !0);
658
- t.translate(0, 1.5, 0), t.rotateX(Math.PI / 2), this.copy(S([e, t], !0));
657
+ const e = new T(1, 16, 16), o = new G(0.2, 0.2, 2, 16, 1, !0);
658
+ o.translate(0, 1.5, 0), o.rotateX(Math.PI / 2), this.copy(I([e, o], !1));
659
659
  }
660
660
  }
661
- class le extends b {
661
+ class me extends g {
662
662
  constructor() {
663
663
  super();
664
664
  const e = [
665
- new g(1, 0),
665
+ new b(1, 0),
666
666
  // Bottom of the bowl
667
- new g(1.2, 0.5),
667
+ new b(1.2, 0.5),
668
668
  // Slight flare at the base
669
- new g(1.4, 1.5),
669
+ new b(1.4, 1.5),
670
670
  // Outer wall
671
- new g(1.3, 1.8),
671
+ new b(1.3, 1.8),
672
672
  // Flared edge
673
- new g(0.8, 1.8)
673
+ new b(0.8, 1.8)
674
674
  // Lip of the bowl
675
- ], t = new V(e, 12), o = new Q(1, 12);
676
- o.rotateX(-Math.PI / 2), o.translate(0, 0, 0), this.copy(S([t, o], !0));
675
+ ], o = new N(e, 12), t = new D(1, 12);
676
+ t.rotateX(-Math.PI / 2), t.translate(0, 0, 0), this.copy(I([o, t], !1));
677
677
  }
678
678
  }
679
- class E extends b {
680
- constructor(e = 0.2, t = 0.2, o = 3, s = 32, n = !0) {
679
+ class Y extends g {
680
+ constructor(e = 0.2, o = 0.2, t = 3, s = 32, r = !0) {
681
681
  super();
682
- const a = new G(e, t, o, s, 1, n), r = new B(t, s, s / 2, 0, Math.PI * 2, Math.PI / 2, Math.PI / 2);
683
- r.translate(0, -(o / 2), 0), this.copy(S([a, r], !0));
682
+ const n = new G(e, o, t, s, 1, r), a = new T(o, s, s / 2, 0, Math.PI * 2, Math.PI / 2, Math.PI / 2);
683
+ a.translate(0, -(t / 2), 0), this.copy(I([n, a], !1));
684
684
  }
685
685
  }
686
- class me extends b {
687
- constructor({ radius: e = 0.5, neckRadius: t = 0.2, height: o = 3, neckHeight: s = 1, segments: n = 16 } = {}) {
686
+ class he extends g {
687
+ constructor({ radius: e = 0.5, neckRadius: o = 0.2, height: t = 3, neckHeight: s = 1, segments: r = 16 } = {}) {
688
688
  super();
689
- const a = o - s, r = new G(e, e, a, n);
690
- r.translate(0, a / 2, 0);
691
- const i = 0.3, c = new G(t, e, i, n);
692
- c.translate(0, a + i / 2, 0);
693
- const l = new G(t, t, s, n);
694
- l.translate(0, a + i + s / 2, 0), this.copy(S([r, c, l], !0));
689
+ const n = t - s, a = new G(e, e, n, r);
690
+ a.translate(0, n / 2, 0);
691
+ const i = 0.3, c = new G(o, e, i, r);
692
+ c.translate(0, n + i / 2, 0);
693
+ const l = new G(o, o, s, r);
694
+ l.translate(0, n + i + s / 2, 0), this.copy(I([a, c, l], !1));
695
695
  }
696
696
  }
697
- class Se extends v {
697
+ class qe extends v {
698
698
  constructor() {
699
699
  super();
700
- const e = new B(5, 32, 32), t = new $({
700
+ const e = new T(5, 32, 32), o = new R({
701
701
  uniforms: {
702
702
  time: { value: 0 }
703
703
  },
@@ -740,46 +740,46 @@ class Se extends v {
740
740
  gl_FragColor = vec4(color, 1.0);
741
741
  }
742
742
  `
743
- }), o = new m(e, t);
744
- this.add(o);
743
+ }), t = new m(e, o);
744
+ this.add(t);
745
745
  }
746
746
  }
747
- class Be extends v {
747
+ class Ce extends v {
748
748
  constructor() {
749
749
  super();
750
- const e = new x(5, 1, 5), t = new d({ color: 8421504, flatShading: !0 }), o = new m(e, t);
751
- o.position.set(0, 0.5, 0), this.add(o);
752
- const s = new x(4, 3, 4), n = new d({ color: 6908265, flatShading: !0 }), a = new m(s, n);
753
- a.position.set(0, 2.5, 0), this.add(a);
754
- const r = new C(3.5, 2, 4), i = new d({ color: 5263440, flatShading: !0 }), c = new m(r, i);
750
+ const e = new d(5, 1, 5), o = new M({ color: 8421504, flatShading: !0 }), t = new m(e, o);
751
+ t.position.set(0, 0.5, 0), this.add(t);
752
+ const s = new d(4, 3, 4), r = new M({ color: 6908265, flatShading: !0 }), n = new m(s, r);
753
+ n.position.set(0, 2.5, 0), this.add(n);
754
+ const a = new C(3.5, 2, 4), i = new M({ color: 5263440, flatShading: !0 }), c = new m(a, i);
755
755
  c.rotation.y = Math.PI / 4, c.position.set(0, 5, 0), this.add(c);
756
- const l = new G(0.2, 0.2, 3.5, 16), w = new d({ color: 6908265, flatShading: !0 });
756
+ const l = new G(0.2, 0.2, 3.5, 16), h = new M({ color: 6908265, flatShading: !0 });
757
757
  [
758
758
  [-1.8, 2.3, -2.2],
759
759
  [1.8, 2.3, -2.2],
760
760
  [-1.8, 2.3, 2.2],
761
761
  [1.8, 2.3, 2.2]
762
- ].forEach((k) => {
763
- const A = new m(l, w);
764
- A.position.set(...k), this.add(A);
762
+ ].forEach((S) => {
763
+ const z = new m(l, h);
764
+ z.position.set(...S), this.add(z);
765
765
  });
766
- const M = new H();
767
- M.moveTo(-1, 0), M.lineTo(-1, 2), M.absarc(0, 2, 1, Math.PI, 0, !0), M.lineTo(1, 0);
766
+ const p = new V();
767
+ p.moveTo(-1, 0), p.lineTo(-1, 2), p.absarc(0, 2, 1, Math.PI, 0, !0), p.lineTo(1, 0);
768
768
  const f = {
769
769
  depth: 0.5,
770
770
  bevelEnabled: !1
771
- }, p = new D(M, f), y = new d({ color: 4210752, flatShading: !0 }), I = new m(p, y);
772
- I.position.set(0, 0.5, 1.7), this.add(I);
771
+ }, x = new U(p, f), y = new M({ color: 4210752, flatShading: !0 }), k = new m(x, y);
772
+ k.position.set(0, 0.5, 1.7), this.add(k);
773
773
  }
774
774
  }
775
- class Te extends v {
775
+ class Le extends v {
776
776
  constructor() {
777
777
  super();
778
- const e = new x(5, 0.3, 3), t = new d({ color: 9132587 }), o = new m(e, t);
779
- o.position.set(0, 3.15, 0);
778
+ const e = new d(5, 0.3, 3), o = new M({ color: 9132587 }), t = new m(e, o);
779
+ t.position.set(0, 3.15, 0);
780
780
  const s = [];
781
- s.push(new g(0.2, 0)), s.push(new g(0.25, 0.5)), s.push(new g(0.15, 1.5)), s.push(new g(0.3, 3));
782
- const n = new V(s, 32), a = new d({ color: 4929057 });
781
+ s.push(new b(0.2, 0)), s.push(new b(0.25, 0.5)), s.push(new b(0.15, 1.5)), s.push(new b(0.3, 3));
782
+ const r = new N(s, 32), n = new M({ color: 4929057 });
783
783
  [
784
784
  [2.2, 0, 1.2],
785
785
  // Adjust Y to 0 so legs start at ground level
@@ -787,20 +787,20 @@ class Te extends v {
787
787
  [2.2, 0, -1.2],
788
788
  [-2.2, 0, -1.2]
789
789
  ].forEach((i) => {
790
- const c = new m(n, a);
790
+ const c = new m(r, n);
791
791
  c.position.set(...i), this.add(c);
792
- }), this.add(o);
792
+ }), this.add(t);
793
793
  }
794
794
  }
795
- class Fe extends v {
796
- constructor(e = 1, t = 0.2) {
797
- super(), this.height = e, this.radius = t, this.createCandle(), this.animateFlicker();
795
+ class ze extends v {
796
+ constructor(e = 1, o = 0.2) {
797
+ super(), this.height = e, this.radius = o, this.createCandle(), this.animateFlicker();
798
798
  }
799
799
  createCandle() {
800
- const e = new G(this.radius, this.radius, this.height, 32), t = new d({ color: 16777215 });
801
- this.candle = new m(e, t), this.candle.position.set(0, this.height / 2, 0), this.add(this.candle);
802
- const o = new B(0.05, 16, 16), s = new W({ color: 16753920 });
803
- this.flame = new m(o, s), this.flame.position.set(0, this.height + 0.05, 0), this.add(this.flame), this.candleLight = new Z(16753920, 1, 5), this.candleLight.position.set(0, this.height + 0.05, 0), this.candleLight.castShadow = !0, this.add(this.candleLight);
800
+ const e = new G(this.radius, this.radius, this.height, 32), o = new M({ color: 16777215 });
801
+ this.candle = new m(e, o), this.candle.position.set(0, this.height / 2, 0), this.add(this.candle);
802
+ const t = new T(0.05, 16, 16), s = new W({ color: 16753920 });
803
+ this.flame = new m(t, s), this.flame.position.set(0, this.height + 0.05, 0), this.add(this.flame), this.candleLight = new X(16753920, 1, 5), this.candleLight.position.set(0, this.height + 0.05, 0), this.candleLight.castShadow = !0, this.add(this.candleLight);
804
804
  }
805
805
  animateFlicker() {
806
806
  const e = () => {
@@ -809,47 +809,47 @@ class Fe extends v {
809
809
  e();
810
810
  }
811
811
  }
812
- class Le extends v {
813
- constructor(e = 1.3, t = 0.5) {
812
+ class Ae extends v {
813
+ constructor(e = 1.3, o = 0.5) {
814
814
  super();
815
- const o = new G(t, t, 0.2, 16), s = new d({ color: 9127187, flatShading: !0 }), n = new m(o, s);
816
- n.position.set(0, 0, 0), this.add(n);
817
- const a = new G(t * 0.9, t * 0.9, e), r = new d({ color: 16766720, flatShading: !0, transparent: !0, opacity: 0.6 }), i = new m(a, r);
815
+ const t = new G(o, o, 0.2, 16), s = new M({ color: 9127187, flatShading: !0 }), r = new m(t, s);
816
+ r.position.set(0, 0, 0), this.add(r);
817
+ const n = new G(o * 0.9, o * 0.9, e), a = new M({ color: 16766720, flatShading: !0, transparent: !0, opacity: 0.6 }), i = new m(n, a);
818
818
  i.position.set(0, e / 2 + 0.1, 0), this.add(i);
819
- const c = new C(t * 1.1, 0.5, 8), l = new d({ color: 9127187, flatShading: !0 }), w = new m(c, l);
820
- w.position.set(0, e + 0.35, 0), this.add(w);
821
- const u = new j(t * 0.8, 0.05, 8, 16), M = new d({ color: 9127187, flatShading: !0 }), f = new m(u, M);
819
+ const c = new C(o * 1.1, 0.5, 8), l = new M({ color: 9127187, flatShading: !0 }), h = new m(c, l);
820
+ h.position.set(0, e + 0.35, 0), this.add(h);
821
+ const w = new J(o * 0.8, 0.05, 8, 16), p = new M({ color: 9127187, flatShading: !0 }), f = new m(w, p);
822
822
  f.position.set(0, e + 0.85, 0), this.add(f);
823
- const p = new Z(16755200, 1.5, 15);
824
- p.position.set(0, e / 2 + 0.1, 0), p.castShadow = !0, this.add(p);
823
+ const x = new X(16755200, 1.5, 15);
824
+ x.position.set(0, e / 2 + 0.1, 0), x.castShadow = !0, this.add(x);
825
825
  }
826
826
  }
827
- class Ce extends v {
827
+ class Ee extends v {
828
828
  constructor() {
829
829
  super();
830
- const e = new O(1, 0), t = new d({ color: 8421504, flatShading: !0 }), o = new d({ color: 4950843, flatShading: !0, opacity: 0.8, transparent: !0 });
830
+ const e = new K(1, 0), o = new M({ color: 8421504, flatShading: !0 }), t = new M({ color: 4950843, flatShading: !0, opacity: 0.8, transparent: !0 });
831
831
  for (let s = 0; s < 5; s++) {
832
+ const r = new m(e, o);
833
+ r.scale.set(0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4), r.rotation.set(Math.random() * Math.PI, Math.random() * Math.PI, Math.random() * Math.PI), r.position.set((Math.random() - 0.5) * 4, 0, (Math.random() - 0.5) * 4), this.add(r);
832
834
  const n = new m(e, t);
833
- n.scale.set(0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4), n.rotation.set(Math.random() * Math.PI, Math.random() * Math.PI, Math.random() * Math.PI), n.position.set((Math.random() - 0.5) * 4, 0, (Math.random() - 0.5) * 4), this.add(n);
834
- const a = new m(e, o);
835
- a.scale.set(n.scale.x * 0.9, n.scale.y * 0.5, n.scale.z * 0.9), a.rotation.copy(n.rotation), a.position.copy(n.position), a.position.y += 0.3, this.add(a);
835
+ n.scale.set(r.scale.x * 0.9, r.scale.y * 0.5, r.scale.z * 0.9), n.rotation.copy(r.rotation), n.position.copy(r.position), n.position.y += 0.3, this.add(n);
836
836
  }
837
837
  }
838
838
  }
839
- class qe extends v {
839
+ class Ne extends v {
840
840
  constructor() {
841
841
  super();
842
- const e = new O(1, 0), t = new d({ color: 8421504, flatShading: !0 });
843
- for (let o = 0; o < 5; o++) {
844
- const s = new m(e, t);
842
+ const e = new K(1, 0), o = new M({ color: 8421504, flatShading: !0 });
843
+ for (let t = 0; t < 5; t++) {
844
+ const s = new m(e, o);
845
845
  s.scale.set(0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4), s.rotation.set(Math.random() * Math.PI, Math.random() * Math.PI, Math.random() * Math.PI), s.position.set((Math.random() - 0.5) * 4, 0, (Math.random() - 0.5) * 4), this.add(s);
846
846
  }
847
847
  }
848
848
  }
849
- class Ae extends v {
849
+ class Ve extends v {
850
850
  constructor() {
851
851
  super();
852
- const e = new ie(), t = new U({
852
+ const e = new le(), o = new _({
853
853
  color: 8965375,
854
854
  transparent: !0,
855
855
  opacity: 0.4,
@@ -857,309 +857,309 @@ class Ae extends v {
857
857
  metalness: 0.1,
858
858
  reflectivity: 0.8,
859
859
  transmission: 0.9,
860
- side: q
861
- }), o = new m(e, t);
862
- o.rotation.x = -Math.PI / 2, this.add(o);
860
+ side: L
861
+ }), t = new m(e, o);
862
+ t.rotation.x = -Math.PI / 2, this.add(t);
863
863
  }
864
864
  }
865
- class ze extends v {
865
+ class Ue extends v {
866
866
  constructor() {
867
867
  super();
868
- const e = new x(1.6, 0.05, 2.1), t = new d({ color: 9109504 }), o = new m(e, t), s = new m(e, t);
869
- o.position.set(0, 0.125, 0), s.position.set(0, -0.125, 0);
870
- const n = new x(1.55, 0.2, 2), a = new d({ color: 16777215 }), r = new m(n, a);
871
- r.position.set(-0.025, 0, 0);
872
- const i = new x(0.05, 0.25, 2.1), c = new d({ color: 4915200 }), l = new m(i, c);
873
- l.position.set(-0.8, 0, 0), this.add(o), this.add(s), this.add(r), this.add(l);
868
+ const e = new d(1.6, 0.05, 2.1), o = new M({ color: 9109504 }), t = new m(e, o), s = new m(e, o);
869
+ t.position.set(0, 0.125, 0), s.position.set(0, -0.125, 0);
870
+ const r = new d(1.55, 0.2, 2), n = new M({ color: 16777215 }), a = new m(r, n);
871
+ a.position.set(-0.025, 0, 0);
872
+ const i = new d(0.05, 0.25, 2.1), c = new M({ color: 4915200 }), l = new m(i, c);
873
+ l.position.set(-0.8, 0, 0), this.add(t), this.add(s), this.add(a), this.add(l);
874
874
  }
875
875
  }
876
- class Ne extends v {
876
+ class Ye extends v {
877
877
  constructor() {
878
878
  super();
879
879
  const e = [
880
- new g(0, 0),
880
+ new b(0, 0),
881
881
  // Bottom
882
- new g(0.8, 0),
882
+ new b(0.8, 0),
883
883
  // Base
884
- new g(1, 1.5),
884
+ new b(1, 1.5),
885
885
  // Rounded body
886
- new g(0.5, 2.2),
886
+ new b(0.5, 2.2),
887
887
  // Neck
888
- new g(0.6, 2.5)
888
+ new b(0.6, 2.5)
889
889
  // Mouth
890
- ], t = new V(e, 10), o = new G(0.3, 0.4, 0.2, 8), s = new d({
890
+ ], o = new N(e, 10), t = new G(0.3, 0.4, 0.2, 8), s = new M({
891
891
  color: 8965375,
892
892
  transparent: !0,
893
893
  opacity: 0.5,
894
894
  roughness: 0.1,
895
895
  metalness: 0.3
896
- }), n = new d({
896
+ }), r = new M({
897
897
  color: 16724838,
898
898
  // Vibrant potion color
899
899
  transparent: !0,
900
900
  opacity: 0.6
901
- }), a = new d({
901
+ }), n = new M({
902
902
  color: 9127187,
903
903
  roughness: 1
904
- }), r = new m(t, s), i = new m(t, n), c = new m(o, a);
904
+ }), a = new m(o, s), i = new m(o, r), c = new m(t, n);
905
905
  i.scale.set(0.8, 0.8, 0.8), i.position.y = 0.1, c.position.y = 2.5;
906
906
  const l = new v();
907
- l.add(r, i, c), this.add(l);
907
+ l.add(a, i, c), this.add(l);
908
908
  }
909
909
  }
910
- class Ve extends v {
910
+ class _e extends v {
911
911
  constructor() {
912
912
  super();
913
- const e = new G(0.3, 0.4, 0.1, 16), t = new d({
913
+ const e = new G(0.3, 0.4, 0.1, 16), o = new M({
914
914
  color: 3355443,
915
915
  roughness: 0.6,
916
916
  metalness: 0.3
917
- }), o = new m(e, t);
918
- o.position.y = 0.05;
919
- const s = new G(0.1, 0.1, 0.7, 16), n = new d({
917
+ }), t = new m(e, o);
918
+ t.position.y = 0.05;
919
+ const s = new G(0.1, 0.1, 0.7, 16), r = new M({
920
920
  color: 5592405,
921
921
  roughness: 0.5,
922
922
  metalness: 0.4
923
- }), a = new m(s, n);
924
- a.position.y = 0.4;
925
- const r = new C(0.075, 0.2, 16), i = new d({
923
+ }), n = new m(s, r);
924
+ n.position.y = 0.4;
925
+ const a = new C(0.075, 0.2, 16), i = new M({
926
926
  color: 16733440,
927
927
  emissive: 16733440,
928
928
  emissiveIntensity: 0.6,
929
929
  transparent: !0,
930
930
  opacity: 0.8
931
- }), c = new m(r, i);
932
- c.position.y = 0.8, this.add(o, a, c);
931
+ }), c = new m(a, i);
932
+ c.position.y = 0.8, this.add(t, n, c);
933
933
  }
934
934
  }
935
- class Ee extends v {
935
+ class Ze extends v {
936
936
  constructor() {
937
937
  super();
938
- const e = new x(3, 4, 0.1), t = new d({
938
+ const e = new d(3, 4, 0.1), o = new M({
939
939
  color: 3026478,
940
940
  roughness: 0.8,
941
941
  metalness: 0.6
942
- }), o = new x(0.2, 0.5, 0.2), s = new d({
942
+ }), t = new d(0.2, 0.5, 0.2), s = new M({
943
943
  color: 11184810,
944
944
  roughness: 0.5,
945
945
  metalness: 0.7
946
- }), n = new G(0.3, 0.3, 0.1, 16), a = new d({
946
+ }), r = new G(0.3, 0.3, 0.1, 16), n = new M({
947
947
  color: 5592405,
948
948
  roughness: 0.7,
949
949
  metalness: 0.5
950
- }), r = new m(e, t);
950
+ }), a = new m(e, o);
951
951
  for (let y = -1; y <= 1; y++) {
952
- const I = new m(o, s);
953
- I.position.set(y, 1.5, 0.1), r.add(I);
952
+ const k = new m(t, s);
953
+ k.position.set(y, 1.5, 0.1), a.add(k);
954
954
  }
955
- const i = new m(n, a);
956
- i.rotation.x = Math.PI / 2, i.position.set(0, 0.5, 0.15), r.add(i);
957
- const c = new B(0.15, 8, 8), l = new d({
955
+ const i = new m(r, n);
956
+ i.rotation.x = Math.PI / 2, i.position.set(0, 0.5, 0.15), a.add(i);
957
+ const c = new T(0.15, 8, 8), l = new M({
958
958
  color: 16711680,
959
959
  emissive: 16711680,
960
960
  emissiveIntensity: 0.5
961
- }), w = new m(c, l);
962
- w.position.set(0, -1, 0.1), r.add(w), this.add(r);
963
- let u = 0.015, M = 0.8, f = 0.2;
964
- function p() {
965
- requestAnimationFrame(p);
966
- const y = f + Math.abs(Math.sin(Date.now() * u)) * (M - f);
967
- w.material.emissiveIntensity = y;
961
+ }), h = new m(c, l);
962
+ h.position.set(0, -1, 0.1), a.add(h), this.add(a);
963
+ let w = 0.015, p = 0.8, f = 0.2;
964
+ function x() {
965
+ requestAnimationFrame(x);
966
+ const y = f + Math.abs(Math.sin(Date.now() * w)) * (p - f);
967
+ h.material.emissiveIntensity = y;
968
968
  }
969
- p();
969
+ x();
970
970
  }
971
971
  }
972
- class Ue extends v {
972
+ class je extends v {
973
973
  constructor() {
974
974
  super();
975
975
  const e = [
976
- new g(0, 0),
976
+ new b(0, 0),
977
977
  // Bottom of the flask
978
- new g(1.2, 0),
978
+ new b(1.2, 0),
979
979
  // Base
980
- new g(1.5, 1.5),
980
+ new b(1.5, 1.5),
981
981
  // Mid-body
982
- new g(1, 3),
982
+ new b(1, 3),
983
983
  // Narrow neck
984
- new g(0.6, 3.5)
984
+ new b(0.6, 3.5)
985
985
  // Mouth of the flask
986
- ], t = new V(e, 12), o = new G(0.6, 0.7, 0.3, 8), s = new d({
986
+ ], o = new N(e, 12), t = new G(0.6, 0.7, 0.3, 8), s = new M({
987
987
  color: 8965290,
988
988
  transparent: !0,
989
989
  opacity: 0.4,
990
990
  roughness: 0.1,
991
991
  metalness: 0.5
992
- }), n = new d({
992
+ }), r = new M({
993
993
  color: 9127187,
994
994
  roughness: 1
995
- }), a = new m(t, s), r = new m(o, n);
996
- r.position.y = 3.5, this.add(a, r);
995
+ }), n = new m(o, s), a = new m(t, r);
996
+ a.position.y = 3.5, this.add(n, a);
997
997
  }
998
998
  }
999
- class Re extends v {
999
+ class Oe extends v {
1000
1000
  constructor() {
1001
1001
  super();
1002
- const e = new x(2, 3, 0.1), t = new d({
1002
+ const e = new d(2, 3, 0.1), o = new M({
1003
1003
  color: 3355443,
1004
1004
  roughness: 0.8,
1005
1005
  metalness: 0.5
1006
- }), o = new m(e, t), s = new G(0.1, 0.1, 0.2, 8), n = new G(0.05, 0.05, 1, 8), a = new d({
1006
+ }), t = new m(e, o), s = new G(0.1, 0.1, 0.2, 8), r = new G(0.05, 0.05, 1, 8), n = new M({
1007
1007
  color: 11184810,
1008
1008
  roughness: 0.5,
1009
1009
  metalness: 0.7
1010
1010
  });
1011
- for (let r = -0.5; r <= 0.5; r += 0.5) {
1012
- const i = new m(s, a);
1013
- i.position.set(r, 1, 0.1);
1014
- const c = new m(n, a);
1011
+ for (let a = -0.5; a <= 0.5; a += 0.5) {
1012
+ const i = new m(s, n);
1013
+ i.position.set(a, 1, 0.1);
1014
+ const c = new m(r, n);
1015
1015
  c.position.y = 0.5, i.add(c), this.add(i);
1016
1016
  }
1017
- this.add(o);
1017
+ this.add(t);
1018
1018
  }
1019
1019
  }
1020
- class Ye extends v {
1020
+ class Xe extends v {
1021
1021
  constructor() {
1022
1022
  super();
1023
- const e = new x(1, 0.2, 0.5), t = new d({
1023
+ const e = new d(1, 0.2, 0.5), o = new M({
1024
1024
  color: 4473924,
1025
1025
  roughness: 0.6,
1026
1026
  metalness: 0.3
1027
- }), o = new m(e, t);
1028
- o.position.y = 0.1;
1029
- const s = new x(0.2, 1, 0.2), n = new m(s, t);
1030
- n.position.set(0, 0.6, -0.2);
1031
- const a = new G(0.1, 0.1, 0.4, 8), r = new d({
1027
+ }), t = new m(e, o);
1028
+ t.position.y = 0.1;
1029
+ const s = new d(0.2, 1, 0.2), r = new m(s, o);
1030
+ r.position.set(0, 0.6, -0.2);
1031
+ const n = new G(0.1, 0.1, 0.4, 8), a = new M({
1032
1032
  color: 3355443,
1033
1033
  roughness: 0.5,
1034
1034
  metalness: 0.6
1035
- }), i = new m(a, r);
1035
+ }), i = new m(n, a);
1036
1036
  i.position.set(0, 1.1, -0.35), i.rotation.x = -Math.PI / 4;
1037
- const c = new x(0.6, 0.1, 0.6), l = new d({
1037
+ const c = new d(0.6, 0.1, 0.6), l = new M({
1038
1038
  color: 5592405,
1039
1039
  roughness: 0.8,
1040
1040
  metalness: 0.2
1041
- }), w = new m(c, l);
1042
- w.position.set(0, 0.6, 0), this.add(o, n, i, w);
1041
+ }), h = new m(c, l);
1042
+ h.position.set(0, 0.6, 0), this.add(t, r, i, h);
1043
1043
  }
1044
1044
  }
1045
- class _e extends v {
1045
+ class Je extends v {
1046
1046
  constructor() {
1047
1047
  super();
1048
- const e = new le(), t = new G(0.2, 0.3, 1.5, 8);
1049
- t.translate(0, 0.75, 0);
1050
- const o = new d({
1048
+ const e = new me(), o = new G(0.2, 0.3, 1.5, 8);
1049
+ o.translate(0, 0.75, 0);
1050
+ const t = new M({
1051
1051
  color: 6045747,
1052
1052
  // Dark earthy tone
1053
1053
  roughness: 1,
1054
1054
  metalness: 0,
1055
- side: q
1055
+ side: L
1056
1056
  // Render inside and outside
1057
- }), s = new d({
1057
+ }), s = new M({
1058
1058
  color: 9132587,
1059
1059
  // Slightly lighter earthy color
1060
1060
  roughness: 0.8,
1061
1061
  metalness: 0.1
1062
- }), n = new m(e, o), a = new m(t, s);
1063
- a.position.set(0.3, 1.3, 0), a.rotation.z = Math.PI / 4, this.add(n, a);
1062
+ }), r = new m(e, t), n = new m(o, s);
1063
+ n.position.set(0.3, 1.3, 0), n.rotation.z = Math.PI / 4, this.add(r, n);
1064
1064
  }
1065
1065
  }
1066
- class Ze extends v {
1066
+ class Ke extends v {
1067
1067
  constructor() {
1068
1068
  super();
1069
- const e = 100, t = 0.05, o = new ee(
1069
+ const e = 100, o = 0.05, t = new ee(
1070
1070
  Array.from({ length: e }, (c, l) => {
1071
- const w = l * 0.2;
1072
- return new L(
1073
- Math.cos(w) * 0.4,
1074
- l * t,
1071
+ const h = l * 0.2;
1072
+ return new q(
1073
+ Math.cos(h) * 0.4,
1074
+ l * o,
1075
1075
  // Gradual height increase
1076
- Math.sin(w) * 0.4
1076
+ Math.sin(h) * 0.4
1077
1077
  );
1078
1078
  })
1079
- ), s = new te(o, 200, 0.1, 8, !1), n = new d({
1079
+ ), s = new te(t, 200, 0.1, 8, !1), r = new M({
1080
1080
  color: 8965375,
1081
1081
  transparent: !0,
1082
1082
  opacity: 0.3,
1083
1083
  roughness: 0.1,
1084
1084
  metalness: 0.2,
1085
1085
  emissive: 8965375
1086
- }), a = new m(s, n);
1087
- this.add(a);
1088
- function r() {
1089
- n.emissiveIntensity = 0.2 + Math.sin(Date.now() * 5e-3) * 0.1;
1086
+ }), n = new m(s, r);
1087
+ this.add(n);
1088
+ function a() {
1089
+ r.emissiveIntensity = 0.2 + Math.sin(Date.now() * 5e-3) * 0.1;
1090
1090
  }
1091
1091
  function i() {
1092
- requestAnimationFrame(i), r();
1092
+ requestAnimationFrame(i), a();
1093
1093
  }
1094
1094
  i();
1095
1095
  }
1096
1096
  }
1097
- class je extends v {
1097
+ class Qe extends v {
1098
1098
  constructor() {
1099
1099
  super();
1100
- const e = new j(0.3, 0.03, 8, 16), t = new d({
1100
+ const e = new J(0.3, 0.03, 8, 16), o = new M({
1101
1101
  color: 8947848,
1102
1102
  roughness: 0.7,
1103
1103
  metalness: 0.3
1104
- }), o = new m(e, t);
1105
- o.rotation.x = Math.PI / 2, o.position.y = 0.4;
1106
- const s = new G(0.02, 0.02, 0.4, 8), n = new d({
1104
+ }), t = new m(e, o);
1105
+ t.rotation.x = Math.PI / 2, t.position.y = 0.4;
1106
+ const s = new G(0.02, 0.02, 0.4, 8), r = new M({
1107
1107
  color: 6710886,
1108
1108
  roughness: 0.8,
1109
1109
  metalness: 0.3
1110
- }), a = [];
1111
- for (let r = 0; r < 3; r++) {
1112
- const i = r / 3 * Math.PI * 2, c = new m(s, n);
1113
- c.position.set(Math.cos(i) * 0.25, 0.2, Math.sin(i) * 0.25), a.push(c);
1110
+ }), n = [];
1111
+ for (let a = 0; a < 3; a++) {
1112
+ const i = a / 3 * Math.PI * 2, c = new m(s, r);
1113
+ c.position.set(Math.cos(i) * 0.25, 0.2, Math.sin(i) * 0.25), n.push(c);
1114
1114
  }
1115
- this.add(o, ...a);
1115
+ this.add(t, ...n);
1116
1116
  }
1117
1117
  }
1118
- class Oe extends v {
1118
+ class $e extends v {
1119
1119
  constructor() {
1120
1120
  super();
1121
- const e = new G(0.5, 0.6, 0.3, 16), t = new d({
1121
+ const e = new G(0.5, 0.6, 0.3, 16), o = new M({
1122
1122
  color: 3355443,
1123
1123
  roughness: 0.6,
1124
1124
  metalness: 0.5
1125
- }), o = new m(e, t);
1126
- o.position.y = 0.15;
1127
- const s = new G(0.15, 0.15, 2, 12, 1, !0), n = new d({
1125
+ }), t = new m(e, o);
1126
+ t.position.y = 0.15;
1127
+ const s = new G(0.15, 0.15, 2, 12, 1, !0), r = new M({
1128
1128
  color: 16737792,
1129
1129
  roughness: 0.5,
1130
1130
  metalness: 0.8,
1131
- side: q
1132
- }), a = new m(s, n);
1133
- a.position.y = 1.3;
1134
- const r = new B(0.3, 16, 16), i = new m(r, n);
1135
- i.position.y = 2.4, this.add(o, a, i);
1131
+ side: L
1132
+ }), n = new m(s, r);
1133
+ n.position.y = 1.3;
1134
+ const a = new T(0.3, 16, 16), i = new m(a, r);
1135
+ i.position.y = 2.4, this.add(t, n, i);
1136
1136
  const c = [];
1137
- for (let u = 0; u < 5; u++) {
1138
- const M = new oe({ color: 10079487 }), f = [
1139
- new L(0, 2.4, 0),
1140
- new L((Math.random() - 0.5) * 1.5, Math.random() * 2.4, (Math.random() - 0.5) * 1.5)
1141
- ], p = new b().setFromPoints(f), y = new se(p, M);
1137
+ for (let w = 0; w < 5; w++) {
1138
+ const p = new oe({ color: 10079487 }), f = [
1139
+ new q(0, 2.4, 0),
1140
+ new q((Math.random() - 0.5) * 1.5, Math.random() * 2.4, (Math.random() - 0.5) * 1.5)
1141
+ ], x = new g().setFromPoints(f), y = new se(x, p);
1142
1142
  this.add(y), c.push(y);
1143
1143
  }
1144
1144
  function l() {
1145
- c.forEach((u) => {
1146
- const M = [
1147
- new L(0, 2.4, 0),
1148
- new L((Math.random() - 0.5) * 1.5, Math.random() * 2.4, (Math.random() - 0.5) * 1.5)
1145
+ c.forEach((w) => {
1146
+ const p = [
1147
+ new q(0, 2.4, 0),
1148
+ new q((Math.random() - 0.5) * 1.5, Math.random() * 2.4, (Math.random() - 0.5) * 1.5)
1149
1149
  ];
1150
- u.geometry.setFromPoints(M);
1150
+ w.geometry.setFromPoints(p);
1151
1151
  });
1152
1152
  }
1153
- function w() {
1154
- requestAnimationFrame(w), l();
1153
+ function h() {
1154
+ requestAnimationFrame(h), l();
1155
1155
  }
1156
- w();
1156
+ h();
1157
1157
  }
1158
1158
  }
1159
- class Xe extends v {
1160
- constructor(e = 0.2, t = 0.2, o = 3, s = 32) {
1159
+ class He extends v {
1160
+ constructor(e = 0.2, o = 0.2, t = 3, s = 32) {
1161
1161
  super();
1162
- const n = new E(e, t, o, s), a = new U({
1162
+ const r = new Y(e, o, t, s), n = new _({
1163
1163
  color: 8965375,
1164
1164
  transparent: !0,
1165
1165
  opacity: 0.4,
@@ -1168,48 +1168,48 @@ class Xe extends v {
1168
1168
  reflectivity: 0.8,
1169
1169
  transmission: 0.9,
1170
1170
  // For glass effect
1171
- side: q
1172
- }), r = new m(n, a);
1173
- this.add(r);
1171
+ side: L
1172
+ }), a = new m(r, n);
1173
+ this.add(a);
1174
1174
  }
1175
1175
  }
1176
- class Je extends v {
1177
- constructor(e = 3, t = [65450, 16711850, 11141375]) {
1176
+ class De extends v {
1177
+ constructor(e = 3, o = [65450, 16711850, 11141375]) {
1178
1178
  super();
1179
- const o = new x(3, 0.2, 1), s = new d({
1179
+ const t = new d(3, 0.2, 1), s = new M({
1180
1180
  color: 9127187,
1181
1181
  // Wooden color or change to metallic tone
1182
1182
  roughness: 0.7,
1183
1183
  metalness: 0.3
1184
- }), n = new m(o, s);
1185
- n.position.y = 0.5;
1186
- const a = new E(0.1, 0.1, 1, 16), r = new d({
1184
+ }), r = new m(t, s);
1185
+ r.position.y = 0.5;
1186
+ const n = new Y(0.1, 0.1, 1, 16), a = new M({
1187
1187
  color: 11184810,
1188
1188
  transparent: !0,
1189
1189
  opacity: 0.4,
1190
1190
  roughness: 0.1,
1191
1191
  metalness: 0.5,
1192
- side: q
1192
+ side: L
1193
1193
  });
1194
1194
  for (let i = 0; i < e; i++) {
1195
- const c = new m(a, r), l = (i - (e - 1) / 2) * 0.8;
1195
+ const c = new m(n, a), l = (i - (e - 1) / 2) * 0.8;
1196
1196
  c.position.set(l, 1, 0);
1197
- const w = new E(0.099, 0.099, 0.5, 16, !1), u = t[i % t.length], M = new d({
1198
- color: u,
1199
- emissive: u,
1197
+ const h = new Y(0.099, 0.099, 0.5, 16, !1), w = o[i % o.length], p = new M({
1198
+ color: w,
1199
+ emissive: w,
1200
1200
  emissiveIntensity: 0.5,
1201
1201
  transparent: !0,
1202
1202
  opacity: 0.6
1203
- }), f = new m(w, M);
1204
- f.position.set(0, -0.25, 0), c.add(f), n.add(c);
1203
+ }), f = new m(h, p);
1204
+ f.position.set(0, -0.25, 0), c.add(f), r.add(c);
1205
1205
  }
1206
- this.add(n);
1206
+ this.add(r);
1207
1207
  }
1208
1208
  }
1209
- class Ke extends m {
1209
+ class Re extends m {
1210
1210
  constructor() {
1211
1211
  super();
1212
- const e = new me(), t = new U({
1212
+ const e = new he(), o = new _({
1213
1213
  color: 5597999,
1214
1214
  roughness: 0.1,
1215
1215
  transmission: 0.9,
@@ -1219,10 +1219,84 @@ class Ke extends m {
1219
1219
  clearcoat: 1,
1220
1220
  clearcoatRoughness: 0.1
1221
1221
  });
1222
- this.geometry = e, this.material = t;
1222
+ this.geometry = e, this.material = o;
1223
+ }
1224
+ }
1225
+ class ue extends V {
1226
+ constructor(e = 5, o = 0.5, t = 1) {
1227
+ super();
1228
+ const s = Math.PI * 2 / e, r = s / 2, n = s / 4;
1229
+ this.moveTo(Math.cos(0) * t, -Math.sin(0) * t);
1230
+ for (let a = 1; a <= e; ++a) {
1231
+ let i = Math.cos(s * a - n * 3) * (o / Math.cos(n)), c = -Math.sin(s * a - n * 3) * (o / Math.cos(n)), l = Math.cos(s * a - r) * o, h = -Math.sin(s * a - r) * o;
1232
+ this.quadraticCurveTo(i, c, l, h), i = Math.cos(s * a - n) * (o / Math.cos(n)), c = -Math.sin(s * a - n) * (o / Math.cos(n)), l = Math.cos(s * a) * t, h = -Math.sin(s * a) * t, this.quadraticCurveTo(i, c, l, h);
1233
+ }
1234
+ this.closePath();
1235
+ }
1236
+ }
1237
+ class We extends m {
1238
+ constructor(e = 5, o = 0.5, t = 1, s = 0.25) {
1239
+ super();
1240
+ const r = new ue(e, o, t), n = new U(r, {
1241
+ depth: s,
1242
+ bevelEnabled: s > 0,
1243
+ bevelThickness: 0,
1244
+ bevelSize: 0
1245
+ }), a = new M({ color: 2200782 });
1246
+ n.center(), this.geometry = n, this.material = a;
1247
+ }
1248
+ }
1249
+ class we extends V {
1250
+ constructor(e = 5, o = 0.5, t = 1, s = 5, r = 0.25) {
1251
+ super();
1252
+ const n = Math.PI * 2 / e, a = n / 4;
1253
+ this.moveTo(Math.cos(0) * t, -Math.sin(0) * t);
1254
+ for (let i = 1; i <= e; ++i)
1255
+ this.lineTo(Math.cos(n * i - a * 3) * o, -Math.sin(n * i - a * 3) * o), this.lineTo(Math.cos(n * i - a * 2) * o, -Math.sin(n * i - a * 2) * o), this.lineTo(Math.cos(n * i - a) * t, -Math.sin(n * i - a) * t), this.lineTo(Math.cos(n * i) * t, -Math.sin(n * i) * t);
1256
+ if (this.closePath(), r > 0 && s > 2) {
1257
+ const i = new ne(), c = Math.PI * 2 / s;
1258
+ i.moveTo(Math.cos(0) * r, -Math.sin(0) * r);
1259
+ for (let l = 1; l < s; ++l)
1260
+ i.lineTo(Math.cos(c * l) * r, -Math.sin(c * l) * r);
1261
+ i.lineTo(Math.cos(0) * r, -Math.sin(0) * r), this.holes.push(i);
1262
+ }
1263
+ }
1264
+ }
1265
+ class et extends m {
1266
+ constructor(e = 5, o = 0.5, t = 1, s = 5, r = 0.25, n = 0.25) {
1267
+ super();
1268
+ const a = new we(e, o, t, s, r), i = new U(a, {
1269
+ depth: n,
1270
+ bevelEnabled: n > 0,
1271
+ bevelThickness: 0,
1272
+ bevelSize: 0
1273
+ }), c = new M({ color: 2200782 });
1274
+ i.center(), this.geometry = i, this.material = c;
1275
+ }
1276
+ }
1277
+ class Me extends V {
1278
+ constructor(e = 5, o = 0.5, t = 1) {
1279
+ super();
1280
+ const s = Math.PI * 2 / e, r = s / 2;
1281
+ this.moveTo(Math.cos(0) * t, Math.sin(0) * t);
1282
+ for (let n = 1; n <= e; ++n)
1283
+ this.lineTo(Math.cos(s * n - r) * o, Math.sin(s * n - r) * o), this.lineTo(Math.cos(s * n) * t, Math.sin(s * n) * t);
1284
+ this.closePath();
1285
+ }
1286
+ }
1287
+ class tt extends m {
1288
+ constructor(e = 5, o = 0.5, t = 1, s = 0.25) {
1289
+ super();
1290
+ const r = new Me(e, o, t), n = new U(r, {
1291
+ depth: s,
1292
+ bevelEnabled: s > 0,
1293
+ bevelThickness: 0,
1294
+ bevelSize: 0
1295
+ }), a = new M({ color: 2200782 });
1296
+ n.center(), this.geometry = n, this.material = a;
1223
1297
  }
1224
1298
  }
1225
- const Qe = {
1299
+ const ot = {
1226
1300
  uniforms: {
1227
1301
  tDiffuse: { value: null },
1228
1302
  opacity: { value: 1 }
@@ -1243,57 +1317,63 @@ const Qe = {
1243
1317
  gl_FragColor = opacity * texel;
1244
1318
  }
1245
1319
  `
1246
- }, $e = (h) => {
1247
- const e = new Uint8Array(4 * h * h);
1248
- for (let o = 0; o < h * h; o++) {
1249
- const s = o * 4, n = (o % h ^ Math.floor(o / h)) & 1 ? 255 : 0;
1250
- e[s] = n, e[s + 1] = n, e[s + 2] = n, e[s + 3] = 255;
1320
+ }, st = (u) => {
1321
+ const e = new Uint8Array(4 * u * u);
1322
+ for (let t = 0; t < u * u; t++) {
1323
+ const s = t * 4, r = (t % u ^ Math.floor(t / u)) & 1 ? 255 : 0;
1324
+ e[s] = r, e[s + 1] = r, e[s + 2] = r, e[s + 3] = 255;
1251
1325
  }
1252
- const t = new ne(e, h, h, ae, re);
1253
- return t.wrapS = _, t.wrapT = _, t.minFilter = ce, t.needsUpdate = !0, t;
1326
+ const o = new ae(e, u, u, re, ce);
1327
+ return o.wrapS = O, o.wrapT = O, o.minFilter = ie, o.needsUpdate = !0, o;
1254
1328
  };
1255
1329
  export {
1256
- Ae as Beaker,
1257
- ie as BeakerGeometry,
1258
- ye as BifurcatedStaircaseGeometry,
1259
- Pe as BoneGeometry,
1260
- ze as Book,
1261
- Ne as Bottle,
1262
- he as Bubbling,
1263
- Ve as BunsenBurner,
1264
- Fe as Candle,
1265
- xe as CrossHeadstoneGeometry,
1266
- Te as Desk,
1330
+ Ve as Beaker,
1331
+ le as BeakerGeometry,
1332
+ xe as BifurcatedStaircaseGeometry,
1333
+ Fe as BoneGeometry,
1334
+ Ue as Book,
1335
+ Ye as Bottle,
1336
+ pe as Bubbling,
1337
+ _e as BunsenBurner,
1338
+ We as Burst,
1339
+ ue as BurstShape,
1340
+ ze as Candle,
1341
+ ge as CrossHeadstoneGeometry,
1342
+ Le as Desk,
1267
1343
  de as DioramaGeometry,
1268
- Ee as ElectricPanel,
1269
- be as FenceColumn,
1270
- Ue as Flask,
1271
- fe as LShapedStaircaseGeometry,
1272
- Le as Lantern,
1273
- Re as LeverPanel,
1274
- Be as Mausoleum,
1275
- Ye as Microscope,
1276
- Se as Moon,
1277
- _e as MortarAndPestle,
1278
- le as MortarGeometry,
1279
- Ce as MossyRocks,
1280
- Ge as ObeliskHeadstoneGeometry,
1281
- qe as Rocks,
1282
- ve as RoundedHeadstoneGeometry,
1283
- Ie as SimpleLeafGeometry,
1284
- Me as SpiralStaircaseGeometry,
1285
- Ze as SpiralTube,
1286
- ge as SquareHeadstoneGeometry,
1287
- pe as StaircaseGeometry,
1288
- je as Stand,
1289
- Oe as TeslaCoil,
1290
- Xe as TestTube,
1291
- E as TestTubeGeometry,
1292
- Je as TestTubeRack,
1293
- Ke as WineBottle,
1294
- me as WineBottleGeometry,
1295
- ke as WroughtIronBarGeometry,
1296
- $e as checkerboardTexture,
1297
- Qe as fadeShader
1344
+ Ze as ElectricPanel,
1345
+ Ie as FenceColumn,
1346
+ je as Flask,
1347
+ et as Gear,
1348
+ we as GearShape,
1349
+ Ge as LShapedStaircaseGeometry,
1350
+ Ae as Lantern,
1351
+ Oe as LeverPanel,
1352
+ Ce as Mausoleum,
1353
+ Xe as Microscope,
1354
+ qe as Moon,
1355
+ Je as MortarAndPestle,
1356
+ me as MortarGeometry,
1357
+ Ee as MossyRocks,
1358
+ Se as ObeliskHeadstoneGeometry,
1359
+ Ne as Rocks,
1360
+ ke as RoundedHeadstoneGeometry,
1361
+ Be as SimpleLeafGeometry,
1362
+ ve as SpiralStaircaseGeometry,
1363
+ Ke as SpiralTube,
1364
+ Pe as SquareHeadstoneGeometry,
1365
+ be as StaircaseGeometry,
1366
+ Qe as Stand,
1367
+ tt as Star,
1368
+ Me as StarShape,
1369
+ $e as TeslaCoil,
1370
+ He as TestTube,
1371
+ Y as TestTubeGeometry,
1372
+ De as TestTubeRack,
1373
+ Re as WineBottle,
1374
+ he as WineBottleGeometry,
1375
+ Te as WroughtIronBarGeometry,
1376
+ st as checkerboardTexture,
1377
+ ot as fadeShader
1298
1378
  };
1299
1379
  //# sourceMappingURL=index.es.js.map