@aardworx/wombat.rendering 0.19.7 → 0.19.9

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.
@@ -1 +1 @@
1
- {"version":3,"file":"heapIrBuilders.js","sourceRoot":"","sources":["../../src/runtime/heapIrBuilders.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"heapIrBuilders.js","sourceRoot":"","sources":["../../src/runtime/heapIrBuilders.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,10 @@ import { type AtlasPage, type AtlasPool } from "./textureAtlas/atlasPool.js";
11
11
  * Geometry triple. Tightly-packed Float32 positions / normals (3
12
12
  * floats per vertex) plus Uint32 indices.
13
13
  */
14
+ /** drawTable `firstIndex` sentinel marking a non-indexed record: the megacall
15
+ * prelude then uses the local vertex index directly (no indexStorage lookup).
16
+ * Must match the literal in heapEffect.ts's `megacallSearchPrelude`. */
17
+ export declare const HEAP_NONINDEXED = 4294967295;
14
18
  export interface HeapGeometry {
15
19
  readonly positions: Float32Array;
16
20
  readonly normals: Float32Array;
@@ -72,8 +76,24 @@ export interface HeapDrawSpec {
72
76
  /**
73
77
  * Index buffer for this draw. Indices live in their own `INDEX`-
74
78
  * usage `GPUBuffer` (WebGPU forces this), separate from the arena.
79
+ * Omit for a NON-INDEXED draw — then `vertexCount` is required and the
80
+ * megacall uses the local vertex index directly (no index-buffer lookup,
81
+ * no index-pool allocation). See the megacall prelude's `vid` select.
75
82
  */
76
- readonly indices: aval<Uint32Array> | Uint32Array;
83
+ readonly indices?: aval<Uint32Array> | Uint32Array;
84
+ /** Vertex count for a non-indexed draw (when `indices` is omitted). */
85
+ readonly vertexCount?: number;
86
+ /**
87
+ * Optional index slice into a (possibly shared) index buffer. The heap
88
+ * still allocates/uploads the WHOLE `indices` buffer once per aval (so N
89
+ * draws sharing it cost one allocation), but this draw emits only
90
+ * `[firstIndex, firstIndex+indexCount)`. Folds into the record's
91
+ * indexStart (`alloc.firstIndex + firstIndex`) and indexCount. Omit for a
92
+ * whole-buffer draw (defaults: firstIndex 0, indexCount = buffer length).
93
+ * (baseVertex is handled upstream by baking it into the index values.)
94
+ */
95
+ readonly firstIndex?: number;
96
+ readonly indexCount?: number;
77
97
  /**
78
98
  * Optional texture set. When present, adds a `texture_2d<f32>` at
79
99
  * binding 4 and a sampler at binding 5; the FS must declare them.
@@ -1 +1 @@
1
- {"version":3,"file":"heapScene.d.ts","sourceRoot":"","sources":["../../src/runtime/heapScene.ts"],"names":[],"mappings":"AA4CA,OAAO,EAA2B,KAAK,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAwB,aAAa,EAAa,MAAM,2BAA2B,CAAC;AAC3F,OAAO,KAAK,EAAE,IAAI,EAAE,IAAI,EAAgD,MAAM,2BAA2B,CAAC;AAC1G,OAAO,KAAK,EAAE,MAAM,EAAkB,MAAM,yBAAyB,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAG9D,OAAO,EAEc,KAAK,oBAAoB,EAE7C,MAAM,iBAAiB,CAAC;AAMzB,OAAO,EAEL,KAAK,SAAS,EAAwB,KAAK,SAAS,EACrD,MAAM,6BAA6B,CAAC;AA2ErC;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAI,YAAY,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAI,WAAW,CAAC;CACjC;AA8PD,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,OAAO,CAAA;KAAE,CAAC;IACtE;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE;QAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,OAAO,CAAA;KAAE,CAAC;IACnF;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;IAC/C;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;IAClD;;;;;;OAMG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IACnC;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC;IACvC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE;QACnB,QAAQ,CAAC,IAAI,CAAC,EAAY,OAAO,wBAAwB,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC;QACnF,QAAQ,CAAC,SAAS,CAAC,EAAO,OAAO,wBAAwB,EAAE,eAAe,CAAC,WAAW,CAAC,CAAC;QACxF,QAAQ,CAAC,QAAQ,CAAC,EAAQ,OAAO,wBAAwB,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC;QACvF,QAAQ,CAAC,YAAY,CAAC,EAAI,OAAO,wBAAwB,EAAE,eAAe,CAAC,cAAc,CAAC,CAAC;QAC3F,QAAQ,CAAC,UAAU,CAAC,EAAM,OAAO,wBAAwB,EAAE,eAAe,CAAC,YAAY,CAAC,CAAC;QACzF,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,wBAAwB,EAAE,eAAe,CAAC,iBAAiB,CAAC,CAAC;KAChG,CAAC;CACH;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB;;;0DAGsD;IACtD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,aAAa,EAAI,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,SAAS;IACxB;;;;;;OAMG;IACH,KAAK,CAAC,WAAW,EAAE,OAAO,kBAAkB,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;IACxF;;;;OAIG;IACH,MAAM,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;IACnC;;;;;;;;OAQG;IACH,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG,IAAI,CAAC;IACpD;;;;;;;OAOG;IACH,iBAAiB,CAAC,GAAG,EAAE,iBAAiB,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;IACtE;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAAC;IACpC,mFAAmF;IACnF,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,OAAO,IAAI,IAAI,CAAC;CACjB;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,MAAM,cAAc,GACtB;IACE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,WAAW,CAAC,EAAE,cAAc,CAAC;IACtC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;CAC5B,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,wDAAwD;IACxD,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC;IACrB,oDAAoD;IACpD,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC;IACnB,mEAAmE;IACnE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC3B;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC;IAC7B;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACrC;;;;;OAKG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,KAAK,OAAO,6BAA6B,EAAE,gBAAgB,CAAC;IAC/F;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,iBAAiB,CAAC;CACnC,CAAC;AAEN;;;;;;;;GAQG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,oBAAoB,CAAC;IACrD;;;;;;;OAOG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IAC/B;;;;;;;;OAQG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAC;IACrC;;;;;;;;;;;OAWG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IACzC;;;;;;;;;;OAUG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACjC;AAED,wBAAgB,cAAc,CAC5B,MAAM,EAAE,SAAS,EACjB,GAAG,EAAE,OAAO,iCAAiC,EAAE,oBAAoB,EACnE,YAAY,EAAE,SAAS,YAAY,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,EAC1D,IAAI,GAAE,qBAA0B,GAC/B,SAAS,CAi9IX"}
1
+ {"version":3,"file":"heapScene.d.ts","sourceRoot":"","sources":["../../src/runtime/heapScene.ts"],"names":[],"mappings":"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"}
@@ -60,6 +60,39 @@ import { emitPartitionKernel, substituteReadInputInStmt, collectUniformReadsInSt
60
60
  import {} from "./derivedModes/rule.js";
61
61
  import { addMarkingCallback } from "@aardworx/wombat.adaptive";
62
62
  import { analyseOutputSet, evaluateStructural, evaluateStructuralSet, stableStringify, } from "@aardworx/wombat.shader/ir";
63
+ // GrowBuffer + ALIGN16 + MIN_BUFFER_BYTES + POW2 live in ./heapScene/growBuffer.
64
+ // Packers (WGSL-type → JS-value → arena bytes) live in ./heapScene/packers.
65
+ // ---------------------------------------------------------------------------
66
+ // Shared WGSL prelude (struct + bindings + VS)
67
+ // ---------------------------------------------------------------------------
68
+ // Common decls — struct + bindings + helpers. Always concatenated
69
+ // into every group's shader, before its custom VS+FS bodies.
70
+ //
71
+ // One arena GPUBuffer is bound through multiple typed views. Today
72
+ // only `array<DrawHeader>` and `array<f32>` are wired; later we add
73
+ // `array<u32>`, `array<vec2<f32>>`, `array<vec4<f32>>`, etc. (skip
74
+ // `vec3` — its storage stride is 16, doesn't match tight packing).
75
+ //
76
+ // `attrRef` style: each attribute reference in DrawHeader is a byte
77
+ // offset into the arena pointing at the allocation's header. The
78
+ // header is `(u32 typeId, u32 length)`; data follows 16 bytes after
79
+ // the ref. Today every attribute is V3F_TIGHT-encoded so the shader
80
+ // reads 3 consecutive f32s from the f32 view; once we add more
81
+ // encodings, `loadVec3Attr` grows a branch on `typeId & 0xFFFFu`.
82
+ // (Per-bucket WGSL preludes are now generated by `buildBucketLayout`
83
+ // in heapEffect.ts; this module just glues the bucket layout, the
84
+ // shared arena, and the per-bucket DrawHeap together.)
85
+ // ---------------------------------------------------------------------------
86
+ // Geometry packing
87
+ // ---------------------------------------------------------------------------
88
+ /**
89
+ * Geometry triple. Tightly-packed Float32 positions / normals (3
90
+ * floats per vertex) plus Uint32 indices.
91
+ */
92
+ /** drawTable `firstIndex` sentinel marking a non-indexed record: the megacall
93
+ * prelude then uses the local vertex index directly (no indexStorage lookup).
94
+ * Must match the literal in heapEffect.ts's `megacallSearchPrelude`. */
95
+ export const HEAP_NONINDEXED = 0xffffffff;
63
96
  export function buildHeapScene(device, sig, initialDraws, opts = {}) {
64
97
  const atlasPool = opts.atlasPool;
65
98
  const colorAttachmentName = sig.colorNames[0];
@@ -2133,10 +2166,21 @@ export function buildHeapScene(device, sig, initialDraws, opts = {}) {
2133
2166
  const effectFields = fam.fieldsForEffect.get(spec.effect.id);
2134
2167
  // Indices live in their own INDEX-usage buffer (WebGPU constraint).
2135
2168
  // Aval-keyed: 19K instanced clones of the same mesh share one
2136
- // index allocation + one upload.
2137
- const indicesAval = asAval(spec.indices);
2138
- const indicesArr = readPlain(spec.indices);
2139
- const idxAlloc = indexPool.acquire(device, arena.indices, indicesAval, bucket.chunkIdx, indicesArr);
2169
+ // index allocation + one upload. NON-INDEXED draws (spec.indices
2170
+ // omitted) skip the index pool entirely: the drawTable record stores
2171
+ // firstIndex = HEAP_NONINDEXED (sentinel) and indexCount = vertexCount,
2172
+ // and the megacall prelude uses the local vertex index directly.
2173
+ const hasIndices = spec.indices !== undefined;
2174
+ const indicesAval = hasIndices ? asAval(spec.indices) : undefined;
2175
+ const idxAlloc = hasIndices
2176
+ ? indexPool.acquire(device, arena.indices, indicesAval, bucket.chunkIdx, readPlain(spec.indices))
2177
+ : undefined;
2178
+ // Emit count per instance + the firstIndex field written to the record.
2179
+ // Slice: emit only [firstIndex, firstIndex+indexCount) of the (shared,
2180
+ // whole-buffer) index allocation. firstIndex folds into indexStart;
2181
+ // indexCount defaults to the whole buffer.
2182
+ const emitCount = hasIndices ? (spec.indexCount ?? idxAlloc.count) : (spec.vertexCount ?? 0);
2183
+ const firstIndexField = hasIndices ? (idxAlloc.firstIndex + (spec.firstIndex ?? 0)) : HEAP_NONINDEXED;
2140
2184
  const localSlot = bucket.drawHeap.alloc();
2141
2185
  // Per-RO instancing: read `spec.instanceCount` (defaults to 1).
2142
2186
  const instanceCount = spec.instanceCount !== undefined
@@ -2219,7 +2263,7 @@ export function buildHeapScene(device, sig, initialDraws, opts = {}) {
2219
2263
  bucket.localPosRefs[localSlot] = perDrawRefs.get("Positions");
2220
2264
  bucket.localNorRefs[localSlot] = perDrawRefs.get("Normals");
2221
2265
  bucket.localEntries[localSlot] = {
2222
- indexCount: idxAlloc.count, firstIndex: idxAlloc.firstIndex, instanceCount,
2266
+ indexCount: emitCount, firstIndex: firstIndexField, instanceCount,
2223
2267
  };
2224
2268
  bucket.localToDrawId[localSlot] = drawId;
2225
2269
  bucket.drawSlots.add(localSlot);
@@ -2327,7 +2371,7 @@ export function buildHeapScene(device, sig, initialDraws, opts = {}) {
2327
2371
  // it) get 0 — the kernel only reads refs through combo fns that
2328
2372
  // gate on `r.comboId`, so an unread 0 is harmless.
2329
2373
  const uniformRefs = (bucket.uniformOrder ?? []).map(name => perDrawRefs.get(name) ?? 0);
2330
- partition.appendRecord(localSlot, idxAlloc.firstIndex, idxAlloc.count, instanceCount, roComboId, uniformRefs);
2374
+ partition.appendRecord(localSlot, firstIndexField, emitCount, instanceCount, roComboId, uniformRefs);
2331
2375
  bucket.drawIdToRecord.set(drawId, recIdx);
2332
2376
  bucket.recordToDrawId[recIdx] = drawId;
2333
2377
  bucket.drawIdToComboId.set(drawId, roComboId);
@@ -2338,7 +2382,7 @@ export function buildHeapScene(device, sig, initialDraws, opts = {}) {
2338
2382
  const numRecords = recIdx + 1;
2339
2383
  const recBytes = numRecords * RECORD_BYTES;
2340
2384
  const needBlocks = Math.max(1, Math.ceil(numRecords / SCAN_TILE_SIZE));
2341
- const emitDelta = idxAlloc.count * instanceCount;
2385
+ const emitDelta = emitCount * instanceCount;
2342
2386
  for (const s of bucket.slots) {
2343
2387
  s.drawTableBuf.ensureCapacity(recBytes);
2344
2388
  s.drawTableBuf.setUsed(Math.max(s.drawTableBuf.usedBytes, recBytes));
@@ -2370,8 +2414,8 @@ export function buildHeapScene(device, sig, initialDraws, opts = {}) {
2370
2414
  // firstEmit is GPU-overwritten by the prefix-sum pass; 0 is fine.
2371
2415
  shadow[recIdx * RECORD_U32 + 0] = 0;
2372
2416
  shadow[recIdx * RECORD_U32 + 1] = localSlot;
2373
- shadow[recIdx * RECORD_U32 + 2] = idxAlloc.firstIndex;
2374
- shadow[recIdx * RECORD_U32 + 3] = idxAlloc.count;
2417
+ shadow[recIdx * RECORD_U32 + 2] = firstIndexField;
2418
+ shadow[recIdx * RECORD_U32 + 3] = emitCount;
2375
2419
  shadow[recIdx * RECORD_U32 + 4] = instanceCount;
2376
2420
  roSlot.recordCount = recIdx + 1;
2377
2421
  roSlot.slotToRecord[localSlot] = recIdx;
@@ -2380,7 +2424,7 @@ export function buildHeapScene(device, sig, initialDraws, opts = {}) {
2380
2424
  roSlot.drawTableDirtyMin = byteOff;
2381
2425
  if (byteOff + RECORD_BYTES > roSlot.drawTableDirtyMax)
2382
2426
  roSlot.drawTableDirtyMax = byteOff + RECORD_BYTES;
2383
- roSlot.totalEmitEstimate += idxAlloc.count * instanceCount;
2427
+ roSlot.totalEmitEstimate += emitCount * instanceCount;
2384
2428
  const newNumTiles = Math.max(1, Math.ceil(roSlot.totalEmitEstimate / TILE_K));
2385
2429
  roSlot.firstDrawInTileBuf.ensureCapacity((newNumTiles + 1) * 4);
2386
2430
  roSlot.scanDirty = true;
@@ -2395,7 +2439,7 @@ export function buildHeapScene(device, sig, initialDraws, opts = {}) {
2395
2439
  // `subscribeActive` → `activeDirty` and drained in `update()`.
2396
2440
  if (spec.active !== undefined) {
2397
2441
  drawIdToActiveAval.set(drawId, spec.active);
2398
- drawIdToOrigIndexCount.set(drawId, idxAlloc.count);
2442
+ drawIdToOrigIndexCount.set(drawId, emitCount);
2399
2443
  const initial = spec.active.getValue(outerTok);
2400
2444
  subscribeActive(spec.active, drawId);
2401
2445
  if (initial === false) {
@@ -4224,7 +4268,9 @@ export function buildHeapScene(device, sig, initialDraws, opts = {}) {
4224
4268
  let _instCount = drawTable[_slot * 5u + 4u];
4225
4269
  let _local = emitIdx - _firstEmit;
4226
4270
  let _instId = _local / _indexCount;
4227
- let _vid = indexStorage[_indexStart + (_local % _indexCount)];
4271
+ let _li = _local % _indexCount;
4272
+ var _vid: u32 = _li;
4273
+ if (_indexStart != 0xffffffffu) { _vid = indexStorage[_indexStart + _li]; }
4228
4274
  let base = i * 8u;
4229
4275
  outRows[base + 0u] = _slot;
4230
4276
  outRows[base + 1u] = _drawIdx;