@aardworx/wombat.rendering 0.19.24 → 0.20.0
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/core/elementType.d.ts +2 -0
- package/dist/core/elementType.d.ts.map +1 -1
- package/dist/core/elementType.js +10 -0
- package/dist/core/elementType.js.map +1 -1
- package/dist/core/provider.d.ts.map +1 -1
- package/dist/core/provider.js +65 -32
- package/dist/core/provider.js.map +1 -1
- package/dist/core/renderObject.d.ts +18 -0
- package/dist/core/renderObject.d.ts.map +1 -1
- package/dist/resources/preparedRenderObject.d.ts.map +1 -1
- package/dist/resources/preparedRenderObject.js +28 -5
- package/dist/resources/preparedRenderObject.js.map +1 -1
- package/dist/resources/uniformBuffer.d.ts.map +1 -1
- package/dist/resources/uniformBuffer.js +3 -1
- package/dist/resources/uniformBuffer.js.map +1 -1
- package/dist/runtime/derivedModes/modeKeyCpu.d.ts +2 -12
- package/dist/runtime/derivedModes/modeKeyCpu.d.ts.map +1 -1
- package/dist/runtime/derivedModes/modeKeyCpu.js +30 -13
- package/dist/runtime/derivedModes/modeKeyCpu.js.map +1 -1
- package/dist/runtime/derivedModes/partitionDispatcher.d.ts +11 -0
- package/dist/runtime/derivedModes/partitionDispatcher.d.ts.map +1 -1
- package/dist/runtime/derivedModes/partitionDispatcher.js +31 -0
- package/dist/runtime/derivedModes/partitionDispatcher.js.map +1 -1
- package/dist/runtime/derivedUniforms/codegen.d.ts.map +1 -1
- package/dist/runtime/derivedUniforms/codegen.js +34 -13
- package/dist/runtime/derivedUniforms/codegen.js.map +1 -1
- package/dist/runtime/derivedUniforms/dispatch.d.ts.map +1 -1
- package/dist/runtime/derivedUniforms/dispatch.js +6 -0
- package/dist/runtime/derivedUniforms/dispatch.js.map +1 -1
- package/dist/runtime/derivedUniforms/records.d.ts +15 -0
- package/dist/runtime/derivedUniforms/records.d.ts.map +1 -1
- package/dist/runtime/derivedUniforms/records.js +81 -14
- package/dist/runtime/derivedUniforms/records.js.map +1 -1
- package/dist/runtime/derivedUniforms/sceneIntegration.d.ts +6 -0
- package/dist/runtime/derivedUniforms/sceneIntegration.d.ts.map +1 -1
- package/dist/runtime/derivedUniforms/sceneIntegration.js +18 -4
- package/dist/runtime/derivedUniforms/sceneIntegration.js.map +1 -1
- package/dist/runtime/flattenTree.d.ts.map +1 -1
- package/dist/runtime/flattenTree.js +46 -2
- package/dist/runtime/flattenTree.js.map +1 -1
- package/dist/runtime/heapAdapter.d.ts +3 -1
- package/dist/runtime/heapAdapter.d.ts.map +1 -1
- package/dist/runtime/heapAdapter.js +45 -4
- package/dist/runtime/heapAdapter.js.map +1 -1
- package/dist/runtime/heapDecoder.d.ts.map +1 -1
- package/dist/runtime/heapDecoder.js +8 -3
- package/dist/runtime/heapDecoder.js.map +1 -1
- package/dist/runtime/heapEffect.d.ts +36 -1
- package/dist/runtime/heapEffect.d.ts.map +1 -1
- package/dist/runtime/heapEffect.js +29 -2
- package/dist/runtime/heapEffect.js.map +1 -1
- package/dist/runtime/heapEffectIR.d.ts.map +1 -1
- package/dist/runtime/heapEffectIR.js +51 -11
- package/dist/runtime/heapEffectIR.js.map +1 -1
- package/dist/runtime/heapEligibility.d.ts.map +1 -1
- package/dist/runtime/heapEligibility.js +64 -12
- package/dist/runtime/heapEligibility.js.map +1 -1
- package/dist/runtime/heapIrBuilders.d.ts +8 -0
- package/dist/runtime/heapIrBuilders.d.ts.map +1 -1
- package/dist/runtime/heapIrBuilders.js +47 -2
- package/dist/runtime/heapIrBuilders.js.map +1 -1
- package/dist/runtime/heapScene/chunkedArena.d.ts +20 -28
- package/dist/runtime/heapScene/chunkedArena.d.ts.map +1 -1
- package/dist/runtime/heapScene/chunkedArena.js +28 -91
- package/dist/runtime/heapScene/chunkedArena.js.map +1 -1
- package/dist/runtime/heapScene/freelist.d.ts +1 -1
- package/dist/runtime/heapScene/freelist.js +3 -3
- package/dist/runtime/heapScene/freelist.js.map +1 -1
- package/dist/runtime/heapScene/pools.d.ts +103 -59
- package/dist/runtime/heapScene/pools.d.ts.map +1 -1
- package/dist/runtime/heapScene/pools.js +335 -194
- package/dist/runtime/heapScene/pools.js.map +1 -1
- package/dist/runtime/heapScene.d.ts +125 -1
- package/dist/runtime/heapScene.d.ts.map +1 -1
- package/dist/runtime/heapScene.js +671 -126
- package/dist/runtime/heapScene.js.map +1 -1
- package/dist/runtime/heapShaderFamily.d.ts.map +1 -1
- package/dist/runtime/heapShaderFamily.js +19 -0
- package/dist/runtime/heapShaderFamily.js.map +1 -1
- package/dist/runtime/hybridScene.d.ts +6 -0
- package/dist/runtime/hybridScene.d.ts.map +1 -1
- package/dist/runtime/hybridScene.js +36 -3
- package/dist/runtime/hybridScene.js.map +1 -1
- package/dist/runtime/index.d.ts +1 -1
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +1 -1
- package/dist/runtime/index.js.map +1 -1
- package/dist/runtime/renderTask.d.ts +6 -0
- package/dist/runtime/renderTask.d.ts.map +1 -1
- package/dist/runtime/renderTask.js +3 -0
- package/dist/runtime/renderTask.js.map +1 -1
- package/dist/runtime/runtime.d.ts +15 -0
- package/dist/runtime/runtime.d.ts.map +1 -1
- package/dist/runtime/runtime.js +3 -0
- package/dist/runtime/runtime.js.map +1 -1
- package/dist/runtime/textureAtlas/atlasMipGutterKernel.d.ts +19 -2
- package/dist/runtime/textureAtlas/atlasMipGutterKernel.d.ts.map +1 -1
- package/dist/runtime/textureAtlas/atlasMipGutterKernel.js +37 -6
- package/dist/runtime/textureAtlas/atlasMipGutterKernel.js.map +1 -1
- package/dist/runtime/textureAtlas/atlasPool.d.ts +5 -0
- package/dist/runtime/textureAtlas/atlasPool.d.ts.map +1 -1
- package/dist/runtime/textureAtlas/atlasPool.js +25 -3
- package/dist/runtime/textureAtlas/atlasPool.js.map +1 -1
- package/dist/window/loop.d.ts.map +1 -1
- package/dist/window/loop.js +31 -4
- package/dist/window/loop.js.map +1 -1
- package/package.json +3 -3
- package/src/core/elementType.ts +10 -0
- package/src/core/provider.ts +56 -28
- package/src/core/renderObject.ts +18 -0
- package/src/resources/preparedRenderObject.ts +29 -6
- package/src/resources/uniformBuffer.ts +3 -1
- package/src/runtime/derivedModes/modeKeyCpu.ts +26 -11
- package/src/runtime/derivedModes/partitionDispatcher.ts +30 -0
- package/src/runtime/derivedUniforms/codegen.ts +34 -13
- package/src/runtime/derivedUniforms/dispatch.ts +6 -0
- package/src/runtime/derivedUniforms/records.ts +70 -15
- package/src/runtime/derivedUniforms/sceneIntegration.ts +19 -4
- package/src/runtime/flattenTree.ts +47 -2
- package/src/runtime/heapAdapter.ts +43 -5
- package/src/runtime/heapDecoder.ts +8 -3
- package/src/runtime/heapEffect.ts +44 -2
- package/src/runtime/heapEffectIR.ts +54 -11
- package/src/runtime/heapEligibility.ts +39 -12
- package/src/runtime/heapIrBuilders.ts +50 -2
- package/src/runtime/heapScene/chunkedArena.ts +29 -94
- package/src/runtime/heapScene/freelist.ts +3 -3
- package/src/runtime/heapScene/pools.ts +340 -218
- package/src/runtime/heapScene.ts +826 -142
- package/src/runtime/heapShaderFamily.ts +21 -0
- package/src/runtime/hybridScene.ts +43 -3
- package/src/runtime/index.ts +5 -0
- package/src/runtime/renderTask.ts +9 -0
- package/src/runtime/runtime.ts +18 -0
- package/src/runtime/textureAtlas/atlasMipGutterKernel.ts +52 -3
- package/src/runtime/textureAtlas/atlasPool.ts +28 -2
- package/src/window/loop.ts +32 -4
|
@@ -41,7 +41,51 @@ const MIN_STRIDE_U32 = 5; // rule_id, out_slot, in0, in1, in2 — covers the 13
|
|
|
41
41
|
export class RecordsBuffer {
|
|
42
42
|
buf;
|
|
43
43
|
owners = [];
|
|
44
|
+
/** Record indices per owner. A single number for the common one-
|
|
45
|
+
* record-per-owner case, promoted to a small array on the second —
|
|
46
|
+
* saves a whole `Set` per RO at heap scale. */
|
|
44
47
|
byOwner = new Map();
|
|
48
|
+
ownerAdd(owner, idx) {
|
|
49
|
+
const v = this.byOwner.get(owner);
|
|
50
|
+
if (v === undefined)
|
|
51
|
+
this.byOwner.set(owner, idx);
|
|
52
|
+
else if (typeof v === "number")
|
|
53
|
+
this.byOwner.set(owner, [v, idx]);
|
|
54
|
+
else
|
|
55
|
+
v.push(idx);
|
|
56
|
+
}
|
|
57
|
+
ownerDelete(owner, idx) {
|
|
58
|
+
const v = this.byOwner.get(owner);
|
|
59
|
+
if (v === undefined)
|
|
60
|
+
return;
|
|
61
|
+
if (typeof v === "number") {
|
|
62
|
+
if (v === idx)
|
|
63
|
+
this.byOwner.delete(owner);
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
const i = v.indexOf(idx);
|
|
67
|
+
if (i >= 0) {
|
|
68
|
+
v[i] = v[v.length - 1];
|
|
69
|
+
v.pop();
|
|
70
|
+
if (v.length === 1)
|
|
71
|
+
this.byOwner.set(owner, v[0]);
|
|
72
|
+
else if (v.length === 0)
|
|
73
|
+
this.byOwner.delete(owner);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
ownerReplace(owner, oldIdx, newIdx) {
|
|
77
|
+
const v = this.byOwner.get(owner);
|
|
78
|
+
if (v === undefined)
|
|
79
|
+
return;
|
|
80
|
+
if (typeof v === "number") {
|
|
81
|
+
if (v === oldIdx)
|
|
82
|
+
this.byOwner.set(owner, newIdx);
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
const i = v.indexOf(oldIdx);
|
|
86
|
+
if (i >= 0)
|
|
87
|
+
v[i] = newIdx;
|
|
88
|
+
}
|
|
45
89
|
strideU32 = MIN_STRIDE_U32;
|
|
46
90
|
count = 0;
|
|
47
91
|
/** Bumps whenever the byte layout changes shape (stride growth) so the dispatcher recompiles. */
|
|
@@ -79,43 +123,66 @@ export class RecordsBuffer {
|
|
|
79
123
|
for (let i = base + 2 + inSlots.length; i < base + this.strideU32; i++)
|
|
80
124
|
this.buf[i] = 0;
|
|
81
125
|
this.owners[idx] = owner;
|
|
82
|
-
|
|
83
|
-
if (set === undefined) {
|
|
84
|
-
set = new Set();
|
|
85
|
-
this.byOwner.set(owner, set);
|
|
86
|
-
}
|
|
87
|
-
set.add(idx);
|
|
126
|
+
this.ownerAdd(owner, idx);
|
|
88
127
|
this.generation++;
|
|
89
128
|
return idx;
|
|
90
129
|
}
|
|
91
130
|
/** Remove every record owned by `owner` (swap-remove against the tail). */
|
|
92
131
|
removeAllForOwner(owner) {
|
|
93
|
-
const
|
|
94
|
-
if (
|
|
95
|
-
this.byOwner.delete(owner);
|
|
132
|
+
const v = this.byOwner.get(owner);
|
|
133
|
+
if (v === undefined) {
|
|
96
134
|
return;
|
|
97
135
|
}
|
|
98
136
|
// Process highest indices first so a swap can never move a not-yet-removed
|
|
99
137
|
// record of this owner that we still hold a stale index for.
|
|
100
|
-
const indices = [...
|
|
138
|
+
const indices = typeof v === "number" ? [v] : [...v].sort((a, b) => b - a);
|
|
101
139
|
for (const idx of indices)
|
|
102
140
|
this.removeAt(idx);
|
|
103
141
|
this.byOwner.delete(owner);
|
|
104
142
|
this.generation++;
|
|
105
143
|
}
|
|
144
|
+
/**
|
|
145
|
+
* Re-seat `HostHeap` handles after a main-heap compaction relocated their
|
|
146
|
+
* backing allocations. `remap` maps an OLD handle payload (the data byte
|
|
147
|
+
* offset in the main heap) to its NEW one. `Constituent` handles point into
|
|
148
|
+
* the separate df32 slot buffer (never compacted) and are left untouched.
|
|
149
|
+
* Returns the number of handle words rewritten; bumps `generation` so the
|
|
150
|
+
* dispatcher re-uploads. O(records × stride).
|
|
151
|
+
*/
|
|
152
|
+
remapHostHeap(remap) {
|
|
153
|
+
if (remap.size === 0 || this.count === 0)
|
|
154
|
+
return 0;
|
|
155
|
+
const s = this.strideU32;
|
|
156
|
+
let changed = 0;
|
|
157
|
+
for (let i = 0; i < this.count; i++) {
|
|
158
|
+
const base = i * s;
|
|
159
|
+
// out_slot at base+1, in_slots at base+2 .. base+s-1.
|
|
160
|
+
for (let w = base + 1; w < base + s; w++) {
|
|
161
|
+
const h = this.buf[w];
|
|
162
|
+
if (handleTag(h) !== SlotTag.HostHeap)
|
|
163
|
+
continue;
|
|
164
|
+
const nn = remap.get(handlePayload(h));
|
|
165
|
+
if (nn === undefined)
|
|
166
|
+
continue;
|
|
167
|
+
this.buf[w] = makeHandle(SlotTag.HostHeap, nn);
|
|
168
|
+
changed++;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
if (changed > 0)
|
|
172
|
+
this.generation++;
|
|
173
|
+
return changed;
|
|
174
|
+
}
|
|
106
175
|
removeAt(idx) {
|
|
107
176
|
const last = this.count - 1;
|
|
108
177
|
// The record currently at `idx` is the one being removed.
|
|
109
|
-
this.
|
|
178
|
+
this.ownerDelete(this.owners[idx], idx);
|
|
110
179
|
if (idx !== last) {
|
|
111
180
|
// Move the tail record's words into the hole, and re-home it.
|
|
112
181
|
const dst = idx * this.strideU32;
|
|
113
182
|
const src = last * this.strideU32;
|
|
114
183
|
this.buf.copyWithin(dst, src, src + this.strideU32);
|
|
115
184
|
const lastOwner = this.owners[last];
|
|
116
|
-
|
|
117
|
-
lset.delete(last);
|
|
118
|
-
lset.add(idx);
|
|
185
|
+
this.ownerReplace(lastOwner, last, idx);
|
|
119
186
|
this.owners[idx] = lastOwner;
|
|
120
187
|
}
|
|
121
188
|
this.owners[last] = undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"records.js","sourceRoot":"","sources":["../../../src/runtime/derivedUniforms/records.ts"],"names":[],"mappings":"AAAA,iGAAiG;AACjG,EAAE;AACF,kFAAkF;AAClF,qDAAqD;AACrD,6EAA6E;AAC7E,uFAAuF;AACvF,kBAAkB;AAClB,EAAE;AACF,sFAAsF;AACtF,0FAA0F;AAC1F,yFAAyF;AACzF,wFAAwF;AACxF,wFAAwF;AAExF,gFAAgF;AAChF,MAAM,CAAN,IAAkB,OASjB;AATD,WAAkB,OAAO;IACvB,+EAA+E;IAC/E,mDAAe,CAAA;IACf;;;oFAGgF;IAChF,6CAAY,CAAA;IACZ,sEAAsE;AACxE,CAAC,EATiB,OAAO,KAAP,OAAO,QASxB;AAED,MAAM,SAAS,GAAG,EAAE,CAAC;AACrB,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,aAAa;AAExD,MAAM,UAAU,UAAU,CAAC,GAAY,EAAE,OAAe;IACtD,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,YAAY,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CAAC,iCAAiC,OAAO,sBAAsB,YAAY,GAAG,CAAC,CAAC;IACjG,CAAC;IACD,OAAO,CAAC,CAAC,GAAG,IAAI,SAAS,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9C,CAAC;AACD,MAAM,UAAU,SAAS,CAAC,CAAS;IACjC,OAAO,CAAC,CAAC,KAAK,SAAS,CAAY,CAAC;AACtC,CAAC;AACD,MAAM,UAAU,aAAa,CAAC,CAAS;IACrC,OAAO,CAAC,GAAG,YAAY,CAAC;AAC1B,CAAC;AAKD,MAAM,cAAc,GAAG,CAAC,CAAC,CAAC,oEAAoE;AAE9F,MAAM,OAAO,aAAa;IAChB,GAAG,CAAc;IACjB,MAAM,GAAgC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"records.js","sourceRoot":"","sources":["../../../src/runtime/derivedUniforms/records.ts"],"names":[],"mappings":"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"}
|
|
@@ -45,6 +45,12 @@ export declare class DerivedUniformsScene {
|
|
|
45
45
|
private firstHeapGetter;
|
|
46
46
|
/** Get-or-create the records buffer for `chunkIdx`. */
|
|
47
47
|
recordsFor(chunkIdx: number): RecordsBuffer;
|
|
48
|
+
/**
|
|
49
|
+
* Re-seat the per-chunk derived-uniform records' `HostHeap` handles
|
|
50
|
+
* (derived outputs and host-uniform inputs) after the main heap compacted
|
|
51
|
+
* `chunkIdx`. `remap` maps OLD→NEW data byte offsets. Returns words changed.
|
|
52
|
+
*/
|
|
53
|
+
remapHostHeap(chunkIdx: number, remap: ReadonlyMap<number, number>): number;
|
|
48
54
|
/** Total record count summed across every chunk's records buffer.
|
|
49
55
|
* Used by the scene's stats / diagnostics. */
|
|
50
56
|
get totalRecordCount(): number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sceneIntegration.d.ts","sourceRoot":"","sources":["../../../src/runtime/derivedUniforms/sceneIntegration.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"sceneIntegration.d.ts","sourceRoot":"","sources":["../../../src/runtime/derivedUniforms/sceneIntegration.ts"],"names":[],"mappings":"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"}
|
|
@@ -93,6 +93,15 @@ export class DerivedUniformsScene {
|
|
|
93
93
|
}
|
|
94
94
|
return r;
|
|
95
95
|
}
|
|
96
|
+
/**
|
|
97
|
+
* Re-seat the per-chunk derived-uniform records' `HostHeap` handles
|
|
98
|
+
* (derived outputs and host-uniform inputs) after the main heap compacted
|
|
99
|
+
* `chunkIdx`. `remap` maps OLD→NEW data byte offsets. Returns words changed.
|
|
100
|
+
*/
|
|
101
|
+
remapHostHeap(chunkIdx, remap) {
|
|
102
|
+
const r = this.recordsByChunk.get(chunkIdx);
|
|
103
|
+
return r === undefined ? 0 : r.remapHostHeap(remap);
|
|
104
|
+
}
|
|
96
105
|
/** Total record count summed across every chunk's records buffer.
|
|
97
106
|
* Used by the scene's stats / diagnostics. */
|
|
98
107
|
get totalRecordCount() {
|
|
@@ -229,15 +238,20 @@ export class TrafoTree {
|
|
|
229
238
|
this.byKey.set(key, node);
|
|
230
239
|
const h = (s) => makeHandle(SlotTag.Constituent, s);
|
|
231
240
|
const recs = this.scene.chainRecordsFor(level);
|
|
232
|
-
// node.world.fwd =
|
|
233
|
-
//
|
|
241
|
+
// node.world.fwd = parent.world.fwd · link.fwd (just link at the root end):
|
|
242
|
+
// deeper links sit on the RIGHT so they hit the column vector FIRST —
|
|
243
|
+
// p' = root · … · leaf · p, the scene-graph inner-first contract. (The
|
|
244
|
+
// previous `link · parent` order applied ancestors first, which put nested
|
|
245
|
+
// child trafos in WORLD space — invisible for the ubiquitous single-link
|
|
246
|
+
// chains, wrong for e.g. a translate under an adaptive billboard trafo.)
|
|
247
|
+
// node.world.inv = link.inv · parent.world.inv (reversed accordingly).
|
|
234
248
|
if (parent === undefined) {
|
|
235
249
|
recs.add(node, CHAIN_RULE_ID, h(modelPair.fwd), [1, h(link.fwd)]);
|
|
236
250
|
recs.add(node, CHAIN_RULE_ID, h(modelPair.inv), [1, h(link.inv)]);
|
|
237
251
|
}
|
|
238
252
|
else {
|
|
239
|
-
recs.add(node, CHAIN_RULE_ID, h(modelPair.fwd), [2, h(
|
|
240
|
-
recs.add(node, CHAIN_RULE_ID, h(modelPair.inv), [2, h(
|
|
253
|
+
recs.add(node, CHAIN_RULE_ID, h(modelPair.fwd), [2, h(parent.modelPair.fwd), h(link.fwd)]);
|
|
254
|
+
recs.add(node, CHAIN_RULE_ID, h(modelPair.inv), [2, h(link.inv), h(parent.modelPair.inv)]);
|
|
241
255
|
}
|
|
242
256
|
return node;
|
|
243
257
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sceneIntegration.js","sourceRoot":"","sources":["../../../src/runtime/derivedUniforms/sceneIntegration.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sceneIntegration.js","sourceRoot":"","sources":["../../../src/runtime/derivedUniforms/sceneIntegration.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flattenTree.d.ts","sourceRoot":"","sources":["../../src/runtime/flattenTree.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAQ,KAAK,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"flattenTree.d.ts","sourceRoot":"","sources":["../../src/runtime/flattenTree.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAQ,KAAK,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AA6CxD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,CA0BtE"}
|
|
@@ -15,6 +15,47 @@
|
|
|
15
15
|
// wouldn't honor anyway.
|
|
16
16
|
import { ASet } from "@aardworx/wombat.adaptive";
|
|
17
17
|
import { AListBridges } from "@aardworx/wombat.adaptive";
|
|
18
|
+
/** True when `tree` contains no reactive nodes — its RenderObjects can
|
|
19
|
+
* be enumerated as a plain iterable (no inner aset / reader needed). */
|
|
20
|
+
function isStaticTree(tree) {
|
|
21
|
+
switch (tree.kind) {
|
|
22
|
+
case "Empty":
|
|
23
|
+
case "Leaf":
|
|
24
|
+
return true;
|
|
25
|
+
case "Ordered":
|
|
26
|
+
case "Unordered":
|
|
27
|
+
return tree.children.every(isStaticTree);
|
|
28
|
+
default:
|
|
29
|
+
return false;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
/** Enumerate a static subtree's RenderObjects (pre: `isStaticTree`). */
|
|
33
|
+
function* staticObjects(tree) {
|
|
34
|
+
switch (tree.kind) {
|
|
35
|
+
case "Empty":
|
|
36
|
+
return;
|
|
37
|
+
case "Leaf":
|
|
38
|
+
yield tree.object;
|
|
39
|
+
return;
|
|
40
|
+
case "Ordered":
|
|
41
|
+
case "Unordered":
|
|
42
|
+
for (const c of tree.children)
|
|
43
|
+
yield* staticObjects(c);
|
|
44
|
+
return;
|
|
45
|
+
default:
|
|
46
|
+
throw new Error(`staticObjects: reactive node '${tree.kind}'`);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
/** Flatten a reactive container of subtrees. The static children go
|
|
50
|
+
* through `collectSeq` (plain iterables — ONE reader for the whole
|
|
51
|
+
* set, instead of a ConstantAset + reader + subscription PER LEAF,
|
|
52
|
+
* which at heap scale was megabytes of ballast); reactive children
|
|
53
|
+
* keep the full `collect`. */
|
|
54
|
+
function flattenChildSet(children) {
|
|
55
|
+
const staticPart = children.filter(isStaticTree).collectSeq(staticObjects);
|
|
56
|
+
const reactivePart = children.filter(t => !isStaticTree(t)).collect(flattenRenderTree);
|
|
57
|
+
return ASet.union(staticPart, reactivePart);
|
|
58
|
+
}
|
|
18
59
|
export function flattenRenderTree(tree) {
|
|
19
60
|
switch (tree.kind) {
|
|
20
61
|
case "Empty":
|
|
@@ -23,6 +64,9 @@ export function flattenRenderTree(tree) {
|
|
|
23
64
|
return ASet.single(tree.object);
|
|
24
65
|
case "Ordered":
|
|
25
66
|
case "Unordered": {
|
|
67
|
+
// Fully-static subtree → one constant aset over a plain array.
|
|
68
|
+
if (isStaticTree(tree))
|
|
69
|
+
return ASet.ofArray([...staticObjects(tree)]);
|
|
26
70
|
// N-ary union via `unionMany(aset<aset<T>>)`. The naïve
|
|
27
71
|
// `children.reduce(ASet.union)` builds a 2N-deep nested-union
|
|
28
72
|
// tree; the reader's traversal recurses through it and blows
|
|
@@ -37,9 +81,9 @@ export function flattenRenderTree(tree) {
|
|
|
37
81
|
case "Adaptive":
|
|
38
82
|
return ASet.bind(flattenRenderTree, tree.tree);
|
|
39
83
|
case "OrderedFromList":
|
|
40
|
-
return
|
|
84
|
+
return flattenChildSet(AListBridges.toASet(tree.children));
|
|
41
85
|
case "UnorderedFromSet":
|
|
42
|
-
return
|
|
86
|
+
return flattenChildSet(tree.children);
|
|
43
87
|
}
|
|
44
88
|
}
|
|
45
89
|
//# sourceMappingURL=flattenTree.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"flattenTree.js","sourceRoot":"","sources":["../../src/runtime/flattenTree.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,EAAE;AACF,iEAAiE;AACjE,mEAAmE;AACnE,iEAAiE;AACjE,iEAAiE;AACjE,kEAAkE;AAClE,EAAE;AACF,wEAAwE;AACxE,qEAAqE;AACrE,uEAAuE;AACvE,EAAE;AACF,2DAA2D;AAC3D,gEAAgE;AAChE,yBAAyB;AAEzB,OAAO,EAAE,IAAI,EAAa,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAIzD,MAAM,UAAU,iBAAiB,CAAC,IAAgB;IAChD,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,OAAO;YACV,OAAO,IAAI,CAAC,KAAK,EAAgB,CAAC;QACpC,KAAK,MAAM;YACT,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClC,KAAK,SAAS,CAAC;QACf,KAAK,WAAW,CAAC,CAAC,CAAC;YACjB,wDAAwD;YACxD,8DAA8D;YAC9D,6DAA6D;YAC7D,gEAAgE;YAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YACtD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC,KAAK,EAAgB,CAAC;YAC7D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,QAAQ,CAAC,CAAC,CAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAChD,CAAC;QACD,KAAK,UAAU;YACb,OAAO,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACjD,KAAK,iBAAiB;YACpB,OAAO,
|
|
1
|
+
{"version":3,"file":"flattenTree.js","sourceRoot":"","sources":["../../src/runtime/flattenTree.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,5 +12,7 @@ import { AtlasPool } from "./textureAtlas/atlasPool.js";
|
|
|
12
12
|
* through the heap path's pool/repack machinery via the returned
|
|
13
13
|
* spec's avals — this function does not subscribe to anything.
|
|
14
14
|
*/
|
|
15
|
-
export declare function renderObjectToHeapSpec(ro: RenderObject, token: AdaptiveToken, pool?: AtlasPool
|
|
15
|
+
export declare function renderObjectToHeapSpec(ro: RenderObject, token: AdaptiveToken, pool?: AtlasPool, opts?: {
|
|
16
|
+
readonly enableDerivedUniforms?: boolean;
|
|
17
|
+
}): HeapDrawSpec;
|
|
16
18
|
//# sourceMappingURL=heapAdapter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heapAdapter.d.ts","sourceRoot":"","sources":["../../src/runtime/heapAdapter.ts"],"names":[],"mappings":"AA4BA,OAAO,EAAa,KAAK,aAAa,EAAQ,MAAM,2BAA2B,CAAC;AAiFhF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,gBAAgB,CAAC;AAGnE,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"heapAdapter.d.ts","sourceRoot":"","sources":["../../src/runtime/heapAdapter.ts"],"names":[],"mappings":"AA4BA,OAAO,EAAa,KAAK,aAAa,EAAQ,MAAM,2BAA2B,CAAC;AAiFhF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,gBAAgB,CAAC;AAGnE,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AA0MxD;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,YAAY,EAChB,KAAK,EAAE,aAAa,EACpB,IAAI,CAAC,EAAE,SAAS,EAChB,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAAE,GAClD,YAAY,CA+Qd"}
|
|
@@ -129,6 +129,8 @@ import { asAttributeProvider, asUniformProvider } from "../core/provider.js";
|
|
|
129
129
|
import { isBufferView } from "./heapScene/pools.js";
|
|
130
130
|
import { compileHeapEffect } from "./heapEffect.js";
|
|
131
131
|
import { AtlasPool } from "./textureAtlas/atlasPool.js";
|
|
132
|
+
import { STANDARD_DERIVED_RULES, STANDARD_TRAFO_LEAVES } from "./derivedUniforms/recipes.js";
|
|
133
|
+
import { inputsOf } from "./derivedUniforms/flatten.js";
|
|
132
134
|
/**
|
|
133
135
|
* View `HostBufferSource` as `Uint32Array`. Index buffers are u32 in
|
|
134
136
|
* the heap path; non-u32 indices would have to be transcoded (out
|
|
@@ -316,7 +318,7 @@ function describeTexture(t) {
|
|
|
316
318
|
* through the heap path's pool/repack machinery via the returned
|
|
317
319
|
* spec's avals — this function does not subscribe to anything.
|
|
318
320
|
*/
|
|
319
|
-
export function renderObjectToHeapSpec(ro, token, pool) {
|
|
321
|
+
export function renderObjectToHeapSpec(ro, token, pool, opts) {
|
|
320
322
|
// 1. Inputs map: vertex attributes (BufferView) + uniforms, pulled
|
|
321
323
|
// SHADER-DRIVEN from the providers. We compile `ro.effect` (cached
|
|
322
324
|
// per Effect by the module-level compile cache) to discover the
|
|
@@ -349,14 +351,44 @@ export function renderObjectToHeapSpec(ro, token, pool) {
|
|
|
349
351
|
if (av !== undefined)
|
|
350
352
|
inputs[name] = av;
|
|
351
353
|
};
|
|
352
|
-
|
|
354
|
+
// §7-covered derived trafos (ModelViewProjTrafo, NormalMatrix, …) are
|
|
355
|
+
// GPU-computed from the M/V/P constituents — addDraw never reads their
|
|
356
|
+
// `spec.inputs` entry when the rule applies. Deferring the pull keeps
|
|
357
|
+
// the provider from materialising a per-RO derived-aval chain (MapVal +
|
|
358
|
+
// nested closure contexts + a never-forced lazy constant) that would sit
|
|
359
|
+
// in `inputs` as pure ballast. Pulled after all as a fallback only when
|
|
360
|
+
// the recipe's base leaves turn out not to be bound (mirrors
|
|
361
|
+
// heapScene's `ruleForUniform` applicability test).
|
|
362
|
+
const deriveOnGpu = opts?.enableDerivedUniforms !== false;
|
|
363
|
+
const deferredDerived = [];
|
|
364
|
+
for (const u of schema.uniforms) {
|
|
365
|
+
if (deriveOnGpu && STANDARD_DERIVED_RULES.has(u.name)) {
|
|
366
|
+
deferredDerived.push(u.name);
|
|
367
|
+
continue;
|
|
368
|
+
}
|
|
353
369
|
pullUniform(u.name);
|
|
370
|
+
}
|
|
354
371
|
// §7 derived-uniforms constituents — cheap (these are the raw
|
|
355
372
|
// `state.model/view/proj` avals, no `compose`/`inverse`) and the
|
|
356
373
|
// compute pre-pass needs them even when the effect itself doesn't
|
|
357
374
|
// declare them. No-ops if the provider doesn't carry them.
|
|
358
375
|
for (const n of ["ModelTrafo", "ViewTrafo", "ProjTrafo"])
|
|
359
376
|
pullUniform(n);
|
|
377
|
+
for (const name of deferredDerived) {
|
|
378
|
+
const rule = STANDARD_DERIVED_RULES.get(name);
|
|
379
|
+
let leavesBound = true;
|
|
380
|
+
for (const inp of inputsOf(rule.ir)) {
|
|
381
|
+
if (inp.name === "Model" && ro.modelChain !== undefined)
|
|
382
|
+
continue;
|
|
383
|
+
const specName = STANDARD_TRAFO_LEAVES.get(inp.name) ?? inp.name;
|
|
384
|
+
if (inputs[specName] === undefined) {
|
|
385
|
+
leavesBound = false;
|
|
386
|
+
break;
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
if (!leavesBound)
|
|
390
|
+
pullUniform(name);
|
|
391
|
+
}
|
|
360
392
|
// 1b. Instance attributes — provider is map-backed (user-supplied via
|
|
361
393
|
// `Sg.instanced({attributes})`), so enumerate its names. Threaded
|
|
362
394
|
// via the heap path's per-RO instancing fast path.
|
|
@@ -390,9 +422,11 @@ export function renderObjectToHeapSpec(ro, token, pool) {
|
|
|
390
422
|
// WGSL schema's binding shape doesn't matter at scene time — that
|
|
391
423
|
// leaves us with two HashMap entries pointing at the same aval.
|
|
392
424
|
// Dedupe by identity before applying the single-pair rule.
|
|
393
|
-
|
|
425
|
+
// `let` + nulled after use: the spec's long-lived closures share
|
|
426
|
+
// this scope context — a leftover Set here is per-RO ballast.
|
|
427
|
+
let distinctTexAvals = new Set();
|
|
394
428
|
ro.textures.iter((_n, av) => { distinctTexAvals.add(av); });
|
|
395
|
-
|
|
429
|
+
let distinctSamplerAvals = new Set();
|
|
396
430
|
// Shader-defined sampler state (from a `sampler2d { filter …; addressU … }`
|
|
397
431
|
// builder, carried through the IR) overrides the scene's default sampler.
|
|
398
432
|
const stateBinding = schema.samplers.find(b => b.state !== undefined);
|
|
@@ -511,6 +545,9 @@ export function renderObjectToHeapSpec(ro, token, pool) {
|
|
|
511
545
|
throw new Error(`heapAdapter: RO has ${distinctTexAvals.size} distinct texture aval(s) and ${distinctSamplerAvals.size} distinct sampler aval(s); ` +
|
|
512
546
|
`single-pair only in v1 (classifier should have caught this)`);
|
|
513
547
|
}
|
|
548
|
+
// Drop the dedup scratch — see the `let` note above.
|
|
549
|
+
distinctTexAvals = undefined;
|
|
550
|
+
distinctSamplerAvals = undefined;
|
|
514
551
|
// 4. DrawCall geometry. Classifier validates fields are heap-
|
|
515
552
|
// compatible (instanceCount≥1, firstInstance=0, non-indexed firstVertex=0).
|
|
516
553
|
if (dc.kind === "indexed" && indices === undefined) {
|
|
@@ -528,12 +565,16 @@ export function renderObjectToHeapSpec(ro, token, pool) {
|
|
|
528
565
|
: { vertexCount: dc.vertexCount };
|
|
529
566
|
return {
|
|
530
567
|
effect: ro.effect,
|
|
568
|
+
...(ro.pickId !== undefined ? { pickId: ro.pickId } : {}),
|
|
531
569
|
pipelineState: ro.pipelineState,
|
|
532
570
|
inputs,
|
|
533
571
|
...(instanceAttributes !== undefined ? { instanceAttributes } : {}),
|
|
534
572
|
...(dc.instanceCount > 1 ? { instanceCount: dc.instanceCount } : {}),
|
|
535
573
|
...geom,
|
|
536
574
|
...(textures !== undefined ? { textures } : {}),
|
|
575
|
+
...(ro.injectedStorage !== undefined && ro.injectedStorage.count > 0
|
|
576
|
+
? { storageBuffers: (() => { const m = new Map(); ro.injectedStorage.iter((n, av) => { m.set(n, av); }); return m; })() }
|
|
577
|
+
: {}),
|
|
537
578
|
...(ro.modeRules !== undefined ? { modeRules: ro.modeRules } : {}),
|
|
538
579
|
...(ro.modelChain !== undefined ? { modelChain: ro.modelChain } : {}),
|
|
539
580
|
// Pass `active` through unforced so the heap path can subscribe
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heapAdapter.js","sourceRoot":"","sources":["../../src/runtime/heapAdapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"heapAdapter.js","sourceRoot":"","sources":["../../src/runtime/heapAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"heapDecoder.d.ts","sourceRoot":"","sources":["../../src/runtime/heapDecoder.ts"],"names":[],"mappings":"AAsCA,OAAO,EAEL,KAAK,MAAM,EACZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,KAAK,MAAM,EAGZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,YAAY,EAAmB,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"heapDecoder.d.ts","sourceRoot":"","sources":["../../src/runtime/heapDecoder.ts"],"names":[],"mappings":"AAsCA,OAAO,EAEL,KAAK,MAAM,EACZ,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,KAAK,MAAM,EAGZ,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,YAAY,EAAmB,MAAM,iBAAiB,CAAC;AAyDrE;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,kBAAkB,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,GAAG,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAGtH;AA0BD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,eAAe,CAAC;AAE7D;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,GAAE,eAA8B,GAAG,MAAM,CAE9G;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,YAAY,EAAE,IAAI,GAAE,eAA8B,GAAG,MAAM,CAyG9G"}
|
|
@@ -37,6 +37,7 @@
|
|
|
37
37
|
// carrier — see `rewriteFsAtlasTexturesViaCarrier` below.
|
|
38
38
|
import { stage as makeStage, } from "@aardworx/wombat.shader";
|
|
39
39
|
import { Tu32, Tf32, } from "@aardworx/wombat.shader/ir";
|
|
40
|
+
import { isInlineHeaderField } from "./heapEffect.js";
|
|
40
41
|
import { Tvec2, Tvec3, Tvec4, Tmat4, TarrU32, constU32, add, mul, div, item, newVec, readScope, loadHeaderRef, loadUniformByRef, loadAttributeByRef, loadInstanceByRef, buildMegacallPrelude, heapArenaStorageDecls, megacallLookupStorageDecls, headersU32, } from "./heapIrBuilders.js";
|
|
41
42
|
// Build an Expr that returns the u32 value of a specific inline u32
|
|
42
43
|
// slot in the drawHeader: `headersU32[drawIdx * stride + offset_u32]`.
|
|
@@ -246,9 +247,13 @@ function addUniformOutput(f, layout, drawIdxExpr, instIdExpr, outputs, stmts, lo
|
|
|
246
247
|
}
|
|
247
248
|
const irType = wgslTypeToIrType(wgslType);
|
|
248
249
|
const refExpr = loadHeaderRef(drawIdxExpr, f.byteOffset, layout.strideU32);
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
250
|
+
// Inline fields (PickId, __layoutId family): the header word IS the
|
|
251
|
+
// u32 value — no arena indirection, no pool entry per draw.
|
|
252
|
+
const value = isInlineHeaderField(f)
|
|
253
|
+
? refExpr
|
|
254
|
+
: layout.perInstanceUniforms.has(f.name)
|
|
255
|
+
? loadInstanceByRef(refExpr, instIdExpr, wgslType)
|
|
256
|
+
: loadUniformByRef(refExpr, wgslType);
|
|
252
257
|
outputs.push({
|
|
253
258
|
name: f.name,
|
|
254
259
|
type: irType,
|