@aardworx/wombat.rendering 0.4.0 → 0.5.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/commands/clear.js +1 -1
- package/dist/commands/clear.js.map +1 -1
- package/dist/commands/render.js +1 -1
- package/dist/commands/render.js.map +1 -1
- package/dist/core/framebufferSignature.d.ts +10 -0
- package/dist/core/framebufferSignature.d.ts.map +1 -1
- package/dist/resources/framebuffer.d.ts.map +1 -1
- package/dist/resources/framebuffer.js +5 -1
- package/dist/resources/framebuffer.js.map +1 -1
- package/dist/resources/framebufferSignature.d.ts.map +1 -1
- package/dist/resources/framebufferSignature.js +3 -0
- package/dist/resources/framebufferSignature.js.map +1 -1
- package/dist/runtime/renderTask.d.ts +8 -2
- package/dist/runtime/renderTask.d.ts.map +1 -1
- package/dist/runtime/renderTask.js.map +1 -1
- package/dist/runtime/renderTo.js +1 -1
- package/dist/runtime/renderTo.js.map +1 -1
- package/dist/runtime/runtime.d.ts +2 -2
- package/dist/runtime/runtime.d.ts.map +1 -1
- package/dist/runtime/runtime.js +16 -1
- package/dist/runtime/runtime.js.map +1 -1
- package/dist/runtime/scenePass.d.ts +1 -1
- package/dist/runtime/scenePass.d.ts.map +1 -1
- package/dist/runtime/scenePass.js +1 -1
- package/dist/runtime/scenePass.js.map +1 -1
- package/dist/window/canvas.d.ts.map +1 -1
- package/dist/window/canvas.js +1 -0
- package/dist/window/canvas.js.map +1 -1
- package/package.json +2 -2
- package/src/commands/clear.ts +1 -1
- package/src/commands/render.ts +1 -1
- package/src/core/framebufferSignature.ts +10 -0
- package/src/resources/framebuffer.ts +5 -1
- package/src/resources/framebufferSignature.ts +3 -0
- package/src/runtime/renderTask.ts +8 -1
- package/src/runtime/renderTo.ts +1 -1
- package/src/runtime/runtime.ts +19 -3
- package/src/runtime/scenePass.ts +3 -3
- package/src/window/canvas.ts +1 -0
package/dist/commands/clear.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
// from the texture's format.
|
|
10
10
|
export function clear(cmd, output, values) {
|
|
11
11
|
const colorAttachments = [];
|
|
12
|
-
for (const
|
|
12
|
+
for (const name of output.signature.colorNames) {
|
|
13
13
|
const view = output.colors.tryFind(name);
|
|
14
14
|
if (view === undefined) {
|
|
15
15
|
throw new Error(`clear: framebuffer is missing color attachment "${name}"`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"clear.js","sourceRoot":"","sources":["../../src/commands/clear.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,6DAA6D;AAC7D,4DAA4D;AAC5D,2DAA2D;AAC3D,EAAE;AACF,6DAA6D;AAC7D,kEAAkE;AAClE,mEAAmE;AACnE,6BAA6B;AAI7B,MAAM,UAAU,KAAK,CACnB,GAAsB,EACtB,MAAoB,EACpB,MAAmB;IAEnB,MAAM,gBAAgB,GAAmC,EAAE,CAAC;IAC5D,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"clear.js","sourceRoot":"","sources":["../../src/commands/clear.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,6DAA6D;AAC7D,4DAA4D;AAC5D,2DAA2D;AAC3D,EAAE;AACF,6DAA6D;AAC7D,kEAAkE;AAClE,mEAAmE;AACnE,6BAA6B;AAI7B,MAAM,UAAU,KAAK,CACnB,GAAsB,EACtB,MAAoB,EACpB,MAAmB;IAEnB,MAAM,gBAAgB,GAAmC,EAAE,CAAC;IAC5D,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,mDAAmD,IAAI,GAAG,CAAC,CAAC;QAC9E,CAAC;QACD,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,MAAM,CAAC,GAAG,EAA6C,CAAC;YACxD,gBAAgB,CAAC,IAAI,CAAC;gBACpB,IAAI;gBACJ,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,EAAE;aAC/E,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,gBAAgB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IACD,IAAI,sBAAuE,CAAC;IAC5E,IAAI,MAAM,CAAC,SAAS,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;QAChD,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,6EAA6E,CAAC,CAAC;QACjG,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC;QAC1C,MAAM,GAAG,GAAwC,EAAE,IAAI,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC;QAC/E,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YACjB,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBAC/B,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC;gBAAC,GAAG,CAAC,YAAY,GAAG,OAAO,CAAC;gBAAC,GAAG,CAAC,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC;YAC5F,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC;gBAAC,GAAG,CAAC,YAAY,GAAG,OAAO,CAAC;YACvD,CAAC;QACH,CAAC;QACD,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;YACnB,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACjC,GAAG,CAAC,aAAa,GAAG,OAAO,CAAC;gBAAC,GAAG,CAAC,cAAc,GAAG,OAAO,CAAC;gBAAC,GAAG,CAAC,iBAAiB,GAAG,MAAM,CAAC,OAAO,CAAC;YACpG,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,aAAa,GAAG,MAAM,CAAC;gBAAC,GAAG,CAAC,cAAc,GAAG,OAAO,CAAC;YAC3D,CAAC;QACH,CAAC;QACD,sBAAsB,GAAG,GAAG,CAAC;IAC/B,CAAC;IACD,MAAM,IAAI,GAA4B;QACpC,gBAAgB;QAChB,GAAG,CAAC,sBAAsB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5E,CAAC;IACF,MAAM,IAAI,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,CAAC,GAAG,EAAE,CAAC;AACb,CAAC"}
|
package/dist/commands/render.js
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
export function beginPassDescriptor(output, clear) {
|
|
17
17
|
const colorAttachments = [];
|
|
18
18
|
const msaa = output.signature.sampleCount > 1;
|
|
19
|
-
for (const
|
|
19
|
+
for (const name of output.signature.colorNames) {
|
|
20
20
|
const view = output.colors.tryFind(name);
|
|
21
21
|
if (view === undefined) {
|
|
22
22
|
throw new Error(`render: framebuffer is missing color attachment "${name}"`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/commands/render.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,qEAAqE;AACrE,4CAA4C;AAC5C,EAAE;AACF,6DAA6D;AAC7D,iEAAiE;AACjE,4DAA4D;AAC5D,4DAA4D;AAY5D;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAoB,EAAE,KAAmB;IAC3E,MAAM,gBAAgB,GAAmC,EAAE,CAAC;IAC5D,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,WAAW,GAAG,CAAC,CAAC;IAC9C,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"render.js","sourceRoot":"","sources":["../../src/commands/render.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,16 @@ export interface DepthStencilAttachmentSignature {
|
|
|
6
6
|
}
|
|
7
7
|
export interface FramebufferSignature {
|
|
8
8
|
readonly colors: HashMap<string, GPUTextureFormat>;
|
|
9
|
+
/**
|
|
10
|
+
* Canonical name → location ordering for the color attachments.
|
|
11
|
+
* `colorNames[i]` names the attachment at WebGPU color-attachment
|
|
12
|
+
* slot `i` (and the fragment-shader `@location(i)`). This is the
|
|
13
|
+
* authoritative ordering used by the render-pass descriptor, the
|
|
14
|
+
* shader's fragment-output linker, and pipeline color-target
|
|
15
|
+
* indexing — `colors` (a HashMap) provides only name → format
|
|
16
|
+
* lookup and has no inherent order.
|
|
17
|
+
*/
|
|
18
|
+
readonly colorNames: readonly string[];
|
|
9
19
|
readonly depthStencil?: DepthStencilAttachmentSignature;
|
|
10
20
|
readonly sampleCount: number;
|
|
11
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"framebufferSignature.d.ts","sourceRoot":"","sources":["../../src/core/framebufferSignature.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEzD,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACnD,QAAQ,CAAC,YAAY,CAAC,EAAE,+BAA+B,CAAC;IACxD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B"}
|
|
1
|
+
{"version":3,"file":"framebufferSignature.d.ts","sourceRoot":"","sources":["../../src/core/framebufferSignature.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEzD,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAC9B;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IACnD;;;;;;;;OAQG;IACH,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IACvC,QAAQ,CAAC,YAAY,CAAC,EAAE,+BAA+B,CAAC;IACxD,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"framebuffer.d.ts","sourceRoot":"","sources":["../../src/resources/framebuffer.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,gBAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAA+B,KAAK,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAGnF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,0BAA0B;IACzC,gGAAgG;IAChG,QAAQ,CAAC,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAC3C,gEAAgE;IAChE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;
|
|
1
|
+
{"version":3,"file":"framebuffer.d.ts","sourceRoot":"","sources":["../../src/resources/framebuffer.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,gBAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAA+B,KAAK,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAGnF,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,0BAA0B;IACzC,gGAAgG;IAChG,QAAQ,CAAC,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAC3C,gEAAgE;IAChE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAkID,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,OAAO,kBAAkB,EAAE,oBAAoB,EAC1D,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,EAC3B,IAAI,GAAE,0BAA+B,GACpC,gBAAgB,CAAC,YAAY,CAAC,CAEhC"}
|
|
@@ -107,7 +107,11 @@ class AdaptiveFramebuffer extends AdaptiveResource {
|
|
|
107
107
|
| TextureUsage.TEXTURE_BINDING
|
|
108
108
|
| (this.opts.extraUsage ?? 0);
|
|
109
109
|
const labelPrefix = this.opts.labelPrefix ?? "fbo";
|
|
110
|
-
for (const
|
|
110
|
+
for (const name of this.signature.colorNames) {
|
|
111
|
+
const format = this.signature.colors.tryFind(name);
|
|
112
|
+
if (format === undefined) {
|
|
113
|
+
throw new Error(`framebuffer: signature.colorNames lists "${name}" but signature.colors has no entry`);
|
|
114
|
+
}
|
|
111
115
|
const tex = this.device.createTexture({
|
|
112
116
|
size: { width: size.width, height: size.height, depthOrArrayLayers: 1 },
|
|
113
117
|
format,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"framebuffer.js","sourceRoot":"","sources":["../../src/resources/framebuffer.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"framebuffer.js","sourceRoot":"","sources":["../../src/resources/framebuffer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"framebufferSignature.d.ts","sourceRoot":"","sources":["../../src/resources/framebufferSignature.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAEV,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAClD,QAAQ,CAAC,YAAY,CAAC,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAA;KAAE,CAAC;IAC9D,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,wBAAwB,GAC7B,oBAAoB,
|
|
1
|
+
{"version":3,"file":"framebufferSignature.d.ts","sourceRoot":"","sources":["../../src/resources/framebufferSignature.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAEV,oBAAoB,EACrB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAClD,QAAQ,CAAC,YAAY,CAAC,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,gBAAgB,CAAA;KAAE,CAAC;IAC9D,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,wBAAwB,GAC7B,oBAAoB,CActB"}
|
|
@@ -4,11 +4,14 @@
|
|
|
4
4
|
import { HashMap } from "@aardworx/wombat.adaptive";
|
|
5
5
|
export function createFramebufferSignature(spec) {
|
|
6
6
|
let colors = HashMap.empty();
|
|
7
|
+
const colorNames = [];
|
|
7
8
|
for (const [name, format] of Object.entries(spec.colors)) {
|
|
8
9
|
colors = colors.add(name, format);
|
|
10
|
+
colorNames.push(name);
|
|
9
11
|
}
|
|
10
12
|
const sig = {
|
|
11
13
|
colors,
|
|
14
|
+
colorNames,
|
|
12
15
|
sampleCount: spec.sampleCount ?? 1,
|
|
13
16
|
...(spec.depthStencil ? { depthStencil: depthStencilFor(spec.depthStencil.format) } : {}),
|
|
14
17
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"framebufferSignature.js","sourceRoot":"","sources":["../../src/resources/framebufferSignature.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,iEAAiE;AACjE,qEAAqE;AAErE,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAYpD,MAAM,UAAU,0BAA0B,CACxC,IAA8B;IAE9B,IAAI,MAAM,GAAG,OAAO,CAAC,KAAK,EAA4B,CAAC;IACvD,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACzD,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"framebufferSignature.js","sourceRoot":"","sources":["../../src/resources/framebufferSignature.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,iEAAiE;AACjE,qEAAqE;AAErE,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAYpD,MAAM,UAAU,0BAA0B,CACxC,IAA8B;IAE9B,IAAI,MAAM,GAAG,OAAO,CAAC,KAAK,EAA4B,CAAC;IACvD,MAAM,UAAU,GAAa,EAAE,CAAC;IAChC,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACzD,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAClC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IACD,MAAM,GAAG,GAAyB;QAChC,MAAM;QACN,UAAU;QACV,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,CAAC;QAClC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC1F,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,eAAe,CAAC,MAAwB;IAC/C,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,MAAM,KAAK,sBAAsB,IAAI,MAAM,KAAK,uBAAuB,CAAC;IAClH,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;AAC1C,CAAC"}
|
|
@@ -1,8 +1,14 @@
|
|
|
1
|
-
import { type Command, type CompiledEffect, type Effect, type IRenderTask } from "../core/index.js";
|
|
1
|
+
import { type Command, type CompiledEffect, type Effect, type FramebufferSignature, type IRenderTask } from "../core/index.js";
|
|
2
2
|
import { AdaptiveToken, type alist } from "@aardworx/wombat.adaptive";
|
|
3
3
|
export interface RuntimeContext {
|
|
4
4
|
readonly device: GPUDevice;
|
|
5
|
-
|
|
5
|
+
/**
|
|
6
|
+
* Compile an `Effect` against the target framebuffer signature.
|
|
7
|
+
* The signature determines the canonical fragment-output layout
|
|
8
|
+
* (`signature.colorNames[i]` ↔ `@location(i)`); the shader's
|
|
9
|
+
* `linkFragmentOutputs` pass uses it to re-pin and DCE outputs.
|
|
10
|
+
*/
|
|
11
|
+
readonly compileEffect: (effect: Effect, signature: FramebufferSignature) => CompiledEffect;
|
|
6
12
|
}
|
|
7
13
|
export declare function compileRenderTask(ctx: RuntimeContext, commands: alist<Command>): IRenderTask & {
|
|
8
14
|
encode(enc: GPUCommandEncoder, token: AdaptiveToken): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderTask.d.ts","sourceRoot":"","sources":["../../src/runtime/renderTask.ts"],"names":[],"mappings":"AAcA,OAAO,EAGL,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,MAAM,
|
|
1
|
+
{"version":3,"file":"renderTask.d.ts","sourceRoot":"","sources":["../../src/runtime/renderTask.ts"],"names":[],"mappings":"AAcA,OAAO,EAGL,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,MAAM,EACX,KAAK,oBAAoB,EAEzB,KAAK,WAAW,EAEjB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,aAAa,EAAE,KAAK,KAAK,EAAa,MAAM,2BAA2B,CAAC;AAIjF,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,oBAAoB,KAAK,cAAc,CAAC;CAC7F;AA+FD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,WAAW,GAAG;IAC9F,MAAM,CAAC,GAAG,EAAE,iBAAiB,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;CAC5D,CAEA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderTask.js","sourceRoot":"","sources":["../../src/runtime/renderTask.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAC3D,eAAe;AACf,EAAE;AACF,kEAAkE;AAClE,0DAA0D;AAC1D,qEAAqE;AACrE,iEAAiE;AACjE,+DAA+D;AAC/D,uEAAuE;AACvE,EAAE;AACF,oEAAoE;AACpE,mEAAmE;AACnE,uDAAuD;AAEvD,OAAO,EACL,aAAa,
|
|
1
|
+
{"version":3,"file":"renderTask.js","sourceRoot":"","sources":["../../src/runtime/renderTask.ts"],"names":[],"mappings":"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"}
|
package/dist/runtime/renderTo.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"renderTo.js","sourceRoot":"","sources":["../../src/runtime/renderTo.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"renderTo.js","sourceRoot":"","sources":["../../src/runtime/renderTo.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Command, CompiledEffect, Effect, IRenderTask, RenderTree } from "../core/index.js";
|
|
1
|
+
import type { Command, CompiledEffect, Effect, FramebufferSignature, IRenderTask, RenderTree } from "../core/index.js";
|
|
2
2
|
import type { alist } from "@aardworx/wombat.adaptive";
|
|
3
3
|
import { type RenderToOptions, type RenderToResult } from "./renderTo.js";
|
|
4
4
|
export interface RuntimeOptions {
|
|
@@ -10,7 +10,7 @@ export interface RuntimeOptions {
|
|
|
10
10
|
* `CompileOptions` (`skipMatrixReversal`, source-file labelling,
|
|
11
11
|
* …).
|
|
12
12
|
*/
|
|
13
|
-
readonly compileEffect?: (effect: Effect) => CompiledEffect;
|
|
13
|
+
readonly compileEffect?: (effect: Effect, signature: FramebufferSignature) => CompiledEffect;
|
|
14
14
|
}
|
|
15
15
|
export declare class Runtime {
|
|
16
16
|
private readonly ctx;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../src/runtime/runtime.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,oBAAoB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACvH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,EAAY,KAAK,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpF,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B;;;;;;OAMG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,oBAAoB,KAAK,cAAc,CAAC;CAC9F;AAeD,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAiB;IACrC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0B;IACjD,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAS;IAC5B;;;OAGG;IACH,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;gBAEpC,IAAI,EAAE,cAAc;IAuBhC,IAAI,MAAM,IAAI,SAAS,CAA4B;IACnD,IAAI,YAAY,IAAI,OAAO,CAA6B;IAqBxD,iEAAiE;IACjE,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,WAAW;IAS9C;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,eAAe,GAAG,cAAc;IAKlE;;;;;;;OAOG;IACH,UAAU,IAAI,IAAI;CAQnB"}
|
package/dist/runtime/runtime.js
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
// (eventually) `renderTo(...)`.
|
|
4
4
|
import { compileRenderTask } from "./renderTask.js";
|
|
5
5
|
import { renderTo } from "./renderTo.js";
|
|
6
|
+
/**
|
|
7
|
+
* Derive the fragment-output layout from a framebuffer signature:
|
|
8
|
+
* `colorNames[i]` ↔ `@location(i)`. The shader's `linkFragmentOutputs`
|
|
9
|
+
* pass uses this to re-pin and DCE fragment outputs at compile time —
|
|
10
|
+
* so two compiles of the same Effect against differently-ordered
|
|
11
|
+
* signatures produce different shaders.
|
|
12
|
+
*/
|
|
13
|
+
function layoutFromSignature(sig) {
|
|
14
|
+
const locations = new Map();
|
|
15
|
+
sig.colorNames.forEach((name, i) => locations.set(name, i));
|
|
16
|
+
return { locations };
|
|
17
|
+
}
|
|
6
18
|
export class Runtime {
|
|
7
19
|
ctx;
|
|
8
20
|
_tasks = new Set();
|
|
@@ -16,7 +28,10 @@ export class Runtime {
|
|
|
16
28
|
constructor(opts) {
|
|
17
29
|
this.ctx = {
|
|
18
30
|
device: opts.device,
|
|
19
|
-
compileEffect: opts.compileEffect ?? ((e) => e.compile({
|
|
31
|
+
compileEffect: opts.compileEffect ?? ((e, sig) => e.compile({
|
|
32
|
+
target: "wgsl",
|
|
33
|
+
fragmentOutputLayout: layoutFromSignature(sig),
|
|
34
|
+
})),
|
|
20
35
|
};
|
|
21
36
|
// `device.lost` is a real-WebGPU promise; mock devices may not
|
|
22
37
|
// expose it. Treat as "never lost" in that case.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/runtime/runtime.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,2DAA2D;AAC3D,gCAAgC;AAIhC,OAAO,EAAE,iBAAiB,EAAuB,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,QAAQ,EAA6C,MAAM,eAAe,CAAC;AAcpF,MAAM,OAAO,OAAO;IACD,GAAG,CAAiB;IACpB,MAAM,GAAG,IAAI,GAAG,EAAe,CAAC;IACzC,SAAS,GAAG,KAAK,CAAC;IAClB,WAAW,GAAG,KAAK,CAAC;IAC5B;;;OAGG;IACM,UAAU,CAA6B;IAEhD,YAAY,IAAoB;QAC9B,IAAI,CAAC,GAAG,GAAG;YACT,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/runtime/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,7 +13,7 @@ export declare class ScenePass {
|
|
|
13
13
|
private readonly root;
|
|
14
14
|
/** Bumped on `prepareRenderObject`. Tests use this to confirm O(deltas) prep cost. */
|
|
15
15
|
readonly stats: WalkerStats;
|
|
16
|
-
constructor(device: GPUDevice, signature: FramebufferSignature, tree: RenderTree, compileEffect: (e: Effect) => CompiledEffect);
|
|
16
|
+
constructor(device: GPUDevice, signature: FramebufferSignature, tree: RenderTree, compileEffect: (e: Effect, signature: FramebufferSignature) => CompiledEffect);
|
|
17
17
|
/**
|
|
18
18
|
* Pull deltas from every dynamic subtree, splice the affected
|
|
19
19
|
* walkers, and produce the current ordered list of leaves.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scenePass.d.ts","sourceRoot":"","sources":["../../src/runtime/scenePass.ts"],"names":[],"mappings":"AAiBA,OAAO,EACL,KAAK,aAAa,EAQnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,MAAM,EACX,KAAK,oBAAoB,EAEzB,KAAK,UAAU,EAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,uBAAuB,CAAC;AAS/B;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;CACtB;AAkMD,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAClC,sFAAsF;IACtF,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAuB;gBAGhD,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,oBAAoB,EAC/B,IAAI,EAAE,UAAU,EAChB,aAAa,EAAE,CAAC,CAAC,EAAE,MAAM,KAAK,cAAc;
|
|
1
|
+
{"version":3,"file":"scenePass.d.ts","sourceRoot":"","sources":["../../src/runtime/scenePass.ts"],"names":[],"mappings":"AAiBA,OAAO,EACL,KAAK,aAAa,EAQnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,MAAM,EACX,KAAK,oBAAoB,EAEzB,KAAK,UAAU,EAChB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,uBAAuB,CAAC;AAS/B;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;CACtB;AAkMD,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAa;IAClC,sFAAsF;IACtF,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAuB;gBAGhD,MAAM,EAAE,SAAS,EACjB,SAAS,EAAE,oBAAoB,EAC/B,IAAI,EAAE,UAAU,EAChB,aAAa,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,oBAAoB,KAAK,cAAc;IAM/E;;;;OAIG;IACH,OAAO,CAAC,KAAK,EAAE,aAAa,GAAG,oBAAoB,EAAE;IAOrD,OAAO,IAAI,IAAI;CAGhB"}
|
|
@@ -28,7 +28,7 @@ class LeafWalker extends NodeWalker {
|
|
|
28
28
|
prepared;
|
|
29
29
|
constructor(ctx, obj) {
|
|
30
30
|
super();
|
|
31
|
-
const eff = ctx.compileEffect(obj.effect);
|
|
31
|
+
const eff = ctx.compileEffect(obj.effect, ctx.signature);
|
|
32
32
|
this.prepared = prepareRenderObject(ctx.device, obj, eff, ctx.signature, {
|
|
33
33
|
effectId: obj.effect.id,
|
|
34
34
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scenePass.js","sourceRoot":"","sources":["../../src/runtime/scenePass.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,mEAAmE;AACnE,qDAAqD;AACrD,0DAA0D;AAC1D,yBAAyB;AACzB,EAAE;AACF,kEAAkE;AAClE,kEAAkE;AAClE,gEAAgE;AAChE,iDAAiD;AACjD,EAAE;AACF,+DAA+D;AAC/D,qEAAqE;AACrE,mEAAmE;AACnE,kEAAkE;AAClE,4BAA4B;AAE5B,OAAO,EAIL,MAAM,GAKP,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAMN,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,mBAAmB,GAEpB,MAAM,uBAAuB,CAAC;AAkB/B,MAAe,UAAU;CAOxB;AAED,MAAM,WAAY,SAAQ,UAAU;IAClC,MAAM,KAAU,CAAC;IACjB,IAAI,KAAU,CAAC;IACf,OAAO,KAAU,CAAC;CACnB;AAED,MAAM,UAAW,SAAQ,UAAU;IAChB,QAAQ,CAAuB;IAChD,YAAY,GAAiB,EAAE,GAAiB;QAC9C,KAAK,EAAE,CAAC;QACR,MAAM,GAAG,GAAG,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"scenePass.js","sourceRoot":"","sources":["../../src/runtime/scenePass.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["../../src/window/canvas.ts"],"names":[],"mappings":"AAqBA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,oBAAoB,EAC1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAIL,KAAK,IAAI,EAEV,MAAM,2BAA2B,CAAC;AAEnC,MAAM,WAAW,mBAAmB;IAClC,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IACnC,4FAA4F;IAC5F,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IACxC,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;IACxC,4EAA4E;IAC5E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,wFAAwF;IACxF,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,gBAAgB;IAC/B,8DAA8D;IAC9D,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACzC,6DAA6D;IAC7D,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzE,qDAAqD;IACrD,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;IACzC,+GAA+G;IAC/G,SAAS,IAAI,IAAI,CAAC;IAClB,6EAA6E;IAC7E,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,iBAAiB,GAAG,eAAe,EAC3C,IAAI,GAAE,mBAAwB,GAC7B,gBAAgB,
|
|
1
|
+
{"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["../../src/window/canvas.ts"],"names":[],"mappings":"AAqBA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,oBAAoB,EAC1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAIL,KAAK,IAAI,EAEV,MAAM,2BAA2B,CAAC;AAEnC,MAAM,WAAW,mBAAmB;IAClC,6EAA6E;IAC7E,QAAQ,CAAC,MAAM,CAAC,EAAE,gBAAgB,CAAC;IACnC,4FAA4F;IAC5F,QAAQ,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IACxC,qEAAqE;IACrE,QAAQ,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;IACxC,4EAA4E;IAC5E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,wFAAwF;IACxF,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IACtC;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,gBAAgB;IAC/B,8DAA8D;IAC9D,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACzC,6DAA6D;IAC7D,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzE,qDAAqD;IACrD,QAAQ,CAAC,SAAS,EAAE,oBAAoB,CAAC;IACzC,+GAA+G;IAC/G,SAAS,IAAI,IAAI,CAAC;IAClB,6EAA6E;IAC7E,OAAO,IAAI,IAAI,CAAC;CACjB;AAED,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,EACjB,MAAM,EAAE,iBAAiB,GAAG,eAAe,EAC3C,IAAI,GAAE,mBAAwB,GAC7B,gBAAgB,CAsGlB"}
|
package/dist/window/canvas.js
CHANGED
|
@@ -93,6 +93,7 @@ export function attachCanvas(device, canvas, opts = {}) {
|
|
|
93
93
|
}
|
|
94
94
|
const signature = {
|
|
95
95
|
colors: HashMap.empty().add(colorName, format),
|
|
96
|
+
colorNames: [colorName],
|
|
96
97
|
sampleCount,
|
|
97
98
|
...(opts.depthFormat !== undefined
|
|
98
99
|
? { depthStencil: depthAttachmentSig(opts.depthFormat) }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas.js","sourceRoot":"","sources":["../../src/window/canvas.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"canvas.js","sourceRoot":"","sources":["../../src/window/canvas.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aardworx/wombat.rendering",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.0",
|
|
4
4
|
"description": "WebGPU rendering layer for the Wombat TypeScript stack — RenderObject/RenderTask/runtime + window glue, port of Aardvark.Rendering's lower layers on top of WebGPU and wombat.shader.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "krauthaufen",
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"dependencies": {
|
|
57
57
|
"@aardworx/wombat.adaptive": "^0.2.1",
|
|
58
58
|
"@aardworx/wombat.base": "^0.3.0",
|
|
59
|
-
"@aardworx/wombat.shader": "^0.
|
|
59
|
+
"@aardworx/wombat.shader": "^0.3.0"
|
|
60
60
|
},
|
|
61
61
|
"devDependencies": {
|
|
62
62
|
"@webgpu/types": "^0.1.69"
|
package/src/commands/clear.ts
CHANGED
|
@@ -16,7 +16,7 @@ export function clear(
|
|
|
16
16
|
values: ClearValues,
|
|
17
17
|
): void {
|
|
18
18
|
const colorAttachments: GPURenderPassColorAttachment[] = [];
|
|
19
|
-
for (const
|
|
19
|
+
for (const name of output.signature.colorNames) {
|
|
20
20
|
const view = output.colors.tryFind(name);
|
|
21
21
|
if (view === undefined) {
|
|
22
22
|
throw new Error(`clear: framebuffer is missing color attachment "${name}"`);
|
package/src/commands/render.ts
CHANGED
|
@@ -27,7 +27,7 @@ export interface Recordable {
|
|
|
27
27
|
export function beginPassDescriptor(output: IFramebuffer, clear?: ClearValues): GPURenderPassDescriptor {
|
|
28
28
|
const colorAttachments: GPURenderPassColorAttachment[] = [];
|
|
29
29
|
const msaa = output.signature.sampleCount > 1;
|
|
30
|
-
for (const
|
|
30
|
+
for (const name of output.signature.colorNames) {
|
|
31
31
|
const view = output.colors.tryFind(name);
|
|
32
32
|
if (view === undefined) {
|
|
33
33
|
throw new Error(`render: framebuffer is missing color attachment "${name}"`);
|
|
@@ -14,6 +14,16 @@ export interface DepthStencilAttachmentSignature {
|
|
|
14
14
|
|
|
15
15
|
export interface FramebufferSignature {
|
|
16
16
|
readonly colors: HashMap<string, GPUTextureFormat>;
|
|
17
|
+
/**
|
|
18
|
+
* Canonical name → location ordering for the color attachments.
|
|
19
|
+
* `colorNames[i]` names the attachment at WebGPU color-attachment
|
|
20
|
+
* slot `i` (and the fragment-shader `@location(i)`). This is the
|
|
21
|
+
* authoritative ordering used by the render-pass descriptor, the
|
|
22
|
+
* shader's fragment-output linker, and pipeline color-target
|
|
23
|
+
* indexing — `colors` (a HashMap) provides only name → format
|
|
24
|
+
* lookup and has no inherent order.
|
|
25
|
+
*/
|
|
26
|
+
readonly colorNames: readonly string[];
|
|
17
27
|
readonly depthStencil?: DepthStencilAttachmentSignature;
|
|
18
28
|
readonly sampleCount: number;
|
|
19
29
|
}
|
|
@@ -121,7 +121,11 @@ class AdaptiveFramebuffer extends AdaptiveResource<IFramebuffer> {
|
|
|
121
121
|
| (this.opts.extraUsage ?? 0);
|
|
122
122
|
const labelPrefix = this.opts.labelPrefix ?? "fbo";
|
|
123
123
|
|
|
124
|
-
for (const
|
|
124
|
+
for (const name of this.signature.colorNames) {
|
|
125
|
+
const format = this.signature.colors.tryFind(name);
|
|
126
|
+
if (format === undefined) {
|
|
127
|
+
throw new Error(`framebuffer: signature.colorNames lists "${name}" but signature.colors has no entry`);
|
|
128
|
+
}
|
|
125
129
|
const tex = this.device.createTexture({
|
|
126
130
|
size: { width: size.width, height: size.height, depthOrArrayLayers: 1 },
|
|
127
131
|
format,
|
|
@@ -18,11 +18,14 @@ export function createFramebufferSignature(
|
|
|
18
18
|
spec: FramebufferSignatureSpec,
|
|
19
19
|
): FramebufferSignature {
|
|
20
20
|
let colors = HashMap.empty<string, GPUTextureFormat>();
|
|
21
|
+
const colorNames: string[] = [];
|
|
21
22
|
for (const [name, format] of Object.entries(spec.colors)) {
|
|
22
23
|
colors = colors.add(name, format);
|
|
24
|
+
colorNames.push(name);
|
|
23
25
|
}
|
|
24
26
|
const sig: FramebufferSignature = {
|
|
25
27
|
colors,
|
|
28
|
+
colorNames,
|
|
26
29
|
sampleCount: spec.sampleCount ?? 1,
|
|
27
30
|
...(spec.depthStencil ? { depthStencil: depthStencilFor(spec.depthStencil.format) } : {}),
|
|
28
31
|
};
|
|
@@ -18,6 +18,7 @@ import {
|
|
|
18
18
|
type Command,
|
|
19
19
|
type CompiledEffect,
|
|
20
20
|
type Effect,
|
|
21
|
+
type FramebufferSignature,
|
|
21
22
|
type IFramebuffer,
|
|
22
23
|
type IRenderTask,
|
|
23
24
|
type RenderTree,
|
|
@@ -29,7 +30,13 @@ import { ScenePass } from "./scenePass.js";
|
|
|
29
30
|
|
|
30
31
|
export interface RuntimeContext {
|
|
31
32
|
readonly device: GPUDevice;
|
|
32
|
-
|
|
33
|
+
/**
|
|
34
|
+
* Compile an `Effect` against the target framebuffer signature.
|
|
35
|
+
* The signature determines the canonical fragment-output layout
|
|
36
|
+
* (`signature.colorNames[i]` ↔ `@location(i)`); the shader's
|
|
37
|
+
* `linkFragmentOutputs` pass uses it to re-pin and DCE outputs.
|
|
38
|
+
*/
|
|
39
|
+
readonly compileEffect: (effect: Effect, signature: FramebufferSignature) => CompiledEffect;
|
|
33
40
|
}
|
|
34
41
|
|
|
35
42
|
class RenderTask implements IRenderTask {
|
package/src/runtime/renderTo.ts
CHANGED
|
@@ -137,7 +137,7 @@ export function renderTo(
|
|
|
137
137
|
},
|
|
138
138
|
colors() {
|
|
139
139
|
let out = HashMap.empty<string, AdaptiveResource<ITexture>>();
|
|
140
|
-
for (const
|
|
140
|
+
for (const name of opts.signature.colorNames) {
|
|
141
141
|
out = out.add(name, this.color(name));
|
|
142
142
|
}
|
|
143
143
|
return out;
|
package/src/runtime/runtime.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// effect-compilation hook, exposes `compile(commands)` and
|
|
3
3
|
// (eventually) `renderTo(...)`.
|
|
4
4
|
|
|
5
|
-
import type { Command, CompiledEffect, Effect, IRenderTask, RenderTree } from "../core/index.js";
|
|
5
|
+
import type { Command, CompiledEffect, Effect, FramebufferSignature, IRenderTask, RenderTree } from "../core/index.js";
|
|
6
6
|
import type { alist } from "@aardworx/wombat.adaptive";
|
|
7
7
|
import { compileRenderTask, type RuntimeContext } from "./renderTask.js";
|
|
8
8
|
import { renderTo, type RenderToOptions, type RenderToResult } from "./renderTo.js";
|
|
@@ -16,7 +16,20 @@ export interface RuntimeOptions {
|
|
|
16
16
|
* `CompileOptions` (`skipMatrixReversal`, source-file labelling,
|
|
17
17
|
* …).
|
|
18
18
|
*/
|
|
19
|
-
readonly compileEffect?: (effect: Effect) => CompiledEffect;
|
|
19
|
+
readonly compileEffect?: (effect: Effect, signature: FramebufferSignature) => CompiledEffect;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Derive the fragment-output layout from a framebuffer signature:
|
|
24
|
+
* `colorNames[i]` ↔ `@location(i)`. The shader's `linkFragmentOutputs`
|
|
25
|
+
* pass uses this to re-pin and DCE fragment outputs at compile time —
|
|
26
|
+
* so two compiles of the same Effect against differently-ordered
|
|
27
|
+
* signatures produce different shaders.
|
|
28
|
+
*/
|
|
29
|
+
function layoutFromSignature(sig: FramebufferSignature): { locations: ReadonlyMap<string, number> } {
|
|
30
|
+
const locations = new Map<string, number>();
|
|
31
|
+
sig.colorNames.forEach((name, i) => locations.set(name, i));
|
|
32
|
+
return { locations };
|
|
20
33
|
}
|
|
21
34
|
|
|
22
35
|
export class Runtime {
|
|
@@ -33,7 +46,10 @@ export class Runtime {
|
|
|
33
46
|
constructor(opts: RuntimeOptions) {
|
|
34
47
|
this.ctx = {
|
|
35
48
|
device: opts.device,
|
|
36
|
-
compileEffect: opts.compileEffect ?? ((e: Effect) => e.compile({
|
|
49
|
+
compileEffect: opts.compileEffect ?? ((e: Effect, sig: FramebufferSignature) => e.compile({
|
|
50
|
+
target: "wgsl",
|
|
51
|
+
fragmentOutputLayout: layoutFromSignature(sig),
|
|
52
|
+
})),
|
|
37
53
|
};
|
|
38
54
|
// `device.lost` is a real-WebGPU promise; mock devices may not
|
|
39
55
|
// expose it. Treat as "never lost" in that case.
|
package/src/runtime/scenePass.ts
CHANGED
|
@@ -39,7 +39,7 @@ import {
|
|
|
39
39
|
|
|
40
40
|
interface BuildContext {
|
|
41
41
|
readonly device: GPUDevice;
|
|
42
|
-
readonly compileEffect: (e: Effect) => CompiledEffect;
|
|
42
|
+
readonly compileEffect: (e: Effect, signature: FramebufferSignature) => CompiledEffect;
|
|
43
43
|
readonly signature: FramebufferSignature;
|
|
44
44
|
readonly stats: WalkerStats;
|
|
45
45
|
}
|
|
@@ -72,7 +72,7 @@ class LeafWalker extends NodeWalker {
|
|
|
72
72
|
private readonly prepared: PreparedRenderObject;
|
|
73
73
|
constructor(ctx: BuildContext, obj: RenderObject) {
|
|
74
74
|
super();
|
|
75
|
-
const eff = ctx.compileEffect(obj.effect);
|
|
75
|
+
const eff = ctx.compileEffect(obj.effect, ctx.signature);
|
|
76
76
|
this.prepared = prepareRenderObject(ctx.device, obj, eff, ctx.signature, {
|
|
77
77
|
effectId: obj.effect.id,
|
|
78
78
|
});
|
|
@@ -254,7 +254,7 @@ export class ScenePass {
|
|
|
254
254
|
device: GPUDevice,
|
|
255
255
|
signature: FramebufferSignature,
|
|
256
256
|
tree: RenderTree,
|
|
257
|
-
compileEffect: (e: Effect) => CompiledEffect,
|
|
257
|
+
compileEffect: (e: Effect, signature: FramebufferSignature) => CompiledEffect,
|
|
258
258
|
) {
|
|
259
259
|
const ctx: BuildContext = { device, signature, compileEffect, stats: this.stats };
|
|
260
260
|
this.root = build(tree, ctx);
|
package/src/window/canvas.ts
CHANGED
|
@@ -142,6 +142,7 @@ export function attachCanvas(
|
|
|
142
142
|
|
|
143
143
|
const signature: FramebufferSignature = {
|
|
144
144
|
colors: HashMap.empty<string, GPUTextureFormat>().add(colorName, format),
|
|
145
|
+
colorNames: [colorName],
|
|
145
146
|
sampleCount,
|
|
146
147
|
...(opts.depthFormat !== undefined
|
|
147
148
|
? { depthStencil: depthAttachmentSig(opts.depthFormat) }
|