three-low-poly 0.9.6 → 0.9.7
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.cjs.js +57 -41
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +1424 -766
- package/dist/index.es.js.map +1 -1
- package/dist/index.iife.js +57 -41
- package/dist/index.iife.js.map +1 -1
- package/dist/index.umd.js +57 -41
- package/dist/index.umd.js.map +1 -1
- package/package.json +2 -2
package/dist/index.es.js
CHANGED
|
@@ -1,137 +1,137 @@
|
|
|
1
|
-
import { Vector3 as
|
|
2
|
-
import { mergeGeometries as
|
|
3
|
-
import { Sky as
|
|
4
|
-
import { EffectComposer as
|
|
5
|
-
import { RenderPass as
|
|
6
|
-
import { ShaderPass as
|
|
7
|
-
const
|
|
8
|
-
UP: new
|
|
9
|
-
DOWN: new
|
|
10
|
-
LEFT: new
|
|
11
|
-
RIGHT: new
|
|
12
|
-
FORWARD: new
|
|
13
|
-
BACKWARD: new
|
|
14
|
-
X: new
|
|
15
|
-
Y: new
|
|
16
|
-
Z: new
|
|
17
|
-
XY: new
|
|
18
|
-
XZ: new
|
|
19
|
-
YZ: new
|
|
20
|
-
XYZ: new
|
|
21
|
-
},
|
|
22
|
-
LINEAR: (
|
|
23
|
-
QUADRATIC: (
|
|
24
|
-
SQUARE_ROOT: (
|
|
25
|
-
LOGARITHMIC: (
|
|
26
|
-
SINE: (
|
|
27
|
-
EXPONENTIAL: (
|
|
28
|
-
CUBIC: (
|
|
29
|
-
GAUSSIAN: (
|
|
30
|
-
INVERSE: (
|
|
31
|
-
SMOOTHSTEP: (
|
|
32
|
-
const t = Math.max(0, Math.min(1, 1 -
|
|
1
|
+
import { Vector3 as M, MathUtils as D, Quaternion as ce, Group as S, SphereGeometry as T, MeshStandardMaterial as w, Mesh as h, BufferGeometry as b, Float32BufferAttribute as U, BufferAttribute as Y, BoxGeometry as g, ConeGeometry as z, CylinderGeometry as v, Vector2 as I, LatheGeometry as Z, CircleGeometry as ie, DodecahedronGeometry as Q, ShaderMaterial as j, Shape as _, ExtrudeGeometry as L, MeshBasicMaterial as le, PointLight as oe, TorusGeometry as se, MeshPhysicalMaterial as K, DoubleSide as q, CatmullRomCurve3 as me, TubeGeometry as ue, LineBasicMaterial as fe, Line as he, Path as de, Color as $, BackSide as ne, DataTexture as pe, RGBAFormat as we, UnsignedByteType as ye, RepeatWrapping as W, NearestFilter as xe } from "three";
|
|
2
|
+
import { mergeGeometries as A, mergeVertices as Me } from "three/addons/utils/BufferGeometryUtils.js";
|
|
3
|
+
import { Sky as ve } from "three/addons/objects/Sky.js";
|
|
4
|
+
import { EffectComposer as ge } from "three/addons/postprocessing/EffectComposer.js";
|
|
5
|
+
import { RenderPass as ee } from "three/addons/postprocessing/RenderPass.js";
|
|
6
|
+
import { ShaderPass as Se } from "three/addons/postprocessing/ShaderPass.js";
|
|
7
|
+
const C = {
|
|
8
|
+
UP: new M(0, 1, 0),
|
|
9
|
+
DOWN: new M(0, -1, 0),
|
|
10
|
+
LEFT: new M(-1, 0, 0),
|
|
11
|
+
RIGHT: new M(1, 0, 0),
|
|
12
|
+
FORWARD: new M(0, 0, 1),
|
|
13
|
+
BACKWARD: new M(0, 0, -1),
|
|
14
|
+
X: new M(1, 0, 0),
|
|
15
|
+
Y: new M(0, 1, 0),
|
|
16
|
+
Z: new M(0, 0, 1),
|
|
17
|
+
XY: new M(1, 1, 0).normalize(),
|
|
18
|
+
XZ: new M(1, 0, 1).normalize(),
|
|
19
|
+
YZ: new M(0, 1, 1).normalize(),
|
|
20
|
+
XYZ: new M(1, 1, 1).normalize()
|
|
21
|
+
}, O = {
|
|
22
|
+
LINEAR: (l, e) => 1 - l / e,
|
|
23
|
+
QUADRATIC: (l, e) => Math.pow(1 - l / e, 2),
|
|
24
|
+
SQUARE_ROOT: (l, e) => Math.pow(1 - l / e, 0.5),
|
|
25
|
+
LOGARITHMIC: (l, e) => Math.log(1 + (e - l)) / Math.log(1 + e),
|
|
26
|
+
SINE: (l, e) => Math.cos(l / e * Math.PI / 2),
|
|
27
|
+
EXPONENTIAL: (l, e) => Math.exp(-l / e),
|
|
28
|
+
CUBIC: (l, e) => Math.pow(1 - l / e, 3),
|
|
29
|
+
GAUSSIAN: (l, e) => Math.exp(-Math.pow(l, 2) / (2 * Math.pow(e / 3, 2))),
|
|
30
|
+
INVERSE: (l, e) => e / (e + l),
|
|
31
|
+
SMOOTHSTEP: (l, e) => {
|
|
32
|
+
const t = Math.max(0, Math.min(1, 1 - l / e));
|
|
33
33
|
return t * t * (3 - 2 * t);
|
|
34
34
|
}
|
|
35
|
-
},
|
|
36
|
-
const s =
|
|
37
|
-
for (let
|
|
38
|
-
const c = new
|
|
39
|
-
c.fromBufferAttribute(s,
|
|
40
|
-
const
|
|
41
|
-
if (
|
|
42
|
-
const u =
|
|
43
|
-
c.add(
|
|
35
|
+
}, De = (l, e, t, o, r = C.UP, i = O.LINEAR) => {
|
|
36
|
+
const s = l.attributes.position;
|
|
37
|
+
for (let n = 0; n < s.count; n++) {
|
|
38
|
+
const c = new M();
|
|
39
|
+
c.fromBufferAttribute(s, n);
|
|
40
|
+
const a = c.distanceTo(e);
|
|
41
|
+
if (a < t) {
|
|
42
|
+
const u = i(a, t) * o;
|
|
43
|
+
c.add(r.clone().multiplyScalar(u)), s.setXYZ(n, c.x, c.y, c.z);
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
46
|
s.needsUpdate = !0;
|
|
47
|
-
},
|
|
48
|
-
const
|
|
49
|
-
for (let c = 0; c <
|
|
50
|
-
const
|
|
51
|
-
|
|
52
|
-
const m =
|
|
47
|
+
}, He = (l, e, t, o, r, i = C.UP, s = O.LINEAR) => {
|
|
48
|
+
const n = l.attributes.position;
|
|
49
|
+
for (let c = 0; c < n.count; c++) {
|
|
50
|
+
const a = new M();
|
|
51
|
+
a.fromBufferAttribute(n, c);
|
|
52
|
+
const m = a.distanceTo(e);
|
|
53
53
|
if (m < t) {
|
|
54
|
-
const f = s(m, t) *
|
|
55
|
-
|
|
54
|
+
const f = s(m, t) * r, p = a.dot(i.normalize()), d = o - p;
|
|
55
|
+
a.add(i.clone().multiplyScalar(d * f)), n.setXYZ(c, a.x, a.y, a.z);
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
|
-
|
|
59
|
-
},
|
|
60
|
-
const s =
|
|
61
|
-
for (let
|
|
62
|
-
const c = new
|
|
63
|
-
c.fromBufferAttribute(s,
|
|
64
|
-
const
|
|
65
|
-
if (
|
|
66
|
-
const m =
|
|
67
|
-
f.x !== 0 && (c.x +=
|
|
58
|
+
n.needsUpdate = !0;
|
|
59
|
+
}, Re = (l, e, t, o, r = C.UP, i = O.LINEAR) => {
|
|
60
|
+
const s = l.attributes.position;
|
|
61
|
+
for (let n = 0; n < s.count; n++) {
|
|
62
|
+
const c = new M();
|
|
63
|
+
c.fromBufferAttribute(s, n);
|
|
64
|
+
const a = c.distanceTo(e);
|
|
65
|
+
if (a < t) {
|
|
66
|
+
const m = i(a, t), u = o * m, f = r.clone().normalize();
|
|
67
|
+
f.x !== 0 && (c.x += D.randFloatSpread(u) * f.x), f.y !== 0 && (c.y += D.randFloatSpread(u) * f.y), f.z !== 0 && (c.z += D.randFloatSpread(u) * f.z), s.setXYZ(n, c.x, c.y, c.z);
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
s.needsUpdate = !0;
|
|
71
|
-
},
|
|
72
|
-
const
|
|
73
|
-
for (let s = 0; s <
|
|
74
|
-
const
|
|
75
|
-
if (
|
|
76
|
-
let
|
|
77
|
-
for (let u = 0; u <
|
|
78
|
-
|
|
79
|
-
m > 0 && (
|
|
71
|
+
}, Qe = (l, e, t, o) => {
|
|
72
|
+
const r = l.attributes.position, i = new M();
|
|
73
|
+
for (let s = 0; s < r.count; s++) {
|
|
74
|
+
const n = new M();
|
|
75
|
+
if (n.fromBufferAttribute(r, s), n.distanceTo(e) < t) {
|
|
76
|
+
let a = new M(), m = 0;
|
|
77
|
+
for (let u = 0; u < r.count; u++)
|
|
78
|
+
i.fromBufferAttribute(r, u), i.distanceTo(n) < t && (a.add(i), m++);
|
|
79
|
+
m > 0 && (a.divideScalar(m), n.lerp(a, o), r.setXYZ(s, n.x, n.y, n.z));
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
|
-
|
|
83
|
-
},
|
|
84
|
-
const s =
|
|
85
|
-
for (let
|
|
86
|
-
const c = new
|
|
87
|
-
c.fromBufferAttribute(s,
|
|
88
|
-
const
|
|
89
|
-
if (
|
|
90
|
-
const u =
|
|
91
|
-
c.add(f.multiplyScalar(u)), s.setXYZ(
|
|
82
|
+
r.needsUpdate = !0;
|
|
83
|
+
}, je = (l, e, t, o, r = !1, i = O.LINEAR) => {
|
|
84
|
+
const s = l.attributes.position;
|
|
85
|
+
for (let n = 0; n < s.count; n++) {
|
|
86
|
+
const c = new M();
|
|
87
|
+
c.fromBufferAttribute(s, n);
|
|
88
|
+
const a = c.distanceTo(e);
|
|
89
|
+
if (a < t) {
|
|
90
|
+
const u = i(a, t) * o * (r ? -1 : 1), f = c.clone().sub(e).normalize();
|
|
91
|
+
c.add(f.multiplyScalar(u)), s.setXYZ(n, c.x, c.y, c.z);
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
94
|
s.needsUpdate = !0;
|
|
95
|
-
},
|
|
96
|
-
const s =
|
|
95
|
+
}, Ke = (l, e, t, o, r = C.UP, i = O.LINEAR) => {
|
|
96
|
+
const s = l.attributes.position, n = new ce();
|
|
97
97
|
for (let c = 0; c < s.count; c++) {
|
|
98
|
-
const
|
|
99
|
-
|
|
100
|
-
const m =
|
|
98
|
+
const a = new M();
|
|
99
|
+
a.fromBufferAttribute(s, c);
|
|
100
|
+
const m = a.distanceTo(e);
|
|
101
101
|
if (m < t) {
|
|
102
|
-
const f =
|
|
103
|
-
|
|
102
|
+
const f = i(m, t) * o;
|
|
103
|
+
n.setFromAxisAngle(r, f), a.sub(e).applyQuaternion(n).add(e), s.setXYZ(c, a.x, a.y, a.z);
|
|
104
104
|
}
|
|
105
105
|
}
|
|
106
106
|
s.needsUpdate = !0;
|
|
107
|
-
},
|
|
108
|
-
LINEAR: (
|
|
109
|
-
QUADRATIC_EASE_IN: (
|
|
110
|
-
QUADRATIC_EASE_OUT: (
|
|
111
|
-
SQUARE_ROOT_EASING: (
|
|
112
|
-
LOGARITHMIC_EASING: (
|
|
113
|
-
SINE_EASE_IN: (
|
|
114
|
-
SINE_EASE_OUT: (
|
|
115
|
-
EXPONENTIAL_EASE_IN: (
|
|
116
|
-
EXPONENTIAL_EASE_OUT: (
|
|
117
|
-
CUBIC_EASE_IN: (
|
|
118
|
-
CUBIC_EASE_OUT: (
|
|
119
|
-
GAUSSIAN_EASING: (
|
|
120
|
-
INVERSE_EASING: (
|
|
121
|
-
SMOOTHSTEP_EASING: (
|
|
107
|
+
}, Je = {
|
|
108
|
+
LINEAR: (l) => l,
|
|
109
|
+
QUADRATIC_EASE_IN: (l) => l * l,
|
|
110
|
+
QUADRATIC_EASE_OUT: (l) => 1 - Math.pow(1 - l, 2),
|
|
111
|
+
SQUARE_ROOT_EASING: (l) => Math.sqrt(l),
|
|
112
|
+
LOGARITHMIC_EASING: (l) => Math.log(1 + l) / Math.log(2),
|
|
113
|
+
SINE_EASE_IN: (l) => 1 - Math.cos(l * Math.PI / 2),
|
|
114
|
+
SINE_EASE_OUT: (l) => Math.sin(l * Math.PI / 2),
|
|
115
|
+
EXPONENTIAL_EASE_IN: (l) => Math.pow(2, 10 * (l - 1)),
|
|
116
|
+
EXPONENTIAL_EASE_OUT: (l) => 1 - Math.pow(2, -10 * l),
|
|
117
|
+
CUBIC_EASE_IN: (l) => l * l * l,
|
|
118
|
+
CUBIC_EASE_OUT: (l) => 1 - Math.pow(1 - l, 3),
|
|
119
|
+
GAUSSIAN_EASING: (l) => Math.exp(-Math.pow(l - 0.5, 2) / (2 * 0.1)),
|
|
120
|
+
INVERSE_EASING: (l) => 1 / (1 + l),
|
|
121
|
+
SMOOTHSTEP_EASING: (l) => l * l * (3 - 2 * l)
|
|
122
122
|
};
|
|
123
|
-
class
|
|
123
|
+
class $e extends S {
|
|
124
124
|
constructor() {
|
|
125
125
|
super();
|
|
126
|
-
const e = [], t = 20, o = new
|
|
126
|
+
const e = [], t = 20, o = new T(0.1, 6, 6), r = new w({
|
|
127
127
|
color: 16777215,
|
|
128
128
|
transparent: !0,
|
|
129
129
|
opacity: 0.6,
|
|
130
130
|
roughness: 0.3,
|
|
131
131
|
metalness: 0.3
|
|
132
132
|
});
|
|
133
|
-
for (let
|
|
134
|
-
const c = new h(o,
|
|
133
|
+
for (let n = 0; n < t; n++) {
|
|
134
|
+
const c = new h(o, r);
|
|
135
135
|
c.position.set(
|
|
136
136
|
(Math.random() - 0.5) * 1.5,
|
|
137
137
|
// Random x position within flask
|
|
@@ -141,24 +141,24 @@ class Re extends S {
|
|
|
141
141
|
// Random z position within flask
|
|
142
142
|
), e.push(c), this.add(c);
|
|
143
143
|
}
|
|
144
|
-
function
|
|
145
|
-
e.forEach((
|
|
146
|
-
|
|
144
|
+
function i() {
|
|
145
|
+
e.forEach((n) => {
|
|
146
|
+
n.position.y += 0.02, n.position.y > 3 && (n.position.y = 0, n.position.x = (Math.random() - 0.5) * 1.5, n.position.z = (Math.random() - 0.5) * 1.5);
|
|
147
147
|
});
|
|
148
148
|
}
|
|
149
149
|
function s() {
|
|
150
|
-
requestAnimationFrame(s),
|
|
150
|
+
requestAnimationFrame(s), i();
|
|
151
151
|
}
|
|
152
152
|
s();
|
|
153
153
|
}
|
|
154
154
|
}
|
|
155
|
-
class
|
|
156
|
-
constructor(e = 2, t = 0.3, o = 0.6,
|
|
155
|
+
class We extends b {
|
|
156
|
+
constructor(e = 2, t = 0.3, o = 0.6, r = 5, i = 5, s = Math.PI / 4) {
|
|
157
157
|
super();
|
|
158
|
-
const
|
|
159
|
-
for (let
|
|
160
|
-
const d =
|
|
161
|
-
|
|
158
|
+
const n = [], c = [];
|
|
159
|
+
for (let p = 0; p < r; p++) {
|
|
160
|
+
const d = p * t, x = d + t, y = p * o, P = y + o;
|
|
161
|
+
n.push(
|
|
162
162
|
// Vertical riser
|
|
163
163
|
-e / 2,
|
|
164
164
|
d,
|
|
@@ -169,69 +169,69 @@ class He extends b {
|
|
|
169
169
|
y,
|
|
170
170
|
// Bottom-right
|
|
171
171
|
e / 2,
|
|
172
|
-
|
|
172
|
+
x,
|
|
173
173
|
y,
|
|
174
174
|
// Top-right
|
|
175
175
|
-e / 2,
|
|
176
|
-
|
|
176
|
+
x,
|
|
177
177
|
y,
|
|
178
178
|
// Top-left
|
|
179
179
|
// Horizontal tread
|
|
180
180
|
-e / 2,
|
|
181
|
-
|
|
181
|
+
x,
|
|
182
182
|
y,
|
|
183
183
|
// Top-left
|
|
184
184
|
e / 2,
|
|
185
|
-
|
|
185
|
+
x,
|
|
186
186
|
y,
|
|
187
187
|
// Top-right
|
|
188
188
|
e / 2,
|
|
189
|
-
|
|
189
|
+
x,
|
|
190
190
|
P,
|
|
191
191
|
// Back-right
|
|
192
192
|
-e / 2,
|
|
193
|
-
|
|
193
|
+
x,
|
|
194
194
|
P
|
|
195
195
|
// Back-left
|
|
196
196
|
);
|
|
197
|
-
const
|
|
197
|
+
const G = p * 8;
|
|
198
198
|
c.push(
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
199
|
+
G,
|
|
200
|
+
G + 1,
|
|
201
|
+
G + 2,
|
|
202
|
+
G,
|
|
203
|
+
G + 2,
|
|
204
|
+
G + 3
|
|
205
205
|
), c.push(
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
206
|
+
G + 4,
|
|
207
|
+
G + 5,
|
|
208
|
+
G + 6,
|
|
209
|
+
G + 4,
|
|
210
|
+
G + 6,
|
|
211
|
+
G + 7
|
|
212
212
|
);
|
|
213
213
|
}
|
|
214
|
-
const
|
|
215
|
-
|
|
214
|
+
const a = r * t, m = r * o, u = e * 2;
|
|
215
|
+
n.push(
|
|
216
216
|
// Landing platform (4 vertices)
|
|
217
217
|
-u / 2,
|
|
218
|
-
|
|
218
|
+
a,
|
|
219
219
|
m,
|
|
220
220
|
// Bottom-left
|
|
221
221
|
u / 2,
|
|
222
|
-
|
|
222
|
+
a,
|
|
223
223
|
m,
|
|
224
224
|
// Bottom-right
|
|
225
225
|
u / 2,
|
|
226
|
-
|
|
226
|
+
a,
|
|
227
227
|
m + o,
|
|
228
228
|
// Top-right
|
|
229
229
|
-u / 2,
|
|
230
|
-
|
|
230
|
+
a,
|
|
231
231
|
m + o
|
|
232
232
|
// Top-left
|
|
233
233
|
);
|
|
234
|
-
const f =
|
|
234
|
+
const f = r * 8;
|
|
235
235
|
c.push(
|
|
236
236
|
f,
|
|
237
237
|
f + 1,
|
|
@@ -242,47 +242,47 @@ class He extends b {
|
|
|
242
242
|
f + 3
|
|
243
243
|
// Second triangle for landing
|
|
244
244
|
);
|
|
245
|
-
for (let
|
|
246
|
-
const d =
|
|
247
|
-
for (let
|
|
248
|
-
const y =
|
|
249
|
-
|
|
245
|
+
for (let p = 0; p < 2; p++) {
|
|
246
|
+
const d = p === 0 ? 1 : -1;
|
|
247
|
+
for (let x = 0; x < i; x++) {
|
|
248
|
+
const y = a + x * t, P = y + t, G = d * (u / 4), F = m + o, V = x * o * Math.cos(s), B = x * o * Math.sin(s), E = G + d * V - e / 2 * Math.cos(s), X = G + d * V + e / 2 * Math.cos(s), N = F + B, ae = E + d * o * Math.cos(s), re = X + d * o * Math.cos(s), J = N + o * Math.sin(s);
|
|
249
|
+
n.push(
|
|
250
250
|
// Vertical riser
|
|
251
|
-
|
|
251
|
+
E,
|
|
252
252
|
y,
|
|
253
|
-
|
|
253
|
+
N,
|
|
254
254
|
// Bottom-left
|
|
255
|
-
|
|
255
|
+
X,
|
|
256
256
|
y,
|
|
257
|
-
|
|
257
|
+
N,
|
|
258
258
|
// Bottom-right
|
|
259
|
-
|
|
259
|
+
X,
|
|
260
260
|
P,
|
|
261
|
-
|
|
261
|
+
N,
|
|
262
262
|
// Top-right
|
|
263
|
-
|
|
263
|
+
E,
|
|
264
264
|
P,
|
|
265
|
-
|
|
265
|
+
N,
|
|
266
266
|
// Top-left
|
|
267
267
|
// Horizontal tread
|
|
268
|
-
|
|
268
|
+
E,
|
|
269
269
|
P,
|
|
270
|
-
|
|
270
|
+
N,
|
|
271
271
|
// Top-left
|
|
272
|
-
|
|
272
|
+
X,
|
|
273
273
|
P,
|
|
274
|
-
|
|
274
|
+
N,
|
|
275
275
|
// Top-right
|
|
276
|
-
|
|
276
|
+
re,
|
|
277
277
|
P,
|
|
278
|
-
|
|
278
|
+
J,
|
|
279
279
|
// Back-right
|
|
280
|
-
|
|
280
|
+
ae,
|
|
281
281
|
P,
|
|
282
|
-
|
|
282
|
+
J
|
|
283
283
|
// Back-left
|
|
284
284
|
);
|
|
285
|
-
const k = f + 4 +
|
|
285
|
+
const k = f + 4 + p * i * 8 + x * 8;
|
|
286
286
|
c.push(
|
|
287
287
|
k,
|
|
288
288
|
k + 1,
|
|
@@ -300,13 +300,13 @@ class He extends b {
|
|
|
300
300
|
);
|
|
301
301
|
}
|
|
302
302
|
}
|
|
303
|
-
this.setIndex(c), this.setAttribute("position", new
|
|
303
|
+
this.setIndex(c), this.setAttribute("position", new U(n, 3)), this.computeVertexNormals();
|
|
304
304
|
}
|
|
305
305
|
}
|
|
306
|
-
class
|
|
307
|
-
constructor(e = 5, t = 3, o = 5,
|
|
306
|
+
class et extends b {
|
|
307
|
+
constructor(e = 5, t = 3, o = 5, r = 0.2) {
|
|
308
308
|
super();
|
|
309
|
-
const
|
|
309
|
+
const i = [
|
|
310
310
|
// Floor vertices
|
|
311
311
|
-e / 2,
|
|
312
312
|
0,
|
|
@@ -381,15 +381,15 @@ class je extends b {
|
|
|
381
381
|
10,
|
|
382
382
|
11
|
|
383
383
|
];
|
|
384
|
-
this.setIndex(s), this.setAttribute("position", new
|
|
384
|
+
this.setIndex(s), this.setAttribute("position", new U(i, 3)), this.computeVertexNormals();
|
|
385
385
|
}
|
|
386
386
|
}
|
|
387
|
-
class
|
|
388
|
-
constructor(e = 2, t = 0.3, o = 0.5,
|
|
387
|
+
class tt extends b {
|
|
388
|
+
constructor(e = 2, t = 0.3, o = 0.5, r = 5, i = 2) {
|
|
389
389
|
super();
|
|
390
|
-
const s = [],
|
|
391
|
-
for (let u = 0; u <
|
|
392
|
-
const f = u * t,
|
|
390
|
+
const s = [], n = [];
|
|
391
|
+
for (let u = 0; u < r; u++) {
|
|
392
|
+
const f = u * t, p = f + t, d = u * o, x = d + o;
|
|
393
393
|
s.push(
|
|
394
394
|
// Vertical riser
|
|
395
395
|
-e / 2,
|
|
@@ -401,40 +401,40 @@ class De extends b {
|
|
|
401
401
|
d,
|
|
402
402
|
// Bottom-right
|
|
403
403
|
e / 2,
|
|
404
|
-
|
|
404
|
+
p,
|
|
405
405
|
d,
|
|
406
406
|
// Top-right
|
|
407
407
|
-e / 2,
|
|
408
|
-
|
|
408
|
+
p,
|
|
409
409
|
d,
|
|
410
410
|
// Top-left
|
|
411
411
|
// Horizontal tread
|
|
412
412
|
-e / 2,
|
|
413
|
-
|
|
413
|
+
p,
|
|
414
414
|
d,
|
|
415
415
|
// Top-left
|
|
416
416
|
e / 2,
|
|
417
|
-
|
|
417
|
+
p,
|
|
418
418
|
d,
|
|
419
419
|
// Top-right
|
|
420
420
|
e / 2,
|
|
421
|
-
|
|
422
|
-
|
|
421
|
+
p,
|
|
422
|
+
x,
|
|
423
423
|
// Back-right
|
|
424
424
|
-e / 2,
|
|
425
|
-
|
|
426
|
-
|
|
425
|
+
p,
|
|
426
|
+
x
|
|
427
427
|
// Back-left
|
|
428
428
|
);
|
|
429
429
|
const y = u * 8;
|
|
430
|
-
|
|
430
|
+
n.push(
|
|
431
431
|
y,
|
|
432
432
|
y + 1,
|
|
433
433
|
y + 2,
|
|
434
434
|
y,
|
|
435
435
|
y + 2,
|
|
436
436
|
y + 3
|
|
437
|
-
),
|
|
437
|
+
), n.push(
|
|
438
438
|
y + 4,
|
|
439
439
|
y + 5,
|
|
440
440
|
y + 6,
|
|
@@ -443,28 +443,28 @@ class De extends b {
|
|
|
443
443
|
y + 7
|
|
444
444
|
);
|
|
445
445
|
}
|
|
446
|
-
const c =
|
|
446
|
+
const c = r * t, a = r * o;
|
|
447
447
|
s.push(
|
|
448
448
|
// Landing platform (4 vertices)
|
|
449
449
|
-e / 2,
|
|
450
450
|
c,
|
|
451
|
-
|
|
451
|
+
a,
|
|
452
452
|
// Bottom-left
|
|
453
453
|
e / 2,
|
|
454
454
|
c,
|
|
455
|
-
|
|
455
|
+
a,
|
|
456
456
|
// Bottom-right
|
|
457
457
|
e / 2,
|
|
458
458
|
c,
|
|
459
|
-
|
|
459
|
+
a + i,
|
|
460
460
|
// Top-right
|
|
461
461
|
-e / 2,
|
|
462
462
|
c,
|
|
463
|
-
|
|
463
|
+
a + i
|
|
464
464
|
// Top-left
|
|
465
465
|
);
|
|
466
|
-
const m =
|
|
467
|
-
|
|
466
|
+
const m = r * 8;
|
|
467
|
+
n.push(
|
|
468
468
|
m,
|
|
469
469
|
m + 1,
|
|
470
470
|
m + 2,
|
|
@@ -474,53 +474,53 @@ class De extends b {
|
|
|
474
474
|
m + 3
|
|
475
475
|
// Second triangle for landing
|
|
476
476
|
);
|
|
477
|
-
for (let u = 0; u <
|
|
478
|
-
const f = c + u * t,
|
|
477
|
+
for (let u = 0; u < r; u++) {
|
|
478
|
+
const f = c + u * t, p = f + t, d = -e / 2 - u * o, x = d - o;
|
|
479
479
|
s.push(
|
|
480
480
|
// Vertical riser
|
|
481
481
|
d,
|
|
482
482
|
f,
|
|
483
|
-
|
|
483
|
+
a + i,
|
|
484
484
|
// Bottom-left
|
|
485
485
|
d,
|
|
486
486
|
f,
|
|
487
|
-
|
|
487
|
+
a + i - e,
|
|
488
488
|
// Bottom-right
|
|
489
489
|
d,
|
|
490
|
-
|
|
491
|
-
|
|
490
|
+
p,
|
|
491
|
+
a + i - e,
|
|
492
492
|
// Top-right
|
|
493
493
|
d,
|
|
494
|
-
|
|
495
|
-
|
|
494
|
+
p,
|
|
495
|
+
a + i,
|
|
496
496
|
// Top-left
|
|
497
497
|
// Horizontal tread
|
|
498
498
|
d,
|
|
499
|
-
|
|
500
|
-
|
|
499
|
+
p,
|
|
500
|
+
a + i,
|
|
501
501
|
// Top-left
|
|
502
502
|
d,
|
|
503
|
-
|
|
504
|
-
|
|
503
|
+
p,
|
|
504
|
+
a + i - e,
|
|
505
505
|
// Top-right
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
506
|
+
x,
|
|
507
|
+
p,
|
|
508
|
+
a + i - e,
|
|
509
509
|
// Back-right
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
510
|
+
x,
|
|
511
|
+
p,
|
|
512
|
+
a + i
|
|
513
513
|
// Back-left
|
|
514
514
|
);
|
|
515
515
|
const y = m + 4 + u * 8;
|
|
516
|
-
|
|
516
|
+
n.push(
|
|
517
517
|
y,
|
|
518
518
|
y + 1,
|
|
519
519
|
y + 2,
|
|
520
520
|
y,
|
|
521
521
|
y + 2,
|
|
522
522
|
y + 3
|
|
523
|
-
),
|
|
523
|
+
), n.push(
|
|
524
524
|
y + 4,
|
|
525
525
|
y + 5,
|
|
526
526
|
y + 6,
|
|
@@ -529,84 +529,84 @@ class De extends b {
|
|
|
529
529
|
y + 7
|
|
530
530
|
);
|
|
531
531
|
}
|
|
532
|
-
this.setIndex(
|
|
532
|
+
this.setIndex(n), this.setAttribute("position", new U(s, 3)), this.computeVertexNormals();
|
|
533
533
|
}
|
|
534
534
|
}
|
|
535
|
-
class
|
|
536
|
-
constructor(e = 1, t = 0.4, o = 0.2,
|
|
535
|
+
class ot extends b {
|
|
536
|
+
constructor(e = 1, t = 0.4, o = 0.2, r = 20, i = 2, s = Math.PI / 8) {
|
|
537
537
|
super();
|
|
538
|
-
const
|
|
539
|
-
let
|
|
540
|
-
for (let m = 0; m <
|
|
541
|
-
const u =
|
|
542
|
-
|
|
538
|
+
const n = [], c = [];
|
|
539
|
+
let a = 0;
|
|
540
|
+
for (let m = 0; m < r; m++) {
|
|
541
|
+
const u = i * Math.cos(a), f = i * Math.sin(a), p = m * o, d = p + o;
|
|
542
|
+
n.push(
|
|
543
543
|
// Front face (vertical riser)
|
|
544
|
-
u - e / 2 * Math.cos(
|
|
545
|
-
|
|
546
|
-
f - e / 2 * Math.sin(
|
|
544
|
+
u - e / 2 * Math.cos(a),
|
|
545
|
+
p,
|
|
546
|
+
f - e / 2 * Math.sin(a),
|
|
547
547
|
// Bottom-left
|
|
548
|
-
u + e / 2 * Math.cos(
|
|
549
|
-
|
|
550
|
-
f + e / 2 * Math.sin(
|
|
548
|
+
u + e / 2 * Math.cos(a),
|
|
549
|
+
p,
|
|
550
|
+
f + e / 2 * Math.sin(a),
|
|
551
551
|
// Bottom-right
|
|
552
|
-
u + e / 2 * Math.cos(
|
|
552
|
+
u + e / 2 * Math.cos(a),
|
|
553
553
|
d,
|
|
554
|
-
f + e / 2 * Math.sin(
|
|
554
|
+
f + e / 2 * Math.sin(a),
|
|
555
555
|
// Top-right
|
|
556
|
-
u - e / 2 * Math.cos(
|
|
556
|
+
u - e / 2 * Math.cos(a),
|
|
557
557
|
d,
|
|
558
|
-
f - e / 2 * Math.sin(
|
|
558
|
+
f - e / 2 * Math.sin(a)
|
|
559
559
|
// Top-left
|
|
560
|
-
),
|
|
560
|
+
), n.push(
|
|
561
561
|
// Top face (horizontal tread)
|
|
562
|
-
u - e / 2 * Math.cos(
|
|
562
|
+
u - e / 2 * Math.cos(a),
|
|
563
563
|
d,
|
|
564
|
-
f - e / 2 * Math.sin(
|
|
564
|
+
f - e / 2 * Math.sin(a),
|
|
565
565
|
// Top-left-front
|
|
566
|
-
u + e / 2 * Math.cos(
|
|
566
|
+
u + e / 2 * Math.cos(a),
|
|
567
567
|
d,
|
|
568
|
-
f + e / 2 * Math.sin(
|
|
568
|
+
f + e / 2 * Math.sin(a),
|
|
569
569
|
// Top-right-front
|
|
570
|
-
u + e / 2 * Math.cos(
|
|
570
|
+
u + e / 2 * Math.cos(a) - t * Math.sin(a),
|
|
571
571
|
d,
|
|
572
|
-
f + e / 2 * Math.sin(
|
|
572
|
+
f + e / 2 * Math.sin(a) + t * Math.cos(a),
|
|
573
573
|
// Back-right
|
|
574
|
-
u - e / 2 * Math.cos(
|
|
574
|
+
u - e / 2 * Math.cos(a) - t * Math.sin(a),
|
|
575
575
|
d,
|
|
576
|
-
f - e / 2 * Math.sin(
|
|
576
|
+
f - e / 2 * Math.sin(a) + t * Math.cos(a)
|
|
577
577
|
// Back-left
|
|
578
578
|
);
|
|
579
|
-
const
|
|
579
|
+
const x = m * 8;
|
|
580
580
|
c.push(
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
581
|
+
x,
|
|
582
|
+
x + 1,
|
|
583
|
+
x + 2,
|
|
584
584
|
// First triangle for riser
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
585
|
+
x,
|
|
586
|
+
x + 2,
|
|
587
|
+
x + 3
|
|
588
588
|
// Second triangle for riser
|
|
589
589
|
), c.push(
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
590
|
+
x + 4,
|
|
591
|
+
x + 5,
|
|
592
|
+
x + 6,
|
|
593
593
|
// First triangle for tread
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
594
|
+
x + 4,
|
|
595
|
+
x + 6,
|
|
596
|
+
x + 7
|
|
597
597
|
// Second triangle for tread
|
|
598
|
-
),
|
|
598
|
+
), a += s;
|
|
599
599
|
}
|
|
600
|
-
this.setIndex(c), this.setAttribute("position", new
|
|
600
|
+
this.setIndex(c), this.setAttribute("position", new U(n, 3)), this.computeVertexNormals();
|
|
601
601
|
}
|
|
602
602
|
}
|
|
603
|
-
class
|
|
604
|
-
constructor(e = 2, t = 0.3, o = 0.5,
|
|
603
|
+
class st extends b {
|
|
604
|
+
constructor(e = 2, t = 0.3, o = 0.5, r = 10) {
|
|
605
605
|
super();
|
|
606
|
-
const
|
|
607
|
-
for (let
|
|
608
|
-
const c =
|
|
609
|
-
|
|
606
|
+
const i = [], s = [];
|
|
607
|
+
for (let n = 0; n < r; n++) {
|
|
608
|
+
const c = n * t, a = c + t, m = n * o, u = m + o;
|
|
609
|
+
i.push(
|
|
610
610
|
// Bottom face of riser (front face)
|
|
611
611
|
-e / 2,
|
|
612
612
|
c,
|
|
@@ -617,32 +617,32 @@ class Je extends b {
|
|
|
617
617
|
m,
|
|
618
618
|
// 1: Bottom-right-front
|
|
619
619
|
e / 2,
|
|
620
|
-
|
|
620
|
+
a,
|
|
621
621
|
m,
|
|
622
622
|
// 2: Top-right-front
|
|
623
623
|
-e / 2,
|
|
624
|
-
|
|
624
|
+
a,
|
|
625
625
|
m,
|
|
626
626
|
// 3: Top-left-front
|
|
627
627
|
// Top face of tread (horizontal step)
|
|
628
628
|
-e / 2,
|
|
629
|
-
|
|
629
|
+
a,
|
|
630
630
|
m,
|
|
631
631
|
// 4: Top-left-front (repeated)
|
|
632
632
|
e / 2,
|
|
633
|
-
|
|
633
|
+
a,
|
|
634
634
|
m,
|
|
635
635
|
// 5: Top-right-front (repeated)
|
|
636
636
|
e / 2,
|
|
637
|
-
|
|
637
|
+
a,
|
|
638
638
|
u,
|
|
639
639
|
// 6: Top-right-back
|
|
640
640
|
-e / 2,
|
|
641
|
-
|
|
641
|
+
a,
|
|
642
642
|
u
|
|
643
643
|
// 7: Top-left-back
|
|
644
644
|
);
|
|
645
|
-
const f =
|
|
645
|
+
const f = n * 8;
|
|
646
646
|
s.push(
|
|
647
647
|
f,
|
|
648
648
|
f + 1,
|
|
@@ -663,77 +663,676 @@ class Je extends b {
|
|
|
663
663
|
// Second triangle for tread
|
|
664
664
|
);
|
|
665
665
|
}
|
|
666
|
-
this.setIndex(s), this.setAttribute("position", new
|
|
666
|
+
this.setIndex(s), this.setAttribute("position", new U(i, 3)), this.computeVertexNormals();
|
|
667
|
+
}
|
|
668
|
+
}
|
|
669
|
+
class be extends b {
|
|
670
|
+
constructor(e = 1, t = 1.5, o = 0.5, r = 0.05, i = 0.05) {
|
|
671
|
+
super();
|
|
672
|
+
const s = e, n = t, c = o, a = r, m = i, u = [
|
|
673
|
+
// Front cover
|
|
674
|
+
0,
|
|
675
|
+
0,
|
|
676
|
+
0,
|
|
677
|
+
s,
|
|
678
|
+
0,
|
|
679
|
+
0,
|
|
680
|
+
s,
|
|
681
|
+
n,
|
|
682
|
+
0,
|
|
683
|
+
0,
|
|
684
|
+
n,
|
|
685
|
+
0,
|
|
686
|
+
// Back cover
|
|
687
|
+
s,
|
|
688
|
+
0,
|
|
689
|
+
-c,
|
|
690
|
+
0,
|
|
691
|
+
0,
|
|
692
|
+
-c,
|
|
693
|
+
0,
|
|
694
|
+
n,
|
|
695
|
+
-c,
|
|
696
|
+
s,
|
|
697
|
+
n,
|
|
698
|
+
-c,
|
|
699
|
+
// Spine
|
|
700
|
+
0,
|
|
701
|
+
0,
|
|
702
|
+
-c,
|
|
703
|
+
0,
|
|
704
|
+
0,
|
|
705
|
+
0,
|
|
706
|
+
0,
|
|
707
|
+
n,
|
|
708
|
+
0,
|
|
709
|
+
0,
|
|
710
|
+
n,
|
|
711
|
+
-c,
|
|
712
|
+
// Inside front cover
|
|
713
|
+
s,
|
|
714
|
+
0,
|
|
715
|
+
-a,
|
|
716
|
+
a,
|
|
717
|
+
0,
|
|
718
|
+
-a,
|
|
719
|
+
a,
|
|
720
|
+
n,
|
|
721
|
+
-a,
|
|
722
|
+
s,
|
|
723
|
+
n,
|
|
724
|
+
-a,
|
|
725
|
+
// Inside back cover
|
|
726
|
+
a,
|
|
727
|
+
0,
|
|
728
|
+
-c + a,
|
|
729
|
+
s,
|
|
730
|
+
0,
|
|
731
|
+
-c + a,
|
|
732
|
+
s,
|
|
733
|
+
n,
|
|
734
|
+
-c + a,
|
|
735
|
+
a,
|
|
736
|
+
n,
|
|
737
|
+
-c + a,
|
|
738
|
+
// Inside spine
|
|
739
|
+
a,
|
|
740
|
+
0,
|
|
741
|
+
-a,
|
|
742
|
+
a,
|
|
743
|
+
0,
|
|
744
|
+
-c + a,
|
|
745
|
+
a,
|
|
746
|
+
n,
|
|
747
|
+
-c + a,
|
|
748
|
+
a,
|
|
749
|
+
n,
|
|
750
|
+
-a,
|
|
751
|
+
// Front cover top
|
|
752
|
+
0,
|
|
753
|
+
n,
|
|
754
|
+
0,
|
|
755
|
+
s,
|
|
756
|
+
n,
|
|
757
|
+
0,
|
|
758
|
+
s,
|
|
759
|
+
n,
|
|
760
|
+
-a,
|
|
761
|
+
a,
|
|
762
|
+
n,
|
|
763
|
+
-a,
|
|
764
|
+
// Back cover top
|
|
765
|
+
0,
|
|
766
|
+
n,
|
|
767
|
+
-c,
|
|
768
|
+
a,
|
|
769
|
+
n,
|
|
770
|
+
-c + a,
|
|
771
|
+
s,
|
|
772
|
+
n,
|
|
773
|
+
-c + a,
|
|
774
|
+
s,
|
|
775
|
+
n,
|
|
776
|
+
-c,
|
|
777
|
+
// Spine cover top
|
|
778
|
+
0,
|
|
779
|
+
n,
|
|
780
|
+
0,
|
|
781
|
+
a,
|
|
782
|
+
n,
|
|
783
|
+
-a,
|
|
784
|
+
a,
|
|
785
|
+
n,
|
|
786
|
+
-c + a,
|
|
787
|
+
0,
|
|
788
|
+
n,
|
|
789
|
+
-c,
|
|
790
|
+
// Front cover bottom
|
|
791
|
+
0,
|
|
792
|
+
0,
|
|
793
|
+
0,
|
|
794
|
+
a,
|
|
795
|
+
0,
|
|
796
|
+
-a,
|
|
797
|
+
s,
|
|
798
|
+
0,
|
|
799
|
+
-a,
|
|
800
|
+
s,
|
|
801
|
+
0,
|
|
802
|
+
0,
|
|
803
|
+
// Back cover bottom
|
|
804
|
+
0,
|
|
805
|
+
0,
|
|
806
|
+
-c,
|
|
807
|
+
s,
|
|
808
|
+
0,
|
|
809
|
+
-c,
|
|
810
|
+
s,
|
|
811
|
+
0,
|
|
812
|
+
-c + a,
|
|
813
|
+
a,
|
|
814
|
+
0,
|
|
815
|
+
-c + a,
|
|
816
|
+
// Spine cover bottom
|
|
817
|
+
0,
|
|
818
|
+
0,
|
|
819
|
+
0,
|
|
820
|
+
0,
|
|
821
|
+
0,
|
|
822
|
+
-c,
|
|
823
|
+
a,
|
|
824
|
+
0,
|
|
825
|
+
-c + a,
|
|
826
|
+
a,
|
|
827
|
+
0,
|
|
828
|
+
-a,
|
|
829
|
+
// Front cover edge
|
|
830
|
+
s,
|
|
831
|
+
0,
|
|
832
|
+
0,
|
|
833
|
+
s,
|
|
834
|
+
0,
|
|
835
|
+
-a,
|
|
836
|
+
s,
|
|
837
|
+
n,
|
|
838
|
+
-a,
|
|
839
|
+
s,
|
|
840
|
+
n,
|
|
841
|
+
0,
|
|
842
|
+
// Back cover edge
|
|
843
|
+
s,
|
|
844
|
+
0,
|
|
845
|
+
-c,
|
|
846
|
+
s,
|
|
847
|
+
n,
|
|
848
|
+
-c,
|
|
849
|
+
s,
|
|
850
|
+
n,
|
|
851
|
+
-c + a,
|
|
852
|
+
s,
|
|
853
|
+
0,
|
|
854
|
+
-c + a
|
|
855
|
+
], f = [
|
|
856
|
+
0,
|
|
857
|
+
0,
|
|
858
|
+
1,
|
|
859
|
+
0,
|
|
860
|
+
0,
|
|
861
|
+
1,
|
|
862
|
+
0,
|
|
863
|
+
0,
|
|
864
|
+
1,
|
|
865
|
+
0,
|
|
866
|
+
0,
|
|
867
|
+
1,
|
|
868
|
+
// Front cover
|
|
869
|
+
0,
|
|
870
|
+
0,
|
|
871
|
+
-1,
|
|
872
|
+
0,
|
|
873
|
+
0,
|
|
874
|
+
-1,
|
|
875
|
+
0,
|
|
876
|
+
0,
|
|
877
|
+
-1,
|
|
878
|
+
0,
|
|
879
|
+
0,
|
|
880
|
+
-1,
|
|
881
|
+
// Back cover
|
|
882
|
+
-1,
|
|
883
|
+
0,
|
|
884
|
+
0,
|
|
885
|
+
-1,
|
|
886
|
+
0,
|
|
887
|
+
0,
|
|
888
|
+
-1,
|
|
889
|
+
0,
|
|
890
|
+
0,
|
|
891
|
+
-1,
|
|
892
|
+
0,
|
|
893
|
+
0,
|
|
894
|
+
// Spine
|
|
895
|
+
0,
|
|
896
|
+
0,
|
|
897
|
+
-1,
|
|
898
|
+
0,
|
|
899
|
+
0,
|
|
900
|
+
-1,
|
|
901
|
+
0,
|
|
902
|
+
0,
|
|
903
|
+
-1,
|
|
904
|
+
0,
|
|
905
|
+
0,
|
|
906
|
+
-1,
|
|
907
|
+
// Inside front cover
|
|
908
|
+
0,
|
|
909
|
+
0,
|
|
910
|
+
1,
|
|
911
|
+
0,
|
|
912
|
+
0,
|
|
913
|
+
1,
|
|
914
|
+
0,
|
|
915
|
+
0,
|
|
916
|
+
1,
|
|
917
|
+
0,
|
|
918
|
+
0,
|
|
919
|
+
1,
|
|
920
|
+
// Inside back cover
|
|
921
|
+
1,
|
|
922
|
+
0,
|
|
923
|
+
0,
|
|
924
|
+
1,
|
|
925
|
+
0,
|
|
926
|
+
0,
|
|
927
|
+
1,
|
|
928
|
+
0,
|
|
929
|
+
0,
|
|
930
|
+
1,
|
|
931
|
+
0,
|
|
932
|
+
0,
|
|
933
|
+
// Inside spine
|
|
934
|
+
0,
|
|
935
|
+
1,
|
|
936
|
+
0,
|
|
937
|
+
0,
|
|
938
|
+
1,
|
|
939
|
+
0,
|
|
940
|
+
0,
|
|
941
|
+
1,
|
|
942
|
+
0,
|
|
943
|
+
0,
|
|
944
|
+
1,
|
|
945
|
+
0,
|
|
946
|
+
// Front cover top
|
|
947
|
+
0,
|
|
948
|
+
1,
|
|
949
|
+
0,
|
|
950
|
+
0,
|
|
951
|
+
1,
|
|
952
|
+
0,
|
|
953
|
+
0,
|
|
954
|
+
1,
|
|
955
|
+
0,
|
|
956
|
+
0,
|
|
957
|
+
1,
|
|
958
|
+
0,
|
|
959
|
+
// Back cover top
|
|
960
|
+
0,
|
|
961
|
+
1,
|
|
962
|
+
0,
|
|
963
|
+
0,
|
|
964
|
+
1,
|
|
965
|
+
0,
|
|
966
|
+
0,
|
|
967
|
+
1,
|
|
968
|
+
0,
|
|
969
|
+
0,
|
|
970
|
+
1,
|
|
971
|
+
0,
|
|
972
|
+
// Spine cover top
|
|
973
|
+
0,
|
|
974
|
+
-1,
|
|
975
|
+
0,
|
|
976
|
+
0,
|
|
977
|
+
-1,
|
|
978
|
+
0,
|
|
979
|
+
0,
|
|
980
|
+
-1,
|
|
981
|
+
0,
|
|
982
|
+
0,
|
|
983
|
+
-1,
|
|
984
|
+
0,
|
|
985
|
+
// Front cover bottom
|
|
986
|
+
0,
|
|
987
|
+
-1,
|
|
988
|
+
0,
|
|
989
|
+
0,
|
|
990
|
+
-1,
|
|
991
|
+
0,
|
|
992
|
+
0,
|
|
993
|
+
-1,
|
|
994
|
+
0,
|
|
995
|
+
0,
|
|
996
|
+
-1,
|
|
997
|
+
0,
|
|
998
|
+
// Back cover bottom
|
|
999
|
+
0,
|
|
1000
|
+
-1,
|
|
1001
|
+
0,
|
|
1002
|
+
0,
|
|
1003
|
+
-1,
|
|
1004
|
+
0,
|
|
1005
|
+
0,
|
|
1006
|
+
-1,
|
|
1007
|
+
0,
|
|
1008
|
+
0,
|
|
1009
|
+
-1,
|
|
1010
|
+
0,
|
|
1011
|
+
// Spine cover bottom
|
|
1012
|
+
1,
|
|
1013
|
+
0,
|
|
1014
|
+
0,
|
|
1015
|
+
1,
|
|
1016
|
+
0,
|
|
1017
|
+
0,
|
|
1018
|
+
1,
|
|
1019
|
+
0,
|
|
1020
|
+
0,
|
|
1021
|
+
1,
|
|
1022
|
+
0,
|
|
1023
|
+
0,
|
|
1024
|
+
// Front cover edge
|
|
1025
|
+
1,
|
|
1026
|
+
0,
|
|
1027
|
+
0,
|
|
1028
|
+
1,
|
|
1029
|
+
0,
|
|
1030
|
+
0,
|
|
1031
|
+
1,
|
|
1032
|
+
0,
|
|
1033
|
+
0,
|
|
1034
|
+
1,
|
|
1035
|
+
0,
|
|
1036
|
+
0
|
|
1037
|
+
// Back cover edge
|
|
1038
|
+
], p = e / (e * 2 + o), d = (e + o) / (e * 2 + o), x = [
|
|
1039
|
+
d,
|
|
1040
|
+
0,
|
|
1041
|
+
1,
|
|
1042
|
+
0,
|
|
1043
|
+
1,
|
|
1044
|
+
1,
|
|
1045
|
+
d,
|
|
1046
|
+
1,
|
|
1047
|
+
// Front cover
|
|
1048
|
+
0,
|
|
1049
|
+
0,
|
|
1050
|
+
p,
|
|
1051
|
+
0,
|
|
1052
|
+
p,
|
|
1053
|
+
1,
|
|
1054
|
+
0,
|
|
1055
|
+
1,
|
|
1056
|
+
// Back cover
|
|
1057
|
+
p,
|
|
1058
|
+
0,
|
|
1059
|
+
d,
|
|
1060
|
+
0,
|
|
1061
|
+
d,
|
|
1062
|
+
1,
|
|
1063
|
+
p,
|
|
1064
|
+
1,
|
|
1065
|
+
// Spine
|
|
1066
|
+
1,
|
|
1067
|
+
0,
|
|
1068
|
+
d,
|
|
1069
|
+
0,
|
|
1070
|
+
d,
|
|
1071
|
+
1,
|
|
1072
|
+
1,
|
|
1073
|
+
1,
|
|
1074
|
+
// Inside front cover
|
|
1075
|
+
p,
|
|
1076
|
+
0,
|
|
1077
|
+
0,
|
|
1078
|
+
0,
|
|
1079
|
+
0,
|
|
1080
|
+
1,
|
|
1081
|
+
p,
|
|
1082
|
+
1,
|
|
1083
|
+
// Inside back cover
|
|
1084
|
+
d,
|
|
1085
|
+
0,
|
|
1086
|
+
p,
|
|
1087
|
+
0,
|
|
1088
|
+
p,
|
|
1089
|
+
1,
|
|
1090
|
+
d,
|
|
1091
|
+
1,
|
|
1092
|
+
// Inside spine
|
|
1093
|
+
d,
|
|
1094
|
+
0,
|
|
1095
|
+
1,
|
|
1096
|
+
0,
|
|
1097
|
+
1,
|
|
1098
|
+
1,
|
|
1099
|
+
d,
|
|
1100
|
+
1,
|
|
1101
|
+
// Front cover top
|
|
1102
|
+
0,
|
|
1103
|
+
0,
|
|
1104
|
+
1,
|
|
1105
|
+
0,
|
|
1106
|
+
1,
|
|
1107
|
+
1,
|
|
1108
|
+
0,
|
|
1109
|
+
1,
|
|
1110
|
+
// Back cover top
|
|
1111
|
+
0,
|
|
1112
|
+
0,
|
|
1113
|
+
1,
|
|
1114
|
+
0,
|
|
1115
|
+
1,
|
|
1116
|
+
1,
|
|
1117
|
+
0,
|
|
1118
|
+
1,
|
|
1119
|
+
// Spine cover top
|
|
1120
|
+
0,
|
|
1121
|
+
0,
|
|
1122
|
+
1,
|
|
1123
|
+
0,
|
|
1124
|
+
1,
|
|
1125
|
+
1,
|
|
1126
|
+
0,
|
|
1127
|
+
1,
|
|
1128
|
+
// Front cover bottom
|
|
1129
|
+
0,
|
|
1130
|
+
0,
|
|
1131
|
+
1,
|
|
1132
|
+
0,
|
|
1133
|
+
1,
|
|
1134
|
+
1,
|
|
1135
|
+
0,
|
|
1136
|
+
1,
|
|
1137
|
+
// Back cover bottom
|
|
1138
|
+
0,
|
|
1139
|
+
0,
|
|
1140
|
+
1,
|
|
1141
|
+
0,
|
|
1142
|
+
1,
|
|
1143
|
+
1,
|
|
1144
|
+
0,
|
|
1145
|
+
1,
|
|
1146
|
+
// Spine cover bottom
|
|
1147
|
+
0,
|
|
1148
|
+
0,
|
|
1149
|
+
1,
|
|
1150
|
+
0,
|
|
1151
|
+
1,
|
|
1152
|
+
1,
|
|
1153
|
+
0,
|
|
1154
|
+
1,
|
|
1155
|
+
// Front cover edge
|
|
1156
|
+
0,
|
|
1157
|
+
0,
|
|
1158
|
+
1,
|
|
1159
|
+
0,
|
|
1160
|
+
1,
|
|
1161
|
+
1,
|
|
1162
|
+
0,
|
|
1163
|
+
1
|
|
1164
|
+
// Back cover edge
|
|
1165
|
+
], y = [
|
|
1166
|
+
0,
|
|
1167
|
+
1,
|
|
1168
|
+
2,
|
|
1169
|
+
0,
|
|
1170
|
+
2,
|
|
1171
|
+
3,
|
|
1172
|
+
// Front cover face
|
|
1173
|
+
4,
|
|
1174
|
+
5,
|
|
1175
|
+
6,
|
|
1176
|
+
4,
|
|
1177
|
+
6,
|
|
1178
|
+
7,
|
|
1179
|
+
// Back cover face
|
|
1180
|
+
8,
|
|
1181
|
+
9,
|
|
1182
|
+
10,
|
|
1183
|
+
8,
|
|
1184
|
+
10,
|
|
1185
|
+
11,
|
|
1186
|
+
// Spine face
|
|
1187
|
+
12,
|
|
1188
|
+
13,
|
|
1189
|
+
14,
|
|
1190
|
+
12,
|
|
1191
|
+
14,
|
|
1192
|
+
15,
|
|
1193
|
+
// Inside front cover
|
|
1194
|
+
16,
|
|
1195
|
+
17,
|
|
1196
|
+
18,
|
|
1197
|
+
16,
|
|
1198
|
+
18,
|
|
1199
|
+
19,
|
|
1200
|
+
// Inside back cover
|
|
1201
|
+
20,
|
|
1202
|
+
21,
|
|
1203
|
+
22,
|
|
1204
|
+
20,
|
|
1205
|
+
22,
|
|
1206
|
+
23,
|
|
1207
|
+
// Inside spine
|
|
1208
|
+
24,
|
|
1209
|
+
25,
|
|
1210
|
+
26,
|
|
1211
|
+
24,
|
|
1212
|
+
26,
|
|
1213
|
+
27,
|
|
1214
|
+
// Front cover top
|
|
1215
|
+
28,
|
|
1216
|
+
29,
|
|
1217
|
+
30,
|
|
1218
|
+
28,
|
|
1219
|
+
30,
|
|
1220
|
+
31,
|
|
1221
|
+
// Back cover top
|
|
1222
|
+
32,
|
|
1223
|
+
33,
|
|
1224
|
+
34,
|
|
1225
|
+
32,
|
|
1226
|
+
34,
|
|
1227
|
+
35,
|
|
1228
|
+
// Spine cover top
|
|
1229
|
+
36,
|
|
1230
|
+
37,
|
|
1231
|
+
38,
|
|
1232
|
+
36,
|
|
1233
|
+
38,
|
|
1234
|
+
39,
|
|
1235
|
+
// Front cover bottom
|
|
1236
|
+
40,
|
|
1237
|
+
41,
|
|
1238
|
+
42,
|
|
1239
|
+
40,
|
|
1240
|
+
42,
|
|
1241
|
+
43,
|
|
1242
|
+
// Back cover bottom
|
|
1243
|
+
44,
|
|
1244
|
+
45,
|
|
1245
|
+
46,
|
|
1246
|
+
44,
|
|
1247
|
+
46,
|
|
1248
|
+
47,
|
|
1249
|
+
// Spine cover bottom
|
|
1250
|
+
48,
|
|
1251
|
+
49,
|
|
1252
|
+
50,
|
|
1253
|
+
48,
|
|
1254
|
+
50,
|
|
1255
|
+
51,
|
|
1256
|
+
// Front cover edge
|
|
1257
|
+
52,
|
|
1258
|
+
53,
|
|
1259
|
+
54,
|
|
1260
|
+
52,
|
|
1261
|
+
54,
|
|
1262
|
+
55
|
|
1263
|
+
// Back cover edge
|
|
1264
|
+
], P = new Float32Array(u), G = new Float32Array(f), F = new Float32Array(x), V = new Uint16Array(y), B = new b();
|
|
1265
|
+
B.setAttribute("position", new Y(P, 3)), B.setAttribute("normal", new Y(G, 3)), B.setAttribute("uv", new Y(F, 2)), B.setIndex(new Y(V, 1));
|
|
1266
|
+
const E = new g(e - a - m, n - m * 2, c - a * 2);
|
|
1267
|
+
E.translate((e - a - m) / 2 + a, n / 2, -c / 2), this.copy(A([B, E], !0));
|
|
667
1268
|
}
|
|
668
1269
|
}
|
|
669
|
-
class
|
|
1270
|
+
class Ge extends b {
|
|
670
1271
|
constructor(e = 0.4, t = 1.2, o = 0.2) {
|
|
671
1272
|
super();
|
|
672
|
-
const
|
|
673
|
-
|
|
674
|
-
const s = e * 1.5,
|
|
675
|
-
|
|
1273
|
+
const r = t * 0.6, i = new g(e / 2, r, o);
|
|
1274
|
+
i.translate(0, r / 2, 0);
|
|
1275
|
+
const s = e * 1.5, n = new g(s, e / 4, o);
|
|
1276
|
+
n.translate(0, r * 0.75, 0), this.copy(A([i, n], !1)), this.computeVertexNormals();
|
|
676
1277
|
}
|
|
677
1278
|
}
|
|
678
|
-
class
|
|
1279
|
+
class Ie extends b {
|
|
679
1280
|
constructor(e = 1.75, t = 0.75) {
|
|
680
1281
|
super();
|
|
681
|
-
const o = e * 0.05,
|
|
682
|
-
let
|
|
683
|
-
const c = new
|
|
684
|
-
c.translate(0,
|
|
685
|
-
const
|
|
686
|
-
|
|
687
|
-
const m = new
|
|
688
|
-
m.translate(0,
|
|
689
|
-
const u = new
|
|
690
|
-
u.translate(0,
|
|
691
|
-
const f = new
|
|
692
|
-
f.translate(0,
|
|
693
|
-
T([c, l, m, u, f], !1)
|
|
694
|
-
);
|
|
1282
|
+
const o = e * 0.05, r = e * 0.15, i = e * 0.15, s = e * 0.75;
|
|
1283
|
+
let n = 0;
|
|
1284
|
+
const c = new g(t, o, t);
|
|
1285
|
+
c.translate(0, n + o / 2, 0), n += o;
|
|
1286
|
+
const a = new g(t * 0.8, r, t * 0.8);
|
|
1287
|
+
a.translate(0, n + r / 2, 0), n += r;
|
|
1288
|
+
const m = new g(t * 0.6, i, t * 0.6);
|
|
1289
|
+
m.translate(0, n + i / 2, 0), n += i;
|
|
1290
|
+
const u = new g(t * 0.4, s, t * 0.4);
|
|
1291
|
+
u.translate(0, n + s / 2, 0), n += s;
|
|
1292
|
+
const f = new z(t * 0.4 / Math.sqrt(2), 0.1, 4, 1, !1, Math.PI / 4);
|
|
1293
|
+
f.translate(0, n + 0.1 / 2, 0), this.copy(A([c, a, m, u, f], !1)), this.computeVertexNormals();
|
|
695
1294
|
}
|
|
696
1295
|
}
|
|
697
|
-
class
|
|
698
|
-
constructor(e = 0.6, t = 1, o = 0.2) {
|
|
1296
|
+
class Pe extends b {
|
|
1297
|
+
constructor(e = 0.6, t = 1, o = 0.2, r = 0.6) {
|
|
699
1298
|
super();
|
|
700
|
-
const
|
|
701
|
-
|
|
702
|
-
const
|
|
703
|
-
|
|
1299
|
+
const i = t - r / 2, s = new g(e, i, o);
|
|
1300
|
+
s.translate(0, i / 2, 0);
|
|
1301
|
+
const n = new v(r / 2, r / 2, o, 16, 1, !1, 0, Math.PI);
|
|
1302
|
+
n.rotateY(Math.PI / 2), n.rotateX(Math.PI / 2), n.translate(0, i, 0), this.copy(A([s, n], !1)), this.computeVertexNormals();
|
|
704
1303
|
}
|
|
705
1304
|
}
|
|
706
|
-
class
|
|
1305
|
+
class Ae extends b {
|
|
707
1306
|
constructor(e = 0.5, t = 0.8, o = 0.15) {
|
|
708
1307
|
super();
|
|
709
|
-
const
|
|
710
|
-
|
|
1308
|
+
const r = new g(e, t, o);
|
|
1309
|
+
r.translate(0, t / 2, 0), this.copy(r);
|
|
711
1310
|
}
|
|
712
1311
|
}
|
|
713
|
-
class
|
|
1312
|
+
class nt extends b {
|
|
714
1313
|
constructor(e = 2.25) {
|
|
715
1314
|
super();
|
|
716
|
-
const t = new
|
|
1315
|
+
const t = new g(1.2, 0.5, 1.2);
|
|
717
1316
|
t.translate(0, 0.25, 0);
|
|
718
|
-
const o = new
|
|
1317
|
+
const o = new g(1, e, 1);
|
|
719
1318
|
o.translate(0, 0.5 + e / 2, 0);
|
|
720
|
-
const
|
|
721
|
-
|
|
1319
|
+
const r = new g(1.4, 0.3, 1.4);
|
|
1320
|
+
r.translate(0, 0.5 + e + 0.15, 0), this.copy(A([t, o, r], !1));
|
|
722
1321
|
}
|
|
723
1322
|
}
|
|
724
|
-
class
|
|
1323
|
+
class at extends b {
|
|
725
1324
|
constructor(e = 2, t = 0.05, o = 0.3) {
|
|
726
1325
|
super();
|
|
727
|
-
const
|
|
728
|
-
|
|
729
|
-
const
|
|
730
|
-
|
|
1326
|
+
const r = new v(t, t, e, 8);
|
|
1327
|
+
r.translate(0, e / 2, 0);
|
|
1328
|
+
const i = new z(t * 1.5, o, 8);
|
|
1329
|
+
i.translate(0, e + o / 2, 0), this.copy(A([r, i], !1));
|
|
731
1330
|
}
|
|
732
1331
|
}
|
|
733
|
-
class
|
|
1332
|
+
class rt extends b {
|
|
734
1333
|
constructor(e = 0.1) {
|
|
735
1334
|
super();
|
|
736
|
-
const t = [], o = [],
|
|
1335
|
+
const t = [], o = [], r = [
|
|
737
1336
|
[0, 1],
|
|
738
1337
|
// Top point
|
|
739
1338
|
[0.5, 0.75],
|
|
@@ -751,115 +1350,115 @@ class nt extends b {
|
|
|
751
1350
|
[-0.5, 0.75]
|
|
752
1351
|
// Left upper middle
|
|
753
1352
|
];
|
|
754
|
-
for (let s = 0; s <
|
|
755
|
-
const [
|
|
756
|
-
t.push(
|
|
1353
|
+
for (let s = 0; s < r.length; s++) {
|
|
1354
|
+
const [n, c] = r[s];
|
|
1355
|
+
t.push(n * e, c * e, 0);
|
|
757
1356
|
}
|
|
758
|
-
for (let s = 1; s <
|
|
1357
|
+
for (let s = 1; s < r.length - 1; s++)
|
|
759
1358
|
o.push(0, s, s + 1);
|
|
760
|
-
o.push(0,
|
|
761
|
-
const
|
|
762
|
-
this.setAttribute("position",
|
|
1359
|
+
o.push(0, r.length - 1, 1);
|
|
1360
|
+
const i = new U(t, 3);
|
|
1361
|
+
this.setAttribute("position", i), this.setIndex(o), this.computeVertexNormals();
|
|
763
1362
|
}
|
|
764
1363
|
}
|
|
765
|
-
function
|
|
766
|
-
|
|
767
|
-
const
|
|
768
|
-
for (let
|
|
769
|
-
const s = new
|
|
770
|
-
s.add(c),
|
|
771
|
-
}
|
|
772
|
-
return
|
|
1364
|
+
function ke(l, e = C.XYZ, t = 0.5, o = 2) {
|
|
1365
|
+
l.deleteAttribute("uv"), l.deleteAttribute("normal"), l = Me(l), l.computeVertexNormals();
|
|
1366
|
+
const r = l.getAttribute("position");
|
|
1367
|
+
for (let i = 0; i < r.count; i++) {
|
|
1368
|
+
const s = new M().fromBufferAttribute(r, i), n = Math.random() * (o - t) + t, c = e.clone().multiplyScalar(n);
|
|
1369
|
+
s.add(c), r.setXYZ(i, s.x, s.y, s.z);
|
|
1370
|
+
}
|
|
1371
|
+
return r.needsUpdate = !0, l.computeVertexNormals(), l;
|
|
773
1372
|
}
|
|
774
|
-
class
|
|
1373
|
+
class Te extends b {
|
|
775
1374
|
constructor(e = 1, t = 4, o = 4) {
|
|
776
1375
|
super();
|
|
777
|
-
const
|
|
778
|
-
this.copy(
|
|
1376
|
+
const r = new T(e, t, o);
|
|
1377
|
+
this.copy(ke(r, C.XYZ, 0.5, 1)), this.computeVertexNormals(), this.center();
|
|
779
1378
|
}
|
|
780
1379
|
}
|
|
781
|
-
class
|
|
782
|
-
constructor(e = 0.1, t = 0.1, o = 0.4,
|
|
1380
|
+
class ct extends b {
|
|
1381
|
+
constructor(e = 0.1, t = 0.1, o = 0.4, r = 8) {
|
|
783
1382
|
super();
|
|
784
|
-
const
|
|
785
|
-
|
|
786
|
-
const s = new
|
|
787
|
-
|
|
1383
|
+
const i = new v(e * 0.6, t * 0.6, o, r);
|
|
1384
|
+
i.translate(0, 0, 0);
|
|
1385
|
+
const s = new T(e, r, r), n = s.clone(), c = s.clone(), a = s.clone(), m = s.clone();
|
|
1386
|
+
n.translate(0, o / 2 + e * 0.6, -e * 0.6), c.translate(0, o / 2 + e * 0.6, e * 0.6), a.translate(0, -o / 2 - t * 0.6, -t * 0.6), m.translate(0, -o / 2 - t * 0.6, t * 0.6), this.copy(A([i, n, c, a, m], !1));
|
|
788
1387
|
}
|
|
789
1388
|
}
|
|
790
|
-
class
|
|
1389
|
+
class Be extends b {
|
|
791
1390
|
constructor() {
|
|
792
1391
|
super();
|
|
793
|
-
const e = new
|
|
794
|
-
t.translate(0, 1.5, 0), t.rotateX(Math.PI / 2), this.copy(
|
|
1392
|
+
const e = new T(1, 16, 16), t = new v(0.2, 0.2, 2, 16, 1, !0);
|
|
1393
|
+
t.translate(0, 1.5, 0), t.rotateX(Math.PI / 2), this.copy(A([e, t], !1));
|
|
795
1394
|
}
|
|
796
1395
|
}
|
|
797
|
-
class
|
|
1396
|
+
class Ee extends b {
|
|
798
1397
|
constructor() {
|
|
799
1398
|
super();
|
|
800
1399
|
const e = [
|
|
801
|
-
new
|
|
1400
|
+
new I(1, 0),
|
|
802
1401
|
// Bottom of the bowl
|
|
803
|
-
new
|
|
1402
|
+
new I(1.2, 0.5),
|
|
804
1403
|
// Slight flare at the base
|
|
805
|
-
new
|
|
1404
|
+
new I(1.4, 1.5),
|
|
806
1405
|
// Outer wall
|
|
807
|
-
new
|
|
1406
|
+
new I(1.3, 1.8),
|
|
808
1407
|
// Flared edge
|
|
809
|
-
new
|
|
1408
|
+
new I(0.8, 1.8)
|
|
810
1409
|
// Lip of the bowl
|
|
811
|
-
], t = new
|
|
812
|
-
o.rotateX(-Math.PI / 2), o.translate(0, 0, 0), this.copy(
|
|
1410
|
+
], t = new Z(e, 12), o = new ie(1, 12);
|
|
1411
|
+
o.rotateX(-Math.PI / 2), o.translate(0, 0, 0), this.copy(A([t, o], !1));
|
|
813
1412
|
}
|
|
814
1413
|
}
|
|
815
|
-
class
|
|
816
|
-
constructor(e = 0.2, t = 0.2, o = 3,
|
|
1414
|
+
class R extends b {
|
|
1415
|
+
constructor(e = 0.2, t = 0.2, o = 3, r = 32, i = !0) {
|
|
817
1416
|
super();
|
|
818
|
-
const s = new
|
|
819
|
-
|
|
1417
|
+
const s = new v(e, t, o, r, 1, i), n = new T(t, r, r / 2, 0, Math.PI * 2, Math.PI / 2, Math.PI / 2);
|
|
1418
|
+
n.translate(0, -(o / 2), 0), this.copy(A([s, n], !1));
|
|
820
1419
|
}
|
|
821
1420
|
}
|
|
822
|
-
class
|
|
823
|
-
constructor({ radius: e = 0.5, neckRadius: t = 0.2, height: o = 3, neckHeight:
|
|
1421
|
+
class Ne extends b {
|
|
1422
|
+
constructor({ radius: e = 0.5, neckRadius: t = 0.2, height: o = 3, neckHeight: r = 1, segments: i = 16 } = {}) {
|
|
824
1423
|
super();
|
|
825
|
-
const s = o -
|
|
826
|
-
|
|
827
|
-
const c = 0.3,
|
|
828
|
-
|
|
829
|
-
const m = new
|
|
830
|
-
m.translate(0, s + c +
|
|
1424
|
+
const s = o - r, n = new v(e, e, s, i);
|
|
1425
|
+
n.translate(0, s / 2, 0);
|
|
1426
|
+
const c = 0.3, a = new v(t, e, c, i);
|
|
1427
|
+
a.translate(0, s + c / 2, 0);
|
|
1428
|
+
const m = new v(t, t, r, i);
|
|
1429
|
+
m.translate(0, s + c + r / 2, 0), this.copy(A([n, a, m], !1));
|
|
831
1430
|
}
|
|
832
1431
|
}
|
|
833
|
-
class
|
|
1432
|
+
class Ce extends b {
|
|
834
1433
|
constructor({
|
|
835
1434
|
trunkRadiusTop: e = 0.25,
|
|
836
1435
|
trunkRadiusBottom: t = 0.4,
|
|
837
1436
|
trunkHeight: o = 2.5,
|
|
838
|
-
trunkSegments:
|
|
839
|
-
leafSize:
|
|
1437
|
+
trunkSegments: r = 14,
|
|
1438
|
+
leafSize: i = 0.8,
|
|
840
1439
|
leafCount: s = 6,
|
|
841
|
-
leafDetail:
|
|
1440
|
+
leafDetail: n = 0,
|
|
842
1441
|
leafSpreadRadius: c = 1.5
|
|
843
1442
|
} = {}) {
|
|
844
1443
|
super();
|
|
845
|
-
const
|
|
846
|
-
|
|
1444
|
+
const a = new v(e, t, o, r);
|
|
1445
|
+
a.translate(0, o / 2, 0);
|
|
847
1446
|
const m = [];
|
|
848
1447
|
for (let u = 0; u < s; u++) {
|
|
849
|
-
const f = new Q(
|
|
1448
|
+
const f = new Q(i, n);
|
|
850
1449
|
f.translate(
|
|
851
1450
|
(Math.random() - 0.5) * c,
|
|
852
|
-
(Math.random() - 0.5) *
|
|
1451
|
+
(Math.random() - 0.5) * i + o,
|
|
853
1452
|
(Math.random() - 0.5) * c
|
|
854
1453
|
), m.push(f);
|
|
855
1454
|
}
|
|
856
|
-
this.copy(
|
|
1455
|
+
this.copy(A([a.toNonIndexed(), A(m, !1)], !0)), this.computeVertexNormals();
|
|
857
1456
|
}
|
|
858
1457
|
}
|
|
859
|
-
class
|
|
1458
|
+
class it extends S {
|
|
860
1459
|
constructor() {
|
|
861
1460
|
super();
|
|
862
|
-
const e = new
|
|
1461
|
+
const e = new T(5, 32, 32), t = new j({
|
|
863
1462
|
uniforms: {
|
|
864
1463
|
time: { value: 0 }
|
|
865
1464
|
},
|
|
@@ -906,42 +1505,78 @@ class rt extends S {
|
|
|
906
1505
|
this.add(o);
|
|
907
1506
|
}
|
|
908
1507
|
}
|
|
909
|
-
class
|
|
1508
|
+
class lt extends h {
|
|
1509
|
+
constructor({
|
|
1510
|
+
width: e = 1,
|
|
1511
|
+
height: t = 1.5,
|
|
1512
|
+
depth: o = 0.5,
|
|
1513
|
+
coverThickness: r = 0.05,
|
|
1514
|
+
pageIndent: i = 0.05,
|
|
1515
|
+
coverColor: s = 9109504,
|
|
1516
|
+
pageColor: n = 16777215
|
|
1517
|
+
} = {}) {
|
|
1518
|
+
super(), this.geometry = new be(e, t, o, r, i), this.material = [
|
|
1519
|
+
new w({ color: s, metalness: 0.1, roughness: 0.7, flatShading: !0 }),
|
|
1520
|
+
new w({ color: n, flatShading: !0 })
|
|
1521
|
+
];
|
|
1522
|
+
}
|
|
1523
|
+
}
|
|
1524
|
+
class mt extends h {
|
|
1525
|
+
constructor(e = 0.4, t = 1.2, o = 0.2) {
|
|
1526
|
+
super(), this.geometry = new Ge(e, t, o), this.material = new w({ color: 7829367, roughness: 0.8 });
|
|
1527
|
+
}
|
|
1528
|
+
}
|
|
1529
|
+
class ut extends S {
|
|
910
1530
|
constructor() {
|
|
911
1531
|
super();
|
|
912
|
-
const e = new
|
|
1532
|
+
const e = new g(5, 1, 5), t = new w({ color: 8421504, flatShading: !0 }), o = new h(e, t);
|
|
913
1533
|
o.position.set(0, 0.5, 0), this.add(o);
|
|
914
|
-
const
|
|
1534
|
+
const r = new g(4, 3, 4), i = new w({ color: 6908265, flatShading: !0 }), s = new h(r, i);
|
|
915
1535
|
s.position.set(0, 2.5, 0), this.add(s);
|
|
916
|
-
const
|
|
917
|
-
|
|
918
|
-
const m = new
|
|
1536
|
+
const n = new z(3.5, 2, 4), c = new w({ color: 5263440, flatShading: !0 }), a = new h(n, c);
|
|
1537
|
+
a.rotation.y = Math.PI / 4, a.position.set(0, 5, 0), this.add(a);
|
|
1538
|
+
const m = new v(0.2, 0.2, 3.5, 16), u = new w({ color: 6908265, flatShading: !0 });
|
|
919
1539
|
[
|
|
920
1540
|
[-1.8, 2.3, -2.2],
|
|
921
1541
|
[1.8, 2.3, -2.2],
|
|
922
1542
|
[-1.8, 2.3, 2.2],
|
|
923
1543
|
[1.8, 2.3, 2.2]
|
|
924
|
-
].forEach((
|
|
925
|
-
const
|
|
926
|
-
|
|
1544
|
+
].forEach((G) => {
|
|
1545
|
+
const F = new h(m, u);
|
|
1546
|
+
F.position.set(...G), this.add(F);
|
|
927
1547
|
});
|
|
928
|
-
const
|
|
929
|
-
|
|
1548
|
+
const p = new _();
|
|
1549
|
+
p.moveTo(-1, 0), p.lineTo(-1, 2), p.absarc(0, 2, 1, Math.PI, 0, !0), p.lineTo(1, 0);
|
|
930
1550
|
const d = {
|
|
931
1551
|
depth: 0.5,
|
|
932
1552
|
bevelEnabled: !1
|
|
933
|
-
},
|
|
1553
|
+
}, x = new L(p, d), y = new w({ color: 4210752, flatShading: !0 }), P = new h(x, y);
|
|
934
1554
|
P.position.set(0, 0.5, 1.7), this.add(P);
|
|
935
1555
|
}
|
|
936
1556
|
}
|
|
937
|
-
class
|
|
1557
|
+
class ft extends h {
|
|
1558
|
+
constructor(e = 1.75, t = 0.75) {
|
|
1559
|
+
super(), this.geometry = new Ie(e, t), this.material = new w({ color: 7829367, roughness: 0.8 });
|
|
1560
|
+
}
|
|
1561
|
+
}
|
|
1562
|
+
class ht extends h {
|
|
1563
|
+
constructor(e = 0.6, t = 1, o = 0.2, r = 0.6) {
|
|
1564
|
+
super(), this.geometry = new Pe(e, t, o, r), this.material = new w({ color: 7829367, roughness: 0.8 });
|
|
1565
|
+
}
|
|
1566
|
+
}
|
|
1567
|
+
class dt extends h {
|
|
1568
|
+
constructor(e = 0.5, t = 0.8, o = 0.15) {
|
|
1569
|
+
super(), this.geometry = new Ae(e, t, o), this.material = new w({ color: 7829367, roughness: 0.8 });
|
|
1570
|
+
}
|
|
1571
|
+
}
|
|
1572
|
+
class pt extends S {
|
|
938
1573
|
constructor() {
|
|
939
1574
|
super();
|
|
940
|
-
const e = new
|
|
1575
|
+
const e = new g(5, 0.3, 3), t = new w({ color: 9132587 }), o = new h(e, t);
|
|
941
1576
|
o.position.set(0, 3.15, 0);
|
|
942
|
-
const
|
|
943
|
-
|
|
944
|
-
const
|
|
1577
|
+
const r = [];
|
|
1578
|
+
r.push(new I(0.2, 0)), r.push(new I(0.25, 0.5)), r.push(new I(0.15, 1.5)), r.push(new I(0.3, 3));
|
|
1579
|
+
const i = new Z(r, 32), s = new w({ color: 4929057 });
|
|
945
1580
|
[
|
|
946
1581
|
[2.2, 0, 1.2],
|
|
947
1582
|
// Adjust Y to 0 so legs start at ground level
|
|
@@ -949,20 +1584,20 @@ class it extends S {
|
|
|
949
1584
|
[2.2, 0, -1.2],
|
|
950
1585
|
[-2.2, 0, -1.2]
|
|
951
1586
|
].forEach((c) => {
|
|
952
|
-
const
|
|
953
|
-
|
|
1587
|
+
const a = new h(i, s);
|
|
1588
|
+
a.position.set(...c), this.add(a);
|
|
954
1589
|
}), this.add(o);
|
|
955
1590
|
}
|
|
956
1591
|
}
|
|
957
|
-
class
|
|
1592
|
+
class wt extends S {
|
|
958
1593
|
constructor(e = 1, t = 0.2) {
|
|
959
1594
|
super(), this.height = e, this.radius = t, this.createCandle(), this.animateFlicker();
|
|
960
1595
|
}
|
|
961
1596
|
createCandle() {
|
|
962
|
-
const e = new
|
|
1597
|
+
const e = new v(this.radius, this.radius, this.height, 32), t = new w({ color: 16777215 });
|
|
963
1598
|
this.candle = new h(e, t), this.candle.position.set(0, this.height / 2, 0), this.add(this.candle);
|
|
964
|
-
const o = new
|
|
965
|
-
this.flame = new h(o,
|
|
1599
|
+
const o = new T(0.05, 16, 16), r = new le({ color: 16753920 });
|
|
1600
|
+
this.flame = new h(o, r), this.flame.position.set(0, this.height + 0.05, 0), this.add(this.flame), this.candleLight = new oe(16753920, 1, 5), this.candleLight.position.set(0, this.height + 0.05, 0), this.candleLight.castShadow = !0, this.add(this.candleLight);
|
|
966
1601
|
}
|
|
967
1602
|
animateFlicker() {
|
|
968
1603
|
const e = () => {
|
|
@@ -971,52 +1606,52 @@ class lt extends S {
|
|
|
971
1606
|
e();
|
|
972
1607
|
}
|
|
973
1608
|
}
|
|
974
|
-
class
|
|
1609
|
+
class yt extends S {
|
|
975
1610
|
constructor(e = 1.3, t = 0.5) {
|
|
976
1611
|
super();
|
|
977
|
-
const o = new
|
|
978
|
-
|
|
979
|
-
const s = new
|
|
1612
|
+
const o = new v(t, t, 0.2, 16), r = new w({ color: 9127187, flatShading: !0 }), i = new h(o, r);
|
|
1613
|
+
i.position.set(0, 0, 0), this.add(i);
|
|
1614
|
+
const s = new v(t * 0.9, t * 0.9, e), n = new w({ color: 16766720, flatShading: !0, transparent: !0, opacity: 0.6 }), c = new h(s, n);
|
|
980
1615
|
c.position.set(0, e / 2 + 0.1, 0), this.add(c);
|
|
981
|
-
const
|
|
1616
|
+
const a = new z(t * 1.1, 0.5, 8), m = new w({ color: 9127187, flatShading: !0 }), u = new h(a, m);
|
|
982
1617
|
u.position.set(0, e + 0.35, 0), this.add(u);
|
|
983
|
-
const f = new
|
|
1618
|
+
const f = new se(t * 0.8, 0.05, 8, 16), p = new w({ color: 9127187, flatShading: !0 }), d = new h(f, p);
|
|
984
1619
|
d.position.set(0, e + 0.85, 0), this.add(d);
|
|
985
|
-
const
|
|
986
|
-
|
|
1620
|
+
const x = new oe(16755200, 1.5, 15);
|
|
1621
|
+
x.position.set(0, e / 2 + 0.1, 0), x.castShadow = !0, this.add(x);
|
|
987
1622
|
}
|
|
988
1623
|
}
|
|
989
|
-
class
|
|
1624
|
+
class xt extends S {
|
|
990
1625
|
constructor() {
|
|
991
1626
|
super();
|
|
992
|
-
const e = new Q(1, 0), t = new
|
|
993
|
-
for (let
|
|
994
|
-
const
|
|
995
|
-
|
|
1627
|
+
const e = new Q(1, 0), t = new w({ color: 8421504, flatShading: !0 }), o = new w({ color: 4950843, flatShading: !0, opacity: 0.8, transparent: !0 });
|
|
1628
|
+
for (let r = 0; r < 5; r++) {
|
|
1629
|
+
const i = new h(e, t);
|
|
1630
|
+
i.scale.set(0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4, 0.8 + Math.random() * 0.4), i.rotation.set(Math.random() * Math.PI, Math.random() * Math.PI, Math.random() * Math.PI), i.position.set((Math.random() - 0.5) * 4, 0, (Math.random() - 0.5) * 4), this.add(i);
|
|
996
1631
|
const s = new h(e, o);
|
|
997
|
-
s.scale.set(
|
|
1632
|
+
s.scale.set(i.scale.x * 0.9, i.scale.y * 0.5, i.scale.z * 0.9), s.rotation.copy(i.rotation), s.position.copy(i.position), s.position.y += 0.3, this.add(s);
|
|
998
1633
|
}
|
|
999
1634
|
}
|
|
1000
1635
|
}
|
|
1001
|
-
class
|
|
1636
|
+
class Mt extends h {
|
|
1002
1637
|
constructor(e = 1, t = 4, o = 4) {
|
|
1003
|
-
super(), this.geometry = new
|
|
1638
|
+
super(), this.geometry = new Te(e, t, o), this.material = new w({ color: 8421504, flatShading: !0 });
|
|
1004
1639
|
}
|
|
1005
1640
|
}
|
|
1006
|
-
class
|
|
1641
|
+
class vt extends S {
|
|
1007
1642
|
constructor() {
|
|
1008
1643
|
super();
|
|
1009
|
-
const e = new Q(1, 0), t = new
|
|
1644
|
+
const e = new Q(1, 0), t = new w({ color: 8421504, flatShading: !0 });
|
|
1010
1645
|
for (let o = 0; o < 5; o++) {
|
|
1011
|
-
const
|
|
1012
|
-
|
|
1646
|
+
const r = new h(e, t);
|
|
1647
|
+
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);
|
|
1013
1648
|
}
|
|
1014
1649
|
}
|
|
1015
1650
|
}
|
|
1016
|
-
class
|
|
1651
|
+
class gt extends S {
|
|
1017
1652
|
constructor() {
|
|
1018
1653
|
super();
|
|
1019
|
-
const e = new
|
|
1654
|
+
const e = new Be(), t = new K({
|
|
1020
1655
|
color: 8965375,
|
|
1021
1656
|
transparent: !0,
|
|
1022
1657
|
opacity: 0.4,
|
|
@@ -1024,297 +1659,286 @@ class dt extends S {
|
|
|
1024
1659
|
metalness: 0.1,
|
|
1025
1660
|
reflectivity: 0.8,
|
|
1026
1661
|
transmission: 0.9,
|
|
1027
|
-
side:
|
|
1662
|
+
side: q
|
|
1028
1663
|
}), o = new h(e, t);
|
|
1029
1664
|
o.rotation.x = -Math.PI / 2, this.add(o);
|
|
1030
1665
|
}
|
|
1031
1666
|
}
|
|
1032
|
-
class
|
|
1033
|
-
constructor() {
|
|
1034
|
-
super();
|
|
1035
|
-
const e = new v(1.6, 0.05, 2.1), t = new p({ color: 9109504 }), o = new h(e, t), n = new h(e, t);
|
|
1036
|
-
o.position.set(0, 0.125, 0), n.position.set(0, -0.125, 0);
|
|
1037
|
-
const r = new v(1.55, 0.2, 2), s = new p({ color: 16777215 }), a = new h(r, s);
|
|
1038
|
-
a.position.set(-0.025, 0, 0);
|
|
1039
|
-
const c = new v(0.05, 0.25, 2.1), l = new p({ color: 4915200 }), m = new h(c, l);
|
|
1040
|
-
m.position.set(-0.8, 0, 0), this.add(o), this.add(n), this.add(a), this.add(m);
|
|
1041
|
-
}
|
|
1042
|
-
}
|
|
1043
|
-
class wt extends S {
|
|
1667
|
+
class St extends S {
|
|
1044
1668
|
constructor() {
|
|
1045
1669
|
super();
|
|
1046
1670
|
const e = [
|
|
1047
|
-
new
|
|
1671
|
+
new I(0, 0),
|
|
1048
1672
|
// Bottom
|
|
1049
|
-
new
|
|
1673
|
+
new I(0.8, 0),
|
|
1050
1674
|
// Base
|
|
1051
|
-
new
|
|
1675
|
+
new I(1, 1.5),
|
|
1052
1676
|
// Rounded body
|
|
1053
|
-
new
|
|
1677
|
+
new I(0.5, 2.2),
|
|
1054
1678
|
// Neck
|
|
1055
|
-
new
|
|
1679
|
+
new I(0.6, 2.5)
|
|
1056
1680
|
// Mouth
|
|
1057
|
-
], t = new
|
|
1681
|
+
], t = new Z(e, 10), o = new v(0.3, 0.4, 0.2, 8), r = new w({
|
|
1058
1682
|
color: 8965375,
|
|
1059
1683
|
transparent: !0,
|
|
1060
1684
|
opacity: 0.5,
|
|
1061
1685
|
roughness: 0.1,
|
|
1062
1686
|
metalness: 0.3
|
|
1063
|
-
}),
|
|
1687
|
+
}), i = new w({
|
|
1064
1688
|
color: 16724838,
|
|
1065
1689
|
// Vibrant potion color
|
|
1066
1690
|
transparent: !0,
|
|
1067
1691
|
opacity: 0.6
|
|
1068
|
-
}), s = new
|
|
1692
|
+
}), s = new w({
|
|
1069
1693
|
color: 9127187,
|
|
1070
1694
|
roughness: 1
|
|
1071
|
-
}),
|
|
1072
|
-
c.scale.set(0.8, 0.8, 0.8), c.position.y = 0.1,
|
|
1695
|
+
}), n = new h(t, r), c = new h(t, i), a = new h(o, s);
|
|
1696
|
+
c.scale.set(0.8, 0.8, 0.8), c.position.y = 0.1, a.position.y = 2.5;
|
|
1073
1697
|
const m = new S();
|
|
1074
|
-
m.add(
|
|
1698
|
+
m.add(n, c, a), this.add(m);
|
|
1075
1699
|
}
|
|
1076
1700
|
}
|
|
1077
|
-
class
|
|
1701
|
+
class bt extends S {
|
|
1078
1702
|
constructor() {
|
|
1079
1703
|
super();
|
|
1080
|
-
const e = new
|
|
1704
|
+
const e = new v(0.3, 0.4, 0.1, 16), t = new w({
|
|
1081
1705
|
color: 3355443,
|
|
1082
1706
|
roughness: 0.6,
|
|
1083
1707
|
metalness: 0.3
|
|
1084
1708
|
}), o = new h(e, t);
|
|
1085
1709
|
o.position.y = 0.05;
|
|
1086
|
-
const
|
|
1710
|
+
const r = new v(0.1, 0.1, 0.7, 16), i = new w({
|
|
1087
1711
|
color: 5592405,
|
|
1088
1712
|
roughness: 0.5,
|
|
1089
1713
|
metalness: 0.4
|
|
1090
|
-
}), s = new h(
|
|
1714
|
+
}), s = new h(r, i);
|
|
1091
1715
|
s.position.y = 0.4;
|
|
1092
|
-
const
|
|
1716
|
+
const n = new z(0.075, 0.2, 16), c = new w({
|
|
1093
1717
|
color: 16733440,
|
|
1094
1718
|
emissive: 16733440,
|
|
1095
1719
|
emissiveIntensity: 0.6,
|
|
1096
1720
|
transparent: !0,
|
|
1097
1721
|
opacity: 0.8
|
|
1098
|
-
}),
|
|
1099
|
-
|
|
1722
|
+
}), a = new h(n, c);
|
|
1723
|
+
a.position.y = 0.8, this.add(o, s, a);
|
|
1100
1724
|
}
|
|
1101
1725
|
}
|
|
1102
|
-
class
|
|
1726
|
+
class Gt extends S {
|
|
1103
1727
|
constructor() {
|
|
1104
1728
|
super();
|
|
1105
|
-
const e = new
|
|
1729
|
+
const e = new g(3, 4, 0.1), t = new w({
|
|
1106
1730
|
color: 3026478,
|
|
1107
1731
|
roughness: 0.8,
|
|
1108
1732
|
metalness: 0.6
|
|
1109
|
-
}), o = new
|
|
1733
|
+
}), o = new g(0.2, 0.5, 0.2), r = new w({
|
|
1110
1734
|
color: 11184810,
|
|
1111
1735
|
roughness: 0.5,
|
|
1112
1736
|
metalness: 0.7
|
|
1113
|
-
}),
|
|
1737
|
+
}), i = new v(0.3, 0.3, 0.1, 16), s = new w({
|
|
1114
1738
|
color: 5592405,
|
|
1115
1739
|
roughness: 0.7,
|
|
1116
1740
|
metalness: 0.5
|
|
1117
|
-
}),
|
|
1741
|
+
}), n = new h(e, t);
|
|
1118
1742
|
for (let y = -1; y <= 1; y++) {
|
|
1119
|
-
const P = new h(o,
|
|
1120
|
-
P.position.set(y, 1.5, 0.1),
|
|
1743
|
+
const P = new h(o, r);
|
|
1744
|
+
P.position.set(y, 1.5, 0.1), n.add(P);
|
|
1121
1745
|
}
|
|
1122
|
-
const c = new h(
|
|
1123
|
-
c.rotation.x = Math.PI / 2, c.position.set(0, 0.5, 0.15),
|
|
1124
|
-
const
|
|
1746
|
+
const c = new h(i, s);
|
|
1747
|
+
c.rotation.x = Math.PI / 2, c.position.set(0, 0.5, 0.15), n.add(c);
|
|
1748
|
+
const a = new T(0.15, 8, 8), m = new w({
|
|
1125
1749
|
color: 16711680,
|
|
1126
1750
|
emissive: 16711680,
|
|
1127
1751
|
emissiveIntensity: 0.5
|
|
1128
|
-
}), u = new h(
|
|
1129
|
-
u.position.set(0, -1, 0.1),
|
|
1130
|
-
let f = 0.015,
|
|
1131
|
-
function
|
|
1132
|
-
requestAnimationFrame(
|
|
1133
|
-
const y = d + Math.abs(Math.sin(Date.now() * f)) * (
|
|
1752
|
+
}), u = new h(a, m);
|
|
1753
|
+
u.position.set(0, -1, 0.1), n.add(u), this.add(n);
|
|
1754
|
+
let f = 0.015, p = 0.8, d = 0.2;
|
|
1755
|
+
function x() {
|
|
1756
|
+
requestAnimationFrame(x);
|
|
1757
|
+
const y = d + Math.abs(Math.sin(Date.now() * f)) * (p - d);
|
|
1134
1758
|
u.material.emissiveIntensity = y;
|
|
1135
1759
|
}
|
|
1136
|
-
|
|
1760
|
+
x();
|
|
1137
1761
|
}
|
|
1138
1762
|
}
|
|
1139
|
-
class
|
|
1763
|
+
class It extends S {
|
|
1140
1764
|
constructor() {
|
|
1141
1765
|
super();
|
|
1142
1766
|
const e = [
|
|
1143
|
-
new
|
|
1767
|
+
new I(0, 0),
|
|
1144
1768
|
// Bottom of the flask
|
|
1145
|
-
new
|
|
1769
|
+
new I(1.2, 0),
|
|
1146
1770
|
// Base
|
|
1147
|
-
new
|
|
1771
|
+
new I(1.5, 1.5),
|
|
1148
1772
|
// Mid-body
|
|
1149
|
-
new
|
|
1773
|
+
new I(1, 3),
|
|
1150
1774
|
// Narrow neck
|
|
1151
|
-
new
|
|
1775
|
+
new I(0.6, 3.5)
|
|
1152
1776
|
// Mouth of the flask
|
|
1153
|
-
], t = new
|
|
1777
|
+
], t = new Z(e, 12), o = new v(0.6, 0.7, 0.3, 8), r = new w({
|
|
1154
1778
|
color: 8965290,
|
|
1155
1779
|
transparent: !0,
|
|
1156
1780
|
opacity: 0.4,
|
|
1157
1781
|
roughness: 0.1,
|
|
1158
1782
|
metalness: 0.5
|
|
1159
|
-
}),
|
|
1783
|
+
}), i = new w({
|
|
1160
1784
|
color: 9127187,
|
|
1161
1785
|
roughness: 1
|
|
1162
|
-
}), s = new h(t,
|
|
1163
|
-
|
|
1786
|
+
}), s = new h(t, r), n = new h(o, i);
|
|
1787
|
+
n.position.y = 3.5, this.add(s, n);
|
|
1164
1788
|
}
|
|
1165
1789
|
}
|
|
1166
|
-
class
|
|
1790
|
+
class Pt extends S {
|
|
1167
1791
|
constructor() {
|
|
1168
1792
|
super();
|
|
1169
|
-
const e = new
|
|
1793
|
+
const e = new g(2, 3, 0.1), t = new w({
|
|
1170
1794
|
color: 3355443,
|
|
1171
1795
|
roughness: 0.8,
|
|
1172
1796
|
metalness: 0.5
|
|
1173
|
-
}), o = new h(e, t),
|
|
1797
|
+
}), o = new h(e, t), r = new v(0.1, 0.1, 0.2, 8), i = new v(0.05, 0.05, 1, 8), s = new w({
|
|
1174
1798
|
color: 11184810,
|
|
1175
1799
|
roughness: 0.5,
|
|
1176
1800
|
metalness: 0.7
|
|
1177
1801
|
});
|
|
1178
|
-
for (let
|
|
1179
|
-
const c = new h(
|
|
1180
|
-
c.position.set(
|
|
1181
|
-
const
|
|
1182
|
-
|
|
1802
|
+
for (let n = -0.5; n <= 0.5; n += 0.5) {
|
|
1803
|
+
const c = new h(r, s);
|
|
1804
|
+
c.position.set(n, 1, 0.1);
|
|
1805
|
+
const a = new h(i, s);
|
|
1806
|
+
a.position.y = 0.5, c.add(a), this.add(c);
|
|
1183
1807
|
}
|
|
1184
1808
|
this.add(o);
|
|
1185
1809
|
}
|
|
1186
1810
|
}
|
|
1187
|
-
class
|
|
1811
|
+
class At extends S {
|
|
1188
1812
|
constructor() {
|
|
1189
1813
|
super();
|
|
1190
|
-
const e = new
|
|
1814
|
+
const e = new g(1, 0.2, 0.5), t = new w({
|
|
1191
1815
|
color: 4473924,
|
|
1192
1816
|
roughness: 0.6,
|
|
1193
1817
|
metalness: 0.3
|
|
1194
1818
|
}), o = new h(e, t);
|
|
1195
1819
|
o.position.y = 0.1;
|
|
1196
|
-
const
|
|
1197
|
-
|
|
1198
|
-
const s = new
|
|
1820
|
+
const r = new g(0.2, 1, 0.2), i = new h(r, t);
|
|
1821
|
+
i.position.set(0, 0.6, -0.2);
|
|
1822
|
+
const s = new v(0.1, 0.1, 0.4, 8), n = new w({
|
|
1199
1823
|
color: 3355443,
|
|
1200
1824
|
roughness: 0.5,
|
|
1201
1825
|
metalness: 0.6
|
|
1202
|
-
}), c = new h(s,
|
|
1826
|
+
}), c = new h(s, n);
|
|
1203
1827
|
c.position.set(0, 1.1, -0.35), c.rotation.x = -Math.PI / 4;
|
|
1204
|
-
const
|
|
1828
|
+
const a = new g(0.6, 0.1, 0.6), m = new w({
|
|
1205
1829
|
color: 5592405,
|
|
1206
1830
|
roughness: 0.8,
|
|
1207
1831
|
metalness: 0.2
|
|
1208
|
-
}), u = new h(
|
|
1209
|
-
u.position.set(0, 0.6, 0), this.add(o,
|
|
1832
|
+
}), u = new h(a, m);
|
|
1833
|
+
u.position.set(0, 0.6, 0), this.add(o, i, c, u);
|
|
1210
1834
|
}
|
|
1211
1835
|
}
|
|
1212
|
-
class
|
|
1836
|
+
class kt extends S {
|
|
1213
1837
|
constructor() {
|
|
1214
1838
|
super();
|
|
1215
|
-
const e = new
|
|
1839
|
+
const e = new Ee(), t = new v(0.2, 0.3, 1.5, 8);
|
|
1216
1840
|
t.translate(0, 0.75, 0);
|
|
1217
|
-
const o = new
|
|
1841
|
+
const o = new w({
|
|
1218
1842
|
color: 6045747,
|
|
1219
1843
|
// Dark earthy tone
|
|
1220
1844
|
roughness: 1,
|
|
1221
1845
|
metalness: 0,
|
|
1222
|
-
side:
|
|
1846
|
+
side: q
|
|
1223
1847
|
// Render inside and outside
|
|
1224
|
-
}),
|
|
1848
|
+
}), r = new w({
|
|
1225
1849
|
color: 9132587,
|
|
1226
1850
|
// Slightly lighter earthy color
|
|
1227
1851
|
roughness: 0.8,
|
|
1228
1852
|
metalness: 0.1
|
|
1229
|
-
}),
|
|
1230
|
-
s.position.set(0.3, 1.3, 0), s.rotation.z = Math.PI / 4, this.add(
|
|
1853
|
+
}), i = new h(e, o), s = new h(t, r);
|
|
1854
|
+
s.position.set(0.3, 1.3, 0), s.rotation.z = Math.PI / 4, this.add(i, s);
|
|
1231
1855
|
}
|
|
1232
1856
|
}
|
|
1233
|
-
class
|
|
1857
|
+
class Tt extends S {
|
|
1234
1858
|
constructor() {
|
|
1235
1859
|
super();
|
|
1236
|
-
const e = 100, t = 0.05, o = new
|
|
1237
|
-
Array.from({ length: e }, (
|
|
1860
|
+
const e = 100, t = 0.05, o = new me(
|
|
1861
|
+
Array.from({ length: e }, (a, m) => {
|
|
1238
1862
|
const u = m * 0.2;
|
|
1239
|
-
return new
|
|
1863
|
+
return new M(
|
|
1240
1864
|
Math.cos(u) * 0.4,
|
|
1241
1865
|
m * t,
|
|
1242
1866
|
// Gradual height increase
|
|
1243
1867
|
Math.sin(u) * 0.4
|
|
1244
1868
|
);
|
|
1245
1869
|
})
|
|
1246
|
-
),
|
|
1870
|
+
), r = new ue(o, 200, 0.1, 8, !1), i = new w({
|
|
1247
1871
|
color: 8965375,
|
|
1248
1872
|
transparent: !0,
|
|
1249
1873
|
opacity: 0.3,
|
|
1250
1874
|
roughness: 0.1,
|
|
1251
1875
|
metalness: 0.2,
|
|
1252
1876
|
emissive: 8965375
|
|
1253
|
-
}), s = new h(
|
|
1877
|
+
}), s = new h(r, i);
|
|
1254
1878
|
this.add(s);
|
|
1255
|
-
function
|
|
1256
|
-
|
|
1879
|
+
function n() {
|
|
1880
|
+
i.emissiveIntensity = 0.2 + Math.sin(Date.now() * 5e-3) * 0.1;
|
|
1257
1881
|
}
|
|
1258
1882
|
function c() {
|
|
1259
|
-
requestAnimationFrame(c),
|
|
1883
|
+
requestAnimationFrame(c), n();
|
|
1260
1884
|
}
|
|
1261
1885
|
c();
|
|
1262
1886
|
}
|
|
1263
1887
|
}
|
|
1264
|
-
class
|
|
1888
|
+
class Bt extends S {
|
|
1265
1889
|
constructor() {
|
|
1266
1890
|
super();
|
|
1267
|
-
const e = new
|
|
1891
|
+
const e = new se(0.3, 0.03, 8, 16), t = new w({
|
|
1268
1892
|
color: 8947848,
|
|
1269
1893
|
roughness: 0.7,
|
|
1270
1894
|
metalness: 0.3
|
|
1271
1895
|
}), o = new h(e, t);
|
|
1272
1896
|
o.rotation.x = Math.PI / 2, o.position.y = 0.4;
|
|
1273
|
-
const
|
|
1897
|
+
const r = new v(0.02, 0.02, 0.4, 8), i = new w({
|
|
1274
1898
|
color: 6710886,
|
|
1275
1899
|
roughness: 0.8,
|
|
1276
1900
|
metalness: 0.3
|
|
1277
1901
|
}), s = [];
|
|
1278
|
-
for (let
|
|
1279
|
-
const c =
|
|
1280
|
-
|
|
1902
|
+
for (let n = 0; n < 3; n++) {
|
|
1903
|
+
const c = n / 3 * Math.PI * 2, a = new h(r, i);
|
|
1904
|
+
a.position.set(Math.cos(c) * 0.25, 0.2, Math.sin(c) * 0.25), s.push(a);
|
|
1281
1905
|
}
|
|
1282
1906
|
this.add(o, ...s);
|
|
1283
1907
|
}
|
|
1284
1908
|
}
|
|
1285
|
-
class
|
|
1909
|
+
class Et extends S {
|
|
1286
1910
|
constructor() {
|
|
1287
1911
|
super();
|
|
1288
|
-
const e = new
|
|
1912
|
+
const e = new v(0.5, 0.6, 0.3, 16), t = new w({
|
|
1289
1913
|
color: 3355443,
|
|
1290
1914
|
roughness: 0.6,
|
|
1291
1915
|
metalness: 0.5
|
|
1292
1916
|
}), o = new h(e, t);
|
|
1293
1917
|
o.position.y = 0.15;
|
|
1294
|
-
const
|
|
1918
|
+
const r = new v(0.15, 0.15, 2, 12, 1, !0), i = new w({
|
|
1295
1919
|
color: 16737792,
|
|
1296
1920
|
roughness: 0.5,
|
|
1297
1921
|
metalness: 0.8,
|
|
1298
|
-
side:
|
|
1299
|
-
}), s = new h(
|
|
1922
|
+
side: q
|
|
1923
|
+
}), s = new h(r, i);
|
|
1300
1924
|
s.position.y = 1.3;
|
|
1301
|
-
const
|
|
1925
|
+
const n = new T(0.3, 16, 16), c = new h(n, i);
|
|
1302
1926
|
c.position.y = 2.4, this.add(o, s, c);
|
|
1303
|
-
const
|
|
1927
|
+
const a = [];
|
|
1304
1928
|
for (let f = 0; f < 5; f++) {
|
|
1305
|
-
const
|
|
1306
|
-
new
|
|
1307
|
-
new
|
|
1308
|
-
],
|
|
1309
|
-
this.add(y),
|
|
1929
|
+
const p = new fe({ color: 10079487 }), d = [
|
|
1930
|
+
new M(0, 2.4, 0),
|
|
1931
|
+
new M((Math.random() - 0.5) * 1.5, Math.random() * 2.4, (Math.random() - 0.5) * 1.5)
|
|
1932
|
+
], x = new b().setFromPoints(d), y = new he(x, p);
|
|
1933
|
+
this.add(y), a.push(y);
|
|
1310
1934
|
}
|
|
1311
1935
|
function m() {
|
|
1312
|
-
|
|
1313
|
-
const
|
|
1314
|
-
new
|
|
1315
|
-
new
|
|
1936
|
+
a.forEach((f) => {
|
|
1937
|
+
const p = [
|
|
1938
|
+
new M(0, 2.4, 0),
|
|
1939
|
+
new M((Math.random() - 0.5) * 1.5, Math.random() * 2.4, (Math.random() - 0.5) * 1.5)
|
|
1316
1940
|
];
|
|
1317
|
-
f.geometry.setFromPoints(
|
|
1941
|
+
f.geometry.setFromPoints(p);
|
|
1318
1942
|
});
|
|
1319
1943
|
}
|
|
1320
1944
|
function u() {
|
|
@@ -1323,10 +1947,10 @@ class It extends S {
|
|
|
1323
1947
|
u();
|
|
1324
1948
|
}
|
|
1325
1949
|
}
|
|
1326
|
-
class
|
|
1327
|
-
constructor(e = 0.2, t = 0.2, o = 3,
|
|
1950
|
+
class Nt extends S {
|
|
1951
|
+
constructor(e = 0.2, t = 0.2, o = 3, r = 32) {
|
|
1328
1952
|
super();
|
|
1329
|
-
const
|
|
1953
|
+
const i = new R(e, t, o, r), s = new K({
|
|
1330
1954
|
color: 8965375,
|
|
1331
1955
|
transparent: !0,
|
|
1332
1956
|
opacity: 0.4,
|
|
@@ -1335,48 +1959,48 @@ class Pt extends S {
|
|
|
1335
1959
|
reflectivity: 0.8,
|
|
1336
1960
|
transmission: 0.9,
|
|
1337
1961
|
// For glass effect
|
|
1338
|
-
side:
|
|
1339
|
-
}),
|
|
1340
|
-
this.add(
|
|
1962
|
+
side: q
|
|
1963
|
+
}), n = new h(i, s);
|
|
1964
|
+
this.add(n);
|
|
1341
1965
|
}
|
|
1342
1966
|
}
|
|
1343
|
-
class
|
|
1967
|
+
class Ct extends S {
|
|
1344
1968
|
constructor(e = 3, t = [65450, 16711850, 11141375]) {
|
|
1345
1969
|
super();
|
|
1346
|
-
const o = new
|
|
1970
|
+
const o = new g(3, 0.2, 1), r = new w({
|
|
1347
1971
|
color: 9127187,
|
|
1348
1972
|
// Wooden color or change to metallic tone
|
|
1349
1973
|
roughness: 0.7,
|
|
1350
1974
|
metalness: 0.3
|
|
1351
|
-
}),
|
|
1352
|
-
|
|
1353
|
-
const s = new
|
|
1975
|
+
}), i = new h(o, r);
|
|
1976
|
+
i.position.y = 0.5;
|
|
1977
|
+
const s = new R(0.1, 0.1, 1, 16), n = new w({
|
|
1354
1978
|
color: 11184810,
|
|
1355
1979
|
transparent: !0,
|
|
1356
1980
|
opacity: 0.4,
|
|
1357
1981
|
roughness: 0.1,
|
|
1358
1982
|
metalness: 0.5,
|
|
1359
|
-
side:
|
|
1983
|
+
side: q
|
|
1360
1984
|
});
|
|
1361
1985
|
for (let c = 0; c < e; c++) {
|
|
1362
|
-
const
|
|
1363
|
-
|
|
1364
|
-
const u = new
|
|
1986
|
+
const a = new h(s, n), m = (c - (e - 1) / 2) * 0.8;
|
|
1987
|
+
a.position.set(m, 1, 0);
|
|
1988
|
+
const u = new R(0.099, 0.099, 0.5, 16, !1), f = t[c % t.length], p = new w({
|
|
1365
1989
|
color: f,
|
|
1366
1990
|
emissive: f,
|
|
1367
1991
|
emissiveIntensity: 0.5,
|
|
1368
1992
|
transparent: !0,
|
|
1369
1993
|
opacity: 0.6
|
|
1370
|
-
}), d = new h(u,
|
|
1371
|
-
d.position.set(0, -0.25, 0),
|
|
1994
|
+
}), d = new h(u, p);
|
|
1995
|
+
d.position.set(0, -0.25, 0), a.add(d), i.add(a);
|
|
1372
1996
|
}
|
|
1373
|
-
this.add(
|
|
1997
|
+
this.add(i);
|
|
1374
1998
|
}
|
|
1375
1999
|
}
|
|
1376
|
-
class
|
|
2000
|
+
class Ft extends h {
|
|
1377
2001
|
constructor() {
|
|
1378
2002
|
super();
|
|
1379
|
-
const e = new
|
|
2003
|
+
const e = new Ne(), t = new K({
|
|
1380
2004
|
color: 5597999,
|
|
1381
2005
|
roughness: 0.1,
|
|
1382
2006
|
transmission: 0.9,
|
|
@@ -1389,27 +2013,27 @@ class Tt extends h {
|
|
|
1389
2013
|
this.geometry = e, this.material = t;
|
|
1390
2014
|
}
|
|
1391
2015
|
}
|
|
1392
|
-
class
|
|
2016
|
+
class Fe extends _ {
|
|
1393
2017
|
constructor(e = 5, t = 0.5, o = 1) {
|
|
1394
2018
|
super();
|
|
1395
|
-
const
|
|
2019
|
+
const r = Math.PI * 2 / e, i = r / 2, s = r / 4;
|
|
1396
2020
|
this.moveTo(Math.cos(0) * o, -Math.sin(0) * o);
|
|
1397
|
-
for (let
|
|
1398
|
-
let c = Math.cos(
|
|
1399
|
-
this.quadraticCurveTo(c,
|
|
2021
|
+
for (let n = 1; n <= e; ++n) {
|
|
2022
|
+
let c = Math.cos(r * n - s * 3) * (t / Math.cos(s)), a = -Math.sin(r * n - s * 3) * (t / Math.cos(s)), m = Math.cos(r * n - i) * t, u = -Math.sin(r * n - i) * t;
|
|
2023
|
+
this.quadraticCurveTo(c, a, m, u), c = Math.cos(r * n - s) * (t / Math.cos(s)), a = -Math.sin(r * n - s) * (t / Math.cos(s)), m = Math.cos(r * n) * o, u = -Math.sin(r * n) * o, this.quadraticCurveTo(c, a, m, u);
|
|
1400
2024
|
}
|
|
1401
2025
|
this.closePath();
|
|
1402
2026
|
}
|
|
1403
2027
|
}
|
|
1404
|
-
class
|
|
1405
|
-
constructor(e = 5, t = 0.5, o = 1,
|
|
2028
|
+
class Ut extends h {
|
|
2029
|
+
constructor(e = 5, t = 0.5, o = 1, r = 0.25) {
|
|
1406
2030
|
super();
|
|
1407
|
-
const
|
|
1408
|
-
depth:
|
|
1409
|
-
bevelEnabled:
|
|
2031
|
+
const i = new Fe(e, t, o), s = new L(i, {
|
|
2032
|
+
depth: r,
|
|
2033
|
+
bevelEnabled: r > 0,
|
|
1410
2034
|
bevelThickness: 0,
|
|
1411
2035
|
bevelSize: 0
|
|
1412
|
-
}),
|
|
2036
|
+
}), n = new w({
|
|
1413
2037
|
color: 16776960,
|
|
1414
2038
|
emissive: 16766720,
|
|
1415
2039
|
emissiveIntensity: 0.25,
|
|
@@ -1417,44 +2041,44 @@ class At extends h {
|
|
|
1417
2041
|
roughness: 0.3,
|
|
1418
2042
|
flatShading: !0
|
|
1419
2043
|
});
|
|
1420
|
-
s.center(), this.geometry = s, this.material =
|
|
2044
|
+
s.center(), this.geometry = s, this.material = n;
|
|
1421
2045
|
}
|
|
1422
2046
|
}
|
|
1423
|
-
class
|
|
1424
|
-
constructor(e = 5, t = 0.5, o = 1,
|
|
2047
|
+
class Ue extends _ {
|
|
2048
|
+
constructor(e = 5, t = 0.5, o = 1, r = 5, i = 0.25) {
|
|
1425
2049
|
super();
|
|
1426
|
-
const s = Math.PI * 2 / e,
|
|
2050
|
+
const s = Math.PI * 2 / e, n = s / 4;
|
|
1427
2051
|
this.moveTo(Math.cos(0) * o, -Math.sin(0) * o);
|
|
1428
2052
|
for (let c = 1; c <= e; ++c)
|
|
1429
|
-
this.lineTo(Math.cos(s * c -
|
|
1430
|
-
if (this.closePath(),
|
|
1431
|
-
const c = new
|
|
1432
|
-
c.moveTo(Math.cos(0) *
|
|
1433
|
-
for (let m = 1; m <
|
|
1434
|
-
c.lineTo(Math.cos(
|
|
1435
|
-
c.lineTo(Math.cos(0) *
|
|
2053
|
+
this.lineTo(Math.cos(s * c - n * 3) * t, -Math.sin(s * c - n * 3) * t), this.lineTo(Math.cos(s * c - n * 2) * t, -Math.sin(s * c - n * 2) * t), this.lineTo(Math.cos(s * c - n) * o, -Math.sin(s * c - n) * o), this.lineTo(Math.cos(s * c) * o, -Math.sin(s * c) * o);
|
|
2054
|
+
if (this.closePath(), i > 0 && r > 2) {
|
|
2055
|
+
const c = new de(), a = Math.PI * 2 / r;
|
|
2056
|
+
c.moveTo(Math.cos(0) * i, -Math.sin(0) * i);
|
|
2057
|
+
for (let m = 1; m < r; ++m)
|
|
2058
|
+
c.lineTo(Math.cos(a * m) * i, -Math.sin(a * m) * i);
|
|
2059
|
+
c.lineTo(Math.cos(0) * i, -Math.sin(0) * i), this.holes.push(c);
|
|
1436
2060
|
}
|
|
1437
2061
|
}
|
|
1438
2062
|
}
|
|
1439
|
-
class
|
|
1440
|
-
constructor(e = 5, t = 0.5, o = 1,
|
|
2063
|
+
class zt extends h {
|
|
2064
|
+
constructor(e = 5, t = 0.5, o = 1, r = 5, i = 0.25, s = 0.25) {
|
|
1441
2065
|
super();
|
|
1442
|
-
const
|
|
2066
|
+
const n = new Ue(e, t, o, r, i), c = new L(n, {
|
|
1443
2067
|
depth: s,
|
|
1444
2068
|
bevelEnabled: s > 0,
|
|
1445
2069
|
bevelThickness: 0,
|
|
1446
2070
|
bevelSize: 0
|
|
1447
|
-
}),
|
|
2071
|
+
}), a = new w({
|
|
1448
2072
|
color: 11184810,
|
|
1449
2073
|
metalness: 0.8,
|
|
1450
2074
|
roughness: 0.2,
|
|
1451
2075
|
reflectivity: 0.5
|
|
1452
2076
|
});
|
|
1453
|
-
c.center(), this.geometry = c, this.material =
|
|
2077
|
+
c.center(), this.geometry = c, this.material = a;
|
|
1454
2078
|
}
|
|
1455
2079
|
}
|
|
1456
|
-
class
|
|
1457
|
-
constructor(e = 1, t = 2.1, o = 1.4,
|
|
2080
|
+
class ze extends _ {
|
|
2081
|
+
constructor(e = 1, t = 2.1, o = 1.4, r = 1.6) {
|
|
1458
2082
|
super(), this.moveTo(0, o * e / 3), this.bezierCurveTo(
|
|
1459
2083
|
-t * 0.375 * e,
|
|
1460
2084
|
o * e,
|
|
@@ -1463,7 +2087,7 @@ class Be extends U {
|
|
|
1463
2087
|
o * e / 3,
|
|
1464
2088
|
// Control point 2 for the left side of the heart
|
|
1465
2089
|
0,
|
|
1466
|
-
-
|
|
2090
|
+
-r * e
|
|
1467
2091
|
// Bottom tip of the heart, controlled by `tipDepth`
|
|
1468
2092
|
), this.bezierCurveTo(
|
|
1469
2093
|
t * e,
|
|
@@ -1478,15 +2102,15 @@ class Be extends U {
|
|
|
1478
2102
|
);
|
|
1479
2103
|
}
|
|
1480
2104
|
}
|
|
1481
|
-
class
|
|
1482
|
-
constructor(e = 1, t = 1, o = 1,
|
|
2105
|
+
class _t extends h {
|
|
2106
|
+
constructor(e = 1, t = 1, o = 1, r = 10, i = 0.25) {
|
|
1483
2107
|
super();
|
|
1484
|
-
const s = new
|
|
1485
|
-
depth:
|
|
1486
|
-
bevelEnabled:
|
|
2108
|
+
const s = new ze(e, t, o, r), n = new L(s, {
|
|
2109
|
+
depth: i,
|
|
2110
|
+
bevelEnabled: i > 0,
|
|
1487
2111
|
bevelThickness: 0,
|
|
1488
2112
|
bevelSize: 0
|
|
1489
|
-
}), c = new
|
|
2113
|
+
}), c = new w({
|
|
1490
2114
|
color: 12986408,
|
|
1491
2115
|
emissive: 12981270,
|
|
1492
2116
|
emissiveIntensity: 0.25,
|
|
@@ -1494,28 +2118,28 @@ class Et extends h {
|
|
|
1494
2118
|
roughness: 0.3,
|
|
1495
2119
|
flatShading: !0
|
|
1496
2120
|
});
|
|
1497
|
-
|
|
2121
|
+
n.center(), this.geometry = n, this.material = c;
|
|
1498
2122
|
}
|
|
1499
2123
|
}
|
|
1500
|
-
class
|
|
2124
|
+
class _e extends _ {
|
|
1501
2125
|
constructor(e = 5, t = 0.5, o = 1) {
|
|
1502
2126
|
super();
|
|
1503
|
-
const
|
|
2127
|
+
const r = Math.PI * 2 / e, i = r / 2;
|
|
1504
2128
|
this.moveTo(Math.cos(0) * o, Math.sin(0) * o);
|
|
1505
2129
|
for (let s = 1; s <= e; ++s)
|
|
1506
|
-
this.lineTo(Math.cos(
|
|
2130
|
+
this.lineTo(Math.cos(r * s - i) * t, Math.sin(r * s - i) * t), this.lineTo(Math.cos(r * s) * o, Math.sin(r * s) * o);
|
|
1507
2131
|
this.closePath();
|
|
1508
2132
|
}
|
|
1509
2133
|
}
|
|
1510
|
-
class
|
|
1511
|
-
constructor(e = 5, t = 0.5, o = 1,
|
|
2134
|
+
class Lt extends h {
|
|
2135
|
+
constructor(e = 5, t = 0.5, o = 1, r = 0.25) {
|
|
1512
2136
|
super();
|
|
1513
|
-
const
|
|
1514
|
-
depth:
|
|
1515
|
-
bevelEnabled:
|
|
2137
|
+
const i = new _e(e, t, o), s = new L(i, {
|
|
2138
|
+
depth: r,
|
|
2139
|
+
bevelEnabled: r > 0,
|
|
1516
2140
|
bevelThickness: 0,
|
|
1517
2141
|
bevelSize: 0
|
|
1518
|
-
}),
|
|
2142
|
+
}), n = new w({
|
|
1519
2143
|
color: 16776960,
|
|
1520
2144
|
emissive: 16766720,
|
|
1521
2145
|
emissiveIntensity: 0.25,
|
|
@@ -1523,49 +2147,123 @@ class Ct extends h {
|
|
|
1523
2147
|
roughness: 0.3,
|
|
1524
2148
|
flatShading: !0
|
|
1525
2149
|
});
|
|
1526
|
-
s.center(), this.geometry = s, this.material =
|
|
2150
|
+
s.center(), this.geometry = s, this.material = n;
|
|
1527
2151
|
}
|
|
1528
2152
|
}
|
|
1529
|
-
class
|
|
2153
|
+
class qt extends h {
|
|
1530
2154
|
constructor({
|
|
1531
2155
|
trunkRadiusTop: e = 0.25,
|
|
1532
2156
|
trunkRadiusBottom: t = 0.4,
|
|
1533
2157
|
trunkHeight: o = 2.5,
|
|
1534
|
-
trunkSegments:
|
|
1535
|
-
trunkColor:
|
|
2158
|
+
trunkSegments: r = 14,
|
|
2159
|
+
trunkColor: i = 9127187,
|
|
1536
2160
|
leafSize: s = 0.8,
|
|
1537
|
-
leafCount:
|
|
2161
|
+
leafCount: n = 6,
|
|
1538
2162
|
leafDetail: c = 0,
|
|
1539
|
-
leafSpreadRadius:
|
|
2163
|
+
leafSpreadRadius: a = 1.5,
|
|
1540
2164
|
leafColor: m = 2263842
|
|
1541
2165
|
} = {}) {
|
|
1542
2166
|
super();
|
|
1543
|
-
const u = new
|
|
2167
|
+
const u = new Ce({
|
|
1544
2168
|
trunkRadiusTop: e,
|
|
1545
2169
|
trunkRadiusBottom: t,
|
|
1546
2170
|
trunkHeight: o,
|
|
1547
|
-
trunkSegments:
|
|
1548
|
-
trunkColor:
|
|
2171
|
+
trunkSegments: r,
|
|
2172
|
+
trunkColor: i,
|
|
1549
2173
|
leafSize: s,
|
|
1550
|
-
leafCount:
|
|
2174
|
+
leafCount: n,
|
|
1551
2175
|
leafDetail: c,
|
|
1552
|
-
leafSpreadRadius:
|
|
2176
|
+
leafSpreadRadius: a,
|
|
1553
2177
|
leafColor: m
|
|
1554
|
-
}), f = new
|
|
1555
|
-
color:
|
|
2178
|
+
}), f = new w({
|
|
2179
|
+
color: i,
|
|
1556
2180
|
roughness: 0.9,
|
|
1557
2181
|
metalness: 0,
|
|
1558
2182
|
flatShading: !0
|
|
1559
|
-
}),
|
|
2183
|
+
}), p = new w({
|
|
1560
2184
|
color: m,
|
|
1561
2185
|
roughness: 0.8,
|
|
1562
2186
|
metalness: 0,
|
|
1563
2187
|
flatShading: !0
|
|
1564
2188
|
});
|
|
1565
|
-
this.geometry = u, this.material = [f,
|
|
2189
|
+
this.geometry = u, this.material = [f, p];
|
|
1566
2190
|
}
|
|
1567
2191
|
}
|
|
1568
|
-
|
|
2192
|
+
function Ot(l, { time: e = 0, waveFrequency: t = 0.2, waveAmplitude: o = 0.5 } = {}) {
|
|
2193
|
+
l.onBeforeCompile = (r) => {
|
|
2194
|
+
r.uniforms.time = { value: e }, r.uniforms.waveFrequency = { value: t }, r.uniforms.waveAmplitude = { value: o }, r.vertexShader = `
|
|
2195
|
+
uniform float time;
|
|
2196
|
+
uniform float waveFrequency;
|
|
2197
|
+
uniform float waveAmplitude;
|
|
2198
|
+
|
|
2199
|
+
vec3 waterDisplacement(vec3 position, vec3 normal) {
|
|
2200
|
+
vec3 displaced = position;
|
|
2201
|
+
|
|
2202
|
+
// Displace along the normal direction instead of local y-axis
|
|
2203
|
+
displaced += normal * (sin(position.x * waveFrequency + time) * waveAmplitude);
|
|
2204
|
+
displaced += normal * (cos(position.z * waveFrequency + time) * waveAmplitude);
|
|
2205
|
+
|
|
2206
|
+
return displaced;
|
|
2207
|
+
}
|
|
2208
|
+
` + r.vertexShader, r.vertexShader = r.vertexShader.replace(
|
|
2209
|
+
"#include <begin_vertex>",
|
|
2210
|
+
`
|
|
2211
|
+
vec3 transformed = waterDisplacement(position, normal);
|
|
2212
|
+
`
|
|
2213
|
+
), l.userData.shader = r;
|
|
2214
|
+
};
|
|
2215
|
+
}
|
|
2216
|
+
function Vt(l, e) {
|
|
2217
|
+
l.userData.shader && (l.userData.shader.uniforms.time.value += e);
|
|
2218
|
+
}
|
|
2219
|
+
function Xt(l, { time: e = 0, intensity: t = 1, direction: o = C.XYZ, scale: r = 10 } = {}) {
|
|
2220
|
+
l.onBeforeCompile = (i) => {
|
|
2221
|
+
i.uniforms.time = { value: e }, i.uniforms.direction = { value: o }, i.uniforms.intensity = { value: t }, i.uniforms.scale = { value: r }, i.vertexShader = `
|
|
2222
|
+
uniform float time;
|
|
2223
|
+
uniform vec3 direction;
|
|
2224
|
+
uniform float intensity;
|
|
2225
|
+
uniform float scale;
|
|
2226
|
+
|
|
2227
|
+
float mod289(float x) { return x - floor(x * (1.0 / 289.0)) * 289.0; }
|
|
2228
|
+
vec4 mod289(vec4 x) { return x - floor(x * (1.0 / 289.0)) * 289.0; }
|
|
2229
|
+
vec4 perm(vec4 x) { return mod289(((x * 34.0) + 1.0) * x); }
|
|
2230
|
+
|
|
2231
|
+
float noise(vec3 p) {
|
|
2232
|
+
vec3 a = floor(p);
|
|
2233
|
+
vec3 d = p - a;
|
|
2234
|
+
d = d * d * (3.0 - 2.0 * d);
|
|
2235
|
+
|
|
2236
|
+
vec4 b = a.xxyy + vec4(0.0, 1.0, 0.0, 1.0);
|
|
2237
|
+
vec4 k1 = perm(b.xyxy);
|
|
2238
|
+
vec4 k2 = perm(k1.xyxy + b.zzww);
|
|
2239
|
+
|
|
2240
|
+
vec4 c = k2 + a.zzzz;
|
|
2241
|
+
vec4 k3 = perm(c);
|
|
2242
|
+
vec4 k4 = perm(c + 1.0);
|
|
2243
|
+
|
|
2244
|
+
vec4 o1 = fract(k3 * (1.0 / 41.0));
|
|
2245
|
+
vec4 o2 = fract(k4 * (1.0 / 41.0));
|
|
2246
|
+
|
|
2247
|
+
vec4 o3 = o2 * d.z + o1 * (1.0 - d.z);
|
|
2248
|
+
vec2 o4 = o3.yw * d.x + o3.xz * (1.0 - d.x);
|
|
2249
|
+
|
|
2250
|
+
return o4.y * d.y + o4.x * (1.0 - d.y);
|
|
2251
|
+
}
|
|
2252
|
+
` + i.vertexShader, i.vertexShader = i.vertexShader.replace(
|
|
2253
|
+
"#include <begin_vertex>",
|
|
2254
|
+
`
|
|
2255
|
+
vec3 transformed = vec3(position);
|
|
2256
|
+
float n = noise(transformed * scale + time);
|
|
2257
|
+
transformed += normalize(direction) * n * intensity;
|
|
2258
|
+
vec3 transformedNormal = normal;
|
|
2259
|
+
`
|
|
2260
|
+
), l.userData.shader = i;
|
|
2261
|
+
};
|
|
2262
|
+
}
|
|
2263
|
+
function Yt(l, e) {
|
|
2264
|
+
l.userData.shader && (l.userData.shader.uniforms.time.value += e);
|
|
2265
|
+
}
|
|
2266
|
+
const te = {
|
|
1569
2267
|
uniforms: {},
|
|
1570
2268
|
vertexShader: `
|
|
1571
2269
|
varying vec3 vPosition;
|
|
@@ -1583,7 +2281,7 @@ const W = {
|
|
|
1583
2281
|
gl_FragColor = vec4(mix(bottomColor, topColor, y), 1.0);
|
|
1584
2282
|
}
|
|
1585
2283
|
`
|
|
1586
|
-
},
|
|
2284
|
+
}, Le = {
|
|
1587
2285
|
uniforms: {
|
|
1588
2286
|
tDiffuse: { value: null },
|
|
1589
2287
|
opacity: { value: 1 }
|
|
@@ -1604,10 +2302,10 @@ const W = {
|
|
|
1604
2302
|
gl_FragColor = opacity * texel;
|
|
1605
2303
|
}
|
|
1606
2304
|
`
|
|
1607
|
-
},
|
|
2305
|
+
}, H = {
|
|
1608
2306
|
uniforms: {
|
|
1609
|
-
topColor: { value: new
|
|
1610
|
-
bottomColor: { value: new
|
|
2307
|
+
topColor: { value: new $(51) },
|
|
2308
|
+
bottomColor: { value: new $(17) },
|
|
1611
2309
|
offset: { value: 33 },
|
|
1612
2310
|
exponent: { value: 0.6 }
|
|
1613
2311
|
},
|
|
@@ -1631,191 +2329,151 @@ const W = {
|
|
|
1631
2329
|
}
|
|
1632
2330
|
`
|
|
1633
2331
|
};
|
|
1634
|
-
|
|
1635
|
-
i.onBeforeCompile = (r) => {
|
|
1636
|
-
r.uniforms.time = { value: e }, r.uniforms.direction = { value: o }, r.uniforms.intensity = { value: t }, r.uniforms.scale = { value: n }, r.vertexShader = `
|
|
1637
|
-
uniform float time;
|
|
1638
|
-
uniform vec3 direction;
|
|
1639
|
-
uniform float intensity;
|
|
1640
|
-
uniform float scale;
|
|
1641
|
-
|
|
1642
|
-
float mod289(float x) { return x - floor(x * (1.0 / 289.0)) * 289.0; }
|
|
1643
|
-
vec4 mod289(vec4 x) { return x - floor(x * (1.0 / 289.0)) * 289.0; }
|
|
1644
|
-
vec4 perm(vec4 x) { return mod289(((x * 34.0) + 1.0) * x); }
|
|
1645
|
-
|
|
1646
|
-
float noise(vec3 p) {
|
|
1647
|
-
vec3 a = floor(p);
|
|
1648
|
-
vec3 d = p - a;
|
|
1649
|
-
d = d * d * (3.0 - 2.0 * d);
|
|
1650
|
-
|
|
1651
|
-
vec4 b = a.xxyy + vec4(0.0, 1.0, 0.0, 1.0);
|
|
1652
|
-
vec4 k1 = perm(b.xyxy);
|
|
1653
|
-
vec4 k2 = perm(k1.xyxy + b.zzww);
|
|
1654
|
-
|
|
1655
|
-
vec4 c = k2 + a.zzzz;
|
|
1656
|
-
vec4 k3 = perm(c);
|
|
1657
|
-
vec4 k4 = perm(c + 1.0);
|
|
1658
|
-
|
|
1659
|
-
vec4 o1 = fract(k3 * (1.0 / 41.0));
|
|
1660
|
-
vec4 o2 = fract(k4 * (1.0 / 41.0));
|
|
1661
|
-
|
|
1662
|
-
vec4 o3 = o2 * d.z + o1 * (1.0 - d.z);
|
|
1663
|
-
vec2 o4 = o3.yw * d.x + o3.xz * (1.0 - d.x);
|
|
1664
|
-
|
|
1665
|
-
return o4.y * d.y + o4.x * (1.0 - d.y);
|
|
1666
|
-
}
|
|
1667
|
-
` + r.vertexShader, r.vertexShader = r.vertexShader.replace(
|
|
1668
|
-
"#include <begin_vertex>",
|
|
1669
|
-
`
|
|
1670
|
-
vec3 transformed = vec3(position);
|
|
1671
|
-
float n = noise(transformed * scale + time);
|
|
1672
|
-
transformed += normalize(direction) * n * intensity;
|
|
1673
|
-
vec3 transformedNormal = normal;
|
|
1674
|
-
`
|
|
1675
|
-
), i.userData.shader = r;
|
|
1676
|
-
};
|
|
1677
|
-
}
|
|
1678
|
-
function zt(i, e) {
|
|
1679
|
-
i.userData.shader && (i.userData.shader.uniforms.time.value += e);
|
|
1680
|
-
}
|
|
1681
|
-
class Ft extends h {
|
|
2332
|
+
class Zt extends h {
|
|
1682
2333
|
constructor(e = 1e3) {
|
|
1683
|
-
super(), this.geometry = new
|
|
1684
|
-
vertexShader:
|
|
1685
|
-
fragmentShader:
|
|
1686
|
-
side:
|
|
2334
|
+
super(), this.geometry = new g(e, e, e), this.material = new j({
|
|
2335
|
+
vertexShader: te.vertexShader,
|
|
2336
|
+
fragmentShader: te.fragmentShader,
|
|
2337
|
+
side: ne
|
|
1687
2338
|
});
|
|
1688
2339
|
}
|
|
1689
2340
|
}
|
|
1690
|
-
class
|
|
2341
|
+
class Dt extends h {
|
|
1691
2342
|
constructor(e = 1e3) {
|
|
1692
|
-
super(), this.geometry = new
|
|
1693
|
-
vertexShader:
|
|
1694
|
-
fragmentShader:
|
|
1695
|
-
uniforms:
|
|
1696
|
-
side:
|
|
2343
|
+
super(), this.geometry = new T(e, 32, 15), this.material = new j({
|
|
2344
|
+
vertexShader: H.vertexShader,
|
|
2345
|
+
fragmentShader: H.fragmentShader,
|
|
2346
|
+
uniforms: H.uniforms,
|
|
2347
|
+
side: ne
|
|
1697
2348
|
});
|
|
1698
2349
|
}
|
|
1699
2350
|
}
|
|
1700
|
-
class
|
|
1701
|
-
constructor(e = Math.PI * 0.49, t = 2 * Math.PI * 0.25, o = 10,
|
|
2351
|
+
class Ht extends h {
|
|
2352
|
+
constructor(e = Math.PI * 0.49, t = 2 * Math.PI * 0.25, o = 10, r = 2, i = 5e-3, s = 0.8) {
|
|
1702
2353
|
super();
|
|
1703
|
-
const
|
|
1704
|
-
|
|
1705
|
-
const c =
|
|
1706
|
-
c.turbidity.value = o, c.rayleigh.value =
|
|
2354
|
+
const n = new ve();
|
|
2355
|
+
n.scale.setScalar(45e4), this.add(n);
|
|
2356
|
+
const c = n.material.uniforms;
|
|
2357
|
+
c.turbidity.value = o, c.rayleigh.value = r, c.mieCoefficient.value = i, c.mieDirectionalG.value = s, this.skyUniforms = c, this.sunPosition(e, t);
|
|
1707
2358
|
}
|
|
1708
2359
|
sunPosition(e, t) {
|
|
1709
|
-
const o = new
|
|
1710
|
-
o.setFromSphericalCoords(1, e, t),
|
|
2360
|
+
const o = new M(), r = this.skyUniforms;
|
|
2361
|
+
o.setFromSphericalCoords(1, e, t), r.sunPosition.value.copy(o);
|
|
1711
2362
|
}
|
|
1712
2363
|
}
|
|
1713
|
-
const
|
|
1714
|
-
const e = new Uint8Array(4 *
|
|
1715
|
-
for (let o = 0; o <
|
|
1716
|
-
const
|
|
1717
|
-
e[
|
|
1718
|
-
}
|
|
1719
|
-
const t = new
|
|
1720
|
-
return t.wrapS =
|
|
2364
|
+
const Rt = (l) => {
|
|
2365
|
+
const e = new Uint8Array(4 * l * l);
|
|
2366
|
+
for (let o = 0; o < l * l; o++) {
|
|
2367
|
+
const r = o * 4, i = (o % l ^ Math.floor(o / l)) & 1 ? 255 : 0;
|
|
2368
|
+
e[r] = i, e[r + 1] = i, e[r + 2] = i, e[r + 3] = 255;
|
|
2369
|
+
}
|
|
2370
|
+
const t = new pe(e, l, l, we, ye);
|
|
2371
|
+
return t.wrapS = W, t.wrapT = W, t.minFilter = xe, t.needsUpdate = !0, t;
|
|
1721
2372
|
};
|
|
1722
|
-
class
|
|
2373
|
+
class Qt {
|
|
1723
2374
|
static dispose(e) {
|
|
1724
2375
|
e == null || e.traverse((t) => {
|
|
1725
2376
|
t.geometry && t.geometry.dispose(), t.material && (Array.isArray(t.material) ? t.material.forEach((o) => o.dispose()) : t.material.dispose());
|
|
1726
2377
|
});
|
|
1727
2378
|
}
|
|
1728
|
-
static fadeBetween(e, t, o,
|
|
1729
|
-
const s = new
|
|
1730
|
-
s.addPass(
|
|
1731
|
-
const c = new
|
|
2379
|
+
static fadeBetween(e, t, o, r, i = 1) {
|
|
2380
|
+
const s = new ge(e), n = new ee(o, t);
|
|
2381
|
+
s.addPass(n);
|
|
2382
|
+
const c = new Se(Le);
|
|
1732
2383
|
c.uniforms.opacity.value = 1, s.addPass(c);
|
|
1733
|
-
let
|
|
2384
|
+
let a = null;
|
|
1734
2385
|
function m(f) {
|
|
1735
|
-
|
|
1736
|
-
const d = (f -
|
|
1737
|
-
c.uniforms.opacity.value = Math.max(1 - d, 0), d < 1 ? (s.render(), requestAnimationFrame(m)) : (s.passes[0] = new
|
|
2386
|
+
a || (a = f);
|
|
2387
|
+
const d = (f - a) / 1e3 / i;
|
|
2388
|
+
c.uniforms.opacity.value = Math.max(1 - d, 0), d < 1 ? (s.render(), requestAnimationFrame(m)) : (s.passes[0] = new ee(r, t), a = null, requestAnimationFrame(u));
|
|
1738
2389
|
}
|
|
1739
2390
|
function u(f) {
|
|
1740
|
-
|
|
1741
|
-
const d = (f -
|
|
2391
|
+
a || (a = f);
|
|
2392
|
+
const d = (f - a) / 1e3 / i;
|
|
1742
2393
|
c.uniforms.opacity.value = Math.min(d, 1), d < 1 && (s.render(), requestAnimationFrame(u));
|
|
1743
2394
|
}
|
|
1744
2395
|
requestAnimationFrame(m);
|
|
1745
2396
|
}
|
|
1746
2397
|
}
|
|
1747
2398
|
export {
|
|
1748
|
-
|
|
1749
|
-
|
|
1750
|
-
|
|
1751
|
-
|
|
1752
|
-
|
|
1753
|
-
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1764
|
-
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
|
|
1768
|
-
|
|
1769
|
-
|
|
1770
|
-
|
|
1771
|
-
|
|
1772
|
-
|
|
1773
|
-
|
|
1774
|
-
|
|
1775
|
-
|
|
1776
|
-
|
|
1777
|
-
|
|
1778
|
-
|
|
1779
|
-
|
|
1780
|
-
|
|
1781
|
-
|
|
1782
|
-
|
|
1783
|
-
|
|
1784
|
-
|
|
1785
|
-
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
|
-
|
|
1792
|
-
|
|
1793
|
-
|
|
1794
|
-
|
|
1795
|
-
|
|
1796
|
-
|
|
1797
|
-
|
|
1798
|
-
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
-
|
|
1819
|
-
|
|
2399
|
+
gt as Beaker,
|
|
2400
|
+
Be as BeakerGeometry,
|
|
2401
|
+
We as BifurcatedStaircaseGeometry,
|
|
2402
|
+
ct as BoneGeometry,
|
|
2403
|
+
lt as Book,
|
|
2404
|
+
be as BookGeometry,
|
|
2405
|
+
St as Bottle,
|
|
2406
|
+
$e as Bubbling,
|
|
2407
|
+
bt as BunsenBurner,
|
|
2408
|
+
Ut as Burst,
|
|
2409
|
+
Fe as BurstShape,
|
|
2410
|
+
wt as Candle,
|
|
2411
|
+
mt as CrossHeadstone,
|
|
2412
|
+
Ge as CrossHeadstoneGeometry,
|
|
2413
|
+
Zt as DaySkybox,
|
|
2414
|
+
pt as Desk,
|
|
2415
|
+
et as DioramaGeometry,
|
|
2416
|
+
C as Direction,
|
|
2417
|
+
Je as Easing,
|
|
2418
|
+
Gt as ElectricPanel,
|
|
2419
|
+
O as Falloff,
|
|
2420
|
+
nt as FenceColumn,
|
|
2421
|
+
It as Flask,
|
|
2422
|
+
zt as Gear,
|
|
2423
|
+
Ue as GearShape,
|
|
2424
|
+
_t as Heart,
|
|
2425
|
+
ze as HeartShape,
|
|
2426
|
+
tt as LShapedStaircaseGeometry,
|
|
2427
|
+
yt as Lantern,
|
|
2428
|
+
Pt as LeverPanel,
|
|
2429
|
+
ut as Mausoleum,
|
|
2430
|
+
At as Microscope,
|
|
2431
|
+
it as Moon,
|
|
2432
|
+
kt as MortarAndPestle,
|
|
2433
|
+
Ee as MortarGeometry,
|
|
2434
|
+
xt as MossyRocks,
|
|
2435
|
+
Dt as NightSkybox,
|
|
2436
|
+
ft as ObeliskHeadstone,
|
|
2437
|
+
Ie as ObeliskHeadstoneGeometry,
|
|
2438
|
+
Mt as Rock,
|
|
2439
|
+
Te as RockGeometry,
|
|
2440
|
+
vt as Rocks,
|
|
2441
|
+
ht as RoundedHeadstone,
|
|
2442
|
+
Pe as RoundedHeadstoneGeometry,
|
|
2443
|
+
Qt as SceneUtils,
|
|
2444
|
+
rt as SimpleLeafGeometry,
|
|
2445
|
+
ot as SpiralStaircaseGeometry,
|
|
2446
|
+
Tt as SpiralTube,
|
|
2447
|
+
dt as SquareHeadstone,
|
|
2448
|
+
Ae as SquareHeadstoneGeometry,
|
|
2449
|
+
st as StaircaseGeometry,
|
|
2450
|
+
Bt as Stand,
|
|
2451
|
+
Lt as Star,
|
|
2452
|
+
_e as StarShape,
|
|
2453
|
+
Et as TeslaCoil,
|
|
2454
|
+
Nt as TestTube,
|
|
2455
|
+
R as TestTubeGeometry,
|
|
2456
|
+
Ct as TestTubeRack,
|
|
2457
|
+
qt as Tree,
|
|
2458
|
+
Ce as TreeGeometry,
|
|
2459
|
+
Ht as TwilightSkybox,
|
|
2460
|
+
Ft as WineBottle,
|
|
2461
|
+
Ne as WineBottleGeometry,
|
|
2462
|
+
at as WroughtIronBarGeometry,
|
|
2463
|
+
Xt as addNoiseDisplacement,
|
|
2464
|
+
Ot as addWaterDisplacement,
|
|
2465
|
+
Rt as checkerboardTexture,
|
|
2466
|
+
te as daySkyShader,
|
|
2467
|
+
De as displacementBrush,
|
|
2468
|
+
Le as fadeShader,
|
|
2469
|
+
He as flattenBrush,
|
|
2470
|
+
H as nightSkyShader,
|
|
2471
|
+
Re as noiseBrush,
|
|
2472
|
+
ke as randomTransformVertices,
|
|
2473
|
+
Qe as smoothBrush,
|
|
2474
|
+
je as spikeBrush,
|
|
2475
|
+
Ke as twistBrush,
|
|
2476
|
+
Yt as updateNoiseDisplacementTime,
|
|
2477
|
+
Vt as updateWaterDisplacementTime
|
|
1820
2478
|
};
|
|
1821
2479
|
//# sourceMappingURL=index.es.js.map
|