@flighthq/render-wgpu 0.3.1-next.975.01aea94 → 0.4.0-edge.1908.751021c

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.
Files changed (55) hide show
  1. package/dist/contract.d.ts +1 -0
  2. package/dist/contract.d.ts.map +1 -1
  3. package/dist/contract.js +1 -0
  4. package/dist/contract.js.map +1 -1
  5. package/dist/enableWgpuTextureResolverGuards.d.ts.map +1 -1
  6. package/dist/enableWgpuTextureResolverGuards.js +11 -0
  7. package/dist/enableWgpuTextureResolverGuards.js.map +1 -1
  8. package/dist/index.d.ts +1 -1
  9. package/dist/index.d.ts.map +1 -1
  10. package/dist/index.js +1 -1
  11. package/dist/index.js.map +1 -1
  12. package/dist/wgpuAntialias.d.ts +10 -0
  13. package/dist/wgpuAntialias.d.ts.map +1 -0
  14. package/dist/wgpuAntialias.js +136 -0
  15. package/dist/wgpuAntialias.js.map +1 -0
  16. package/dist/wgpuBackground.d.ts.map +1 -1
  17. package/dist/wgpuBackground.js +12 -4
  18. package/dist/wgpuBackground.js.map +1 -1
  19. package/dist/wgpuDraw.d.ts.map +1 -1
  20. package/dist/wgpuDraw.js +21 -11
  21. package/dist/wgpuDraw.js.map +1 -1
  22. package/dist/wgpuMipmap.d.ts +1 -0
  23. package/dist/wgpuMipmap.d.ts.map +1 -1
  24. package/dist/wgpuMipmap.js +3 -0
  25. package/dist/wgpuMipmap.js.map +1 -1
  26. package/dist/wgpuRenderState.d.ts.map +1 -1
  27. package/dist/wgpuRenderState.js +15 -0
  28. package/dist/wgpuRenderState.js.map +1 -1
  29. package/dist/wgpuRenderTarget.d.ts +16 -2
  30. package/dist/wgpuRenderTarget.d.ts.map +1 -1
  31. package/dist/wgpuRenderTarget.js +52 -9
  32. package/dist/wgpuRenderTarget.js.map +1 -1
  33. package/dist/wgpuRenderTargetPool.d.ts +1 -0
  34. package/dist/wgpuRenderTargetPool.d.ts.map +1 -1
  35. package/dist/wgpuRenderTargetPool.js +9 -6
  36. package/dist/wgpuRenderTargetPool.js.map +1 -1
  37. package/dist/wgpuRenderTexture.js +3 -3
  38. package/dist/wgpuRenderTexture.js.map +1 -1
  39. package/dist/wgpuScissor.d.ts +1 -0
  40. package/dist/wgpuScissor.d.ts.map +1 -1
  41. package/dist/wgpuScissor.js +8 -1
  42. package/dist/wgpuScissor.js.map +1 -1
  43. package/dist/wgpuTestHelper.d.ts +2 -2
  44. package/dist/wgpuTestHelper.d.ts.map +1 -1
  45. package/dist/wgpuTestHelper.js +2 -2
  46. package/dist/wgpuTestHelper.js.map +1 -1
  47. package/package.json +12 -12
  48. package/src/enableWgpuTextureResolverGuards.test.ts +30 -0
  49. package/src/wgpuAntialias.test.ts +217 -0
  50. package/src/wgpuDraw.test.ts +35 -0
  51. package/src/wgpuMipmap.test.ts +11 -1
  52. package/src/wgpuRenderTarget.test.ts +53 -0
  53. package/src/wgpuRenderTargetPool.test.ts +16 -0
  54. package/src/wgpuRenderTexture.test.ts +13 -0
  55. package/src/wgpuScissor.test.ts +18 -1
@@ -17,6 +17,8 @@ export function copyWgpuRenderStateRegistrations(target, source) {
17
17
  target.applyBlendMode = null;
18
18
  targetRuntime.applyBlendModeParent = source;
19
19
  targetRuntime.defaultBitmapShader = sourceRuntime.defaultBitmapShader;
20
+ targetRuntime.mipmapDegradedGuard = sourceRuntime.mipmapDegradedGuard;
21
+ targetRuntime.mipmapGenerator = sourceRuntime.mipmapGenerator;
20
22
  targetRuntime.webgpuShaderBindingResolver = sourceRuntime.webgpuShaderBindingResolver;
21
23
  targetRuntime.registries = {
22
24
  colorAdjustmentFeature: sourceRuntime.registries.colorAdjustmentFeature,
@@ -151,6 +153,7 @@ export async function createWgpuRenderState(canvas, options = {}) {
151
153
  state.format = format;
152
154
  const runtime = createWgpuRenderStateRuntime();
153
155
  state[EntityRuntimeKey] = runtime;
156
+ runtime.surfaceAntialiasEnabled = options.antialias ?? false;
154
157
  runtime.currentBlendMode = null;
155
158
  runtime.currentRenderTarget = null;
156
159
  runtime.uniformBindGroupLayout = uniformBindGroupLayout;
@@ -166,6 +169,8 @@ export async function createWgpuRenderState(canvas, options = {}) {
166
169
  runtime.linearSampler = linearSampler;
167
170
  runtime.nearestSampler = nearestSampler;
168
171
  runtime.samplerCache = new Map();
172
+ runtime.mipmapDegradedGuard = null;
173
+ runtime.mipmapGenerator = null;
169
174
  runtime.mipmapPipelineCache = new Map();
170
175
  runtime.textureCache = new WeakMap();
171
176
  runtime.textureSourcePremultipliedTextureCache = new WeakMap();
@@ -218,6 +223,15 @@ export async function createWgpuRenderState(canvas, options = {}) {
218
223
  export function createWgpuRenderStateRuntime(sharedRuntime) {
219
224
  const runtime = createRenderStateRuntime();
220
225
  runtime.applyBlendModeParent = null;
226
+ runtime.surfaceAntialiasEnabled = false;
227
+ runtime.surfaceAntialiasTexture = null;
228
+ runtime.surfaceAntialiasView = null;
229
+ runtime.surfaceAntialiasWidth = 0;
230
+ runtime.surfaceAntialiasHeight = 0;
231
+ runtime.surfaceAntialiasResolveBindGroupLayout = null;
232
+ runtime.surfaceAntialiasResolvePipeline = null;
233
+ runtime.surfaceAntialiasResolveBindGroup = null;
234
+ runtime.surfacePresentationView = null;
221
235
  runtime.registries = {
222
236
  compressedTextureDecoder: createSlotTable('WgpuCompressedTextureDecoder', 'Unregistered'),
223
237
  compressedTextureUpload: createSlotTable('WgpuCompressedTextureUpload', 'Unregistered'),
@@ -266,6 +280,7 @@ export function destroyWgpuRenderState(state) {
266
280
  runtime.uniformBuffer?.destroy();
267
281
  runtime.particleInstanceBuffer?.destroy();
268
282
  runtime.depthStencilTexture?.destroy();
283
+ runtime.surfaceAntialiasTexture?.destroy();
269
284
  for (const slot of runtime.quadBatchWriterBufferPool) {
270
285
  slot.instanceBuffer?.destroy();
271
286
  slot.materialBuffer?.destroy();
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuRenderState.js","sourceRoot":"","sources":["../src/wgpuRenderState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAChF,OAAO,EACL,+BAA+B,EAC/B,4BAA4B,EAC5B,iBAAiB,IAAI,kBAAkB,EACvC,wBAAwB,EACxB,kBAAkB,EAClB,6BAA6B,GAC9B,MAAM,2BAA2B,CAAC;AASnC,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAE7E,yFAAyF;AACzF,MAAM,eAAe,GAAG,IAAI,CAAC;AAE7B,+FAA+F;AAC/F,gEAAgE;AAChE,oEAAoE;AACpE,MAAM,UAAU,gCAAgC,CAAC,MAAuB,EAAE,MAAuB;IAC/F,MAAM,aAAa,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,aAAa,GAAG,yBAAyB,CAAC,MAAM,CAAC,CAAC;IACxD,+FAA+F;IAC/F,uFAAuF;IACvF,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC;IAC7B,aAAa,CAAC,oBAAoB,GAAG,MAAM,CAAC;IAC5C,aAAa,CAAC,mBAAmB,GAAG,aAAa,CAAC,mBAAmB,CAAC;IACtE,aAAa,CAAC,2BAA2B,GAAG,aAAa,CAAC,2BAA2B,CAAC;IACtF,aAAa,CAAC,UAAU,GAAG;QACzB,sBAAsB,EAAE,aAAa,CAAC,UAAU,CAAC,sBAAsB;QACvE,2BAA2B,EAAE,aAAa,CAAC,UAAU,CAAC,2BAA2B;QACjF,wBAAwB,EAAE,aAAa,CAAC,UAAU,CAAC,wBAAwB;QAC3E,uBAAuB,EAAE,aAAa,CAAC,UAAU,CAAC,uBAAuB;QACzE,qBAAqB,EAAE,aAAa,CAAC,UAAU,CAAC,qBAAqB;QACrE,iBAAiB,EAAE,aAAa,CAAC,UAAU,CAAC,iBAAiB;QAC7D,qBAAqB,EAAE,aAAa,CAAC,UAAU,CAAC,qBAAqB;QACrE,gBAAgB,EAAE,aAAa,CAAC,UAAU,CAAC,gBAAgB;QAC3D,uBAAuB,EAAE,aAAa,CAAC,UAAU,CAAC,uBAAuB;QACzE,aAAa,EAAE,aAAa,CAAC,UAAU,CAAC,aAAa;QACrD,SAAS,EAAE,aAAa,CAAC,UAAU,CAAC,SAAS;QAC7C,eAAe,EAAE,aAAa,CAAC,UAAU,CAAC,eAAe;QACzD,iBAAiB,EAAE,aAAa,CAAC,UAAU,CAAC,iBAAiB;QAC7D,gBAAgB,EAAE,aAAa,CAAC,UAAU,CAAC,gBAAgB;QAC3D,eAAe,EAAE,aAAa,CAAC,UAAU,CAAC,eAAe;KAC1D,CAAC;IACF,aAAa,CAAC,sBAAsB,GAAG,aAAa,CAAC,sBAAsB,CAAC;IAC5E,4BAA4B,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,8BAA8B,CAAC,WAA4B;IACzE,MAAM,KAAK,GAAG,kBAAkB,CAAC;QAC/B,cAAc,EAAE,WAAW,CAAC,cAAc;QAC1C,eAAe,EAAE,WAAW,CAAC,eAAe;QAC5C,mBAAmB,EAAE,CAAC,GAAG,WAAW,CAAC,mBAAmB,CAAC;QACzD,qBAAqB,EAAE,WAAW,CAAC,qBAAqB;QACxD,UAAU,EAAE,WAAW,CAAC,UAAU;QAClC,WAAW,EAAE,WAAW,CAAC,WAAW;QACpC,eAAe,EAAE,WAAW,CAAC,eAAe;QAC5C,iBAAiB,EAAE,YAAY,EAAE;QACjC,WAAW,EAAE,WAAW,CAAC,WAAW;QACpC,oBAAoB,EAAE,WAAW,CAAC,oBAAoB;KACvD,CAAoB,CAAC;IACtB,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;IAC3B,KAAuC,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;IACpE,KAAuC,CAAC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC;IACtE,KAA+B,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;IAC5D,KAAsC,CAAC,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;IAEpE,MAAM,aAAa,GAAG,yBAAyB,CAAC,WAAW,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,4BAA4B,CAAC,aAAa,CAAC,CAAC;IAC5D,KAAK,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC;IAClC,8BAA8B,CAAC,KAAK,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IAC9D,+BAA+B,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACpD,gCAAgC,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IACrD,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACzB,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAyB,EACzB,UAA6B,EAAE;IAE/B,IAAI,CAAC,SAAS,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAEhF,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,GAAG,CAAC,cAAc,CAChD,OAAO,CAAC,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,SAAS,CAC3F,CAAC;IACF,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAE/D,4FAA4F;IAC5F,mGAAmG;IACnG,kGAAkG;IAClG,oGAAoG;IACpG,qGAAqG;IACrG,MAAM,cAAc,GAA2B,EAAE,CAAC;IAClD,IAAI,OAAO,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC;QAAE,cAAc,CAAC,aAAa,GAAG,CAAC,CAAC;IACxE,kGAAkG;IAClG,oGAAoG;IACpG,kGAAkG;IAClG,MAAM,gBAAgB,GACpB,CAAC,wBAAwB,EAAE,0BAA0B,EAAE,0BAA0B,CAClF,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;IACrD,MAAM,gBAAgB,GAAwB,EAAE,CAAC;IACjD,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC;QAAE,gBAAgB,CAAC,cAAc,GAAG,cAAc,CAAC;IAC7F,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC;QAAE,gBAAgB,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IACtF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAE7D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,SAAS,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC;IAE1E,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAA4B,CAAC;IACvE,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAEtE,2GAA2G;IAC3G,+FAA+F;IAC/F,uGAAuG;IACvG,OAAO,CAAC,SAAS,CAAC;QAChB,MAAM;QACN,MAAM;QACN,SAAS,EAAE,eAAe;QAC1B,KAAK,EAAE,eAAe,CAAC,iBAAiB,GAAG,eAAe,CAAC,QAAQ;KACpE,CAAC,CAAC;IAEH,mDAAmD;IACnD,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,+BAA+B,EAAE,iBAAiB,CAAC,CAAC;IACtG,MAAM,YAAY,GAAG,aAAa,GAAG,eAAe,CAAC;IAErD,MAAM,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC;QACxC,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,cAAc,CAAC,OAAO,GAAG,cAAc,CAAC,QAAQ;KACxD,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,IAAI,YAAY,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;IACvD,MAAM,cAAc,GAAG,IAAI,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAE3D,MAAM,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;IAE9F,MAAM,gBAAgB,GAAG,MAAM,CAAC,eAAe,CAAC;QAC9C,MAAM,EAAE,sBAAsB;QAC9B,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,CAAC;KACxF,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;QACzC,SAAS,EAAE,QAAQ;QACnB,SAAS,EAAE,QAAQ;QACnB,YAAY,EAAE,eAAe;QAC7B,YAAY,EAAE,eAAe;KAC9B,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,MAAM,CAAC,aAAa,CAAC;QAC1C,SAAS,EAAE,SAAS;QACpB,SAAS,EAAE,SAAS;QACpB,YAAY,EAAE,eAAe;QAC7B,YAAY,EAAE,eAAe;KAC9B,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,kBAAkB,CAAC;QAC/B,cAAc,EAAE,OAAO,CAAC,qBAAqB,IAAI,IAAI;QACrD,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,CAAC;QACnC,iBAAiB,EAAE,YAAY,EAAE;QACjC,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,KAAK;QACzC,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;KACnD,CAAoB,CAAC;IAEtB,IAAI,OAAO,CAAC,eAAe,IAAI,IAAI;QAAE,6BAA6B,CAAC,KAAK,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAEnG,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC;IAC3B,KAAuC,CAAC,MAAM,GAAG,MAAM,CAAC;IACxD,KAAuC,CAAC,OAAO,GAAG,OAAO,CAAC;IAC1D,KAA+B,CAAC,MAAM,GAAG,MAAM,CAAC;IAChD,KAAsC,CAAC,MAAM,GAAG,MAAM,CAAC;IAExD,MAAM,OAAO,GAAG,4BAA4B,EAAE,CAAC;IAC/C,KAAK,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC;IAClC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAChC,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAEnC,OAAO,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;IACxD,OAAO,CAAC,sBAAsB,GAAG,sBAAsB,CAAC;IACxD,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;IACtC,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;IAClC,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;IACxC,OAAO,CAAC,aAAa,GAAG,CAAC,CAAC;IAC1B,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;IACtC,OAAO,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC5C,OAAO,CAAC,WAAW,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IAE1C,OAAO,CAAC,aAAa,GAAG,IAAI,GAAG,EAAE,CAAC;IAClC,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;IACtC,OAAO,CAAC,cAAc,GAAG,cAAc,CAAC;IACxC,OAAO,CAAC,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC;IACjC,OAAO,CAAC,mBAAmB,GAAG,IAAI,GAAG,EAAE,CAAC;IACxC,OAAO,CAAC,YAAY,GAAG,IAAI,OAAO,EAAE,CAAC;IACrC,OAAO,CAAC,sCAAsC,GAAG,IAAI,OAAO,EAAE,CAAC;IAC/D,OAAO,CAAC,0CAA0C,GAAG,IAAI,OAAO,EAAE,CAAC;IACnE,OAAO,CAAC,iCAAiC,GAAG,IAAI,OAAO,EAAE,CAAC;IAC1D,OAAO,CAAC,qCAAqC,GAAG,IAAI,OAAO,EAAE,CAAC;IAC9D,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IAEnC,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IACtC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,wBAAwB,GAAG,CAAC,CAAC;IAErC,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC;IACxC,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;IACvC,OAAO,CAAC,+BAA+B,GAAG,IAAI,CAAC;IAC/C,OAAO,CAAC,6BAA6B,GAAG,CAAC,CAAC;IAC1C,OAAO,CAAC,oBAAoB,GAAG,CAAC,CAAC;IACjC,OAAO,CAAC,2BAA2B,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC;IACjE,OAAO,CAAC,2BAA2B,GAAG,IAAI,YAAY,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;IAChE,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IACtC,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IACtC,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC;IACxC,oGAAoG;IACpG,yGAAyG;IACzG,OAAO,CAAC,yBAAyB,GAAG,EAAE,CAAC;IACvC,OAAO,CAAC,2BAA2B,GAAG,CAAC,CAAC;IAExC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAC9B,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IACjC,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC;IAElC,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IACnC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAChC,OAAO,CAAC,iBAAiB,GAAG,CAAC,CAAC;IAC9B,OAAO,CAAC,kBAAkB,GAAG,CAAC,CAAC;IAE/B,OAAO,CAAC,gBAAgB,GAAG,CAAC,CAAC;IAC7B,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;IAC9B,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;IACzC,OAAO,CAAC,gBAAgB,GAAG,EAAE,CAAC;IAC9B,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IACvC,OAAO,CAAC,SAAS,GAAG,EAAE,CAAC;IAEvB,OAAO,CAAC,YAAY,GAAG,EAAE,CAAC;IAC1B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAClC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,iBAAiB,GAAG,EAAE,CAAC;IAE/B,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAEzB,OAAO,KAAK,CAAC;AACf,CAAC;AAED,kGAAkG;AAClG,qGAAqG;AACrG,kGAAkG;AAClG,0BAA0B;AAC1B,MAAM,UAAU,4BAA4B,CAAC,aAAsC;IACjF,MAAM,OAAO,GAAG,wBAAwB,EAA4B,CAAC;IACrE,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,UAAU,GAAG;QACnB,wBAAwB,EAAE,eAAe,CAAC,8BAA8B,EAAE,cAAc,CAAC;QACzF,uBAAuB,EAAE,eAAe,CAAC,6BAA6B,EAAE,cAAc,CAAC;QACvF,qBAAqB,EAAE,gBAAgB,CAAC,0BAA0B,EAAE,cAAc,CAAC;QACnF,iBAAiB,EAAE,gBAAgB,CAAC,sBAAsB,EAAE,kBAAkB,CAAC;QAC/E,qBAAqB,EAAE,gBAAgB,CAAC,0BAA0B,EAAE,kBAAkB,CAAC;QACvF,gBAAgB,EAAE,gBAAgB,CAAC,qBAAqB,EAAE,cAAc,CAAC;QACzE,uBAAuB,EAAE,CAAC;QAC1B,aAAa,EAAE,gBAAgB,CAAC,kBAAkB,EAAE,cAAc,CAAC;QACnE,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS;QACvC,eAAe,EAAE,eAAe,CAAC,qBAAqB,EAAE,cAAc,CAAC;QACvE,iBAAiB,EAAE,OAAO,CAAC,UAAU,CAAC,iBAAiB;QACvD,gBAAgB,EAAE,gBAAgB,CAAC,qBAAqB,EAAE,cAAc,CAAC;QACzE,eAAe,EAAE,gBAAgB,CAAC,oBAAoB,EAAE,cAAc,CAAC;KACxE,CAAC;IACF,MAAM,aAAa,GACjB,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;IACpG,aAAa,CAAC,UAAU,EAAE,CAAC;IAC3B,4BAA4B,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;IACzD,KAAK,MAAM,GAAG,IAAI,wBAAwB,EAAE,CAAC;QAC3C,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE;YAClC,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,IAAI;YAChB,GAAG,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC;YACpC,GAAG,EAAE,CAAC,KAAc,EAAE,EAAE;gBACrB,aAAa,CAAC,MAAyD,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACxF,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,uGAAuG;AACvG,oGAAoG;AACpG,sGAAsG;AACtG,iBAAiB;AACjB,EAAE;AACF,iGAAiG;AACjG,6FAA6F;AAC7F,6FAA6F;AAC7F,8EAA8E;AAC9E,MAAM,UAAU,sBAAsB,CAAC,KAAsB;IAC3D,IAAI,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC;QAAE,OAAO;IACxC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC5B,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC1B,OAAO,CAAC,aAAa,EAAE,OAAO,EAAE,CAAC;IACjC,OAAO,CAAC,sBAAsB,EAAE,OAAO,EAAE,CAAC;IAC1C,OAAO,CAAC,mBAAmB,EAAE,OAAO,EAAE,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,yBAAyB,EAAE,CAAC;QACrD,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC;QAC/B,IAAI,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC;IACjC,CAAC;IACD,oBAAoB,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,qCAAqC,CACnD,KAAsB;IAEtB,MAAM,KAAK,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,sBAAsB,EAAE,KAAK,CAAC;IACxF,OAAO,KAAK,EAAE,KAAK,KAAK,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,0CAA0C,CACxD,KAAsB;IAEtB,MAAM,KAAK,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,2BAA2B,EAAE,KAAK,CAAC;IAC7F,OAAO,KAAK,EAAE,KAAK,KAAK,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AACxE,CAAC;AAED,iGAAiG;AACjG,6CAA6C;AAC7C,MAAM,UAAU,yBAAyB,CAAC,KAAsB;IAC9D,OAAO,KAAK,CAAC,gBAAgB,CAA2B,CAAC;AAC3D,CAAC;AAED,wGAAwG;AACxG,uGAAuG;AACvG,yGAAyG;AACzG,+FAA+F;AAC/F,iGAAiG;AACjG,sGAAsG;AACtG,qGAAqG;AACrG,gGAAgG;AAChG,MAAM,UAAU,cAAc,CAC5B,KAAsB,EACtB,SAAwB,EACxB,SAAwB,EACxB,KAAkB,EAClB,KAAkB,EAClB,YAAkC,EAClC,aAAa,GAAG,CAAC;IAEjB,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;IAC1D,MAAM,kBAAkB,GAAkB,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAChF,MAAM,kBAAkB,GAAkB,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAChF,MAAM,qBAAqB,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC;IACvE,sGAAsG;IACtG,oGAAoG;IACpG,4FAA4F;IAC5F,MAAM,GAAG,GACP,mBAAmB,CAAC,kBAAkB,CAAC;QACvC,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC,CAAC,qBAAqB,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,qBAAqB,CAAC,CAAC,IAAI,CAAC,CAAC;QAC7F,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;IACpB,IAAI,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5C,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,MAAM,UAAU,GAAyB;YACvC,SAAS,EAAE,kBAAkB;YAC7B,SAAS,EAAE,kBAAkB;YAC7B,YAAY,EAAE,KAAK;YACnB,YAAY,EAAE,KAAK;SACpB,CAAC;QACF,IAAI,qBAAqB,KAAK,SAAS;YAAE,UAAU,CAAC,YAAY,GAAG,qBAAqB,CAAC;QACzF,IAAI,UAAU,GAAG,CAAC;YAAE,UAAU,CAAC,aAAa,GAAG,UAAU,CAAC;QAC1D,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACjD,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,OAAO,OAAO,SAAS,KAAK,WAAW,IAAI,KAAK,IAAI,SAAS,IAAI,SAAS,CAAC,GAAG,KAAK,IAAI,CAAC;AAC1F,CAAC;AAED,sGAAsG;AACtG,gFAAgF;AAChF,MAAM,mBAAmB,GAAkC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;AACrF,MAAM,iBAAiB,GAAgC,EAAE,eAAe,EAAE,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;AAC7G,MAAM,mBAAmB,GAAwC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;AAE3F,SAAS,8BAA8B,CACrC,KAAsB,EACtB,OAA+B,EAC/B,aAAqC;IAErC,MAAM,YAAY,GAAG,aAAa,CAAC,aAAa,GAAG,eAAe,CAAC;IACnE,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC;QAC9C,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,cAAc,CAAC,OAAO,GAAG,cAAc,CAAC,QAAQ;KACxD,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,IAAI,YAAY,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;IACvD,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAChC,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IACnC,OAAO,CAAC,sBAAsB,GAAG,aAAa,CAAC,sBAAsB,CAAC;IACtE,OAAO,CAAC,sBAAsB,GAAG,aAAa,CAAC,sBAAsB,CAAC;IACtE,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC;IACtC,OAAO,CAAC,WAAW,GAAG,WAAW,CAAC;IAClC,OAAO,CAAC,cAAc,GAAG,IAAI,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC7D,OAAO,CAAC,aAAa,GAAG,CAAC,CAAC;IAC1B,OAAO,CAAC,aAAa,GAAG,aAAa,CAAC,aAAa,CAAC;IACpD,OAAO,CAAC,gBAAgB,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC;QACtD,MAAM,EAAE,OAAO,CAAC,sBAAsB;QACtC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,CAAC;KACxF,CAAC,CAAC;IACH,OAAO,CAAC,WAAW,GAAG,IAAI,YAAY,CAAC,CAAC,CAAC,CAAC;IAC1C,OAAO,CAAC,mBAAmB,GAAG,aAAa,CAAC,mBAAmB,CAAC;IAChE,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IACtC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,wBAAwB,GAAG,CAAC,CAAC;IACrC,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC;IACxC,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;IACvC,OAAO,CAAC,+BAA+B,GAAG,IAAI,CAAC;IAC/C,OAAO,CAAC,6BAA6B,GAAG,CAAC,CAAC;IAC1C,OAAO,CAAC,oBAAoB,GAAG,CAAC,CAAC;IACjC,OAAO,CAAC,2BAA2B,GAAG,IAAI,YAAY,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC;IACjE,OAAO,CAAC,2BAA2B,GAAG,IAAI,YAAY,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;IAChE,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IACtC,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IACtC,OAAO,CAAC,wBAAwB,GAAG,IAAI,CAAC;IACxC,OAAO,CAAC,yBAAyB,GAAG,EAAE,CAAC;IACvC,OAAO,CAAC,2BAA2B,GAAG,CAAC,CAAC;IACxC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAC9B,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAC1B,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IACjC,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC;IAClC,OAAO,CAAC,mBAAmB,GAAG,KAAK,CAAC;IACpC,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IACnC,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAClC,OAAO,CAAC,uBAAuB,GAAG,CAAC,CAAC;IACpC,OAAO,CAAC,iBAAiB,GAAG,CAAC,CAAC;IAC9B,OAAO,CAAC,kBAAkB,GAAG,CAAC,CAAC;IAC/B,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IACnC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAChC,OAAO,CAAC,iBAAiB,GAAG,CAAC,CAAC;IAC9B,OAAO,CAAC,kBAAkB,GAAG,CAAC,CAAC;IAC/B,OAAO,CAAC,gBAAgB,GAAG,CAAC,CAAC;IAC7B,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;IAC9B,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;IACzC,OAAO,CAAC,gBAAgB,GAAG,EAAE,CAAC;IAC9B,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC;IACvC,OAAO,CAAC,SAAS,GAAG,EAAE,CAAC;IACvB,OAAO,CAAC,YAAY,GAAG,EAAE,CAAC;IAC1B,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAClC,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,iBAAiB,GAAG,EAAE,CAAC;AACjC,CAAC;AAQD,SAAS,oBAAoB,CAAC,OAA+B;IAC3D,MAAM,aAAa,GAAG,4BAA4B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAChE,IAAI,aAAa,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAC/F,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,kGAAkG;AAClG,yEAAyE;AACzE,MAAM,wBAAwB,GAAG;IAC/B,wBAAwB;IACxB,wBAAwB;IACxB,eAAe;IACf,eAAe;IACf,gBAAgB;IAChB,cAAc;IACd,qBAAqB;IACrB,cAAc;IACd,wCAAwC;IACxC,4CAA4C;IAC5C,mCAAmC;IACnC,uCAAuC;IACvC,mBAAmB;IACnB,uBAAuB;IACvB,0BAA0B;IAC1B,wBAAwB;IACxB,sBAAsB;CACwC,CAAC;AAEjE,MAAM,4BAA4B,GAAG,IAAI,OAAO,EAA6C,CAAC;AAC9F,MAAM,gBAAgB,GAAG,IAAI,OAAO,EAAmB,CAAC;AAExD,gGAAgG;AAChG,+FAA+F;AAC/F,wFAAwF;AACxF,MAAM,UAAU,yBAAyB,CAAC,KAAsB;IAC9D,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,OAAO,OAAO,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC;QACvE,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACjC,OAAO,GAAG,MAAM,CAAC;IACnB,CAAC;IACD,OAAO,OAAO,CAAC,cAAc,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"wgpuRenderState.js","sourceRoot":"","sources":["../src/wgpuRenderState.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import type { Material, Matrix, RenderPassPreserve, RenderTargetColorSpace, WgpuRenderState, WgpuRenderTarget } from '@flighthq/types/contract';
2
2
  export declare function beginWgpuRenderPass(state: WgpuRenderState, target: WgpuRenderTarget, preserve?: Readonly<RenderPassPreserve>): void;
3
- export declare function createWgpuRenderTarget(state: WgpuRenderState, width: number, height: number, format?: GPUTextureFormat, colorSpace?: RenderTargetColorSpace): WgpuRenderTarget;
3
+ export declare function createWgpuRenderTarget(state: WgpuRenderState, width: number, height: number, format?: GPUTextureFormat, colorSpace?: RenderTargetColorSpace, sampleCount?: number): WgpuRenderTarget;
4
4
  export declare function declareWgpuRenderTargetColorSpace(state: WgpuRenderState, colorSpace: RenderTargetColorSpace): boolean;
5
5
  export declare function destroyWgpuRenderTarget(_state: WgpuRenderState, target: WgpuRenderTarget): void;
6
6
  export declare function drawWgpuRenderTargetResult(state: WgpuRenderState, renderProxy: {
@@ -16,6 +16,20 @@ export declare function drawWgpuRenderTargetResult(state: WgpuRenderState, rende
16
16
  };
17
17
  }, target: Readonly<WgpuRenderTarget>, transform: Readonly<Matrix>): void;
18
18
  export declare function endWgpuRenderPass(state: WgpuRenderState): void;
19
- export declare function resizeWgpuRenderTarget(state: WgpuRenderState, target: WgpuRenderTarget, width: number, height: number): void;
19
+ /**
20
+ * Device pixels per logical pixel in this target — 2 when it is supersampled, 1 otherwise.
21
+ *
22
+ * ★ THE ALLOCATOR AND THE PROJECTION MUST AGREE, AND THEY DID NOT. `resolveWgpuRenderTargetExtent` grows a
23
+ * `sampleCount: 4` target to 2x per axis, while the 2D projection divides by `renderTargetViewport.width`
24
+ * to reach NDC. With the physical extent in that field, logical x = 800 mapped to NDC 0 — the middle — so
25
+ * the scene filled exactly the left half and top half of its own target and the present then downsampled
26
+ * the lot, landing the picture at quarter size in the top-left corner. Measured on effect-sepia: the
27
+ * WebGPU frame equalled the WebGL frame sampled at (2x, 2y) on 12 of 12 grid points.
28
+ *
29
+ * The scale is DERIVED from sampleCount rather than stored, so there is one rule and no second field to
30
+ * fall out of step with the texture that was actually allocated.
31
+ */
32
+ export declare function getWgpuRenderTargetSupersampleScale(target: Readonly<WgpuRenderTarget>): number;
33
+ export declare function resizeWgpuRenderTarget(state: WgpuRenderState, target: WgpuRenderTarget, width: number, height: number, sampleCount?: number): void;
20
34
  export declare function setWgpuRenderTransform2D(state: WgpuRenderState, transform: Readonly<Matrix>): void;
21
35
  //# sourceMappingURL=wgpuRenderTarget.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuRenderTarget.d.ts","sourceRoot":"","sources":["../src/wgpuRenderTarget.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,QAAQ,EACR,MAAM,EACN,kBAAkB,EAClB,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EACjB,MAAM,0BAA0B,CAAC;AAuClC,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,gBAAgB,EACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC,kBAAkB,CAAC,GACtC,IAAI,CA2CN;AAID,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,gBAA+B,EACvC,UAAU,GAAE,sBAA+B,GAC1C,gBAAgB,CAiClB;AAID,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,sBAAsB,GAAG,OAAO,CAMrH;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAG/F;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,eAAe,EACtB,WAAW,EAAE;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;CACrF,EACD,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAClC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,GAC1B,IAAI,CAiCN;AAMD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAkC9D;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,IAAI,CA6BN;AA8BD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAIlG"}
1
+ {"version":3,"file":"wgpuRenderTarget.d.ts","sourceRoot":"","sources":["../src/wgpuRenderTarget.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,QAAQ,EACR,MAAM,EACN,kBAAkB,EAClB,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EACjB,MAAM,0BAA0B,CAAC;AAwClC,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,gBAAgB,EACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC,kBAAkB,CAAC,GACtC,IAAI,CA8CN;AAID,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,GAAE,gBAA+B,EACvC,UAAU,GAAE,sBAA+B,EAC3C,WAAW,SAAI,GACd,gBAAgB,CAwClB;AAID,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,sBAAsB,GAAG,OAAO,CAMrH;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAG/F;AAED,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,eAAe,EACtB,WAAW,EAAE;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;CACrF,EACD,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAClC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,GAC1B,IAAI,CAiCN;AAMD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAmC9D;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mCAAmC,CAAC,MAAM,EAAE,QAAQ,CAAC,gBAAgB,CAAC,GAAG,MAAM,CAE9F;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,eAAe,EACtB,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,WAAW,SAAqB,GAC/B,IAAI,CAoCN;AA4CD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,eAAe,EAAE,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,IAAI,CAIlG"}
@@ -1,5 +1,6 @@
1
1
  import { srgbChannelToLinear } from '@flighthq/color/contract';
2
2
  import { copyMatrix, createMatrix } from '@flighthq/geometry/contract';
3
+ import { getWgpuSurfaceRenderExtent } from './wgpuAntialias';
3
4
  import { buildWgpuRenderTargetBindGroup, drawWgpuQuadWithTransform } from './wgpuDraw';
4
5
  import { getWgpuRenderStateRuntime } from './wgpuRenderState';
5
6
  function beginWgpuRenderPassEncoder(state, colorView, depthStencilView, width, height, loadOp, clearColor = { r: 0, g: 0, b: 0, a: 0 }, depthLoadOp = 'clear', depthClearValue = 1.0) {
@@ -41,7 +42,10 @@ export function beginWgpuRenderPass(state, target, preserve) {
41
42
  colorFormat: runtime.currentColorFormat,
42
43
  renderTarget: runtime.currentRenderTarget,
43
44
  });
44
- runtime.renderTargetViewport = { width: target.width, height: target.height };
45
+ // LOGICAL extent, not physical: this field feeds the 2D projection, which must map logical coordinates
46
+ // across the whole target. The GPU viewport below stays physical so the draw covers every device pixel.
47
+ const supersample = getWgpuRenderTargetSupersampleScale(target);
48
+ runtime.renderTargetViewport = { width: target.width / supersample, height: target.height / supersample };
45
49
  // Scene3D pipelines drawn into this target must match its color format (e.g. rgba16float for HDR).
46
50
  runtime.currentColorFormat = target.format;
47
51
  runtime.currentRenderTarget = target;
@@ -56,10 +60,14 @@ export function beginWgpuRenderPass(state, target, preserve) {
56
60
  }
57
61
  // `format` defaults to the canvas format. Pass 'rgba16float' for an HDR effect target (bloom, tone
58
62
  // mapping). The chosen format is recorded on the target so the effect-target pool matches on it.
59
- export function createWgpuRenderTarget(state, width, height, format = state.format, colorSpace = 'srgb') {
63
+ export function createWgpuRenderTarget(state, width, height, format = state.format, colorSpace = 'srgb', sampleCount = 1) {
60
64
  const device = state.device;
61
- const w = Math.max(1, Math.ceil(width));
62
- const h = Math.max(1, Math.ceil(height));
65
+ const resolved = resolveWgpuRenderTargetExtent(width, height, sampleCount);
66
+ const { height: h, sampleCount: samples, width: w } = resolved;
67
+ const maxDimension = device.limits.maxTextureDimension2D;
68
+ if (w > maxDimension || h > maxDimension) {
69
+ throw new Error(`Wgpu render target sampleCount ${samples} requires a ${w}x${h} texture, exceeding maxTextureDimension2D ${maxDimension}.`);
70
+ }
63
71
  const texture = device.createTexture({
64
72
  size: [w, h, 1],
65
73
  format,
@@ -81,6 +89,7 @@ export function createWgpuRenderTarget(state, width, height, format = state.form
81
89
  depthStencilTexture,
82
90
  depthStencilView,
83
91
  format,
92
+ sampleCount: samples,
84
93
  clearColors: [],
85
94
  clearDepth: 1,
86
95
  width: w,
@@ -146,18 +155,40 @@ export function endWgpuRenderPass(state) {
146
155
  runtime.currentScissorRect = null;
147
156
  runtime.scissorStack = [];
148
157
  if (saved.canvasTextureView !== null) {
149
- runtime.renderPass = beginWgpuRenderPassEncoder(state, saved.canvasTextureView, saved.depthStencilView ?? runtime.depthStencilView, runtime.renderTargetViewport?.width ?? state.canvas.width, runtime.renderTargetViewport?.height ?? state.canvas.height, 'load');
158
+ const surfaceExtent = getWgpuSurfaceRenderExtent(state);
159
+ runtime.renderPass = beginWgpuRenderPassEncoder(state, saved.canvasTextureView, saved.depthStencilView ?? runtime.depthStencilView, runtime.renderTargetViewport?.width ?? surfaceExtent.width, runtime.renderTargetViewport?.height ?? surfaceExtent.height, 'load');
150
160
  }
151
161
  }
152
- export function resizeWgpuRenderTarget(state, target, width, height) {
162
+ /**
163
+ * Device pixels per logical pixel in this target — 2 when it is supersampled, 1 otherwise.
164
+ *
165
+ * ★ THE ALLOCATOR AND THE PROJECTION MUST AGREE, AND THEY DID NOT. `resolveWgpuRenderTargetExtent` grows a
166
+ * `sampleCount: 4` target to 2x per axis, while the 2D projection divides by `renderTargetViewport.width`
167
+ * to reach NDC. With the physical extent in that field, logical x = 800 mapped to NDC 0 — the middle — so
168
+ * the scene filled exactly the left half and top half of its own target and the present then downsampled
169
+ * the lot, landing the picture at quarter size in the top-left corner. Measured on effect-sepia: the
170
+ * WebGPU frame equalled the WebGL frame sampled at (2x, 2y) on 12 of 12 grid points.
171
+ *
172
+ * The scale is DERIVED from sampleCount rather than stored, so there is one rule and no second field to
173
+ * fall out of step with the texture that was actually allocated.
174
+ */
175
+ export function getWgpuRenderTargetSupersampleScale(target) {
176
+ return target.sampleCount === 4 ? WGPU_RENDER_TARGET_SUPERSAMPLE_SCALE : 1;
177
+ }
178
+ export function resizeWgpuRenderTarget(state, target, width, height, sampleCount = target.sampleCount) {
153
179
  const device = state.device;
154
180
  const format = target.format;
155
- const w = Math.max(1, Math.ceil(width));
156
- const h = Math.max(1, Math.ceil(height));
157
- if (w === target.width && h === target.height)
181
+ const resolved = resolveWgpuRenderTargetExtent(width, height, sampleCount);
182
+ const { height: h, sampleCount: samples, width: w } = resolved;
183
+ const maxDimension = device.limits.maxTextureDimension2D;
184
+ if (w > maxDimension || h > maxDimension) {
185
+ throw new Error(`Wgpu render target sampleCount ${samples} requires a ${w}x${h} texture, exceeding maxTextureDimension2D ${maxDimension}.`);
186
+ }
187
+ if (w === target.width && h === target.height && samples === target.sampleCount)
158
188
  return;
159
189
  target.width = w;
160
190
  target.height = h;
191
+ target.sampleCount = samples;
161
192
  target.texture.destroy();
162
193
  target.depthStencilTexture.destroy();
163
194
  const newTexture = device.createTexture({
@@ -200,6 +231,15 @@ function resolveWgpuClearColor(target) {
200
231
  a: (packed & 0xff) / 255,
201
232
  };
202
233
  }
234
+ function resolveWgpuRenderTargetExtent(width, height, sampleCount) {
235
+ const samples = sampleCount > 1 ? 4 : 1;
236
+ const scale = samples === 4 ? WGPU_RENDER_TARGET_SUPERSAMPLE_SCALE : 1;
237
+ return {
238
+ height: Math.max(1, Math.ceil(height)) * scale,
239
+ sampleCount: samples,
240
+ width: Math.max(1, Math.ceil(width)) * scale,
241
+ };
242
+ }
203
243
  // Sets the 2D root device transform the display-object update pass reads. Call after beginWgpuRenderPass
204
244
  // when a 2D pass renders into a target with its own coordinate system (the render cache); the value is
205
245
  // restored by the matching endWgpuRenderPass. Allocates a fresh matrix so the bracket's saved reference
@@ -209,4 +249,7 @@ export function setWgpuRenderTransform2D(state, transform) {
209
249
  copyMatrix(next, transform);
210
250
  state.renderTransform2D = next;
211
251
  }
252
+ // One place decides how much bigger a supersampled target is than its logical extent. `wgpuAntialias.ts`
253
+ // carries the same number for the main surface; they are the same concept applied to two surfaces.
254
+ const WGPU_RENDER_TARGET_SUPERSAMPLE_SCALE = 2;
212
255
  //# sourceMappingURL=wgpuRenderTarget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuRenderTarget.js","sourceRoot":"","sources":["../src/wgpuRenderTarget.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuRenderTarget.js","sourceRoot":"","sources":["../src/wgpuRenderTarget.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ export declare function acquireWgpuRenderTarget(state: WgpuRenderState, pool: Wg
4
4
  height: number;
5
5
  format?: GPUTextureFormat;
6
6
  colorSpace?: RenderTargetColorSpace;
7
+ sampleCount?: number;
7
8
  }>): WgpuRenderTarget;
8
9
  export declare function createWgpuRenderTargetPool(): WgpuRenderTargetPool;
9
10
  export declare function destroyWgpuRenderTargetPool(state: WgpuRenderState, pool: WgpuRenderTargetPool): void;
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuRenderTargetPool.d.ts","sourceRoot":"","sources":["../src/wgpuRenderTargetPool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,0BAA0B,CAAC;AAWlC,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE,oBAAoB,EAC1B,UAAU,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,UAAU,CAAC,EAAE,sBAAsB,CAAC;CACrC,CAAC,GACD,gBAAgB,CAclB;AAED,wBAAgB,0BAA0B,IAAI,oBAAoB,CAEjE;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAGpG;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAElG"}
1
+ {"version":3,"file":"wgpuRenderTargetPool.d.ts","sourceRoot":"","sources":["../src/wgpuRenderTargetPool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACrB,MAAM,0BAA0B,CAAC;AAQlC,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE,oBAAoB,EAC1B,UAAU,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,gBAAgB,CAAC;IAC1B,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC,GACD,gBAAgB,CAqBlB;AAED,wBAAgB,0BAA0B,IAAI,oBAAoB,CAEjE;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAGpG;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,gBAAgB,GAAG,IAAI,CAElG"}
@@ -3,21 +3,24 @@ import { createWgpuRenderTarget, destroyWgpuRenderTarget } from './wgpuRenderTar
3
3
  // brackets: every acquireWgpuRenderTarget must have a matching releaseWgpuRenderTarget. A released
4
4
  // target returns to the free list (its GPU storage is kept) rather than being destroyed.
5
5
  //
6
- // MSAA is intentionally out of scope: Wgpu MSAA needs multisample-capable pipelines, so pooled
7
- // targets stay sampleCount 1 — a follow-up once the effect pipelines grow multisample variants.
8
6
  export function acquireWgpuRenderTarget(state, pool, descriptor) {
9
- const w = Math.max(1, Math.ceil(descriptor.width));
10
- const h = Math.max(1, Math.ceil(descriptor.height));
7
+ const sampleCount = descriptor.sampleCount !== undefined && descriptor.sampleCount > 1 ? 4 : 1;
8
+ const scale = sampleCount === 4 ? 2 : 1;
9
+ const w = Math.max(1, Math.ceil(descriptor.width)) * scale;
10
+ const h = Math.max(1, Math.ceil(descriptor.height)) * scale;
11
11
  const format = descriptor.format ?? state.format;
12
12
  for (let i = 0; i < pool.free.length; i++) {
13
13
  const candidate = pool.free[i];
14
- if (candidate.width === w && candidate.height === h && candidate.format === format) {
14
+ if (candidate.width === w &&
15
+ candidate.height === h &&
16
+ candidate.format === format &&
17
+ candidate.sampleCount === sampleCount) {
15
18
  pool.free.splice(i, 1);
16
19
  candidate.colorSpace = descriptor.colorSpace ?? 'srgb';
17
20
  return candidate;
18
21
  }
19
22
  }
20
- return createWgpuRenderTarget(state, w, h, format, descriptor.colorSpace);
23
+ return createWgpuRenderTarget(state, descriptor.width, descriptor.height, format, descriptor.colorSpace, sampleCount);
21
24
  }
22
25
  export function createWgpuRenderTargetPool() {
23
26
  return { free: [] };
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuRenderTargetPool.js","sourceRoot":"","sources":["../src/wgpuRenderTargetPool.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAErF,+FAA+F;AAC/F,mGAAmG;AACnG,yFAAyF;AACzF,EAAE;AACF,+FAA+F;AAC/F,gGAAgG;AAEhG,MAAM,UAAU,uBAAuB,CACrC,KAAsB,EACtB,IAA0B,EAC1B,UAKE;IAEF,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACnD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;IACpD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;IAEjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,SAAS,CAAC,KAAK,KAAK,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,IAAI,SAAS,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACnF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACvB,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,MAAM,CAAC;YACvD,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,sBAAsB,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,UAAU,0BAA0B;IACxC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,KAAsB,EAAE,IAA0B;IAC5F,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,IAAI;QAAE,uBAAuB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,IAA0B,EAAE,MAAwB;IAC1F,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"wgpuRenderTargetPool.js","sourceRoot":"","sources":["../src/wgpuRenderTargetPool.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAErF,+FAA+F;AAC/F,mGAAmG;AACnG,yFAAyF;AACzF,EAAE;AACF,MAAM,UAAU,uBAAuB,CACrC,KAAsB,EACtB,IAA0B,EAC1B,UAME;IAEF,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,KAAK,SAAS,IAAI,UAAU,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/F,MAAM,KAAK,GAAG,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC;IAC3D,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,KAAK,CAAC;IAC5D,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;IAEjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC/B,IACE,SAAS,CAAC,KAAK,KAAK,CAAC;YACrB,SAAS,CAAC,MAAM,KAAK,CAAC;YACtB,SAAS,CAAC,MAAM,KAAK,MAAM;YAC3B,SAAS,CAAC,WAAW,KAAK,WAAW,EACrC,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACvB,SAAS,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,MAAM,CAAC;YACvD,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,sBAAsB,CAAC,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AACxH,CAAC;AAED,MAAM,UAAU,0BAA0B;IACxC,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,KAAsB,EAAE,IAA0B;IAC5F,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,IAAI;QAAE,uBAAuB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACvE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,IAA0B,EAAE,MAAwB;IAC1F,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACzB,CAAC"}
@@ -93,7 +93,7 @@ function ensureWgpuRenderTextureEntry(state, renderTexture) {
93
93
  const entries = (runtime.wgpuRenderTextureCache ??= new WeakMap());
94
94
  let entry = entries.get(renderTexture);
95
95
  if (entry === undefined) {
96
- const target = createWgpuRenderTarget(state, requested.width, requested.height, format, colorSpace);
96
+ const target = createWgpuRenderTarget(state, requested.width, requested.height, format, colorSpace, requested.sampleCount);
97
97
  target.clearColors = [...requested.clearColors];
98
98
  target.clearDepth = requested.clearDepth;
99
99
  entry = { status: 'unrendered', target };
@@ -102,11 +102,11 @@ function ensureWgpuRenderTextureEntry(state, renderTexture) {
102
102
  else {
103
103
  if (entry.target.format !== format) {
104
104
  destroyWgpuRenderTarget(state, entry.target);
105
- entry.target = createWgpuRenderTarget(state, requested.width, requested.height, format, colorSpace);
105
+ entry.target = createWgpuRenderTarget(state, requested.width, requested.height, format, colorSpace, requested.sampleCount);
106
106
  entry.status = 'unrendered';
107
107
  }
108
108
  else {
109
- resizeWgpuRenderTarget(state, entry.target, requested.width, requested.height);
109
+ resizeWgpuRenderTarget(state, entry.target, requested.width, requested.height, requested.sampleCount);
110
110
  entry.target.colorSpace = colorSpace;
111
111
  }
112
112
  entry.target.clearColors = [...requested.clearColors];
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuRenderTexture.js","sourceRoot":"","sources":["../src/wgpuRenderTexture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAW1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,uBAAuB,EACvB,iBAAiB,EACjB,sBAAsB,GACvB,MAAM,oBAAoB,CAAC;AAE5B,iGAAiG;AACjG,gEAAgE;AAChE,MAAM,UAAU,qBAAqB,CACnC,KAAsB,EACtB,aAAsC;IAEtC,MAAM,KAAK,GAAG,yBAAyB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC9D,IAAI,KAAK,EAAE,MAAM,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC,MAAM,CAAC;IACnD,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAsB,EAAE,aAAsC;IACrG,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,KAAK,GAAG,OAAO,CAAC,sBAAsB,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;IACjE,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO;IAChC,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7C,OAAO,CAAC,sBAAuB,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,KAAsB,EACtB,aAAsC;IAEtC,MAAM,KAAK,GAAG,yBAAyB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC9D,OAAO;QACL,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM;QAC3D,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,YAAY;QACrC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,aAAa,CAAC,MAAM,CAAC,KAAK;KACzD,CAAC;AACJ,CAAC;AAED,qGAAqG;AACrG,0EAA0E;AAC1E,MAAM,UAAU,0BAA0B,CACxC,KAAsB,EACtB,aAAsC;IAEtC,MAAM,KAAK,GAAG,yBAAyB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC9D,IAAI,KAAK,EAAE,MAAM,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC,MAAM,CAAC;IACnD,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAClC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,KAAsB,EACtB,aAAsC,EACtC,SAAoC,YAAY;IAEhD,MAAM,KAAK,GAAG,yBAAyB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC9D,IAAI,KAAK,KAAK,SAAS;QAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAsB,EAAE,aAAsC;IACrG,MAAM,KAAK,GAAG,yBAAyB,CAAC,KAAK,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC;IAClF,IAAI,CAAC,KAAK;QAAE,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IAC9C,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAsB,EACtB,aAA4B,EAC5B,QAA0C;IAE1C,4BAA4B,CAAC,KAAK,EAAE,aAAa,EAAE,CAAC,MAAM,EAAE,EAAE;QAC5D,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC;YACH,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC;gBAAS,CAAC;YACT,iBAAiB,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,KAAsB,EAAE,KAAoC;IACpG,yBAAyB,CAAC,KAAK,CAAC,CAAC,sBAAsB,GAAG,KAAK,CAAC;AAClE,CAAC;AAED,qGAAqG;AACrG,oGAAoG;AACpG,MAAM,UAAU,4BAA4B,CAC1C,KAAsB,EACtB,aAA4B,EAC5B,QAAyD;IAEzD,MAAM,KAAK,GAAG,4BAA4B,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACjE,MAAM,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC;IACpC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;IACzB,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACtC,QAAQ,GAAG,IAAI,CAAC;QAChB,OAAO,MAAM,CAAC;IAChB,CAAC;YAAS,CAAC;QACT,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC;QAC5F,IAAI,QAAQ,EAAE,CAAC;YACb,aAAa,CAAC,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC;YACnD,aAAa,CAAC,OAAO,GAAG,CAAC,aAAa,CAAC,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,4BAA4B,CACnC,KAAsB,EACtB,aAAsC;IAEtC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC;IACxC,MAAM,SAAS,GAAG,6BAA6B,CAAC,UAAU,CAAC,CAAC;IAC5D,MAAM,MAAM,GAAG,0BAA0B,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACnE,MAAM,UAAU,GAAG,UAAU,CAAC,UAAU,IAAI,aAAa,CAAC,UAAU,CAAC;IACrE,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,sBAAsB,KAAK,IAAI,OAAO,EAAE,CAAC,CAAC;IACnE,IAAI,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IACvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,sBAAsB,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QACpG,MAAM,CAAC,WAAW,GAAG,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;QAChD,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;QACzC,KAAK,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IACpC,CAAC;SAAM,CAAC;QACN,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACnC,uBAAuB,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;YAC7C,KAAK,CAAC,MAAM,GAAG,sBAAsB,CAAC,KAAK,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;YACpG,KAAK,CAAC,MAAM,GAAG,YAAY,CAAC;QAC9B,CAAC;aAAM,CAAC;YACN,sBAAsB,CAAC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;YAC/E,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;QACvC,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,WAAW,GAAG,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC,CAAC;QACtD,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;IACjD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,yBAAyB,CAChC,KAAsB,EACtB,aAAsC;IAEtC,OAAO,yBAAyB,CAAC,KAAK,CAAC,CAAC,sBAAsB,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAsB,EAAE,MAAsC;IAChG,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,aAAa,CAAC;IAC/C,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,aAAa,CAAC;IAC/C,OAAO,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;AAC1D,CAAC;AAED,SAAS,WAAW,CAAC,KAAsB,EAAE,aAAsC;IACjF,yBAAyB,CAAC,KAAK,CAAC,CAAC,sBAAsB,EAAE,CACvD,KAAK,EACL,aAAa,EACb,wBAAwB,CAAC,KAAK,EAAE,aAAa,CAAC,CAC/C,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"wgpuRenderTexture.js","sourceRoot":"","sources":["../src/wgpuRenderTexture.ts"],"names":[],"mappings":"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"}
@@ -2,4 +2,5 @@ import type { WgpuRenderState, WgpuScissorRect } from '@flighthq/types/contract'
2
2
  export declare function applyWgpuScissorRect(state: WgpuRenderState, pass: GPURenderPassEncoder): void;
3
3
  export declare function popWgpuScissorRect(state: WgpuRenderState): void;
4
4
  export declare function pushWgpuScissorRect(state: WgpuRenderState, rect: Readonly<WgpuScissorRect>): void;
5
+ export declare function setWgpuRenderPassScissorRect(state: Readonly<WgpuRenderState>, pass: GPURenderPassEncoder, x: number, y: number, width: number, height: number): void;
5
6
  //# sourceMappingURL=wgpuScissor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuScissor.d.ts","sourceRoot":"","sources":["../src/wgpuScissor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAOjF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAW7F;AAKD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAI/D;AAMD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,IAAI,CAMjG"}
1
+ {"version":3,"file":"wgpuScissor.d.ts","sourceRoot":"","sources":["../src/wgpuScissor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAQjF,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAW7F;AAKD,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAI/D;AAMD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,IAAI,CAMjG;AAID,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,QAAQ,CAAC,eAAe,CAAC,EAChC,IAAI,EAAE,oBAAoB,EAC1B,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,IAAI,CAGN"}
@@ -1,3 +1,4 @@
1
+ import { getWgpuSurfaceRenderScale } from './wgpuAntialias';
1
2
  import { getWgpuRenderStateRuntime } from './wgpuRenderState';
2
3
  // Applies the current scissor rectangle to the active render pass. No-op when there is no active
3
4
  // scissor or no open render pass. Call after each draw call or once per pass when the active
@@ -13,7 +14,7 @@ export function applyWgpuScissorRect(state, pass) {
13
14
  const y = Math.max(0, Math.floor(rect.y));
14
15
  const w = Math.max(1, Math.ceil(rect.width));
15
16
  const h = Math.max(1, Math.ceil(rect.height));
16
- pass.setScissorRect(x, y, w, h);
17
+ setWgpuRenderPassScissorRect(state, pass, x, y, w, h);
17
18
  }
18
19
  // Pops the topmost scissor rectangle from the stack and restores the previous one (or clears
19
20
  // currentScissorRect if the stack is empty). Call after finishing the draw calls that the pushed
@@ -34,4 +35,10 @@ export function pushWgpuScissorRect(state, rect) {
34
35
  }
35
36
  runtime.currentScissorRect = { x: rect.x, y: rect.y, width: rect.width, height: rect.height };
36
37
  }
38
+ // Converts a logical main-surface scissor to the physical supersample surface. Offscreen render-target
39
+ // scissors pass through unchanged because their viewport and texture already share one coordinate space.
40
+ export function setWgpuRenderPassScissorRect(state, pass, x, y, width, height) {
41
+ const scale = getWgpuSurfaceRenderScale(state);
42
+ pass.setScissorRect(x * scale, y * scale, width * scale, height * scale);
43
+ }
37
44
  //# sourceMappingURL=wgpuScissor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuScissor.js","sourceRoot":"","sources":["../src/wgpuScissor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,iGAAiG;AACjG,6FAA6F;AAC7F,mBAAmB;AACnB,MAAM,UAAU,oBAAoB,CAAC,KAAsB,EAAE,IAA0B;IACrF,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,OAAO,CAAC,kBAAkB,CAAC;IACxC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO;IAC1B,kGAAkG;IAClG,yEAAyE;IACzE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9C,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAClC,CAAC;AAED,6FAA6F;AAC7F,iGAAiG;AACjG,wDAAwD;AACxD,MAAM,UAAU,kBAAkB,CAAC,KAAsB;IACvD,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;IACxC,OAAO,CAAC,kBAAkB,GAAG,IAAI,IAAI,IAAI,CAAC;AAC5C,CAAC;AAED,2FAA2F;AAC3F,kGAAkG;AAClG,gGAAgG;AAChG,qEAAqE;AACrE,MAAM,UAAU,mBAAmB,CAAC,KAAsB,EAAE,IAA+B;IACzF,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,IAAI,OAAO,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;QACxC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,CAAC,kBAAkB,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;AAChG,CAAC"}
1
+ {"version":3,"file":"wgpuScissor.js","sourceRoot":"","sources":["../src/wgpuScissor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,iGAAiG;AACjG,6FAA6F;AAC7F,mBAAmB;AACnB,MAAM,UAAU,oBAAoB,CAAC,KAAsB,EAAE,IAA0B;IACrF,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,OAAO,CAAC,kBAAkB,CAAC;IACxC,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO;IAC1B,kGAAkG;IAClG,yEAAyE;IACzE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9C,4BAA4B,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,6FAA6F;AAC7F,iGAAiG;AACjG,wDAAwD;AACxD,MAAM,UAAU,kBAAkB,CAAC,KAAsB;IACvD,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,EAAE,CAAC;IACxC,OAAO,CAAC,kBAAkB,GAAG,IAAI,IAAI,IAAI,CAAC;AAC5C,CAAC;AAED,2FAA2F;AAC3F,kGAAkG;AAClG,gGAAgG;AAChG,qEAAqE;AACrE,MAAM,UAAU,mBAAmB,CAAC,KAAsB,EAAE,IAA+B;IACzF,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,IAAI,OAAO,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;QACxC,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,CAAC,kBAAkB,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;AAChG,CAAC;AAED,uGAAuG;AACvG,yGAAyG;AACzG,MAAM,UAAU,4BAA4B,CAC1C,KAAgC,EAChC,IAA0B,EAC1B,CAAS,EACT,CAAS,EACT,KAAa,EACb,MAAc;IAEd,MAAM,KAAK,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IAC/C,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,KAAK,EAAE,KAAK,GAAG,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC;AAC3E,CAAC"}
@@ -1,5 +1,5 @@
1
- import type { WgpuRenderState } from '@flighthq/types/contract';
1
+ import type { WgpuRenderOptions, WgpuRenderState } from '@flighthq/types/contract';
2
2
  export declare function createReadyImageElementForTest(width?: number, height?: number): HTMLImageElement;
3
- export declare function createWgpuRenderStateForTest(): Promise<WgpuRenderState>;
3
+ export declare function createWgpuRenderStateForTest(options?: WgpuRenderOptions): Promise<WgpuRenderState>;
4
4
  export declare function installWgpuMock(): void;
5
5
  //# sourceMappingURL=wgpuTestHelper.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuTestHelper.d.ts","sourceRoot":"","sources":["../src/wgpuTestHelper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AA6QhE,wBAAgB,8BAA8B,CAAC,KAAK,SAAI,EAAE,MAAM,SAAI,GAAG,gBAAgB,CAUtF;AAED,wBAAsB,4BAA4B,IAAI,OAAO,CAAC,eAAe,CAAC,CAK7E;AAED,wBAAgB,eAAe,IAAI,IAAI,CAiCtC"}
1
+ {"version":3,"file":"wgpuTestHelper.d.ts","sourceRoot":"","sources":["../src/wgpuTestHelper.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AA6QnF,wBAAgB,8BAA8B,CAAC,KAAK,SAAI,EAAE,MAAM,SAAI,GAAG,gBAAgB,CAUtF;AAED,wBAAsB,4BAA4B,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAAC,eAAe,CAAC,CAK5G;AAED,wBAAgB,eAAe,IAAI,IAAI,CAiCtC"}
@@ -224,11 +224,11 @@ export function createReadyImageElementForTest(width = 1, height = 1) {
224
224
  });
225
225
  return image;
226
226
  }
227
- export async function createWgpuRenderStateForTest() {
227
+ export async function createWgpuRenderStateForTest(options = {}) {
228
228
  const canvas = document.createElement('canvas');
229
229
  canvas.width = 800;
230
230
  canvas.height = 600;
231
- return createWgpuRenderState(canvas);
231
+ return createWgpuRenderState(canvas, options);
232
232
  }
233
233
  export function installWgpuMock() {
234
234
  installWgpuConstants();
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuTestHelper.js","sourceRoot":"","sources":["../src/wgpuTestHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuTestHelper.js","sourceRoot":"","sources":["../src/wgpuTestHelper.ts"],"names":[],"mappings":"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"}