@flighthq/render-wgpu 0.3.1-next.996.06087b5 → 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
@@ -1,4 +1,5 @@
1
1
  export * from './wgpuAdapterCapabilities';
2
+ export * from './wgpuAntialias';
2
3
  export * from './wgpuBackground';
3
4
  export * from './wgpuCompressedTexture';
4
5
  export * from './wgpuDraw';
@@ -1 +1 @@
1
- {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,8BAA8B,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,8BAA8B,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
package/dist/contract.js CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from './wgpuAdapterCapabilities';
2
+ export * from './wgpuAntialias';
2
3
  export * from './wgpuBackground';
3
4
  export * from './wgpuCompressedTexture';
4
5
  export * from './wgpuDraw';
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,8BAA8B,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,eAAe,CAAC;AAC9B,cAAc,mCAAmC,CAAC;AAClD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,8BAA8B,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"enableWgpuTextureResolverGuards.d.ts","sourceRoot":"","sources":["../src/enableWgpuTextureResolverGuards.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAEhE,wBAAgB,mCAAmC,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAEnF;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAE5E"}
1
+ {"version":3,"file":"enableWgpuTextureResolverGuards.d.ts","sourceRoot":"","sources":["../src/enableWgpuTextureResolverGuards.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAKhE,wBAAgB,mCAAmC,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAEnF;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAI5E"}
@@ -1,8 +1,19 @@
1
+ import { logOnce } from '@flighthq/log/contract';
1
2
  import { areRenderRegistryGuardsEnabled, enableRenderRegistryGuards } from '@flighthq/render/contract';
3
+ import { LogLevel } from '@flighthq/types/contract';
4
+ import { getWgpuRenderStateRuntime } from './wgpuRenderState';
2
5
  export function areWgpuTextureResolverGuardsEnabled(state) {
3
6
  return areRenderRegistryGuardsEnabled(state);
4
7
  }
5
8
  export function enableWgpuTextureResolverGuards(state) {
6
9
  enableRenderRegistryGuards(state);
10
+ const runtime = getWgpuRenderStateRuntime(state);
11
+ runtime.mipmapDegradedGuard = warnOnMipmapDegradation;
12
+ }
13
+ function warnOnMipmapDegradation(state) {
14
+ logOnce('render-wgpu:mipmap-degraded', LogLevel.Warn, {
15
+ message: 'bindWgpuBitmapTexture: mipmaps requested but no WGPU mipmap generator registered — texture allocated with a single mip level (bilinear fallback). Call registerWgpuMipmapGeneration(state) to enable trilinear/anisotropic sampling.',
16
+ state,
17
+ }, 'render-wgpu');
7
18
  }
8
19
  //# sourceMappingURL=enableWgpuTextureResolverGuards.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"enableWgpuTextureResolverGuards.js","sourceRoot":"","sources":["../src/enableWgpuTextureResolverGuards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAGvG,MAAM,UAAU,mCAAmC,CAAC,KAAsB;IACxE,OAAO,8BAA8B,CAAC,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,KAAsB;IACpE,0BAA0B,CAAC,KAAK,CAAC,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"enableWgpuTextureResolverGuards.js","sourceRoot":"","sources":["../src/enableWgpuTextureResolverGuards.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,8BAA8B,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AAEvG,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,MAAM,UAAU,mCAAmC,CAAC,KAAsB;IACxE,OAAO,8BAA8B,CAAC,KAAK,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,KAAsB;IACpE,0BAA0B,CAAC,KAAK,CAAC,CAAC;IAClC,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,OAAO,CAAC,mBAAmB,GAAG,uBAAuB,CAAC;AACxD,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAsB;IACrD,OAAO,CACL,6BAA6B,EAC7B,QAAQ,CAAC,IAAI,EACb;QACE,OAAO,EACL,sOAAsO;QACxO,KAAK;KACN,EACD,aAAa,CACd,CAAC;AACJ,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export { acquireWgpuRenderTexture, beginWgpuFrame, beginWgpuRenderPass, bindWgpuRenderTexture, copyWgpuRenderStateRegistrations, createBitmapFromWgpuRenderState, createExternalWgpuTexture, createWgpuCanvasElement, createWgpuOffscreenRenderState, createWgpuRenderState, createWgpuRenderTexturePool, createWgpuRenderTarget, destroyWgpuRenderTexture, destroyWgpuRenderTexturePool, destroyWgpuRenderState, disposeExternalWgpuTexture, enableWgpuBlendModeSupport, enableWgpuFrameCapture, enableWgpuTextureResolverGuards, endWgpuRenderPass, explainWgpuRenderTexture, explainWgpuTextureResolution, isWgpuRenderTextureReady, registerWgpuBitmapTextureResolver, registerWgpuCompressedImageTextureResolver, registerWgpuImageTextureResolver, registerWgpuRenderTextureResolver, registerStandardWgpuTextureResolvers, registerWgpuTextureResolver, registerWgpuCompressedTextureDecoder, registerWgpuCompressedTextureUpload, releaseWgpuRenderTexture, renderIntoWgpuRenderTexture, renderWgpuBackground, resolveWgpuApplyBlendMode, resolveWgpuTexture, resolveWgpuSmoothingBindGroup, setWgpuRenderTransform2D, submitWgpuRenderPass, withWgpuRenderTextures, } from './contract';
1
+ export { acquireWgpuRenderTexture, beginWgpuFrame, beginWgpuRenderPass, bindWgpuRenderTexture, copyWgpuRenderStateRegistrations, createBitmapFromWgpuRenderState, createExternalWgpuTexture, createWgpuCanvasElement, createWgpuOffscreenRenderState, createWgpuRenderState, createWgpuRenderTexturePool, createWgpuRenderTarget, destroyWgpuRenderTexture, destroyWgpuRenderTexturePool, destroyWgpuRenderState, disposeExternalWgpuTexture, enableWgpuBlendModeSupport, enableWgpuFrameCapture, enableWgpuTextureResolverGuards, endWgpuRenderPass, explainWgpuRenderTexture, explainWgpuTextureResolution, isWgpuRenderTextureReady, registerWgpuBitmapTextureResolver, registerWgpuCompressedImageTextureResolver, registerWgpuImageTextureResolver, registerWgpuRenderTextureResolver, registerStandardWgpuTextureResolvers, registerWgpuTextureResolver, registerWgpuCompressedTextureDecoder, registerWgpuCompressedTextureUpload, registerWgpuMipmapGeneration, releaseWgpuRenderTexture, renderIntoWgpuRenderTexture, renderWgpuBackground, resolveWgpuApplyBlendMode, resolveWgpuTexture, resolveWgpuSmoothingBindGroup, setWgpuRenderTransform2D, submitWgpuRenderPass, withWgpuRenderTextures, } from './contract';
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,cAAc,EACd,mBAAmB,EACnB,qBAAqB,EACrB,gCAAgC,EAChC,+BAA+B,EAC/B,yBAAyB,EACzB,uBAAuB,EACvB,8BAA8B,EAC9B,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,EAC5B,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,sBAAsB,EACtB,+BAA+B,EAC/B,iBAAiB,EACjB,wBAAwB,EACxB,4BAA4B,EAC5B,wBAAwB,EACxB,iCAAiC,EACjC,0CAA0C,EAC1C,gCAAgC,EAChC,iCAAiC,EACjC,oCAAoC,EACpC,2BAA2B,EAC3B,oCAAoC,EACpC,mCAAmC,EACnC,wBAAwB,EACxB,2BAA2B,EAC3B,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,EAClB,6BAA6B,EAC7B,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,cAAc,EACd,mBAAmB,EACnB,qBAAqB,EACrB,gCAAgC,EAChC,+BAA+B,EAC/B,yBAAyB,EACzB,uBAAuB,EACvB,8BAA8B,EAC9B,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,EAC5B,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,sBAAsB,EACtB,+BAA+B,EAC/B,iBAAiB,EACjB,wBAAwB,EACxB,4BAA4B,EAC5B,wBAAwB,EACxB,iCAAiC,EACjC,0CAA0C,EAC1C,gCAAgC,EAChC,iCAAiC,EACjC,oCAAoC,EACpC,2BAA2B,EAC3B,oCAAoC,EACpC,mCAAmC,EACnC,4BAA4B,EAC5B,wBAAwB,EACxB,2BAA2B,EAC3B,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,EAClB,6BAA6B,EAC7B,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- export { acquireWgpuRenderTexture, beginWgpuFrame, beginWgpuRenderPass, bindWgpuRenderTexture, copyWgpuRenderStateRegistrations, createBitmapFromWgpuRenderState, createExternalWgpuTexture, createWgpuCanvasElement, createWgpuOffscreenRenderState, createWgpuRenderState, createWgpuRenderTexturePool, createWgpuRenderTarget, destroyWgpuRenderTexture, destroyWgpuRenderTexturePool, destroyWgpuRenderState, disposeExternalWgpuTexture, enableWgpuBlendModeSupport, enableWgpuFrameCapture, enableWgpuTextureResolverGuards, endWgpuRenderPass, explainWgpuRenderTexture, explainWgpuTextureResolution, isWgpuRenderTextureReady, registerWgpuBitmapTextureResolver, registerWgpuCompressedImageTextureResolver, registerWgpuImageTextureResolver, registerWgpuRenderTextureResolver, registerStandardWgpuTextureResolvers, registerWgpuTextureResolver, registerWgpuCompressedTextureDecoder, registerWgpuCompressedTextureUpload, releaseWgpuRenderTexture, renderIntoWgpuRenderTexture, renderWgpuBackground, resolveWgpuApplyBlendMode, resolveWgpuTexture, resolveWgpuSmoothingBindGroup, setWgpuRenderTransform2D, submitWgpuRenderPass, withWgpuRenderTextures, } from './contract';
1
+ export { acquireWgpuRenderTexture, beginWgpuFrame, beginWgpuRenderPass, bindWgpuRenderTexture, copyWgpuRenderStateRegistrations, createBitmapFromWgpuRenderState, createExternalWgpuTexture, createWgpuCanvasElement, createWgpuOffscreenRenderState, createWgpuRenderState, createWgpuRenderTexturePool, createWgpuRenderTarget, destroyWgpuRenderTexture, destroyWgpuRenderTexturePool, destroyWgpuRenderState, disposeExternalWgpuTexture, enableWgpuBlendModeSupport, enableWgpuFrameCapture, enableWgpuTextureResolverGuards, endWgpuRenderPass, explainWgpuRenderTexture, explainWgpuTextureResolution, isWgpuRenderTextureReady, registerWgpuBitmapTextureResolver, registerWgpuCompressedImageTextureResolver, registerWgpuImageTextureResolver, registerWgpuRenderTextureResolver, registerStandardWgpuTextureResolvers, registerWgpuTextureResolver, registerWgpuCompressedTextureDecoder, registerWgpuCompressedTextureUpload, registerWgpuMipmapGeneration, releaseWgpuRenderTexture, renderIntoWgpuRenderTexture, renderWgpuBackground, resolveWgpuApplyBlendMode, resolveWgpuTexture, resolveWgpuSmoothingBindGroup, setWgpuRenderTransform2D, submitWgpuRenderPass, withWgpuRenderTextures, } from './contract';
2
2
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,cAAc,EACd,mBAAmB,EACnB,qBAAqB,EACrB,gCAAgC,EAChC,+BAA+B,EAC/B,yBAAyB,EACzB,uBAAuB,EACvB,8BAA8B,EAC9B,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,EAC5B,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,sBAAsB,EACtB,+BAA+B,EAC/B,iBAAiB,EACjB,wBAAwB,EACxB,4BAA4B,EAC5B,wBAAwB,EACxB,iCAAiC,EACjC,0CAA0C,EAC1C,gCAAgC,EAChC,iCAAiC,EACjC,oCAAoC,EACpC,2BAA2B,EAC3B,oCAAoC,EACpC,mCAAmC,EACnC,wBAAwB,EACxB,2BAA2B,EAC3B,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,EAClB,6BAA6B,EAC7B,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,cAAc,EACd,mBAAmB,EACnB,qBAAqB,EACrB,gCAAgC,EAChC,+BAA+B,EAC/B,yBAAyB,EACzB,uBAAuB,EACvB,8BAA8B,EAC9B,qBAAqB,EACrB,2BAA2B,EAC3B,sBAAsB,EACtB,wBAAwB,EACxB,4BAA4B,EAC5B,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,sBAAsB,EACtB,+BAA+B,EAC/B,iBAAiB,EACjB,wBAAwB,EACxB,4BAA4B,EAC5B,wBAAwB,EACxB,iCAAiC,EACjC,0CAA0C,EAC1C,gCAAgC,EAChC,iCAAiC,EACjC,oCAAoC,EACpC,2BAA2B,EAC3B,oCAAoC,EACpC,mCAAmC,EACnC,4BAA4B,EAC5B,wBAAwB,EACxB,2BAA2B,EAC3B,oBAAoB,EACpB,yBAAyB,EACzB,kBAAkB,EAClB,6BAA6B,EAC7B,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,YAAY,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { WgpuRenderState } from '@flighthq/types/contract';
2
+ export declare function acquireWgpuSurfaceAntialiasView(state: Readonly<WgpuRenderState>, presentationView: GPUTextureView): GPUTextureView | null;
3
+ export declare function clearWgpuSurfacePresentation(state: Readonly<WgpuRenderState>): void;
4
+ export declare function encodeWgpuSurfaceAntialiasResolve(state: Readonly<WgpuRenderState>, encoder: GPUCommandEncoder): void;
5
+ export declare function getWgpuSurfaceRenderExtent(state: Readonly<WgpuRenderState>): {
6
+ width: number;
7
+ height: number;
8
+ };
9
+ export declare function getWgpuSurfaceRenderScale(state: Readonly<WgpuRenderState>): number;
10
+ //# sourceMappingURL=wgpuAntialias.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wgpuAntialias.d.ts","sourceRoot":"","sources":["../src/wgpuAntialias.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAShE,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,QAAQ,CAAC,eAAe,CAAC,EAChC,gBAAgB,EAAE,cAAc,GAC/B,cAAc,GAAG,IAAI,CA8CvB;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,IAAI,CAEnF;AAKD,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAqBpH;AAID,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAM9G;AAID,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,QAAQ,CAAC,eAAe,CAAC,GAAG,MAAM,CAGlF"}
@@ -0,0 +1,136 @@
1
+ import { getWgpuRenderStateRuntime } from './wgpuRenderState';
2
+ const SUPERSAMPLE_SCALE = 2;
3
+ // Redirects the main frame into a 2× texture view when surface antialiasing is enabled. The caller retains
4
+ // the presentation view so encodeWgpuSurfaceAntialiasResolve can downsample into it on the same encoder.
5
+ // Null means the normal direct-to-presentation path remains active.
6
+ export function acquireWgpuSurfaceAntialiasView(state, presentationView) {
7
+ const runtime = getWgpuRenderStateRuntime(state);
8
+ if (!runtime.surfaceAntialiasEnabled) {
9
+ runtime.surfacePresentationView = null;
10
+ return null;
11
+ }
12
+ const width = Math.max(1, state.canvas.width) * SUPERSAMPLE_SCALE;
13
+ const height = Math.max(1, state.canvas.height) * SUPERSAMPLE_SCALE;
14
+ const maxDimension = state.device.limits.maxTextureDimension2D;
15
+ if (width > maxDimension || height > maxDimension) {
16
+ throw new Error(`WgpuRenderOptions.antialias requires a ${width}x${height} supersample surface, exceeding maxTextureDimension2D ${maxDimension}.`);
17
+ }
18
+ runtime.surfacePresentationView = presentationView;
19
+ if (runtime.surfaceAntialiasTexture !== null &&
20
+ runtime.surfaceAntialiasWidth === width &&
21
+ runtime.surfaceAntialiasHeight === height) {
22
+ return runtime.surfaceAntialiasView;
23
+ }
24
+ runtime.surfaceAntialiasTexture?.destroy();
25
+ const texture = state.device.createTexture({
26
+ size: [width, height, 1],
27
+ format: state.format,
28
+ usage: GPUTextureUsage.RENDER_ATTACHMENT | GPUTextureUsage.TEXTURE_BINDING,
29
+ });
30
+ const view = texture.createView();
31
+ runtime.surfaceAntialiasTexture = texture;
32
+ runtime.surfaceAntialiasView = view;
33
+ runtime.surfaceAntialiasWidth = width;
34
+ runtime.surfaceAntialiasHeight = height;
35
+ ensureWgpuSurfaceAntialiasPipeline(state);
36
+ runtime.surfaceAntialiasResolveBindGroup = state.device.createBindGroup({
37
+ layout: runtime.surfaceAntialiasResolveBindGroupLayout,
38
+ entries: [
39
+ { binding: 0, resource: view },
40
+ { binding: 1, resource: runtime.linearSampler },
41
+ ],
42
+ });
43
+ return view;
44
+ }
45
+ export function clearWgpuSurfacePresentation(state) {
46
+ getWgpuRenderStateRuntime(state).surfacePresentationView = null;
47
+ }
48
+ // Encodes the single surface resolve after every scene/effect/3D draw has completed and before capture
49
+ // readback. Linear sampling at each destination pixel center averages the corresponding 2×2 source
50
+ // texels, so this is a real supersample resolve rather than a post-capture image filter.
51
+ export function encodeWgpuSurfaceAntialiasResolve(state, encoder) {
52
+ const runtime = getWgpuRenderStateRuntime(state);
53
+ const presentationView = runtime.surfacePresentationView;
54
+ const pipeline = runtime.surfaceAntialiasResolvePipeline;
55
+ const bindGroup = runtime.surfaceAntialiasResolveBindGroup;
56
+ if (!runtime.surfaceAntialiasEnabled || presentationView === null || pipeline === null || bindGroup === null)
57
+ return;
58
+ const pass = encoder.beginRenderPass({
59
+ colorAttachments: [
60
+ {
61
+ view: presentationView,
62
+ loadOp: 'clear',
63
+ storeOp: 'store',
64
+ clearValue: { r: 0, g: 0, b: 0, a: 0 },
65
+ },
66
+ ],
67
+ });
68
+ pass.setPipeline(pipeline);
69
+ pass.setBindGroup(0, bindGroup);
70
+ pass.draw(3);
71
+ pass.end();
72
+ }
73
+ // The logical canvas dimensions remain the coordinate space used by 2D transforms. This helper is
74
+ // only for hardware viewport restoration after an offscreen target returns to the supersampled surface.
75
+ export function getWgpuSurfaceRenderExtent(state) {
76
+ const runtime = getWgpuRenderStateRuntime(state);
77
+ if (runtime.surfacePresentationView !== null) {
78
+ return { width: runtime.surfaceAntialiasWidth, height: runtime.surfaceAntialiasHeight };
79
+ }
80
+ return { width: state.canvas.width, height: state.canvas.height };
81
+ }
82
+ // Scissor rectangles are expressed in the logical main-surface coordinate space. Scale only while the
83
+ // active pass is the supersampled main surface; offscreen render targets retain their native extent.
84
+ export function getWgpuSurfaceRenderScale(state) {
85
+ const runtime = getWgpuRenderStateRuntime(state);
86
+ return runtime.currentRenderTarget === null && runtime.surfacePresentationView !== null ? SUPERSAMPLE_SCALE : 1;
87
+ }
88
+ function ensureWgpuSurfaceAntialiasPipeline(state) {
89
+ const runtime = getWgpuRenderStateRuntime(state);
90
+ if (runtime.surfaceAntialiasResolvePipeline !== null)
91
+ return;
92
+ const bindGroupLayout = state.device.createBindGroupLayout({
93
+ entries: [
94
+ { binding: 0, visibility: GPUShaderStage.FRAGMENT, texture: { sampleType: 'float' } },
95
+ { binding: 1, visibility: GPUShaderStage.FRAGMENT, sampler: { type: 'filtering' } },
96
+ ],
97
+ });
98
+ const layout = state.device.createPipelineLayout({ bindGroupLayouts: [bindGroupLayout] });
99
+ const module = state.device.createShaderModule({ code: SURFACE_ANTIALIAS_WGSL });
100
+ runtime.surfaceAntialiasResolveBindGroupLayout = bindGroupLayout;
101
+ runtime.surfaceAntialiasResolvePipeline = state.device.createRenderPipeline({
102
+ layout,
103
+ vertex: { module, entryPoint: 'vs_main' },
104
+ fragment: { module, entryPoint: 'fs_main', targets: [{ format: state.format }] },
105
+ primitive: { topology: 'triangle-list' },
106
+ });
107
+ }
108
+ const SURFACE_ANTIALIAS_WGSL = /* wgsl */ `
109
+ struct VertexOutput {
110
+ @builtin(position) position: vec4f,
111
+ @location(0) uv: vec2f,
112
+ };
113
+
114
+ @vertex
115
+ fn vs_main(@builtin(vertex_index) index: u32) -> VertexOutput {
116
+ let positions = array<vec2f, 3>(
117
+ vec2f(-1.0, -1.0),
118
+ vec2f(3.0, -1.0),
119
+ vec2f(-1.0, 3.0),
120
+ );
121
+ let position = positions[index];
122
+ var output: VertexOutput;
123
+ output.position = vec4f(position, 0.0, 1.0);
124
+ output.uv = position * vec2f(0.5, -0.5) + vec2f(0.5);
125
+ return output;
126
+ }
127
+
128
+ @group(0) @binding(0) var source_texture: texture_2d<f32>;
129
+ @group(0) @binding(1) var source_sampler: sampler;
130
+
131
+ @fragment
132
+ fn fs_main(input: VertexOutput) -> @location(0) vec4f {
133
+ return textureSample(source_texture, source_sampler, input.uv);
134
+ }
135
+ `;
136
+ //# sourceMappingURL=wgpuAntialias.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wgpuAntialias.js","sourceRoot":"","sources":["../src/wgpuAntialias.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAE5B,2GAA2G;AAC3G,yGAAyG;AACzG,oEAAoE;AACpE,MAAM,UAAU,+BAA+B,CAC7C,KAAgC,EAChC,gBAAgC;IAEhC,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,IAAI,CAAC,OAAO,CAAC,uBAAuB,EAAE,CAAC;QACrC,OAAO,CAAC,uBAAuB,GAAG,IAAI,CAAC;QACvC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,iBAAiB,CAAC;IAClE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,iBAAiB,CAAC;IACpE,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,CAAC;IAC/D,IAAI,KAAK,GAAG,YAAY,IAAI,MAAM,GAAG,YAAY,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CACb,0CAA0C,KAAK,IAAI,MAAM,yDAAyD,YAAY,GAAG,CAClI,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,uBAAuB,GAAG,gBAAgB,CAAC;IACnD,IACE,OAAO,CAAC,uBAAuB,KAAK,IAAI;QACxC,OAAO,CAAC,qBAAqB,KAAK,KAAK;QACvC,OAAO,CAAC,sBAAsB,KAAK,MAAM,EACzC,CAAC;QACD,OAAO,OAAO,CAAC,oBAAoB,CAAC;IACtC,CAAC;IAED,OAAO,CAAC,uBAAuB,EAAE,OAAO,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC;QACzC,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QACxB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,KAAK,EAAE,eAAe,CAAC,iBAAiB,GAAG,eAAe,CAAC,eAAe;KAC3E,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;IAClC,OAAO,CAAC,uBAAuB,GAAG,OAAO,CAAC;IAC1C,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC;IACpC,OAAO,CAAC,qBAAqB,GAAG,KAAK,CAAC;IACtC,OAAO,CAAC,sBAAsB,GAAG,MAAM,CAAC;IAExC,kCAAkC,CAAC,KAAK,CAAC,CAAC;IAC1C,OAAO,CAAC,gCAAgC,GAAG,KAAK,CAAC,MAAM,CAAC,eAAe,CAAC;QACtE,MAAM,EAAE,OAAO,CAAC,sCAAuC;QACvD,OAAO,EAAE;YACP,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE;YAC9B,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,aAAa,EAAE;SAChD;KACF,CAAC,CAAC;IACH,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,KAAgC;IAC3E,yBAAyB,CAAC,KAAK,CAAC,CAAC,uBAAuB,GAAG,IAAI,CAAC;AAClE,CAAC;AAED,uGAAuG;AACvG,mGAAmG;AACnG,yFAAyF;AACzF,MAAM,UAAU,iCAAiC,CAAC,KAAgC,EAAE,OAA0B;IAC5G,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,gBAAgB,GAAG,OAAO,CAAC,uBAAuB,CAAC;IACzD,MAAM,QAAQ,GAAG,OAAO,CAAC,+BAA+B,CAAC;IACzD,MAAM,SAAS,GAAG,OAAO,CAAC,gCAAgC,CAAC;IAC3D,IAAI,CAAC,OAAO,CAAC,uBAAuB,IAAI,gBAAgB,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI;QAAE,OAAO;IAErH,MAAM,IAAI,GAAG,OAAO,CAAC,eAAe,CAAC;QACnC,gBAAgB,EAAE;YAChB;gBACE,IAAI,EAAE,gBAAgB;gBACtB,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE,OAAO;gBAChB,UAAU,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;aACvC;SACF;KACF,CAAC,CAAC;IACH,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC3B,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAChC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACb,IAAI,CAAC,GAAG,EAAE,CAAC;AACb,CAAC;AAED,kGAAkG;AAClG,wGAAwG;AACxG,MAAM,UAAU,0BAA0B,CAAC,KAAgC;IACzE,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,IAAI,OAAO,CAAC,uBAAuB,KAAK,IAAI,EAAE,CAAC;QAC7C,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,qBAAqB,EAAE,MAAM,EAAE,OAAO,CAAC,sBAAsB,EAAE,CAAC;IAC1F,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;AACpE,CAAC;AAED,sGAAsG;AACtG,qGAAqG;AACrG,MAAM,UAAU,yBAAyB,CAAC,KAAgC;IACxE,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,OAAO,OAAO,CAAC,mBAAmB,KAAK,IAAI,IAAI,OAAO,CAAC,uBAAuB,KAAK,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAClH,CAAC;AAED,SAAS,kCAAkC,CAAC,KAAgC;IAC1E,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,IAAI,OAAO,CAAC,+BAA+B,KAAK,IAAI;QAAE,OAAO;IAE7D,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,qBAAqB,CAAC;QACzD,OAAO,EAAE;YACP,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,EAAE;YACrF,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE;SACpF;KACF,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE,gBAAgB,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IAC1F,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAC;IACjF,OAAO,CAAC,sCAAsC,GAAG,eAAe,CAAC;IACjE,OAAO,CAAC,+BAA+B,GAAG,KAAK,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAC1E,MAAM;QACN,MAAM,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE;QACzC,QAAQ,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE;QAChF,SAAS,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE;KACzC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,sBAAsB,GAAG,UAAU,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BzC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuBackground.d.ts","sourceRoot":"","sources":["../src/wgpuBackground.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AA6BhE;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAe3D;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAyDjE;AAMD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAGhF;AAYD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI,CAGnF;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAwCjE"}
1
+ {"version":3,"file":"wgpuBackground.d.ts","sourceRoot":"","sources":["../src/wgpuBackground.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAkChE;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAe3D;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CA8DjE;AAMD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,GAAG,IAAI,CAGhF;AAYD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,UAAU,GAAG,IAAI,CAGnF;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CA2CjE"}
@@ -1,3 +1,4 @@
1
+ import { acquireWgpuSurfaceAntialiasView, clearWgpuSurfacePresentation, encodeWgpuSurfaceAntialiasResolve, } from './wgpuAntialias';
1
2
  import { getWgpuRenderStateRuntime } from './wgpuRenderState';
2
3
  import { acquireWgpuFrameCaptureTexture, encodeWgpuFrameCapture } from './wgpuSurface';
3
4
  function ensureWgpuDepthStencil(state, width, height) {
@@ -55,12 +56,16 @@ export function renderWgpuBackground(state) {
55
56
  const context = state.context;
56
57
  const width = canvas.width;
57
58
  const height = canvas.height;
58
- ensureWgpuDepthStencil(state, width, height);
59
59
  // With frame capture on, render into an offscreen COPY_SRC texture instead of the swapchain: software/
60
60
  // headless adapters never present the swapchain and its texture reads back as zeros, so the readable
61
61
  // copy must be the render target itself.
62
- const canvasTexture = acquireWgpuFrameCaptureTexture(state) ?? context.getCurrentTexture();
63
- const canvasView = canvasTexture.createView();
62
+ const presentationTexture = acquireWgpuFrameCaptureTexture(state) ?? context.getCurrentTexture();
63
+ const presentationView = presentationTexture.createView();
64
+ const antialiasView = acquireWgpuSurfaceAntialiasView(state, presentationView);
65
+ const renderWidth = antialiasView === null ? width : width * 2;
66
+ const renderHeight = antialiasView === null ? height : height * 2;
67
+ ensureWgpuDepthStencil(state, renderWidth, renderHeight);
68
+ const canvasView = antialiasView ?? presentationView;
64
69
  runtime.canvasTextureView = canvasView;
65
70
  runtime.canvasViewCleared = true;
66
71
  // The canvas (and the capture texture, when capture is on) is the canvas format; scene pipelines key on this.
@@ -87,7 +92,7 @@ export function renderWgpuBackground(state) {
87
92
  stencilStoreOp: 'discard',
88
93
  },
89
94
  });
90
- renderPass.setViewport(0, 0, width, height, 0, 1);
95
+ renderPass.setViewport(0, 0, renderWidth, renderHeight, 0, 1);
91
96
  runtime.renderPass = renderPass;
92
97
  }
93
98
  // Hands a buffer to the post-submit retirement list instead of destroying it now — the buffer sibling of
@@ -126,6 +131,8 @@ export function submitWgpuRenderPass(state) {
126
131
  if (uniformOffset > 0) {
127
132
  device.queue.writeBuffer(uniformBuffer, 0, uniformData.buffer, 0, uniformOffset);
128
133
  }
134
+ // Resolve the optional 2× main surface into the presentation target before capture reads it back.
135
+ encodeWgpuSurfaceAntialiasResolve(state, commandEncoder);
129
136
  // Copy the offscreen capture texture into the readback buffer within this frame's encoder; on the
130
137
  // adapters capture exists for, GPU work queued in a later task does not land.
131
138
  // A standalone offscreen frame (for example a render-cache bake) has no canvas view and must not
@@ -151,5 +158,6 @@ export function submitWgpuRenderPass(state) {
151
158
  }
152
159
  runtime.canvasTextureView = null;
153
160
  runtime.canvasViewCleared = false;
161
+ clearWgpuSurfacePresentation(state);
154
162
  }
155
163
  //# sourceMappingURL=wgpuBackground.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuBackground.js","sourceRoot":"","sources":["../src/wgpuBackground.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuBackground.js","sourceRoot":"","sources":["../src/wgpuBackground.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuDraw.d.ts","sourceRoot":"","sources":["../src/wgpuDraw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuDraw.d.ts","sourceRoot":"","sources":["../src/wgpuDraw.ts"],"names":[],"mappings":"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"}
package/dist/wgpuDraw.js CHANGED
@@ -2,7 +2,6 @@ import { getTextureSource } from '@flighthq/texture/contract';
2
2
  import { BlendMode, RegistryEntryState } from '@flighthq/types/contract';
3
3
  import { retireWgpuTexture } from './wgpuBackground';
4
4
  import { isWgpuExternalImageSourceReady, tryCopyWgpuExternalImageToTexture } from './wgpuExternalImageSource';
5
- import { generateWgpuMipmaps, getWgpuMipLevelCount } from './wgpuMipmap';
6
5
  import { getWgpuRenderStateRuntime, getWgpuSampler } from './wgpuRenderState';
7
6
  import { getActiveWgpuPipeline, getWgpuPipeline, writeWgpuQuadUniforms } from './wgpuShader';
8
7
  export function applyWgpuBlendMode(state, blendMode) {
@@ -58,10 +57,12 @@ function bindWgpuTextureSourceTexture(state, image, generateMips, premultiply, c
58
57
  }
59
58
  // Uploads (and caches per image source) the GPU texture for an image, returning its texture, full view,
60
59
  // and a 2D bind group. With generateMips the texture is allocated with a full mip chain and its lower
61
- // levels are rendered via generateWgpuMipmaps — the material path opts in for its trilinear/anisotropic
62
- // samplers; the 2D bitmap path leaves it false for a single-level texture. Because WebGPU fixes
63
- // mipLevelCount at creation and the cache is keyed by source, the first caller decides whether a shared
64
- // image gets a chain; a mip sampler on a chainless texture simply samples the base level.
60
+ // levels are rendered via runtime.mipmapGenerator (installed by registerWgpuMipmapGeneration); left false
61
+ // it is a single-level texture. Passing true without registering allocates the levels but leaves them
62
+ // uninitialized — the sampler reads zeros/garbage below level 0. Because WebGPU fixes mipLevelCount at
63
+ // creation and the cache is keyed by source, the first caller decides whether a shared image gets a chain.
64
+ //
65
+ // No in-tree caller passes generateMips today; resolveWgpuTexture does not expose the parameter.
65
66
  export function bindWgpuTexture(state, imageSource, generateMips = false) {
66
67
  const runtime = getWgpuRenderStateRuntime(state);
67
68
  const cached = runtime.textureCache.get(imageSource);
@@ -94,7 +95,9 @@ export function bindWgpuTexture(state, imageSource, generateMips = false) {
94
95
  }
95
96
  if (!isWgpuExternalImageSourceReady(imageSource, width, height))
96
97
  return null;
97
- const mipLevelCount = generateMips ? getWgpuMipLevelCount(width, height) : 1;
98
+ if (generateMips && runtime.mipmapGenerator == null)
99
+ runtime.mipmapDegradedGuard?.(state);
100
+ const mipLevelCount = generateMips && runtime.mipmapGenerator != null ? wgpuMipLevelCount(width, height) : 1;
98
101
  const texture = device.createTexture({
99
102
  size: [width, height, 1],
100
103
  format: 'rgba8unorm',
@@ -121,7 +124,7 @@ export function bindWgpuTexture(state, imageSource, generateMips = false) {
121
124
  // The copy fills level 0 only; render the remaining levels by downsampling (WebGPU has no
122
125
  // generateMipmap). Skipped for a single-level texture (mipLevelCount === 1).
123
126
  if (mipLevelCount > 1)
124
- generateWgpuMipmaps(state, texture, width, height, 'rgba8unorm');
127
+ runtime.mipmapGenerator?.(state, texture, width, height, 'rgba8unorm');
125
128
  const view = texture.createView();
126
129
  const sampler = state.allowSmoothing ? runtime.linearSampler : runtime.nearestSampler;
127
130
  const bindGroup = device.createBindGroup({
@@ -354,7 +357,9 @@ function uploadWgpuBitmapEntry(state, image, generateMips, premultiply, colorSpa
354
357
  const { device } = state;
355
358
  const width = bitmap.width || 1;
356
359
  const height = bitmap.height || 1;
357
- const mipLevelCount = generateMips ? getWgpuMipLevelCount(width, height) : 1;
360
+ if (generateMips && runtime.mipmapGenerator == null)
361
+ runtime.mipmapDegradedGuard?.(state);
362
+ const mipLevelCount = generateMips && runtime.mipmapGenerator != null ? wgpuMipLevelCount(width, height) : 1;
358
363
  const format = colorSpace === 'srgb' ? 'rgba8unorm-srgb' : 'rgba8unorm';
359
364
  const texture = device.createTexture({
360
365
  size: [width, height, 1],
@@ -373,7 +378,7 @@ function uploadWgpuBitmapEntry(state, image, generateMips, premultiply, colorSpa
373
378
  : bitmap.data;
374
379
  device.queue.writeTexture({ texture }, data, { bytesPerRow: width * 4, rowsPerImage: height }, [width, height, 1]);
375
380
  if (mipLevelCount > 1)
376
- generateWgpuMipmaps(state, texture, width, height, format);
381
+ runtime.mipmapGenerator?.(state, texture, width, height, format);
377
382
  const view = texture.createView();
378
383
  const sampler = state.allowSmoothing ? runtime.linearSampler : runtime.nearestSampler;
379
384
  const bindGroup = device.createBindGroup({
@@ -401,7 +406,9 @@ function uploadWgpuImageResourceEntry(state, image, generateMips, premultiply, c
401
406
  const height = resource.height || 1;
402
407
  if (!isWgpuExternalImageSourceReady(resource.source, width, height))
403
408
  return null;
404
- const mipLevelCount = generateMips ? getWgpuMipLevelCount(width, height) : 1;
409
+ if (generateMips && runtime.mipmapGenerator == null)
410
+ runtime.mipmapDegradedGuard?.(state);
411
+ const mipLevelCount = generateMips && runtime.mipmapGenerator != null ? wgpuMipLevelCount(width, height) : 1;
405
412
  const format = colorSpace === 'srgb' ? 'rgba8unorm-srgb' : 'rgba8unorm';
406
413
  const texture = device.createTexture({
407
414
  size: [width, height, 1],
@@ -415,7 +422,7 @@ function uploadWgpuImageResourceEntry(state, image, generateMips, premultiply, c
415
422
  return null;
416
423
  }
417
424
  if (mipLevelCount > 1)
418
- generateWgpuMipmaps(state, texture, width, height, format);
425
+ runtime.mipmapGenerator?.(state, texture, width, height, format);
419
426
  const view = texture.createView();
420
427
  const sampler = state.allowSmoothing ? runtime.linearSampler : runtime.nearestSampler;
421
428
  const bindGroup = device.createBindGroup({
@@ -427,4 +434,7 @@ function uploadWgpuImageResourceEntry(state, image, generateMips, premultiply, c
427
434
  });
428
435
  return { texture, view, bindGroup };
429
436
  }
437
+ function wgpuMipLevelCount(width, height) {
438
+ return 1 + Math.floor(Math.log2(Math.max(1, width, height)));
439
+ }
430
440
  //# sourceMappingURL=wgpuDraw.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuDraw.js","sourceRoot":"","sources":["../src/wgpuDraw.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuDraw.js","sourceRoot":"","sources":["../src/wgpuDraw.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { WgpuRenderState } from '@flighthq/types/contract';
2
2
  export declare function generateWgpuMipmaps(state: WgpuRenderState, texture: GPUTexture, width: number, height: number, format: GPUTextureFormat): void;
3
3
  export declare function getWgpuMipLevelCount(width: number, height: number): number;
4
+ export declare function registerWgpuMipmapGeneration(state: WgpuRenderState): void;
4
5
  //# sourceMappingURL=wgpuMipmap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuMipmap.d.ts","sourceRoot":"","sources":["../src/wgpuMipmap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAShE,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,UAAU,EACnB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,gBAAgB,GACvB,IAAI,CA4BN;AAID,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAE1E"}
1
+ {"version":3,"file":"wgpuMipmap.d.ts","sourceRoot":"","sources":["../src/wgpuMipmap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAShE,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,eAAe,EACtB,OAAO,EAAE,UAAU,EACnB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,gBAAgB,GACvB,IAAI,CA4BN;AAID,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAE1E;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAEzE"}
@@ -39,6 +39,9 @@ export function generateWgpuMipmaps(state, texture, width, height, format) {
39
39
  export function getWgpuMipLevelCount(width, height) {
40
40
  return 1 + Math.floor(Math.log2(Math.max(1, width, height)));
41
41
  }
42
+ export function registerWgpuMipmapGeneration(state) {
43
+ getWgpuRenderStateRuntime(state).mipmapGenerator = generateWgpuMipmaps;
44
+ }
42
45
  // Lazily builds and caches the downsample pipeline (fullscreen triangle → sample the source level →
43
46
  // write the destination level) and its texture+sampler bind-group layout on the runtime, reused across
44
47
  // every mip generation on this state. Pipelines are keyed by target format because linear and sRGB
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuMipmap.js","sourceRoot":"","sources":["../src/wgpuMipmap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuMipmap.js","sourceRoot":"","sources":["../src/wgpuMipmap.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuRenderState.d.ts","sourceRoot":"","sources":["../src/wgpuRenderState.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,WAAW,EACX,kCAAkC,EAClC,uCAAuC,EACvC,iBAAiB,EACjB,eAAe,EACf,sBAAsB,EACvB,MAAM,0BAA0B,CAAC;AAYlC,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,GAAG,IAAI,CA4BvG;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,eAAe,GAAG,eAAe,CA2B5F;AAED,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,iBAAiB,EACzB,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,eAAe,CAAC,CAiK1B;AAMD,wBAAgB,4BAA4B,CAAC,aAAa,CAAC,EAAE,sBAAsB,GAAG,sBAAsB,CAiC3G;AAWD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAanE;AAED,wBAAgB,qCAAqC,CACnD,KAAK,EAAE,eAAe,GACrB,QAAQ,CAAC,kCAAkC,CAAC,GAAG,IAAI,CAGrD;AAED,wBAAgB,0CAA0C,CACxD,KAAK,EAAE,eAAe,GACrB,uCAAuC,GAAG,IAAI,CAGhD;AAID,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,eAAe,GAAG,sBAAsB,CAExF;AAUD,wBAAgB,cAAc,CAC5B,KAAK,EAAE,eAAe,EACtB,SAAS,EAAE,aAAa,EACxB,SAAS,EAAE,aAAa,EACxB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,WAAW,EAClB,YAAY,CAAC,EAAE,mBAAmB,EAClC,aAAa,SAAI,GAChB,UAAU,CA8BZ;AAED,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAmHD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,eAAe,GAAG,eAAe,CAAC,gBAAgB,CAAC,CAQnG"}
1
+ {"version":3,"file":"wgpuRenderState.d.ts","sourceRoot":"","sources":["../src/wgpuRenderState.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,WAAW,EACX,kCAAkC,EAClC,uCAAuC,EACvC,iBAAiB,EACjB,eAAe,EACf,sBAAsB,EACvB,MAAM,0BAA0B,CAAC;AAYlC,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,GAAG,IAAI,CA8BvG;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,eAAe,GAAG,eAAe,CA2B5F;AAED,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,iBAAiB,EACzB,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,eAAe,CAAC,CAoK1B;AAMD,wBAAgB,4BAA4B,CAAC,aAAa,CAAC,EAAE,sBAAsB,GAAG,sBAAsB,CA0C3G;AAWD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAcnE;AAED,wBAAgB,qCAAqC,CACnD,KAAK,EAAE,eAAe,GACrB,QAAQ,CAAC,kCAAkC,CAAC,GAAG,IAAI,CAGrD;AAED,wBAAgB,0CAA0C,CACxD,KAAK,EAAE,eAAe,GACrB,uCAAuC,GAAG,IAAI,CAGhD;AAID,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,eAAe,GAAG,sBAAsB,CAExF;AAUD,wBAAgB,cAAc,CAC5B,KAAK,EAAE,eAAe,EACtB,SAAS,EAAE,aAAa,EACxB,SAAS,EAAE,aAAa,EACxB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,WAAW,EAClB,YAAY,CAAC,EAAE,mBAAmB,EAClC,aAAa,SAAI,GAChB,UAAU,CA8BZ;AAED,wBAAgB,eAAe,IAAI,OAAO,CAEzC;AAmHD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,eAAe,GAAG,eAAe,CAAC,gBAAgB,CAAC,CAQnG"}