@swf2es/render 0.1.18 → 0.1.20
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/webgl/atlas.d.ts +14 -1
- package/dist/webgl/atlas.d.ts.map +1 -1
- package/dist/webgl/atlas.js +119 -28
- package/dist/webgl/atlas.js.map +1 -1
- package/dist/webgl/batches.d.ts +68 -18
- package/dist/webgl/batches.d.ts.map +1 -1
- package/dist/webgl/batches.js +252 -63
- package/dist/webgl/batches.js.map +1 -1
- package/dist/webgl/draws.d.ts +26 -8
- package/dist/webgl/draws.d.ts.map +1 -1
- package/dist/webgl/draws.js +92 -36
- package/dist/webgl/draws.js.map +1 -1
- package/dist/webgl/programs.d.ts +10 -3
- package/dist/webgl/programs.d.ts.map +1 -1
- package/dist/webgl/programs.js +13 -5
- package/dist/webgl/programs.js.map +1 -1
- package/package.json +2 -2
- package/src/webgl/atlas.ts +149 -27
- package/src/webgl/batches.ts +316 -68
- package/src/webgl/draws.ts +104 -40
- package/src/webgl/programs.ts +13 -5
package/dist/webgl/batches.js
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
import { COLOR_AT, DRAW_AT, POSITION_AT, TEXEL_AT } from "./programs.js";
|
|
2
|
-
/**
|
|
1
|
+
import { COLOR_AT, DRAW_AT, MERGED_LINE, MERGED_UNIT, POSITION_AT, TEXEL_AT } from "./programs.js";
|
|
2
|
+
/**
|
|
3
|
+
* Atlas attributes followed by where the draw's packed row is in the rows'
|
|
4
|
+
* texture: transforms and snapping stay in the shader, and a row that
|
|
5
|
+
* changes changes no vertex.
|
|
6
|
+
*/
|
|
3
7
|
const WORDS = 6;
|
|
4
8
|
/** Bound the extra CPU and GPU storage, falling back to the atlas after it fills. */
|
|
5
9
|
const VERTICES_MOST = 2 << 20;
|
|
@@ -10,11 +14,14 @@ const INDICES_LEAST = 3 << 14;
|
|
|
10
14
|
/** Frames over which the most used is watched; room four times that is let go of after them. */
|
|
11
15
|
const SHRINK_FRAMES = 240;
|
|
12
16
|
/**
|
|
13
|
-
* Small
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
*
|
|
17
|
+
* Small geometries merged run by run in painter's order, each run's copy a
|
|
18
|
+
* segment of one stream that any later run of the same geometries draws
|
|
19
|
+
* again, wherever it comes in the frame: its rows are in a texture of its
|
|
20
|
+
* own, written each frame, not in its vertices. Only the segments a frame adds are staged on the
|
|
21
|
+
* CPU, after the stream's top, and uploaded there at once; what is below
|
|
22
|
+
* stays on the GPU alone, and a buffer grown keeps it by a copy there.
|
|
23
|
+
* Segments no run used in a frame are let go of, and their room once the
|
|
24
|
+
* stream is twice what the last frame used, the stream then made anew.
|
|
18
25
|
*/
|
|
19
26
|
export class FillBatches {
|
|
20
27
|
gl;
|
|
@@ -30,14 +37,36 @@ export class FillBatches {
|
|
|
30
37
|
indexCapacity = 0;
|
|
31
38
|
vertexTop = 0;
|
|
32
39
|
indexTop = 0;
|
|
33
|
-
/** Where this frame's staging starts in the stream:
|
|
40
|
+
/** Where this frame's staging starts in the stream: its top as the frame began. */
|
|
34
41
|
fromVertex = 0;
|
|
35
42
|
fromIndex = 0;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
43
|
+
/**
|
|
44
|
+
* The segments' rows, slot by slot (Segment.slot), as their texture holds
|
|
45
|
+
* them, the slots taken, and the range of them this frame changed.
|
|
46
|
+
*/
|
|
47
|
+
rowsTexture = null;
|
|
48
|
+
rows = new Int32Array(0);
|
|
49
|
+
rowsLines = 0;
|
|
50
|
+
slotTop = 0;
|
|
51
|
+
slotsMost = 0;
|
|
52
|
+
changedFrom = 0;
|
|
53
|
+
changedTo = 0;
|
|
54
|
+
/** The segments by their first geometry. */
|
|
55
|
+
segments = new Map();
|
|
56
|
+
frame = 0;
|
|
57
|
+
/** What the frame's runs used of the stream, each segment once. */
|
|
58
|
+
liveVertices = 0;
|
|
59
|
+
liveIndices = 0;
|
|
60
|
+
/**
|
|
61
|
+
* The keys of the runs this frame and the last asked for (add's
|
|
62
|
+
* `settled`), so that a run is copied only once it is drawn again.
|
|
63
|
+
*/
|
|
64
|
+
seen = new Set();
|
|
65
|
+
seenBefore = new Set();
|
|
66
|
+
/** A frame prepared but not uploaded, as an overflowing run table leaves one: its staging lost. */
|
|
67
|
+
pending = false;
|
|
68
|
+
/** Whether a run found no room this frame, so that the next makes the stream anew. */
|
|
69
|
+
full = false;
|
|
41
70
|
/** The frames of the current watch, and the most of the stream and of the staging they used. */
|
|
42
71
|
frames = 0;
|
|
43
72
|
mostVertices = 0;
|
|
@@ -48,8 +77,13 @@ export class FillBatches {
|
|
|
48
77
|
this.gl = gl;
|
|
49
78
|
this.state = state;
|
|
50
79
|
}
|
|
51
|
-
|
|
80
|
+
/** The buffers and the rows' texture made, `textureMost` lines at most, as the context comes. */
|
|
81
|
+
setUp(textureMost) {
|
|
52
82
|
const gl = this.gl;
|
|
83
|
+
this.rowsTexture = null;
|
|
84
|
+
this.rowsLines = 0;
|
|
85
|
+
this.rows = new Int32Array(0);
|
|
86
|
+
this.slotsMost = MERGED_LINE * textureMost;
|
|
53
87
|
this.vertexArray = gl.createVertexArray();
|
|
54
88
|
this.vertexBuffer = gl.createBuffer();
|
|
55
89
|
this.indexBuffer = gl.createBuffer();
|
|
@@ -68,59 +102,115 @@ export class FillBatches {
|
|
|
68
102
|
gl.vertexAttribI4i(DRAW_AT, -1, 0, 0, 0);
|
|
69
103
|
this.vertexCapacity = 0;
|
|
70
104
|
this.indexCapacity = 0;
|
|
71
|
-
this.
|
|
72
|
-
this.previousRows.length = 0;
|
|
73
|
-
this.changed = false;
|
|
74
|
-
this.reset();
|
|
105
|
+
this.clear();
|
|
75
106
|
}
|
|
76
|
-
|
|
107
|
+
/** No segment kept: the stream made anew from its start. */
|
|
108
|
+
clear() {
|
|
109
|
+
this.segments.clear();
|
|
77
110
|
this.vertexTop = 0;
|
|
78
111
|
this.indexTop = 0;
|
|
79
|
-
this.
|
|
80
|
-
|
|
81
|
-
this.
|
|
82
|
-
this.fromIndex = 0;
|
|
112
|
+
this.slotTop = 0;
|
|
113
|
+
this.pending = false;
|
|
114
|
+
this.full = false;
|
|
83
115
|
}
|
|
84
|
-
/**
|
|
85
|
-
|
|
86
|
-
if (
|
|
87
|
-
|
|
116
|
+
/** A frame's preparation begun: staging from the stream's top, or from its start once it is mostly dead. */
|
|
117
|
+
reset() {
|
|
118
|
+
if (this.pending) {
|
|
119
|
+
// Rows written and not uploaded: the texture made again, so that the CPU's copy is its own.
|
|
120
|
+
this.rowsLines = 0;
|
|
121
|
+
}
|
|
122
|
+
if (this.pending ||
|
|
123
|
+
// Room let go of where a run found none, unless the last frame used all of the stream.
|
|
124
|
+
(this.full && (this.vertexTop > this.liveVertices || this.indexTop > this.liveIndices)) ||
|
|
125
|
+
(this.vertexTop > VERTICES_LEAST && this.vertexTop > this.liveVertices * 2) ||
|
|
126
|
+
(this.indexTop > INDICES_LEAST && this.indexTop > this.liveIndices * 2)) {
|
|
127
|
+
this.clear();
|
|
128
|
+
}
|
|
129
|
+
this.full = false;
|
|
130
|
+
const seen = this.seenBefore;
|
|
131
|
+
this.seenBefore = this.seen;
|
|
132
|
+
this.seen = seen;
|
|
133
|
+
seen.clear();
|
|
134
|
+
this.frame++;
|
|
135
|
+
this.fromVertex = this.vertexTop;
|
|
136
|
+
this.fromIndex = this.indexTop;
|
|
137
|
+
this.liveVertices = 0;
|
|
138
|
+
this.liveIndices = 0;
|
|
139
|
+
this.changedFrom = this.slotTop;
|
|
140
|
+
this.changedTo = 0;
|
|
141
|
+
this.pending = true;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* The segment that draws the run, of at least `least` draws: one kept, or
|
|
145
|
+
* one staged now; null leaves it to the atlas, where copying would cost
|
|
146
|
+
* too much: a run short or of geometry added this `frame` is cheaper
|
|
147
|
+
* drawn from it, and with `settled` a run not drawn the frame before
|
|
148
|
+
* too, as a run that changes from frame to frame, as an animation's do,
|
|
149
|
+
* would be copied again each frame. Its vertices carry each draw's slot
|
|
150
|
+
* in the rows' texture, where `rows` are written.
|
|
151
|
+
*/
|
|
152
|
+
add(places, rows, count, frame, least, settled) {
|
|
153
|
+
if (count < least) {
|
|
154
|
+
return null;
|
|
88
155
|
}
|
|
89
|
-
let vertices =
|
|
90
|
-
let indices =
|
|
156
|
+
let vertices = 0;
|
|
157
|
+
let indices = 0;
|
|
158
|
+
// The run's geometries by where they lie in the atlas, which no two live geometries share.
|
|
159
|
+
let key = count;
|
|
91
160
|
for (let i = 0; i < count; i++) {
|
|
92
161
|
const place = places[i];
|
|
93
162
|
if (!place.batch || place.batch.frame === frame) {
|
|
94
|
-
return;
|
|
163
|
+
return null;
|
|
95
164
|
}
|
|
96
165
|
vertices += place.vertices;
|
|
97
166
|
indices += place.indices;
|
|
167
|
+
key = Math.imul(key ^ place.indexStart, 0x9e3779b1) ^ place.indices;
|
|
98
168
|
}
|
|
99
|
-
|
|
100
|
-
|
|
169
|
+
const first = places[0].batch;
|
|
170
|
+
let list = this.segments.get(first);
|
|
171
|
+
if (list) {
|
|
172
|
+
for (const segment of list) {
|
|
173
|
+
// A copy a run drew this frame already serves another only with the same rows.
|
|
174
|
+
if (segment.batches.length === count &&
|
|
175
|
+
this.holds(segment, places) &&
|
|
176
|
+
(segment.frame !== this.frame || this.rowsAre(segment.slot, rows, count))) {
|
|
177
|
+
this.use(segment);
|
|
178
|
+
this.writeRows(segment.slot, rows, count);
|
|
179
|
+
return segment;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
// A key alike by chance merges a run a frame early, which costs a copy and draws the same.
|
|
184
|
+
this.seen.add(key);
|
|
185
|
+
if (settled && !this.seenBefore.has(key)) {
|
|
186
|
+
return null;
|
|
187
|
+
}
|
|
188
|
+
if (this.vertexTop + vertices > VERTICES_MOST ||
|
|
189
|
+
this.indexTop + indices > INDICES_MOST ||
|
|
190
|
+
this.slotTop + count > this.slotsMost) {
|
|
191
|
+
this.full = true;
|
|
192
|
+
return null;
|
|
101
193
|
}
|
|
194
|
+
const segment = {
|
|
195
|
+
batches: new Array(count),
|
|
196
|
+
vertexStart: this.vertexTop,
|
|
197
|
+
vertices,
|
|
198
|
+
indexStart: this.indexTop,
|
|
199
|
+
indices,
|
|
200
|
+
slot: this.slotTop,
|
|
201
|
+
frame: -1,
|
|
202
|
+
};
|
|
203
|
+
this.slotTop += count;
|
|
204
|
+
this.stageRoom(this.vertexTop + vertices - this.fromVertex, this.indexTop + indices - this.fromIndex);
|
|
205
|
+
const floats = this.floats;
|
|
206
|
+
const words = this.words;
|
|
207
|
+
const staged = this.indices;
|
|
102
208
|
for (let i = 0; i < count; i++) {
|
|
103
209
|
const place = places[i];
|
|
104
210
|
const batch = place.batch;
|
|
105
|
-
|
|
106
|
-
if (!this.changed &&
|
|
107
|
-
(this.previous[this.cursor] !== batch || this.previousRows[this.cursor] !== rows[i])) {
|
|
108
|
-
this.changed = true;
|
|
109
|
-
this.fromVertex = this.vertexTop;
|
|
110
|
-
this.fromIndex = this.indexTop;
|
|
111
|
-
}
|
|
112
|
-
this.previous[this.cursor] = batch;
|
|
113
|
-
this.previousRows[this.cursor++] = rows[i];
|
|
114
|
-
if (!this.changed) {
|
|
115
|
-
this.vertexTop += place.vertices;
|
|
116
|
-
this.indexTop += place.indices;
|
|
117
|
-
continue;
|
|
118
|
-
}
|
|
119
|
-
this.stageRoom(vertices - this.fromVertex, indices - this.fromIndex);
|
|
211
|
+
segment.batches[i] = batch;
|
|
120
212
|
const data = batch.data;
|
|
121
213
|
const base = this.vertexTop;
|
|
122
|
-
const floats = this.floats;
|
|
123
|
-
const words = this.words;
|
|
124
214
|
for (let j = 0; j < place.vertices; j++) {
|
|
125
215
|
const at = (base - this.fromVertex + j) * WORDS;
|
|
126
216
|
floats[at] = data.positions[j * 2];
|
|
@@ -128,9 +218,8 @@ export class FillBatches {
|
|
|
128
218
|
floats[at + 2] = data.texels ? data.texels[j * 2] : 0;
|
|
129
219
|
floats[at + 3] = data.texels ? data.texels[j * 2 + 1] : 0;
|
|
130
220
|
words[at + 4] = data.colors[j];
|
|
131
|
-
words[at + 5] =
|
|
221
|
+
words[at + 5] = segment.slot + i;
|
|
132
222
|
}
|
|
133
|
-
const staged = this.indices;
|
|
134
223
|
let at = this.indexTop - this.fromIndex;
|
|
135
224
|
for (let j = 0; j < place.indices; j++) {
|
|
136
225
|
staged[at++] = base + data.indices[j];
|
|
@@ -138,20 +227,118 @@ export class FillBatches {
|
|
|
138
227
|
this.vertexTop += place.vertices;
|
|
139
228
|
this.indexTop += place.indices;
|
|
140
229
|
}
|
|
230
|
+
if (!list) {
|
|
231
|
+
list = [];
|
|
232
|
+
this.segments.set(first, list);
|
|
233
|
+
}
|
|
234
|
+
list.push(segment);
|
|
235
|
+
this.use(segment);
|
|
236
|
+
this.writeRows(segment.slot, rows, count);
|
|
237
|
+
return segment;
|
|
238
|
+
}
|
|
239
|
+
/** Whether the `count` rows from `slot` are `rows`. */
|
|
240
|
+
rowsAre(slot, rows, count) {
|
|
241
|
+
for (let i = 0; i < count; i++) {
|
|
242
|
+
if (this.rows[slot + i] !== rows[i]) {
|
|
243
|
+
return false;
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
return true;
|
|
247
|
+
}
|
|
248
|
+
/** `rows` written from `slot` on, what changes counted for the upload. */
|
|
249
|
+
writeRows(slot, rows, count) {
|
|
250
|
+
if (slot + count > this.rows.length) {
|
|
251
|
+
const lines = Math.ceil(Math.max(slot + count, this.rows.length * 2) / MERGED_LINE);
|
|
252
|
+
const grown = new Int32Array(lines * MERGED_LINE);
|
|
253
|
+
grown.set(this.rows);
|
|
254
|
+
this.rows = grown;
|
|
255
|
+
}
|
|
256
|
+
const held = this.rows;
|
|
257
|
+
for (let i = 0; i < count; i++) {
|
|
258
|
+
if (held[slot + i] !== rows[i]) {
|
|
259
|
+
held[slot + i] = rows[i];
|
|
260
|
+
this.changedFrom = Math.min(this.changedFrom, slot + i);
|
|
261
|
+
this.changedTo = Math.max(this.changedTo, slot + i + 1);
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
/** The rows' texture made tall enough for the slots taken, and the lines this frame changed uploaded. */
|
|
266
|
+
uploadRows() {
|
|
267
|
+
const gl = this.gl;
|
|
268
|
+
const lines = Math.ceil(this.slotTop / MERGED_LINE);
|
|
269
|
+
if (lines > this.rowsLines) {
|
|
270
|
+
if (this.rowsTexture) {
|
|
271
|
+
this.state.dropTexture(this.rowsTexture);
|
|
272
|
+
gl.deleteTexture(this.rowsTexture);
|
|
273
|
+
}
|
|
274
|
+
// A new texture holds zeros: the rows taken uploaded again, the CPU's past them zeros too.
|
|
275
|
+
this.rows.fill(0, this.slotTop);
|
|
276
|
+
this.rowsLines = Math.min(this.slotsMost / MERGED_LINE, Math.max(lines, this.rowsLines * 2));
|
|
277
|
+
this.rowsTexture = gl.createTexture();
|
|
278
|
+
this.state.bindTexture(MERGED_UNIT, this.rowsTexture);
|
|
279
|
+
this.state.activeTexture(MERGED_UNIT);
|
|
280
|
+
gl.texStorage2D(gl.TEXTURE_2D, 1, gl.R32I, MERGED_LINE, this.rowsLines);
|
|
281
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.NEAREST);
|
|
282
|
+
gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.NEAREST);
|
|
283
|
+
this.changedFrom = 0;
|
|
284
|
+
this.changedTo = this.slotTop;
|
|
285
|
+
}
|
|
286
|
+
if (this.changedTo <= this.changedFrom) {
|
|
287
|
+
return;
|
|
288
|
+
}
|
|
289
|
+
const from = Math.floor(this.changedFrom / MERGED_LINE);
|
|
290
|
+
const to = Math.ceil(this.changedTo / MERGED_LINE);
|
|
291
|
+
this.state.bindTexture(MERGED_UNIT, this.rowsTexture);
|
|
292
|
+
this.state.activeTexture(MERGED_UNIT);
|
|
293
|
+
gl.texSubImage2D(gl.TEXTURE_2D, 0, 0, from, MERGED_LINE, to - from, gl.RED_INTEGER, gl.INT, this.rows, from * MERGED_LINE);
|
|
294
|
+
}
|
|
295
|
+
/** Whether `segment` is of the geometries of `places`, in their order. */
|
|
296
|
+
holds(segment, places) {
|
|
297
|
+
const batches = segment.batches;
|
|
298
|
+
for (let i = 0; i < batches.length; i++) {
|
|
299
|
+
if (batches[i] !== places[i].batch) {
|
|
300
|
+
return false;
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
return true;
|
|
304
|
+
}
|
|
305
|
+
/** `segment` used this frame, counted once among what the frame used. */
|
|
306
|
+
use(segment) {
|
|
307
|
+
if (segment.frame !== this.frame) {
|
|
308
|
+
segment.frame = this.frame;
|
|
309
|
+
this.liveVertices += segment.vertices;
|
|
310
|
+
this.liveIndices += segment.indices;
|
|
311
|
+
}
|
|
141
312
|
}
|
|
142
313
|
/**
|
|
143
|
-
* The staged
|
|
144
|
-
*
|
|
145
|
-
* SHRINK_FRAMES has used a quarter of the room or
|
|
146
|
-
* the staging made smaller.
|
|
314
|
+
* The staged segments uploaded where they lie, the buffers grown to fit
|
|
315
|
+
* them first, keeping what is below; the segments no run used let go of;
|
|
316
|
+
* and, once a watch of SHRINK_FRAMES has used a quarter of the room or
|
|
317
|
+
* less, the buffers and the staging made smaller.
|
|
147
318
|
*/
|
|
148
319
|
upload() {
|
|
149
|
-
this.
|
|
150
|
-
this.previousRows.length = this.cursor;
|
|
151
|
-
const staging = this.changed && this.indexTop > 0;
|
|
320
|
+
const staging = this.vertexTop > this.fromVertex;
|
|
152
321
|
if (staging) {
|
|
153
322
|
this.uploadStaged();
|
|
154
323
|
}
|
|
324
|
+
if (this.slotTop > 0) {
|
|
325
|
+
this.uploadRows();
|
|
326
|
+
}
|
|
327
|
+
for (const [first, list] of this.segments) {
|
|
328
|
+
let kept = 0;
|
|
329
|
+
for (const segment of list) {
|
|
330
|
+
if (segment.frame === this.frame) {
|
|
331
|
+
list[kept++] = segment;
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
if (kept === 0) {
|
|
335
|
+
this.segments.delete(first);
|
|
336
|
+
}
|
|
337
|
+
else {
|
|
338
|
+
list.length = kept;
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
this.pending = false;
|
|
155
342
|
this.watch(staging);
|
|
156
343
|
}
|
|
157
344
|
/** What add staged uploaded where it lies, the buffers grown first to fit the stream. */
|
|
@@ -169,9 +356,13 @@ export class FillBatches {
|
|
|
169
356
|
}
|
|
170
357
|
gl.bufferSubData(gl.ARRAY_BUFFER, this.fromVertex * WORDS * 4, this.words, 0, (this.vertexTop - this.fromVertex) * WORDS);
|
|
171
358
|
gl.bufferSubData(gl.ELEMENT_ARRAY_BUFFER, this.fromIndex * 4, this.indices, 0, this.indexTop - this.fromIndex);
|
|
172
|
-
this.changed = false;
|
|
173
359
|
}
|
|
174
360
|
destroy() {
|
|
361
|
+
if (this.rowsTexture) {
|
|
362
|
+
this.state.dropTexture(this.rowsTexture);
|
|
363
|
+
this.gl.deleteTexture(this.rowsTexture);
|
|
364
|
+
this.rowsTexture = null;
|
|
365
|
+
}
|
|
175
366
|
this.gl.deleteVertexArray(this.vertexArray);
|
|
176
367
|
this.gl.deleteBuffer(this.vertexBuffer);
|
|
177
368
|
this.gl.deleteBuffer(this.indexBuffer);
|
|
@@ -210,10 +401,8 @@ export class FillBatches {
|
|
|
210
401
|
return;
|
|
211
402
|
}
|
|
212
403
|
const gl = this.gl;
|
|
213
|
-
|
|
214
|
-
const
|
|
215
|
-
const keepVertices = kept ? this.vertexTop : 0;
|
|
216
|
-
const keepIndices = kept ? this.indexTop : 0;
|
|
404
|
+
const keepVertices = this.vertexTop;
|
|
405
|
+
const keepIndices = this.indexTop;
|
|
217
406
|
const vertices = Math.max(VERTICES_LEAST, this.mostVertices * 2);
|
|
218
407
|
if (this.mostVertices * 4 <= this.vertexCapacity && vertices < this.vertexCapacity) {
|
|
219
408
|
this.state.bindVertexArray(this.vertexArray);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"batches.js","sourceRoot":"","sources":["../../src/webgl/batches.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"batches.js","sourceRoot":"","sources":["../../src/webgl/batches.ts"],"names":[],"mappings":"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"}
|
package/dist/webgl/draws.d.ts
CHANGED
|
@@ -18,9 +18,10 @@ export interface Masks {
|
|
|
18
18
|
/**
|
|
19
19
|
* The draws of a scene list's entries into the target bound: fills in runs,
|
|
20
20
|
* one multi-draw of the atlas's index ranges a run where WEBGL_multi_draw
|
|
21
|
-
* is,
|
|
22
|
-
*
|
|
23
|
-
*
|
|
21
|
+
* is, else one draw of the run copied into the merged stream where its
|
|
22
|
+
* geometries are small; meshes and advanced text's glyphs each by a program
|
|
23
|
+
* of its own, and the masks' coverage into the stencil; and the view of the
|
|
24
|
+
* target drawn into, which each program is told.
|
|
24
25
|
*/
|
|
25
26
|
export declare class Draws {
|
|
26
27
|
/** Where shader fills find the frame's filters, whose chains their draws name (SHADED). */
|
|
@@ -53,9 +54,16 @@ export declare class Draws {
|
|
|
53
54
|
private blendBackLocation;
|
|
54
55
|
/** WEBGL_multi_draw, which draws a run of fills alike a call (drawEntries), where there is. */
|
|
55
56
|
private multi;
|
|
57
|
+
/**
|
|
58
|
+
* Whether, without WEBGL_multi_draw, runs are merged; false draws a call a
|
|
59
|
+
* fill, as a reference the merged draws are tested against (multi-draw.ts).
|
|
60
|
+
*/
|
|
61
|
+
merging: boolean;
|
|
56
62
|
/** Avoid the dynamically indexed uniform table used in the Intel GPU hang reproducer. */
|
|
57
63
|
private runTable;
|
|
58
64
|
private runBaseLocation;
|
|
65
|
+
/** The table start the fill program was told last (uRunBase), -1 for none. */
|
|
66
|
+
private runBase;
|
|
59
67
|
private runTableHeight;
|
|
60
68
|
private runTableMost;
|
|
61
69
|
private tableRows;
|
|
@@ -129,7 +137,11 @@ export declare class Draws {
|
|
|
129
137
|
kernels: KernelPrograms);
|
|
130
138
|
/** The fill, mesh and glyph programs made, as the context comes or comes back. */
|
|
131
139
|
setUp(textureMost: number): void;
|
|
132
|
-
/**
|
|
140
|
+
/**
|
|
141
|
+
* Upload before any draws, so that updating a run cannot stall earlier
|
|
142
|
+
* draws reading it: the run table, with WEBGL_multi_draw, and the merged
|
|
143
|
+
* stream and its rows.
|
|
144
|
+
*/
|
|
133
145
|
prepare(commands: Commands, scene: SceneList): void;
|
|
134
146
|
private sizeRunTable;
|
|
135
147
|
/**
|
|
@@ -174,12 +186,18 @@ export declare class Draws {
|
|
|
174
186
|
maskBy(masks: Masks): void;
|
|
175
187
|
/** The draws at `scene`'s entries from `first` up to `end`; for the stencil alone, untextured. */
|
|
176
188
|
drawEntries(scene: SceneList, first: number, end: number, stencil: boolean, command: number): void;
|
|
189
|
+
/** The fill program told where its run starts in the run table, if it was told another. */
|
|
190
|
+
private tellRunBase;
|
|
177
191
|
/**
|
|
178
192
|
* The fills from entry `i` on that one call draws, as many as fit its
|
|
179
|
-
* textures (FILL_TEXTURES, each with its sampling)
|
|
180
|
-
*
|
|
181
|
-
*
|
|
182
|
-
*
|
|
193
|
+
* textures (FILL_TEXTURES, each with its sampling), RUN_MOST at most:
|
|
194
|
+
* their runCounts, runOffsets and runRows (FILL_SLOT), and the units their
|
|
195
|
+
* textures take in runUnits. Without WEBGL_multi_draw, a run is of
|
|
196
|
+
* geometries too large to merge (Place.batch), of geometries added this
|
|
197
|
+
* frame, or of stable ones alone, so that a stable run's merged copy is
|
|
198
|
+
* drawn again while a part of it changes from frame to frame; and without
|
|
199
|
+
* merging each fill is a run. The last entry gathered, past those whose
|
|
200
|
+
* texture is gone, which draw nothing.
|
|
183
201
|
*/
|
|
184
202
|
private gatherRun;
|
|
185
203
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draws.d.ts","sourceRoot":"","sources":["../../src/webgl/draws.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAe,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,KAAK,QAAQ,EAAkC,MAAM,gBAAgB,CAAC;AAC/E,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,EAQL,KAAK,SAAS,EAIf,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,aAAa,EAAS,MAAM,YAAY,CAAC;AAGvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"draws.d.ts","sourceRoot":"","sources":["../../src/webgl/draws.ts"],"names":[],"mappings":"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"}
|