@fi4f/hg 0.0.11 → 0.0.13
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/README.md +57 -0
- package/dist/asset.d.ts +46 -0
- package/dist/asset.d.ts.map +1 -0
- package/dist/{core/asset.js → asset.js} +5 -30
- package/dist/asset.js.map +1 -0
- package/dist/{core/cache.d.ts → cache.d.ts} +17 -7
- package/dist/cache.d.ts.map +1 -0
- package/dist/{core/cache.js → cache.js} +5 -6
- package/dist/cache.js.map +1 -0
- package/dist/canvas.d.ts +4 -0
- package/dist/canvas.d.ts.map +1 -0
- package/dist/canvas.js +12 -0
- package/dist/canvas.js.map +1 -0
- package/dist/el.d.ts.map +1 -0
- package/dist/el.js.map +1 -0
- package/dist/event.d.ts.map +1 -0
- package/dist/event.js.map +1 -0
- package/dist/hg.d.ts +13 -13
- package/dist/hg.d.ts.map +1 -1
- package/dist/hg.js +14 -14
- package/dist/hg.js.map +1 -1
- package/dist/index.d.ts +24 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js.map +1 -0
- package/dist/matrix2.d.ts +152 -0
- package/dist/matrix2.d.ts.map +1 -0
- package/dist/matrix2.js +262 -0
- package/dist/matrix2.js.map +1 -0
- package/dist/matrix3.d.ts +196 -0
- package/dist/matrix3.d.ts.map +1 -0
- package/dist/matrix3.js +352 -0
- package/dist/matrix3.js.map +1 -0
- package/dist/matrix4.d.ts +253 -0
- package/dist/matrix4.d.ts.map +1 -0
- package/dist/matrix4.js +465 -0
- package/dist/matrix4.js.map +1 -0
- package/dist/{core/scene.d.ts → scene.d.ts} +2 -3
- package/dist/scene.d.ts.map +1 -0
- package/dist/scene.js.map +1 -0
- package/dist/sprite.d.ts.map +1 -0
- package/dist/sprite.js.map +1 -0
- package/dist/stage.d.ts +100 -0
- package/dist/stage.d.ts.map +1 -0
- package/dist/stage.js +303 -0
- package/dist/stage.js.map +1 -0
- package/dist/vector2.d.ts +114 -0
- package/dist/vector2.d.ts.map +1 -0
- package/dist/vector2.js +168 -0
- package/dist/vector2.js.map +1 -0
- package/dist/vector3.d.ts +126 -0
- package/dist/vector3.d.ts.map +1 -0
- package/dist/vector3.js +190 -0
- package/dist/vector3.js.map +1 -0
- package/dist/vector4.d.ts +135 -0
- package/dist/vector4.d.ts.map +1 -0
- package/dist/vector4.js +209 -0
- package/dist/vector4.js.map +1 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js.map +1 -0
- package/package.json +1 -1
- package/dist/core/asset.d.ts +0 -71
- package/dist/core/asset.d.ts.map +0 -1
- package/dist/core/asset.js.map +0 -1
- package/dist/core/atlas.d.ts +0 -2
- package/dist/core/atlas.d.ts.map +0 -1
- package/dist/core/atlas.js +0 -2
- package/dist/core/atlas.js.map +0 -1
- package/dist/core/cache.d.ts.map +0 -1
- package/dist/core/cache.js.map +0 -1
- package/dist/core/event.d.ts.map +0 -1
- package/dist/core/event.js.map +0 -1
- package/dist/core/index.d.ts +0 -14
- package/dist/core/index.d.ts.map +0 -1
- package/dist/core/index.js.map +0 -1
- package/dist/core/scene.d.ts.map +0 -1
- package/dist/core/scene.js.map +0 -1
- package/dist/core/sprite.d.ts.map +0 -1
- package/dist/core/sprite.js.map +0 -1
- package/dist/core/stage.d.ts +0 -130
- package/dist/core/stage.d.ts.map +0 -1
- package/dist/core/stage.js +0 -308
- package/dist/core/stage.js.map +0 -1
- package/dist/math/el.d.ts.map +0 -1
- package/dist/math/el.js.map +0 -1
- package/dist/math/matrix2.d.ts +0 -70
- package/dist/math/matrix2.d.ts.map +0 -1
- package/dist/math/matrix2.js +0 -180
- package/dist/math/matrix2.js.map +0 -1
- package/dist/math/matrix3.d.ts +0 -108
- package/dist/math/matrix3.d.ts.map +0 -1
- package/dist/math/matrix3.js +0 -257
- package/dist/math/matrix3.js.map +0 -1
- package/dist/math/matrix4.d.ts +0 -158
- package/dist/math/matrix4.d.ts.map +0 -1
- package/dist/math/matrix4.js +0 -354
- package/dist/math/matrix4.js.map +0 -1
- package/dist/math/vector2.d.ts +0 -38
- package/dist/math/vector2.d.ts.map +0 -1
- package/dist/math/vector2.js +0 -67
- package/dist/math/vector2.js.map +0 -1
- package/dist/math/vector3.d.ts +0 -34
- package/dist/math/vector3.d.ts.map +0 -1
- package/dist/math/vector3.js +0 -74
- package/dist/math/vector3.js.map +0 -1
- package/dist/math/vector4.d.ts +0 -39
- package/dist/math/vector4.d.ts.map +0 -1
- package/dist/math/vector4.js +0 -81
- package/dist/math/vector4.js.map +0 -1
- package/dist/util/types.d.ts +0 -2
- package/dist/util/types.d.ts.map +0 -1
- package/dist/util/types.js +0 -2
- package/dist/util/types.js.map +0 -1
- package/dist/util/version.d.ts.map +0 -1
- package/dist/util/version.js.map +0 -1
- /package/dist/{math/el.d.ts → el.d.ts} +0 -0
- /package/dist/{math/el.js → el.js} +0 -0
- /package/dist/{core/event.d.ts → event.d.ts} +0 -0
- /package/dist/{core/event.js → event.js} +0 -0
- /package/dist/{core/index.js → index.js} +0 -0
- /package/dist/{core/scene.js → scene.js} +0 -0
- /package/dist/{core/sprite.d.ts → sprite.d.ts} +0 -0
- /package/dist/{core/sprite.js → sprite.js} +0 -0
- /package/dist/{util/version.d.ts → version.d.ts} +0 -0
- /package/dist/{util/version.js → version.js} +0 -0
package/dist/matrix4.js
ADDED
|
@@ -0,0 +1,465 @@
|
|
|
1
|
+
import { Vector4 } from "./vector4.js";
|
|
2
|
+
import { add, sub, mul, div, mod } from "./el.js";
|
|
3
|
+
export const Matrix4 = {
|
|
4
|
+
/** Constant index for the xx-component of a Matrix4 */
|
|
5
|
+
XX: 0,
|
|
6
|
+
/** Constant index for the xy-component of a Matrix4 */
|
|
7
|
+
XY: 1,
|
|
8
|
+
/** Constant index for the xz-component of a Matrix4 */
|
|
9
|
+
XZ: 2,
|
|
10
|
+
/** Constant index for the xw-component of a Matrix4 */
|
|
11
|
+
XW: 3,
|
|
12
|
+
/** Constant index for the yx-component of a Matrix4 */
|
|
13
|
+
YX: 4,
|
|
14
|
+
/** Constant index for the yy-component of a Matrix4 */
|
|
15
|
+
YY: 5,
|
|
16
|
+
/** Constant index for the yz-component of a Matrix4 */
|
|
17
|
+
YZ: 6,
|
|
18
|
+
/** Constant index for the yw-component of a Matrix4 */
|
|
19
|
+
YW: 7,
|
|
20
|
+
/** Constant index for the zx-component of a Matrix4 */
|
|
21
|
+
ZX: 8,
|
|
22
|
+
/** Constant index for the zy-component of a Matrix4 */
|
|
23
|
+
ZY: 9,
|
|
24
|
+
/** Constant index for the zz-component of a Matrix4 */
|
|
25
|
+
ZZ: 10,
|
|
26
|
+
/** Constant index for the zw-component of a Matrix4 */
|
|
27
|
+
ZW: 11,
|
|
28
|
+
/** Constant index for the wx-component of a Matrix4 */
|
|
29
|
+
WX: 12,
|
|
30
|
+
/** Constant index for the wy-component of a Matrix4 */
|
|
31
|
+
WY: 13,
|
|
32
|
+
/** Constant index for the wz-component of a Matrix4 */
|
|
33
|
+
WZ: 14,
|
|
34
|
+
/** Constant index for the ww-component of a Matrix4 */
|
|
35
|
+
WW: 15,
|
|
36
|
+
/** A collection of getters for Matrix4 objects */
|
|
37
|
+
Get: {
|
|
38
|
+
/** Get the xx-component of a Matrix4 */
|
|
39
|
+
xx(a) { return a[Matrix4.XX]; },
|
|
40
|
+
/** Get the xy-component of a Matrix4 */
|
|
41
|
+
xy(a) { return a[Matrix4.XY]; },
|
|
42
|
+
/** Get the xz-component of a Matrix4 */
|
|
43
|
+
xz(a) { return a[Matrix4.XZ]; },
|
|
44
|
+
/** Get the xw-component of a Matrix4 */
|
|
45
|
+
xw(a) { return a[Matrix4.XW]; },
|
|
46
|
+
/** Get the yx-component of a Matrix4 */
|
|
47
|
+
yx(a) { return a[Matrix4.YX]; },
|
|
48
|
+
/** Get the yy-component of a Matrix4 */
|
|
49
|
+
yy(a) { return a[Matrix4.YY]; },
|
|
50
|
+
/** Get the yz-component of a Matrix4 */
|
|
51
|
+
yz(a) { return a[Matrix4.YZ]; },
|
|
52
|
+
/** Get the yw-component of a Matrix4 */
|
|
53
|
+
yw(a) { return a[Matrix4.YW]; },
|
|
54
|
+
/** Get the zx-component of a Matrix4 */
|
|
55
|
+
zx(a) { return a[Matrix4.ZX]; },
|
|
56
|
+
/** Get the zy-component of a Matrix4 */
|
|
57
|
+
zy(a) { return a[Matrix4.ZY]; },
|
|
58
|
+
/** Get the zz-component of a Matrix4 */
|
|
59
|
+
zz(a) { return a[Matrix4.ZZ]; },
|
|
60
|
+
/** Get the zw-component of a Matrix4 */
|
|
61
|
+
zw(a) { return a[Matrix4.ZW]; },
|
|
62
|
+
/** Get the wx-component of a Matrix4 */
|
|
63
|
+
wx(a) { return a[Matrix4.WX]; },
|
|
64
|
+
/** Get the wy-component of a Matrix4 */
|
|
65
|
+
wy(a) { return a[Matrix4.WY]; },
|
|
66
|
+
/** Get the wz-component of a Matrix4 */
|
|
67
|
+
wz(a) { return a[Matrix4.WZ]; },
|
|
68
|
+
/** Get the ww-component of a Matrix4 */
|
|
69
|
+
ww(a) { return a[Matrix4.WW]; },
|
|
70
|
+
/** Get the 0th row of a Matrix4 as a Vector4 */
|
|
71
|
+
r0(a) {
|
|
72
|
+
return [
|
|
73
|
+
a[Matrix4.XX],
|
|
74
|
+
a[Matrix4.XY],
|
|
75
|
+
a[Matrix4.XZ],
|
|
76
|
+
a[Matrix4.XW]
|
|
77
|
+
];
|
|
78
|
+
},
|
|
79
|
+
/** Get the 1st row of a Matrix4 as a Vector4 */
|
|
80
|
+
r1(a) {
|
|
81
|
+
return [
|
|
82
|
+
a[Matrix4.YX],
|
|
83
|
+
a[Matrix4.YY],
|
|
84
|
+
a[Matrix4.YZ],
|
|
85
|
+
a[Matrix4.YW]
|
|
86
|
+
];
|
|
87
|
+
},
|
|
88
|
+
/** Get the 2nd row of a Matrix4 as a Vector4 */
|
|
89
|
+
r2(a) {
|
|
90
|
+
return [
|
|
91
|
+
a[Matrix4.ZX],
|
|
92
|
+
a[Matrix4.ZY],
|
|
93
|
+
a[Matrix4.ZZ],
|
|
94
|
+
a[Matrix4.ZW]
|
|
95
|
+
];
|
|
96
|
+
},
|
|
97
|
+
/** Get the 3rd row of a Matrix4 as a Vector4 */
|
|
98
|
+
r3(a) {
|
|
99
|
+
return [
|
|
100
|
+
a[Matrix4.WX],
|
|
101
|
+
a[Matrix4.WY],
|
|
102
|
+
a[Matrix4.WZ],
|
|
103
|
+
a[Matrix4.WW]
|
|
104
|
+
];
|
|
105
|
+
},
|
|
106
|
+
/** Get the i-th row of a Matrix4 as a Vector4 */
|
|
107
|
+
row(a, i) {
|
|
108
|
+
switch (i) {
|
|
109
|
+
case 0: return Matrix4.Get.r0(a);
|
|
110
|
+
case 1: return Matrix4.Get.r1(a);
|
|
111
|
+
case 2: return Matrix4.Get.r2(a);
|
|
112
|
+
case 3: return Matrix4.Get.r3(a);
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
/** Get the 0th column of a Matrix4 as a Vector4 */
|
|
116
|
+
c0(a) {
|
|
117
|
+
return [
|
|
118
|
+
a[Matrix4.XX],
|
|
119
|
+
a[Matrix4.YX],
|
|
120
|
+
a[Matrix4.ZX],
|
|
121
|
+
a[Matrix4.WX]
|
|
122
|
+
];
|
|
123
|
+
},
|
|
124
|
+
/** Get the 1st column of a Matrix4 as a Vector4 */
|
|
125
|
+
c1(a) {
|
|
126
|
+
return [
|
|
127
|
+
a[Matrix4.XY],
|
|
128
|
+
a[Matrix4.YY],
|
|
129
|
+
a[Matrix4.ZY],
|
|
130
|
+
a[Matrix4.WY]
|
|
131
|
+
];
|
|
132
|
+
},
|
|
133
|
+
/** Get the 2nd column of a Matrix4 as a Vector4 */
|
|
134
|
+
c2(a) {
|
|
135
|
+
return [
|
|
136
|
+
a[Matrix4.XZ],
|
|
137
|
+
a[Matrix4.YZ],
|
|
138
|
+
a[Matrix4.ZZ],
|
|
139
|
+
a[Matrix4.WZ]
|
|
140
|
+
];
|
|
141
|
+
},
|
|
142
|
+
/** Get the 3rd column of a Matrix4 as a Vector4 */
|
|
143
|
+
c3(a) {
|
|
144
|
+
return [
|
|
145
|
+
a[Matrix4.XW],
|
|
146
|
+
a[Matrix4.YW],
|
|
147
|
+
a[Matrix4.ZW],
|
|
148
|
+
a[Matrix4.WW]
|
|
149
|
+
];
|
|
150
|
+
},
|
|
151
|
+
/** Get the j-th column of a Matrix4 as a Vector4 */
|
|
152
|
+
col(a, j) {
|
|
153
|
+
switch (j) {
|
|
154
|
+
case 0: return Matrix4.Get.c0(a);
|
|
155
|
+
case 1: return Matrix4.Get.c1(a);
|
|
156
|
+
case 2: return Matrix4.Get.c2(a);
|
|
157
|
+
case 3: return Matrix4.Get.c3(a);
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
},
|
|
161
|
+
/** A collection of setters for Matrix4 objects */
|
|
162
|
+
Set: {
|
|
163
|
+
/** Set the xx-component of a Matrix4 */
|
|
164
|
+
xx(a, xx) { return a[Matrix4.XX] = xx; },
|
|
165
|
+
/** Set the xy-component of a Matrix4 */
|
|
166
|
+
xy(a, xy) { return a[Matrix4.XY] = xy; },
|
|
167
|
+
/** Set the xz-component of a Matrix4 */
|
|
168
|
+
xz(a, xz) { return a[Matrix4.XZ] = xz; },
|
|
169
|
+
/** Set the xw-component of a Matrix4 */
|
|
170
|
+
xw(a, xw) { return a[Matrix4.XW] = xw; },
|
|
171
|
+
/** Set the yx-component of a Matrix4 */
|
|
172
|
+
yx(a, yx) { return a[Matrix4.YX] = yx; },
|
|
173
|
+
/** Set the yy-component of a Matrix4 */
|
|
174
|
+
yy(a, yy) { return a[Matrix4.YY] = yy; },
|
|
175
|
+
/** Set the yz-component of a Matrix4 */
|
|
176
|
+
yz(a, yz) { return a[Matrix4.YZ] = yz; },
|
|
177
|
+
/** Set the yw-component of a Matrix4 */
|
|
178
|
+
yw(a, yw) { return a[Matrix4.YW] = yw; },
|
|
179
|
+
/** Set the zx-component of a Matrix4 */
|
|
180
|
+
zx(a, zx) { return a[Matrix4.ZX] = zx; },
|
|
181
|
+
/** Set the zy-component of a Matrix4 */
|
|
182
|
+
zy(a, zy) { return a[Matrix4.ZY] = zy; },
|
|
183
|
+
/** Set the zz-component of a Matrix4 */
|
|
184
|
+
zz(a, zz) { return a[Matrix4.ZZ] = zz; },
|
|
185
|
+
/** Set the zw-component of a Matrix4 */
|
|
186
|
+
zw(a, zw) { return a[Matrix4.ZW] = zw; },
|
|
187
|
+
/** Set the wx-component of a Matrix4 */
|
|
188
|
+
wx(a, wx) { return a[Matrix4.WX] = wx; },
|
|
189
|
+
/** Set the wy-component of a Matrix4 */
|
|
190
|
+
wy(a, wy) { return a[Matrix4.WY] = wy; },
|
|
191
|
+
/** Set the wz-component of a Matrix4 */
|
|
192
|
+
wz(a, wz) { return a[Matrix4.WZ] = wz; },
|
|
193
|
+
/** Set the ww-component of a Matrix4 */
|
|
194
|
+
ww(a, ww) { return a[Matrix4.WW] = ww; },
|
|
195
|
+
/** Set the 0th row of a Matrix4 */
|
|
196
|
+
r0(a, [xx, xy, xz, xw]) {
|
|
197
|
+
a[Matrix4.XX] = xx;
|
|
198
|
+
a[Matrix4.XY] = xy;
|
|
199
|
+
a[Matrix4.XZ] = xz;
|
|
200
|
+
a[Matrix4.XW] = xw;
|
|
201
|
+
return [xx, xy, xz, xw];
|
|
202
|
+
},
|
|
203
|
+
/** Set the 1st row of a Matrix4 */
|
|
204
|
+
r1(a, [yx, yy, yz, yw]) {
|
|
205
|
+
a[Matrix4.YX] = yx;
|
|
206
|
+
a[Matrix4.YY] = yy;
|
|
207
|
+
a[Matrix4.YZ] = yz;
|
|
208
|
+
a[Matrix4.YW] = yw;
|
|
209
|
+
return [yx, yy, yz, yw];
|
|
210
|
+
},
|
|
211
|
+
/** Set the 2nd row of a Matrix4 */
|
|
212
|
+
r2(a, [zx, zy, zz, zw]) {
|
|
213
|
+
a[Matrix4.ZX] = zx;
|
|
214
|
+
a[Matrix4.ZY] = zy;
|
|
215
|
+
a[Matrix4.ZZ] = zz;
|
|
216
|
+
a[Matrix4.ZW] = zw;
|
|
217
|
+
return [zx, zy, zz, zw];
|
|
218
|
+
},
|
|
219
|
+
/** Set the 3rd row of a Matrix4 */
|
|
220
|
+
r3(a, [wx, wy, wz, ww]) {
|
|
221
|
+
a[Matrix4.WX] = wx;
|
|
222
|
+
a[Matrix4.WY] = wy;
|
|
223
|
+
a[Matrix4.WZ] = wz;
|
|
224
|
+
a[Matrix4.WW] = ww;
|
|
225
|
+
return [wx, wy, wz, ww];
|
|
226
|
+
},
|
|
227
|
+
/** Set the i-th row of a Matrix4 */
|
|
228
|
+
row(a, i, ri) {
|
|
229
|
+
switch (i) {
|
|
230
|
+
case 0: return Matrix4.Set.r0(a, ri);
|
|
231
|
+
case 1: return Matrix4.Set.r1(a, ri);
|
|
232
|
+
case 2: return Matrix4.Set.r2(a, ri);
|
|
233
|
+
case 3: return Matrix4.Set.r3(a, ri);
|
|
234
|
+
}
|
|
235
|
+
},
|
|
236
|
+
/** Set the 0th column of a Matrix4 */
|
|
237
|
+
c0(a, [xx, yx, zx, wx]) {
|
|
238
|
+
a[Matrix4.XX] = xx;
|
|
239
|
+
a[Matrix4.YX] = yx;
|
|
240
|
+
a[Matrix4.ZX] = zx;
|
|
241
|
+
a[Matrix4.WX] = wx;
|
|
242
|
+
return [xx, yx, zx, wx];
|
|
243
|
+
},
|
|
244
|
+
/** Set the 1st column of a Matrix4 */
|
|
245
|
+
c1(a, [xy, yy, zy, wy]) {
|
|
246
|
+
a[Matrix4.XY] = xy;
|
|
247
|
+
a[Matrix4.YY] = yy;
|
|
248
|
+
a[Matrix4.ZY] = zy;
|
|
249
|
+
a[Matrix4.WY] = wy;
|
|
250
|
+
return [xy, yy, zy, wy];
|
|
251
|
+
},
|
|
252
|
+
/** Set the 2nd column of a Matrix4 */
|
|
253
|
+
c2(a, [xz, yz, zz, wz]) {
|
|
254
|
+
a[Matrix4.XZ] = xz;
|
|
255
|
+
a[Matrix4.YZ] = yz;
|
|
256
|
+
a[Matrix4.ZZ] = zz;
|
|
257
|
+
a[Matrix4.WZ] = wz;
|
|
258
|
+
return [xz, yz, zz, wz];
|
|
259
|
+
},
|
|
260
|
+
/** Set the 3rd column of a Matrix4 */
|
|
261
|
+
c3(a, [xw, yw, zw, ww]) {
|
|
262
|
+
a[Matrix4.XW] = xw;
|
|
263
|
+
a[Matrix4.YW] = yw;
|
|
264
|
+
a[Matrix4.ZW] = zw;
|
|
265
|
+
a[Matrix4.WW] = ww;
|
|
266
|
+
return [xw, yw, zw, ww];
|
|
267
|
+
},
|
|
268
|
+
/** Set the j-th column of a Matrix4 */
|
|
269
|
+
col(a, j, cj) {
|
|
270
|
+
switch (j) {
|
|
271
|
+
case 0: return Matrix4.Set.c0(a, cj);
|
|
272
|
+
case 1: return Matrix4.Set.c1(a, cj);
|
|
273
|
+
case 2: return Matrix4.Set.c2(a, cj);
|
|
274
|
+
case 3: return Matrix4.Set.c3(a, cj);
|
|
275
|
+
}
|
|
276
|
+
},
|
|
277
|
+
},
|
|
278
|
+
/** Construct an identity Matrix4 with an optional scale factor */
|
|
279
|
+
id(a = 1) {
|
|
280
|
+
return [
|
|
281
|
+
a, 0, 0, 0,
|
|
282
|
+
0, a, 0, 0,
|
|
283
|
+
0, 0, a, 0,
|
|
284
|
+
0, 0, 0, a
|
|
285
|
+
];
|
|
286
|
+
},
|
|
287
|
+
/**
|
|
288
|
+
* Construct a Matrix4 from a variadic array of numbers.
|
|
289
|
+
*
|
|
290
|
+
* Constructs a uniform Matrix4 when `a.length === 1`
|
|
291
|
+
* ```js
|
|
292
|
+
* Matrix4.new(1) // [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
|
|
293
|
+
* ```
|
|
294
|
+
*
|
|
295
|
+
* Otherwise constructs a standard zero-padded row-major Matrix4
|
|
296
|
+
* ```js
|
|
297
|
+
* Matrix4.new( ) // [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
298
|
+
* Matrix4.new(1, 2 ) // [1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
299
|
+
* Matrix4.new(1, 2, 3, 4) // [1, 2, 3, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
300
|
+
* ```
|
|
301
|
+
*/
|
|
302
|
+
new(...a) {
|
|
303
|
+
if (a.length === 1)
|
|
304
|
+
return [
|
|
305
|
+
a[Matrix4.XX], a[Matrix4.XX], a[Matrix4.XX], a[Matrix4.XX],
|
|
306
|
+
a[Matrix4.XX], a[Matrix4.XX], a[Matrix4.XX], a[Matrix4.XX],
|
|
307
|
+
a[Matrix4.XX], a[Matrix4.XX], a[Matrix4.XX], a[Matrix4.XX],
|
|
308
|
+
a[Matrix4.XX], a[Matrix4.XX], a[Matrix4.XX], a[Matrix4.XX]
|
|
309
|
+
];
|
|
310
|
+
else
|
|
311
|
+
return [
|
|
312
|
+
a[Matrix4.XX] ?? 0, a[Matrix4.XY] ?? 0, a[Matrix4.XZ] ?? 0, a[Matrix4.XW] ?? 0,
|
|
313
|
+
a[Matrix4.YX] ?? 0, a[Matrix4.YY] ?? 0, a[Matrix4.YZ] ?? 0, a[Matrix4.YW] ?? 0,
|
|
314
|
+
a[Matrix4.ZX] ?? 0, a[Matrix4.ZY] ?? 0, a[Matrix4.ZZ] ?? 0, a[Matrix4.ZW] ?? 0,
|
|
315
|
+
a[Matrix4.WX] ?? 0, a[Matrix4.WY] ?? 0, a[Matrix4.WZ] ?? 0, a[Matrix4.WW] ?? 0
|
|
316
|
+
];
|
|
317
|
+
},
|
|
318
|
+
/**
|
|
319
|
+
* Constructs a Matrix4 from a number or an array of numbers.
|
|
320
|
+
*
|
|
321
|
+
* Constructs a uniform Matrix4 when `a` is a number
|
|
322
|
+
* ```js
|
|
323
|
+
* Matrix4.from(1) // [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
|
|
324
|
+
* ```
|
|
325
|
+
*
|
|
326
|
+
* Otherwise constructs a standard zero-padded Matrix4
|
|
327
|
+
* ```js
|
|
328
|
+
* Matrix4.from([ ]) // [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
329
|
+
* Matrix4.from([1 ]) // [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
330
|
+
* Matrix4.from([1, 2 ]) // [1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
331
|
+
* Matrix4.from([1, 2, 3, 4]) // [1, 2, 3, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
|
332
|
+
* ```
|
|
333
|
+
*/
|
|
334
|
+
from(a) {
|
|
335
|
+
if (typeof a === "number")
|
|
336
|
+
return [
|
|
337
|
+
a, a, a, a,
|
|
338
|
+
a, a, a, a,
|
|
339
|
+
a, a, a, a,
|
|
340
|
+
a, a, a, a
|
|
341
|
+
];
|
|
342
|
+
else
|
|
343
|
+
return [
|
|
344
|
+
a[Matrix4.XX] ?? 0, a[Matrix4.XY] ?? 0, a[Matrix4.XZ] ?? 0, a[Matrix4.XW] ?? 0,
|
|
345
|
+
a[Matrix4.YX] ?? 0, a[Matrix4.YY] ?? 0, a[Matrix4.YZ] ?? 0, a[Matrix4.YW] ?? 0,
|
|
346
|
+
a[Matrix4.ZX] ?? 0, a[Matrix4.ZY] ?? 0, a[Matrix4.ZZ] ?? 0, a[Matrix4.ZW] ?? 0,
|
|
347
|
+
a[Matrix4.WX] ?? 0, a[Matrix4.WY] ?? 0, a[Matrix4.WZ] ?? 0, a[Matrix4.WW] ?? 0
|
|
348
|
+
];
|
|
349
|
+
},
|
|
350
|
+
/**
|
|
351
|
+
* Perform an element-wise operation on two Matrix4 objects.
|
|
352
|
+
* Number-like arguments are promoted to uniform Matrix4 objects
|
|
353
|
+
* before performing the operation. Constructs a new Matrix4 when an
|
|
354
|
+
* output argument is not provided.
|
|
355
|
+
*/
|
|
356
|
+
el(op, a, b, out = Matrix4.new()) {
|
|
357
|
+
const [xxa, xya, xza, xwa, yxa, yya, yza, ywa, zxa, zya, zza, zwa, wxa, wya, wza, wwa] = Matrix4.from(a);
|
|
358
|
+
const [xxb, xyb, xzb, xwb, yxb, yyb, yzb, ywb, zxb, zyb, zzb, zwb, wxb, wyb, wzb, wwb] = Matrix4.from(b);
|
|
359
|
+
Matrix4.Set.xx(out, op(xxa, xxb));
|
|
360
|
+
Matrix4.Set.xy(out, op(xya, xyb));
|
|
361
|
+
Matrix4.Set.xz(out, op(xza, xzb));
|
|
362
|
+
Matrix4.Set.xw(out, op(xwa, xwb));
|
|
363
|
+
Matrix4.Set.yx(out, op(yxa, yxb));
|
|
364
|
+
Matrix4.Set.yy(out, op(yya, yyb));
|
|
365
|
+
Matrix4.Set.yz(out, op(yza, yzb));
|
|
366
|
+
Matrix4.Set.yw(out, op(ywa, ywb));
|
|
367
|
+
Matrix4.Set.zx(out, op(zxa, zxb));
|
|
368
|
+
Matrix4.Set.zy(out, op(zya, zyb));
|
|
369
|
+
Matrix4.Set.zz(out, op(zza, zzb));
|
|
370
|
+
Matrix4.Set.zw(out, op(zwa, zwb));
|
|
371
|
+
Matrix4.Set.wx(out, op(wxa, wxb));
|
|
372
|
+
Matrix4.Set.wy(out, op(wya, wyb));
|
|
373
|
+
Matrix4.Set.wz(out, op(wza, wzb));
|
|
374
|
+
Matrix4.Set.ww(out, op(wwa, wwb));
|
|
375
|
+
return out;
|
|
376
|
+
},
|
|
377
|
+
/**
|
|
378
|
+
* Compute the sum of two Matrix4 objects. Number-like arguments are
|
|
379
|
+
* promoted to uniform Matrix4 objects before performing the operation.
|
|
380
|
+
* Constructs a new Matrix4 when an output argument is not provided.
|
|
381
|
+
*/
|
|
382
|
+
add(a, b, out = Matrix4.new()) {
|
|
383
|
+
return Matrix4.el(add, a, b, out);
|
|
384
|
+
},
|
|
385
|
+
/**
|
|
386
|
+
* Compute the difference of two Matrix4 objects. Number-like arguments
|
|
387
|
+
* are promoted to uniform Matrix4 objects before performing the
|
|
388
|
+
* operation. Constructs a new Matrix4 when an output argument is not
|
|
389
|
+
* provided.
|
|
390
|
+
*/
|
|
391
|
+
sub(a, b, out = Matrix4.new()) {
|
|
392
|
+
return Matrix4.el(sub, a, b, out);
|
|
393
|
+
},
|
|
394
|
+
/**
|
|
395
|
+
* Compute the hadamard (element-wise) product of two Matrix4 objects.
|
|
396
|
+
* Number-like arguments are promoted to uniform Matrix4 objects before
|
|
397
|
+
* performing the operation. Constructs a new Matrix4 when an output
|
|
398
|
+
* argument is not provided.
|
|
399
|
+
*/
|
|
400
|
+
hmul(a, b, out = Matrix4.new()) {
|
|
401
|
+
return Matrix4.el(mul, a, b, out);
|
|
402
|
+
},
|
|
403
|
+
/**
|
|
404
|
+
* Compute the hadamard (element-wise) quotient of two Matrix4 objects.
|
|
405
|
+
* Number-like arguments are promoted to uniform Matrix4 objects before
|
|
406
|
+
* performing the operation. Constructs a new Matrix4 when an output
|
|
407
|
+
* argument is not provided.
|
|
408
|
+
*/
|
|
409
|
+
hdiv(a, b, out = Matrix4.new()) {
|
|
410
|
+
return Matrix4.el(div, a, b, out);
|
|
411
|
+
},
|
|
412
|
+
/**
|
|
413
|
+
* Compute the hadamard (element-wise) remainder of two Matrix4 objects.
|
|
414
|
+
* Number-like arguments are promoted to uniform Matrix4 objects before
|
|
415
|
+
* performing the operation. Constructs a new Matrix4 when an output
|
|
416
|
+
* argument is not provided.
|
|
417
|
+
*/
|
|
418
|
+
hmod(a, b, out = Matrix4.new()) {
|
|
419
|
+
return Matrix4.el(mod, a, b, out);
|
|
420
|
+
},
|
|
421
|
+
/**
|
|
422
|
+
* Compute the standard product of two Matrix4 objects. Number-like arguments are
|
|
423
|
+
* promoted to uniform Matrix4 objects before performing the operation.
|
|
424
|
+
* Constructs a new Matrix4 when an output argument is not provided.
|
|
425
|
+
*/
|
|
426
|
+
mul(a, b, out = Matrix4.new()) {
|
|
427
|
+
const A = Matrix4.from(a);
|
|
428
|
+
const B = Matrix4.from(b);
|
|
429
|
+
const r0 = Matrix4.Get.r0(A);
|
|
430
|
+
const r1 = Matrix4.Get.r1(A);
|
|
431
|
+
const r2 = Matrix4.Get.r2(A);
|
|
432
|
+
const r3 = Matrix4.Get.r3(A);
|
|
433
|
+
const c0 = Matrix4.Get.c0(B);
|
|
434
|
+
const c1 = Matrix4.Get.c1(B);
|
|
435
|
+
const c2 = Matrix4.Get.c2(B);
|
|
436
|
+
const c3 = Matrix4.Get.c3(B);
|
|
437
|
+
Matrix4.Set.xx(out, Vector4.dot(r0, c0));
|
|
438
|
+
Matrix4.Set.xy(out, Vector4.dot(r0, c1));
|
|
439
|
+
Matrix4.Set.xz(out, Vector4.dot(r0, c2));
|
|
440
|
+
Matrix4.Set.xw(out, Vector4.dot(r0, c3));
|
|
441
|
+
Matrix4.Set.yx(out, Vector4.dot(r1, c0));
|
|
442
|
+
Matrix4.Set.yy(out, Vector4.dot(r1, c1));
|
|
443
|
+
Matrix4.Set.yz(out, Vector4.dot(r1, c2));
|
|
444
|
+
Matrix4.Set.yw(out, Vector4.dot(r1, c3));
|
|
445
|
+
Matrix4.Set.zx(out, Vector4.dot(r2, c0));
|
|
446
|
+
Matrix4.Set.zy(out, Vector4.dot(r2, c1));
|
|
447
|
+
Matrix4.Set.zz(out, Vector4.dot(r2, c2));
|
|
448
|
+
Matrix4.Set.zw(out, Vector4.dot(r2, c3));
|
|
449
|
+
Matrix4.Set.wx(out, Vector4.dot(r3, c0));
|
|
450
|
+
Matrix4.Set.wy(out, Vector4.dot(r3, c1));
|
|
451
|
+
Matrix4.Set.wz(out, Vector4.dot(r3, c2));
|
|
452
|
+
Matrix4.Set.ww(out, Vector4.dot(r3, c3));
|
|
453
|
+
return out;
|
|
454
|
+
},
|
|
455
|
+
/**
|
|
456
|
+
* Convert a Matrix4 into its string representation.
|
|
457
|
+
* ```js
|
|
458
|
+
* Matrix4.toString([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]) // "mat4<1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16>"
|
|
459
|
+
* ```
|
|
460
|
+
*/
|
|
461
|
+
toString([xx, xy, xz, xw, yx, yy, yz, yw, zx, zy, zz, zw, wx, wy, wz, ww]) {
|
|
462
|
+
return `mat4<${xx}, ${xy}, ${xz}, ${xw}, ${yx}, ${yy}, ${yz}, ${yw}, ${zx}, ${zy}, ${zz}, ${zw}, ${wx}, ${wy}, ${wz}, ${ww}>`;
|
|
463
|
+
}
|
|
464
|
+
};
|
|
465
|
+
//# sourceMappingURL=matrix4.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matrix4.js","sourceRoot":"","sources":["../src/matrix4.ts"],"names":[],"mappings":"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,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAC1G,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QACjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QACjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QACjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QACjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QACjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QACjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QACjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QACjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QACjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QACjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QACjC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;QACjC,OAAO,C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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import type { Maybe } from "../util/types.js";
|
|
2
1
|
import type { Stage } from "./stage.js";
|
|
3
2
|
export type Scene = {
|
|
4
3
|
doUpdate?: boolean;
|
|
@@ -28,7 +27,7 @@ export declare namespace Scene {
|
|
|
28
27
|
};
|
|
29
28
|
}
|
|
30
29
|
export declare const Scene: {
|
|
31
|
-
doesUpdate(a:
|
|
32
|
-
doesRender(a:
|
|
30
|
+
doesUpdate(a: Scene | undefined): a is Scene.DoesUpdate;
|
|
31
|
+
doesRender(a: Scene | undefined): a is Scene.Renderable;
|
|
33
32
|
};
|
|
34
33
|
//# sourceMappingURL=scene.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene.d.ts","sourceRoot":"","sources":["../src/scene.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAEvC,MAAM,MAAM,KAAK,GAAG;IAClB,QAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAS,CAAC,EAAE,OAAO,CAAA;IAEnB,QAAS,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAClC,QAAS,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAClC,QAAS,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,CAAA;IAClD,QAAS,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,aAAa,KAAK,IAAI,CAAA;CACnD,CAAA;AAED,yBAAiB,KAAK,CAAC;IACrB,KAAY,aAAa,GAAG;QAC1B,KAAK,EAAE,KAAK,CAAA;QACZ,CAAC,EAAG,MAAM,CAAA;QACV,EAAE,EAAE,MAAM,CAAA;KACX,CAAA;IAED,KAAY,aAAa,GAAG;QAC1B,KAAK,EAAE,KAAK,CAAA;QACZ,CAAC,EAAG,MAAM,CAAA;QACV,EAAE,EAAE,MAAM,CAAA;QACV,CAAC,EAAG,iCAAiC,CAAA;KACtC,CAAA;IAED,KAAY,UAAU,GAAG;QACvB,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAAA;KACvC,CAAA;IAED,KAAY,UAAU,GAAG;QACvB,QAAQ,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAAA;KACvC,CAAA;CACF;AAED,eAAO,MAAM,KAAK;kBACF,KAAK,GAAG,SAAS,GAAG,CAAC,IAAI,KAAK,CAAC,UAAU;kBAIzC,KAAK,GAAG,SAAS,GAAG,CAAC,IAAI,KAAK,CAAC,UAAU;CAGxD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scene.js","sourceRoot":"","sources":["../src/scene.ts"],"names":[],"mappings":"AAmCA,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,UAAU,CAAC,CAAoB;QAC7B,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAA;IACpD,CAAC;IAED,UAAU,CAAC,CAAoB;QAC7B,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAA;IACpD,CAAC;CACF,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sprite.d.ts","sourceRoot":"","sources":["../src/sprite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAQvC,MAAM,MAAM,MAAM,GAAG;IACnB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC3B,KAAK,EAAG,gBAAgB,CAAA;IACxB,KAAK,EAAG,MAAM,CAAC;IACf,KAAK,EAAG,MAAM,CAAC;IACf,KAAK,EAAG,MAAM,CAAC;IACf,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;IACpB,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CACrB,CAAA;AAGD,yBAAiB,MAAM,CAAC;IACtB,KAAY,KAAK,GAAG;QAClB,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QACvB,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;KACxB,CAAA;CACF;AAMD,eAAO,MAAM,MAAM;kBACH,KAAK,CAAC,aAAa,UAAU,MAAM;CAkDlD,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sprite.js","sourceRoot":"","sources":["../src/sprite.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,GAAI,CAAC,CAAA,CAAC,YAAY;AAC/B,MAAM,OAAO,GAAI,CAAC,CAAA;AAClB,MAAM,OAAO,GAAG,CAAC,CAAC,CAAA;AAqBlB,SAAS,IAAI,CAAC,CAAS,EAAE,CAAS;IAChC,OAAO,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;AACxB,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,IAAI,CAAC,OAA4B,EAAE,MAAc;QAC/C,2BAA2B;QAC3B,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;YACvB,uBAAuB;YACvB,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,GAAG,OAAO,CAAC,EAAE,CAAA;YAEzC,sBAAsB;YACtB,IAAI,MAAM,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;gBACtB,iFAAiF;gBACjF,MAAM,KAAK,GAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;gBAE9D,gFAAgF;gBAChF,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC;oBAClB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,CAAA;;oBAEhD,MAAM,CAAC,KAAK,GAAW,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAI,CAAA;gBAElD,8DAA8D;gBAC9D,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC;oBACpB,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;;oBAEvC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;gBAE3D,uBAAuB;YACvB,CAAC;iBAAsB,CAAC;gBACtB,iFAAiF;gBACjF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBAEjE,gFAAgF;gBAChF,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC;oBAClB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,CAAA;;oBAEhD,MAAM,CAAC,KAAK,GAAW,CAAC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAI,CAAA;gBAElD,gEAAgE;gBAChE,IAAI,MAAM,CAAC,KAAK,KAAK,CAAC;oBACpB,MAAM,CAAC,KAAK,GAAG,CAAC,CAAA;;oBAEhB,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YAC3D,CAAC;QACH,CAAC;QAED,wBAAwB;QACxB,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAE,CAAA;QACtD,OAAO,CAAC,CAAC,CAAC,SAAS,CACjB,MAAM,CAAC,KAAK,EACZ,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EACtC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CACvC,CAAA;IACH,CAAC;CACF,CAAA"}
|
package/dist/stage.d.ts
ADDED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { Event } from "./event.js";
|
|
2
|
+
import { Scene } from "./scene.js";
|
|
3
|
+
export type Stage = {
|
|
4
|
+
readonly configureDebug: "print" | "paint" | boolean;
|
|
5
|
+
readonly configureW: number;
|
|
6
|
+
readonly configureH: number;
|
|
7
|
+
readonly configureLogicalBackground: string;
|
|
8
|
+
readonly configureVirtualBackground: string;
|
|
9
|
+
readonly configureScaleIncrement: number | undefined;
|
|
10
|
+
readonly configureImageSmoothing: ImageSmoothingQuality | undefined;
|
|
11
|
+
logicalCanvasElement: HTMLCanvasElement;
|
|
12
|
+
virtualCanvasElement: OffscreenCanvas;
|
|
13
|
+
logicalCanvasContext: CanvasRenderingContext2D;
|
|
14
|
+
virtualCanvasContext: OffscreenCanvasRenderingContext2D;
|
|
15
|
+
virtualScale: number;
|
|
16
|
+
event: Event.Tree;
|
|
17
|
+
debug: Map<string, string | undefined>;
|
|
18
|
+
scene: Scene | undefined;
|
|
19
|
+
measuredFramesPerSecond: number;
|
|
20
|
+
measuredAverageFrame: number;
|
|
21
|
+
measuredMinimumFrame: number;
|
|
22
|
+
measuredMaximumFrame: number;
|
|
23
|
+
measuredAverageUpdate: number;
|
|
24
|
+
measuredMinimumUpdate: number;
|
|
25
|
+
measuredMaximumUpdate: number;
|
|
26
|
+
measuredAverageRender: number;
|
|
27
|
+
measuredMinimumRender: number;
|
|
28
|
+
measuredMaximumRender: number;
|
|
29
|
+
};
|
|
30
|
+
export declare namespace Stage {
|
|
31
|
+
type Options = {
|
|
32
|
+
canvas?: HTMLCanvasElement;
|
|
33
|
+
debug?: "print" | "paint" | boolean;
|
|
34
|
+
w?: number;
|
|
35
|
+
h?: number;
|
|
36
|
+
lbg?: string;
|
|
37
|
+
vbg?: string;
|
|
38
|
+
si?: number;
|
|
39
|
+
is?: ImageSmoothingQuality;
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* A collection of constants and functions for constructing and
|
|
44
|
+
* interacting with Stage objects.
|
|
45
|
+
*/
|
|
46
|
+
export declare const Stage: {
|
|
47
|
+
"new"(o?: Stage.Options): {
|
|
48
|
+
configureDebug: boolean | "print" | "paint";
|
|
49
|
+
configureW: number;
|
|
50
|
+
configureH: number;
|
|
51
|
+
configureLogicalBackground: string;
|
|
52
|
+
configureVirtualBackground: string;
|
|
53
|
+
configureScaleIncrement: number | undefined;
|
|
54
|
+
configureImageSmoothing: ImageSmoothingQuality | undefined;
|
|
55
|
+
logicalCanvasElement: HTMLCanvasElement;
|
|
56
|
+
virtualCanvasElement: OffscreenCanvas;
|
|
57
|
+
logicalCanvasContext: CanvasRenderingContext2D;
|
|
58
|
+
virtualCanvasContext: OffscreenCanvasRenderingContext2D;
|
|
59
|
+
virtualScale: number;
|
|
60
|
+
event: {
|
|
61
|
+
root: {
|
|
62
|
+
children: Map<any, any>;
|
|
63
|
+
listeners: Map<any, any>;
|
|
64
|
+
};
|
|
65
|
+
pending: never[];
|
|
66
|
+
};
|
|
67
|
+
debug: Map<any, any>;
|
|
68
|
+
scene: undefined;
|
|
69
|
+
measuredFramesPerSecond: number;
|
|
70
|
+
measuredAverageFrame: number;
|
|
71
|
+
measuredMinimumFrame: number;
|
|
72
|
+
measuredMaximumFrame: number;
|
|
73
|
+
measuredAverageUpdate: number;
|
|
74
|
+
measuredMinimumUpdate: number;
|
|
75
|
+
measuredMaximumUpdate: number;
|
|
76
|
+
measuredAverageRender: number;
|
|
77
|
+
measuredMinimumRender: number;
|
|
78
|
+
measuredMaximumRender: number;
|
|
79
|
+
};
|
|
80
|
+
getLogicalSize(stage: Stage): [number, number];
|
|
81
|
+
getVirtualSize(stage: Stage): [number, number];
|
|
82
|
+
getVirtualScale(stage: Stage): number;
|
|
83
|
+
use(stage: Stage, scene: Scene | undefined): void;
|
|
84
|
+
listen<T>(stage: Stage, type: string, listener: Event.Listener<T>, o?: {
|
|
85
|
+
path?: string;
|
|
86
|
+
defer?: boolean;
|
|
87
|
+
}): void;
|
|
88
|
+
deafen<T>(stage: Stage, type?: string, listener?: Event.Listener<T>, o?: {
|
|
89
|
+
path?: string;
|
|
90
|
+
defer?: boolean;
|
|
91
|
+
}): void;
|
|
92
|
+
dispatch<T>(stage: Stage, type: string, event: T, o?: {
|
|
93
|
+
path?: string;
|
|
94
|
+
defer?: boolean;
|
|
95
|
+
}): void;
|
|
96
|
+
poll(stage: Stage): void;
|
|
97
|
+
getDebugInfo(stage: Stage, id: string): string | undefined;
|
|
98
|
+
setDebugInfo(stage: Stage, id: string, info: string | undefined): void;
|
|
99
|
+
};
|
|
100
|
+
//# sourceMappingURL=stage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stage.d.ts","sourceRoot":"","sources":["../src/stage.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAI,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,KAAK,EAAI,MAAM,YAAY,CAAA;AAGpC,MAAM,MAAM,KAAK,GAAG;IAElB,QAAQ,CAAC,cAAc,EAAc,OAAO,GAAG,OAAO,GAAG,OAAO,CAAA;IAChE,QAAQ,CAAC,UAAU,EAAkB,MAAM,CAAA;IAC3C,QAAQ,CAAC,UAAU,EAAkB,MAAM,CAAA;IAC3C,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAA;IAC3C,QAAQ,CAAC,0BAA0B,EAAE,MAAM,CAAA;IAC3C,QAAQ,CAAC,uBAAuB,EAAK,MAAM,GAAkB,SAAS,CAAA;IACtE,QAAQ,CAAC,uBAAuB,EAAK,qBAAqB,GAAG,SAAS,CAAA;IAGtE,oBAAoB,EAAE,iBAAiB,CAAA;IACvC,oBAAoB,EAAE,eAAe,CAAA;IACrC,oBAAoB,EAAE,wBAAwB,CAAA;IAC9C,oBAAoB,EAAE,iCAAiC,CAAA;IACvD,YAAY,EAAE,MAAM,CAAA;IAGpB,KAAK,EAAE,KAAK,CAAC,IAAI,CAAA;IACjB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;IACtC,KAAK,EAAe,KAAK,GAAG,SAAS,CAAA;IAGrC,uBAAuB,EAAG,MAAM,CAAA;IAEhC,oBAAoB,EAAG,MAAM,CAAA;IAC7B,oBAAoB,EAAG,MAAM,CAAA;IAC7B,oBAAoB,EAAG,MAAM,CAAA;IAE7B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,qBAAqB,EAAE,MAAM,CAAA;IAE7B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,qBAAqB,EAAE,MAAM,CAAA;CAC9B,CAAA;AAED,yBAAiB,KAAK,CAAC;IACrB,KAAY,OAAO,GAAG;QACpB,MAAO,CAAC,EAAE,iBAAiB,CAAA;QAC3B,KAAO,CAAC,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAA;QACrC,CAAO,CAAC,EAAE,MAAM,CAAA;QAChB,CAAO,CAAC,EAAE,MAAM,CAAA;QAChB,GAAO,CAAC,EAAE,MAAM,CAAA;QAChB,GAAO,CAAC,EAAE,MAAM,CAAA;QAChB,EAAO,CAAC,EAAE,MAAM,CAAA;QAChB,EAAO,CAAC,EAAE,qBAAqB,CAAA;KAChC,CAAA;CACF;AAED;;;GAGG;AACH,eAAO,MAAM,KAAK;cACP,KAAK,CAAC,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;0BA2FA,KAAK;0BAOL,KAAK;2BAOJ,KAAK;eAIjB,KAAK,SAAS,KAAK,GAAG,SAAS;WAInC,CAAC,SAAS,KAAK,QAAU,MAAM,YAAc,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAO;QAAE,IAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAM,CAAC,EAAE,OAAO,CAAA;KAAE;WAIzG,CAAC,SAAS,KAAK,SAAU,MAAM,aAAc,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAO;QAAE,IAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAM,CAAC,EAAE,OAAO,CAAA;KAAE;aAIvG,CAAC,SAAS,KAAK,QAAQ,MAAM,SAAS,CAAC,MAAO;QAAE,IAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAM,CAAC,EAAE,OAAO,CAAA;KAAE;gBAI/E,KAAK;wBAIG,KAAK,MAAM,MAAM;wBAIjB,KAAK,MAAM,MAAM,QAAQ,MAAM,GAAG,SAAS;CAGhE,CAAA"}
|