@flighthq/scene2d-wgpu 0.5.0-next.1944.cd6b6e7 → 0.5.1-edge.638.d4dbd4e

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 (68) hide show
  1. package/README.md +2 -2
  2. package/dist/contract.d.ts +1 -0
  3. package/dist/contract.d.ts.map +1 -1
  4. package/dist/contract.js +1 -0
  5. package/dist/contract.js.map +1 -1
  6. package/dist/index.d.ts +1 -1
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +1 -1
  9. package/dist/index.js.map +1 -1
  10. package/dist/scene2dWgpuPipeline.d.ts +3 -0
  11. package/dist/scene2dWgpuPipeline.d.ts.map +1 -0
  12. package/dist/scene2dWgpuPipeline.js +38 -0
  13. package/dist/scene2dWgpuPipeline.js.map +1 -0
  14. package/dist/wgpuCache.d.ts +8 -11
  15. package/dist/wgpuCache.d.ts.map +1 -1
  16. package/dist/wgpuCache.js +57 -189
  17. package/dist/wgpuCache.js.map +1 -1
  18. package/dist/wgpuClipContours.d.ts.map +1 -1
  19. package/dist/wgpuClipContours.js +2 -2
  20. package/dist/wgpuClipContours.js.map +1 -1
  21. package/dist/wgpuClipRectangle.d.ts.map +1 -1
  22. package/dist/wgpuClipRectangle.js +3 -3
  23. package/dist/wgpuClipRectangle.js.map +1 -1
  24. package/dist/wgpuColorAdjustmentMaterialFeature.js +12 -13
  25. package/dist/wgpuColorAdjustmentMaterialFeature.js.map +1 -1
  26. package/dist/wgpuParticleEmitter2D.d.ts.map +1 -1
  27. package/dist/wgpuParticleEmitter2D.js +8 -8
  28. package/dist/wgpuParticleEmitter2D.js.map +1 -1
  29. package/dist/wgpuQuadBatchWriter.d.ts.map +1 -1
  30. package/dist/wgpuQuadBatchWriter.js +7 -7
  31. package/dist/wgpuQuadBatchWriter.js.map +1 -1
  32. package/dist/wgpuRasterShapeRenderer.d.ts.map +1 -1
  33. package/dist/wgpuRasterShapeRenderer.js +13 -11
  34. package/dist/wgpuRasterShapeRenderer.js.map +1 -1
  35. package/dist/wgpuRichText.d.ts +1 -1
  36. package/dist/wgpuRichText.d.ts.map +1 -1
  37. package/dist/wgpuRichText.js +45 -47
  38. package/dist/wgpuRichText.js.map +1 -1
  39. package/dist/wgpuScale9Shape.d.ts +14 -2
  40. package/dist/wgpuScale9Shape.d.ts.map +1 -1
  41. package/dist/wgpuScale9Shape.js +47 -42
  42. package/dist/wgpuScale9Shape.js.map +1 -1
  43. package/dist/wgpuShapeData.d.ts +2 -2
  44. package/dist/wgpuShapeData.d.ts.map +1 -1
  45. package/dist/wgpuShapeData.js +12 -15
  46. package/dist/wgpuShapeData.js.map +1 -1
  47. package/dist/wgpuShapeMesh.d.ts.map +1 -1
  48. package/dist/wgpuShapeMesh.js +2 -2
  49. package/dist/wgpuShapeMesh.js.map +1 -1
  50. package/dist/wgpuStandardMaterial.d.ts.map +1 -1
  51. package/dist/wgpuStandardMaterial.js +4 -4
  52. package/dist/wgpuStandardMaterial.js.map +1 -1
  53. package/dist/wgpuTextLabel.d.ts.map +1 -1
  54. package/dist/wgpuTextLabel.js +29 -22
  55. package/dist/wgpuTextLabel.js.map +1 -1
  56. package/package.json +19 -19
  57. package/src/wgpuCache.test.ts +144 -30
  58. package/src/wgpuColorAdjustmentMaterialFeature.test.ts +2 -1
  59. package/src/wgpuParticleEmitter2D.test.ts +2 -1
  60. package/src/wgpuQuadBatchWriter.test.ts +2 -1
  61. package/src/wgpuRasterShapeRenderer.test.ts +54 -1
  62. package/src/wgpuRichText.test.ts +118 -13
  63. package/src/wgpuScale9Shape.test.ts +139 -11
  64. package/src/wgpuShape.test.ts +40 -7
  65. package/src/wgpuShapeData.test.ts +75 -9
  66. package/src/wgpuStandardMaterial.test.ts +10 -2
  67. package/src/wgpuTextLabel.test.ts +92 -11
  68. package/src/wgpuVelocity.test.ts +6 -1
package/README.md CHANGED
@@ -13,5 +13,5 @@ Import the supported application-facing API from `@flighthq/scene2d-wgpu`. The `
13
13
  This package is part of the locked-version Flight SDK graph. Applications may instead install and import `@flighthq/sdk` when package-level tree shaking is sufficient.
14
14
 
15
15
  - [Flight project](https://github.com/flighthq/flight)
16
- - [Source for @flighthq/scene2d-wgpu@0.5.0-next.1944.cd6b6e7](https://github.com/flighthq/flight/tree/cd6b6e71eb472b3a4249830a7743333f019fa7b7/packages/scene2d-wgpu)
17
- - [License](https://github.com/flighthq/flight/blob/cd6b6e71eb472b3a4249830a7743333f019fa7b7/LICENSE.md)
16
+ - [Source for @flighthq/scene2d-wgpu@0.5.1-edge.638.d4dbd4e](https://github.com/flighthq/flight/tree/d4dbd4e347dc8be10b180c85a766ab50333dcb51/packages/scene2d-wgpu)
17
+ - [License](https://github.com/flighthq/flight/blob/d4dbd4e347dc8be10b180c85a766ab50333dcb51/LICENSE.md)
@@ -1,5 +1,6 @@
1
1
  export * from './enableWgpuColorAdjustmentGuards';
2
2
  export * from './enableWgpuStrokePathTessellation';
3
+ export * from './scene2dWgpuPipeline';
3
4
  export * from './wgpuSprite';
4
5
  export * from './wgpuBitmapText';
5
6
  export * from './wgpuCache';
@@ -1 +1 @@
1
- {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC;AAClD,cAAc,oCAAoC,CAAC;AACnD,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sCAAsC,CAAC;AACrD,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,6BAA6B,IAAI,2BAA2B,EAC5D,sBAAsB,IAAI,oBAAoB,EAC9C,8BAA8B,IAAI,4BAA4B,EAC9D,yBAAyB,IAAI,uBAAuB,EACpD,oBAAoB,IAAI,kBAAkB,EAC1C,uBAAuB,IAAI,qBAAqB,EAChD,wBAAwB,IAAI,sBAAsB,EAClD,0BAA0B,IAAI,wBAAwB,EACtD,+BAA+B,IAAI,6BAA6B,EAChE,oBAAoB,IAAI,kBAAkB,EAC1C,sBAAsB,IAAI,oBAAoB,EAC9C,mBAAmB,IAAI,iBAAiB,EACxC,mBAAmB,IAAI,iBAAiB,EACxC,0BAA0B,IAAI,wBAAwB,EACtD,iCAAiC,IAAI,+BAA+B,EACpE,2BAA2B,IAAI,yBAAyB,GACzD,MAAM,mCAAmC,CAAC;AAC3C,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC;AAClD,cAAc,oCAAoC,CAAC;AACnD,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sCAAsC,CAAC;AACrD,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,6BAA6B,IAAI,2BAA2B,EAC5D,sBAAsB,IAAI,oBAAoB,EAC9C,8BAA8B,IAAI,4BAA4B,EAC9D,yBAAyB,IAAI,uBAAuB,EACpD,oBAAoB,IAAI,kBAAkB,EAC1C,uBAAuB,IAAI,qBAAqB,EAChD,wBAAwB,IAAI,sBAAsB,EAClD,0BAA0B,IAAI,wBAAwB,EACtD,+BAA+B,IAAI,6BAA6B,EAChE,oBAAoB,IAAI,kBAAkB,EAC1C,sBAAsB,IAAI,oBAAoB,EAC9C,mBAAmB,IAAI,iBAAiB,EACxC,mBAAmB,IAAI,iBAAiB,EACxC,0BAA0B,IAAI,wBAAwB,EACtD,iCAAiC,IAAI,+BAA+B,EACpE,2BAA2B,IAAI,yBAAyB,GACzD,MAAM,mCAAmC,CAAC;AAC3C,cAAc,uBAAuB,CAAC"}
package/dist/contract.js CHANGED
@@ -1,5 +1,6 @@
1
1
  export * from './enableWgpuColorAdjustmentGuards';
2
2
  export * from './enableWgpuStrokePathTessellation';
3
+ export * from './scene2dWgpuPipeline';
3
4
  export * from './wgpuSprite';
4
5
  export * from './wgpuBitmapText';
5
6
  export * from './wgpuCache';
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC;AAClD,cAAc,oCAAoC,CAAC;AACnD,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sCAAsC,CAAC;AACrD,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,6BAA6B,IAAI,2BAA2B,EAC5D,sBAAsB,IAAI,oBAAoB,EAC9C,8BAA8B,IAAI,4BAA4B,EAC9D,yBAAyB,IAAI,uBAAuB,EACpD,oBAAoB,IAAI,kBAAkB,EAC1C,uBAAuB,IAAI,qBAAqB,EAChD,wBAAwB,IAAI,sBAAsB,EAClD,0BAA0B,IAAI,wBAAwB,EACtD,+BAA+B,IAAI,6BAA6B,EAChE,oBAAoB,IAAI,kBAAkB,EAC1C,sBAAsB,IAAI,oBAAoB,EAC9C,mBAAmB,IAAI,iBAAiB,EACxC,mBAAmB,IAAI,iBAAiB,EACxC,0BAA0B,IAAI,wBAAwB,EACtD,iCAAiC,IAAI,+BAA+B,EACpE,2BAA2B,IAAI,yBAAyB,GACzD,MAAM,mCAAmC,CAAC;AAC3C,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"AAAA,cAAc,mCAAmC,CAAC;AAClD,cAAc,oCAAoC,CAAC;AACnD,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sCAAsC,CAAC;AACrD,cAAc,wBAAwB,CAAC;AACvC,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,cAAc,CAAC;AAC7B,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,OAAO,EACL,6BAA6B,IAAI,2BAA2B,EAC5D,sBAAsB,IAAI,oBAAoB,EAC9C,8BAA8B,IAAI,4BAA4B,EAC9D,yBAAyB,IAAI,uBAAuB,EACpD,oBAAoB,IAAI,kBAAkB,EAC1C,uBAAuB,IAAI,qBAAqB,EAChD,wBAAwB,IAAI,sBAAsB,EAClD,0BAA0B,IAAI,wBAAwB,EACtD,+BAA+B,IAAI,6BAA6B,EAChE,oBAAoB,IAAI,kBAAkB,EAC1C,sBAAsB,IAAI,oBAAoB,EAC9C,mBAAmB,IAAI,iBAAiB,EACxC,mBAAmB,IAAI,iBAAiB,EACxC,0BAA0B,IAAI,wBAAwB,EACtD,iCAAiC,IAAI,+BAA+B,EACpE,2BAA2B,IAAI,yBAAyB,GACzD,MAAM,mCAAmC,CAAC;AAC3C,cAAc,uBAAuB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { createWgpuCacheState, createWgpuVelocityTarget, defaultWgpuBitmapTextRenderer, defaultWgpuMeshShapeRenderer, defaultWgpuMorphShapeRenderer, defaultWgpuNode2DVelocityWriter, defaultWgpuParticleEmitter2DRenderer, defaultWgpuParticleEmitter2DVelocityWriter, defaultWgpuQuadBatchRenderer, defaultWgpuRichTextRenderer, defaultWgpuScale9ShapeRenderer, defaultWgpuScene2DRenderer, defaultWgpuShapeCommands, defaultWgpuRasterShapeRenderer, defaultWgpuShapeRenderer, defaultWgpuSpriteRenderer, defaultWgpuTextLabelRenderer, defaultWgpuTextureShapeCommands, defaultWgpuTilemapRenderer, drawWgpuSprite, enableWgpuStrokePathTessellation, enableWgpuClipSupport, enableWgpuRenderCache, enableWgpuTextInput, refreshWgpuRenderCache, registerWgpuStandardMaterial, registerWgpuColorAdjustmentMaterialFeature, registerWgpuShapeCommands, registerWgpuVelocityWriter, renderWgpuScene2D, renderWgpuVelocity, } from './contract';
1
+ export { createWgpuCacheState, createWgpuVelocityTarget, defaultWgpuBitmapTextRenderer, defaultWgpuMeshShapeRenderer, defaultWgpuMorphShapeRenderer, defaultWgpuNode2DVelocityWriter, defaultWgpuParticleEmitter2DRenderer, defaultWgpuParticleEmitter2DVelocityWriter, defaultWgpuQuadBatchRenderer, defaultWgpuRichTextRenderer, defaultWgpuScale9ShapeRenderer, defaultWgpuScene2DRenderer, defaultWgpuShapeCommands, defaultWgpuRasterShapeRenderer, defaultWgpuShapeRenderer, defaultWgpuSpriteRenderer, defaultWgpuTextLabelRenderer, defaultWgpuTextureShapeCommands, defaultWgpuTilemapRenderer, drawWgpuSprite, enableWgpuStrokePathTessellation, enableWgpuClipSupport, enableWgpuRenderCache, enableWgpuTextInput, refreshWgpuRenderCache, registerWgpuStandardMaterial, registerWgpuColorAdjustmentMaterialFeature, registerWgpuShapeCommands, registerWgpuVelocityWriter, renderWgpuScene2D, renderWgpuVelocity, scene2dWgpuPipeline, } from './contract';
2
2
  export { getWgpuShapeRasterizer, registerWgpuShapeRasterizer } from './wgpuShapeRasterizer';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,6BAA6B,EAC7B,4BAA4B,EAC5B,6BAA6B,EAC7B,+BAA+B,EAC/B,oCAAoC,EACpC,0CAA0C,EAC1C,4BAA4B,EAC5B,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,8BAA8B,EAC9B,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,+BAA+B,EAC/B,0BAA0B,EAC1B,cAAc,EACd,gCAAgC,EAChC,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,0CAA0C,EAC1C,yBAAyB,EACzB,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,6BAA6B,EAC7B,4BAA4B,EAC5B,6BAA6B,EAC7B,+BAA+B,EAC/B,oCAAoC,EACpC,0CAA0C,EAC1C,4BAA4B,EAC5B,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,8BAA8B,EAC9B,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,+BAA+B,EAC/B,0BAA0B,EAC1B,cAAc,EACd,gCAAgC,EAChC,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,0CAA0C,EAC1C,yBAAyB,EACzB,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC"}
package/dist/index.js CHANGED
@@ -1,3 +1,3 @@
1
- export { createWgpuCacheState, createWgpuVelocityTarget, defaultWgpuBitmapTextRenderer, defaultWgpuMeshShapeRenderer, defaultWgpuMorphShapeRenderer, defaultWgpuNode2DVelocityWriter, defaultWgpuParticleEmitter2DRenderer, defaultWgpuParticleEmitter2DVelocityWriter, defaultWgpuQuadBatchRenderer, defaultWgpuRichTextRenderer, defaultWgpuScale9ShapeRenderer, defaultWgpuScene2DRenderer, defaultWgpuShapeCommands, defaultWgpuRasterShapeRenderer, defaultWgpuShapeRenderer, defaultWgpuSpriteRenderer, defaultWgpuTextLabelRenderer, defaultWgpuTextureShapeCommands, defaultWgpuTilemapRenderer, drawWgpuSprite, enableWgpuStrokePathTessellation, enableWgpuClipSupport, enableWgpuRenderCache, enableWgpuTextInput, refreshWgpuRenderCache, registerWgpuStandardMaterial, registerWgpuColorAdjustmentMaterialFeature, registerWgpuShapeCommands, registerWgpuVelocityWriter, renderWgpuScene2D, renderWgpuVelocity, } from './contract';
1
+ export { createWgpuCacheState, createWgpuVelocityTarget, defaultWgpuBitmapTextRenderer, defaultWgpuMeshShapeRenderer, defaultWgpuMorphShapeRenderer, defaultWgpuNode2DVelocityWriter, defaultWgpuParticleEmitter2DRenderer, defaultWgpuParticleEmitter2DVelocityWriter, defaultWgpuQuadBatchRenderer, defaultWgpuRichTextRenderer, defaultWgpuScale9ShapeRenderer, defaultWgpuScene2DRenderer, defaultWgpuShapeCommands, defaultWgpuRasterShapeRenderer, defaultWgpuShapeRenderer, defaultWgpuSpriteRenderer, defaultWgpuTextLabelRenderer, defaultWgpuTextureShapeCommands, defaultWgpuTilemapRenderer, drawWgpuSprite, enableWgpuStrokePathTessellation, enableWgpuClipSupport, enableWgpuRenderCache, enableWgpuTextInput, refreshWgpuRenderCache, registerWgpuStandardMaterial, registerWgpuColorAdjustmentMaterialFeature, registerWgpuShapeCommands, registerWgpuVelocityWriter, renderWgpuScene2D, renderWgpuVelocity, scene2dWgpuPipeline, } from './contract';
2
2
  export { getWgpuShapeRasterizer, registerWgpuShapeRasterizer } from './wgpuShapeRasterizer';
3
3
  //# 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,oBAAoB,EACpB,wBAAwB,EACxB,6BAA6B,EAC7B,4BAA4B,EAC5B,6BAA6B,EAC7B,+BAA+B,EAC/B,oCAAoC,EACpC,0CAA0C,EAC1C,4BAA4B,EAC5B,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,8BAA8B,EAC9B,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,+BAA+B,EAC/B,0BAA0B,EAC1B,cAAc,EACd,gCAAgC,EAChC,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,0CAA0C,EAC1C,yBAAyB,EACzB,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,6BAA6B,EAC7B,4BAA4B,EAC5B,6BAA6B,EAC7B,+BAA+B,EAC/B,oCAAoC,EACpC,0CAA0C,EAC1C,4BAA4B,EAC5B,2BAA2B,EAC3B,8BAA8B,EAC9B,0BAA0B,EAC1B,wBAAwB,EACxB,8BAA8B,EAC9B,wBAAwB,EACxB,yBAAyB,EACzB,4BAA4B,EAC5B,+BAA+B,EAC/B,0BAA0B,EAC1B,cAAc,EACd,gCAAgC,EAChC,qBAAqB,EACrB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,4BAA4B,EAC5B,0CAA0C,EAC1C,yBAAyB,EACzB,0BAA0B,EAC1B,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { WgpuPipeline } from '@flighthq/types/contract';
2
+ export declare const scene2dWgpuPipeline: WgpuPipeline;
3
+ //# sourceMappingURL=scene2dWgpuPipeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scene2dWgpuPipeline.d.ts","sourceRoot":"","sources":["../src/scene2dWgpuPipeline.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAwB,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAiDnF,eAAO,MAAM,mBAAmB,EAAE,YAQhC,CAAC"}
@@ -0,0 +1,38 @@
1
+ import { withRegistryTableEntry } from '@flighthq/registry/contract';
2
+ import { createEmptyWgpuRegistries, createWgpuPipeline } from '@flighthq/render-wgpu/contract';
3
+ import { BitmapTextKind, DisplayObjectKind, MorphShapeKind, ParticleEmitter2DKind, QuadBatchKind, RenderCacheKind, RichTextKind, Scale9ShapeKind, ShapeKind, SpriteKind, StandardMaterialKind, TextLabelKind, TilemapKind, } from '@flighthq/types/contract';
4
+ import { defaultWgpuBitmapTextRenderer } from './wgpuBitmapText';
5
+ import { defaultWgpuRenderCacheRenderer } from './wgpuCache';
6
+ import { defaultWgpuScene2DRenderer } from './wgpuNode2D';
7
+ import { defaultWgpuParticleEmitter2DRenderer } from './wgpuParticleEmitter2D';
8
+ import { defaultWgpuQuadBatchRenderer } from './wgpuQuadBatch';
9
+ import { defaultWgpuRichTextRenderer } from './wgpuRichText';
10
+ import { defaultWgpuScale9ShapeRenderer } from './wgpuScale9Shape';
11
+ import { defaultWgpuMorphShapeRenderer, defaultWgpuShapeRenderer } from './wgpuShape';
12
+ import { defaultWgpuSpriteRenderer } from './wgpuSprite';
13
+ import { standardWgpuMaterialRenderer } from './wgpuStandardMaterial';
14
+ import { defaultWgpuTextLabelRenderer } from './wgpuTextLabel';
15
+ import { defaultWgpuTilemapRenderer } from './wgpuTilemap';
16
+ function buildScene2dWgpuRenderers() {
17
+ let table = createEmptyWgpuRegistries().renderers;
18
+ table = withRegistryTableEntry(table, BitmapTextKind, defaultWgpuBitmapTextRenderer);
19
+ table = withRegistryTableEntry(table, DisplayObjectKind, defaultWgpuScene2DRenderer);
20
+ table = withRegistryTableEntry(table, MorphShapeKind, defaultWgpuMorphShapeRenderer);
21
+ table = withRegistryTableEntry(table, ParticleEmitter2DKind, defaultWgpuParticleEmitter2DRenderer);
22
+ table = withRegistryTableEntry(table, QuadBatchKind, defaultWgpuQuadBatchRenderer);
23
+ table = withRegistryTableEntry(table, RenderCacheKind, defaultWgpuRenderCacheRenderer);
24
+ table = withRegistryTableEntry(table, RichTextKind, defaultWgpuRichTextRenderer);
25
+ table = withRegistryTableEntry(table, Scale9ShapeKind, defaultWgpuScale9ShapeRenderer);
26
+ table = withRegistryTableEntry(table, ShapeKind, defaultWgpuShapeRenderer);
27
+ table = withRegistryTableEntry(table, SpriteKind, defaultWgpuSpriteRenderer);
28
+ table = withRegistryTableEntry(table, TextLabelKind, defaultWgpuTextLabelRenderer);
29
+ table = withRegistryTableEntry(table, TilemapKind, defaultWgpuTilemapRenderer);
30
+ return table;
31
+ }
32
+ const _registries = createEmptyWgpuRegistries();
33
+ export const scene2dWgpuPipeline = createWgpuPipeline({
34
+ ..._registries,
35
+ materialRenderers: withRegistryTableEntry(_registries.materialRenderers, StandardMaterialKind, standardWgpuMaterialRenderer),
36
+ renderers: buildScene2dWgpuRenderers(),
37
+ });
38
+ //# sourceMappingURL=scene2dWgpuPipeline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scene2dWgpuPipeline.js","sourceRoot":"","sources":["../src/scene2dWgpuPipeline.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAE/F,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,cAAc,EACd,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,YAAY,EACZ,eAAe,EACf,SAAS,EACT,UAAU,EACV,oBAAoB,EACpB,aAAa,EACb,WAAW,GACZ,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,8BAA8B,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,oCAAoC,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,2BAA2B,EAAE,MAAM,gBAAgB,CAAC;AAC7D,OAAO,EAAE,8BAA8B,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACtF,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,4BAA4B,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAE3D,SAAS,yBAAyB;IAChC,IAAI,KAAK,GAAG,yBAAyB,EAAE,CAAC,SAAS,CAAC;IAClD,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,cAAc,EAAE,6BAA6B,CAAC,CAAC;IACrF,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,iBAAiB,EAAE,0BAA0B,CAAC,CAAC;IACrF,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,cAAc,EAAE,6BAA6B,CAAC,CAAC;IACrF,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,qBAAqB,EAAE,oCAAoC,CAAC,CAAC;IACnG,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,4BAA4B,CAAC,CAAC;IACnF,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,eAAe,EAAE,8BAA8B,CAAC,CAAC;IACvF,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,YAAY,EAAE,2BAA2B,CAAC,CAAC;IACjF,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,eAAe,EAAE,8BAA8B,CAAC,CAAC;IACvF,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,SAAS,EAAE,wBAAwB,CAAC,CAAC;IAC3E,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,UAAU,EAAE,yBAAyB,CAAC,CAAC;IAC7E,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,aAAa,EAAE,4BAA4B,CAAC,CAAC;IACnF,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,WAAW,EAAE,0BAA0B,CAAC,CAAC;IAC/E,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,WAAW,GAAG,yBAAyB,EAAE,CAAC;AAEhD,MAAM,CAAC,MAAM,mBAAmB,GAAiB,kBAAkB,CAAC;IAClE,GAAG,WAAW;IACd,iBAAiB,EAAE,sBAAsB,CACvC,WAAW,CAAC,iBAAiB,EAC7B,oBAAoB,EACpB,4BAA4B,CAC7B;IACD,SAAS,EAAE,yBAAyB,EAAE;CACvC,CAAC,CAAC"}
@@ -1,15 +1,13 @@
1
- import type { Node2D, Scene2DRenderer, RenderCache, RenderCacheRefreshOptions, WgpuRenderState, WgpuRenderTarget } from '@flighthq/types/contract';
1
+ import type { Node2D, RenderCache, RenderCacheRefreshOptions, Scene2DRenderer, WgpuDeviceState, WgpuPipeline, WgpuPresentationRenderState, WgpuRenderOptions, WgpuRenderState, WgpuRenderTarget } from '@flighthq/types/contract';
2
2
  /**
3
3
  * Creates an offscreen render state for baking render caches consumed by `screenState`.
4
4
  *
5
5
  * Wgpu textures and pipelines cannot cross GPU devices, so — unlike the canvas backend —
6
- * this offscreen state must share the screen state's GPU device/context and every
7
- * device-bound resource (pipelines, samplers, uniform ring buffer, the uploaded-texture
8
- * cache). What it keeps separate is the scene-graph bookkeeping: its own render node map,
9
- * adapter map, and frame counter, so baking neither substitutes a cache into itself nor
10
- * disturbs the screen state's nodes.
6
+ * this offscreen state shares the owner's explicit device tier. It owns its pipeline snapshot,
7
+ * uniform ring, frame-local batch resources, and scene-graph bookkeeping; a bounded frame borrow
8
+ * supplies only the live presentation encoder/pass while a bake is being recorded.
11
9
  */
12
- export declare function createWgpuCacheState(screenState: WgpuRenderState): WgpuRenderState;
10
+ export declare function createWgpuCacheState(ownerState: WgpuRenderState, deviceState: Readonly<WgpuDeviceState>, pipeline: Readonly<WgpuPipeline>, options?: Readonly<WgpuRenderOptions>): WgpuRenderState;
13
11
  export declare function enableWgpuRenderCache(state: WgpuRenderState): void;
14
12
  /**
15
13
  * Allocates or resizes the texture `screenState` composites for `cache`, returning it so a
@@ -17,16 +15,15 @@ export declare function enableWgpuRenderCache(state: WgpuRenderState): void;
17
15
  * refreshWgpuRenderCache.
18
16
  */
19
17
  export declare function ensureWgpuRenderCacheTarget(state: WgpuRenderState, cache: RenderCache, width: number, height: number): WgpuRenderTarget;
20
- export declare function getWgpuRenderCacheScreenState(state: WgpuRenderState): WgpuRenderState;
21
18
  export declare function getWgpuRenderCacheTarget(state: WgpuRenderState, cache: RenderCache): WgpuRenderTarget | null;
22
19
  /**
23
20
  * Bakes `source`'s subtree into its cache target using the offscreen `cacheState`, then records
24
21
  * the transform that places the result back in scene space. Returns whether a bake happened —
25
22
  * the offscreen state's own dirtiness decides it (honoring its sceneGraphSyncPolicy), so this is
26
- * cheap to call every frame. Because the bake runs on the shared GPU device, the screen state's
27
- * cached GPU state is reset afterward so it re-establishes cleanly on its next draw.
23
+ * cheap to call every frame. Because the bake runs on the shared GPU device, it can composite its
24
+ * owned target in the owner's frame without acquiring presentation capability itself.
28
25
  */
29
- export declare function refreshWgpuRenderCache(cacheState: WgpuRenderState, cache: RenderCache, source: Node2D, options?: Readonly<RenderCacheRefreshOptions>): boolean;
26
+ export declare function refreshWgpuRenderCache(ownerState: WgpuPresentationRenderState, cacheState: WgpuRenderState, cache: RenderCache, source: Node2D, options?: Readonly<RenderCacheRefreshOptions>): boolean;
30
27
  export declare function releaseWgpuRenderCache(state: WgpuRenderState, cache: RenderCache): void;
31
28
  export declare const defaultWgpuRenderCacheRenderer: Scene2DRenderer;
32
29
  //# sourceMappingURL=wgpuCache.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuCache.d.ts","sourceRoot":"","sources":["../src/wgpuCache.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EACV,MAAM,EACN,eAAe,EAEf,WAAW,EACX,yBAAyB,EAEzB,eAAe,EACf,gBAAgB,EACjB,MAAM,0BAA0B,CAAC;AAMlC;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,eAAe,GAAG,eAAe,CA6GlF;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAElE;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,gBAAgB,CAUlB;AAID,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,eAAe,GAAG,eAAe,CAErF;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,GAAG,gBAAgB,GAAG,IAAI,CAE5G;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,eAAe,EAC3B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,QAAQ,CAAC,yBAAyB,CAAC,GAC5C,OAAO,CAuET;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAOvF;AA0BD,eAAO,MAAM,8BAA8B,EAAE,eAG5C,CAAC"}
1
+ {"version":3,"file":"wgpuCache.d.ts","sourceRoot":"","sources":["../src/wgpuCache.ts"],"names":[],"mappings":"AAyBA,OAAO,KAAK,EAEV,MAAM,EACN,WAAW,EACX,yBAAyB,EAEzB,eAAe,EACf,eAAe,EACf,YAAY,EACZ,2BAA2B,EAC3B,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EACjB,MAAM,0BAA0B,CAAC;AAKlC;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,eAAe,EAC3B,WAAW,EAAE,QAAQ,CAAC,eAAe,CAAC,EACtC,QAAQ,EAAE,QAAQ,CAAC,YAAY,CAAC,EAChC,OAAO,GAAE,QAAQ,CAAC,iBAAiB,CAAM,GACxC,eAAe,CASjB;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAElE;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,eAAe,EACtB,KAAK,EAAE,WAAW,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,gBAAgB,CAUlB;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,GAAG,gBAAgB,GAAG,IAAI,CAE5G;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,2BAA2B,EACvC,UAAU,EAAE,eAAe,EAC3B,KAAK,EAAE,WAAW,EAClB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,QAAQ,CAAC,yBAAyB,CAAC,GAC5C,OAAO,CA8BT;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAQvF;AAmCD,eAAO,MAAM,8BAA8B,EAAE,eAG5C,CAAC"}
package/dist/wgpuCache.js CHANGED
@@ -1,123 +1,25 @@
1
1
  import { createMatrix, createRectangle, multiplyMatrix } from '@flighthq/geometry/contract';
2
2
  import { computeNodeBoundsRectangle } from '@flighthq/node/contract';
3
- import { createWgpuRenderStateRuntime, getWgpuRenderStateRuntime } from '@flighthq/render-wgpu/contract';
4
- import { beginWgpuFrame, beginWgpuRenderPass, createWgpuRenderTarget, destroyWgpuRenderTarget, drawWgpuRenderTargetResult, endWgpuRenderPass, resizeWgpuRenderTarget, setWgpuRenderTransform2D, submitWgpuRenderPass, } from '@flighthq/render-wgpu/contract';
5
- import { computeScene2DRenderTargetTransform, computeRenderCacheTransform, computeRenderTargetSize, copyAllRenderersFromRenderState, createRenderState, getRenderProxyCache, noopRendererData, prepareScene2DRender, registerRenderCacheRenderer, } from '@flighthq/render/contract';
6
- import { EntityRuntimeKey } from '@flighthq/types/contract';
3
+ import { beginWgpuRenderPass, createWgpuOffscreenRenderState, createWgpuRenderTarget, destroyWgpuRenderState, destroyWgpuRenderTarget, drawWgpuRenderTargetResult, endWgpuRenderPass, getWgpuRenderStateRuntime, resizeWgpuRenderTarget, registerWgpuRenderStateTeardown, setWgpuRenderTransform2D, withWgpuFrameBorrow, } from '@flighthq/render-wgpu/contract';
4
+ import { computeScene2DRenderTargetTransform, computeRenderCacheTransform, computeRenderTargetSize, getRenderProxyCache, noopRendererData, prepareScene2DRender, registerRenderCacheRenderer, } from '@flighthq/render/contract';
7
5
  import { renderWgpuScene2D } from './wgpuNode2D';
8
6
  import { flushWgpuQuadBatchWriter } from './wgpuQuadBatchWriter';
9
7
  /**
10
8
  * Creates an offscreen render state for baking render caches consumed by `screenState`.
11
9
  *
12
10
  * Wgpu textures and pipelines cannot cross GPU devices, so — unlike the canvas backend —
13
- * this offscreen state must share the screen state's GPU device/context and every
14
- * device-bound resource (pipelines, samplers, uniform ring buffer, the uploaded-texture
15
- * cache). What it keeps separate is the scene-graph bookkeeping: its own render node map,
16
- * adapter map, and frame counter, so baking neither substitutes a cache into itself nor
17
- * disturbs the screen state's nodes.
11
+ * this offscreen state shares the owner's explicit device tier. It owns its pipeline snapshot,
12
+ * uniform ring, frame-local batch resources, and scene-graph bookkeeping; a bounded frame borrow
13
+ * supplies only the live presentation encoder/pass while a bake is being recorded.
18
14
  */
19
- export function createWgpuCacheState(screenState) {
20
- const screenRuntime = getWgpuRenderStateRuntime(screenState);
21
- const cacheState = createRenderState({
22
- allowSmoothing: screenState.allowSmoothing,
23
- pixelRatio: screenState.pixelRatio,
24
- renderTransform2D: createMatrix(),
25
- roundPixels: screenState.roundPixels,
26
- sceneGraphSyncPolicy: screenState.sceneGraphSyncPolicy,
27
- });
28
- // Attach the cache runtime before copying renderers: copyAllRenderersFromRenderState replaces the
29
- // runtime's renderer-table snapshot, so the backend runtime must already be installed.
30
- const cacheRuntime = createWgpuRenderStateRuntime();
31
- cacheState[EntityRuntimeKey] = cacheRuntime;
32
- copyAllRenderersFromRenderState(cacheState, screenState);
33
- // Cache baking follows blend-mode support enabled on the screen after this long-lived state is
34
- // created. The draw seam resolves this explicit parent unless the cache installs a local hook.
15
+ export function createWgpuCacheState(ownerState, deviceState, pipeline, options = {}) {
16
+ const cacheState = createWgpuOffscreenRenderState(deviceState, pipeline, options);
17
+ // The explicit owner is retained only for late blend policy. Frame/resource ownership remains local,
18
+ // and owner teardown closes this state exactly once.
35
19
  cacheState.applyBlendMode = null;
36
- cacheRuntime.applyBlendModeParent = screenState;
37
- cacheState.canvas = screenState.canvas;
38
- cacheState.context = screenState.context;
39
- cacheState.device = screenState.device;
40
- cacheState.format = screenState.format;
41
- cacheRuntime.uniformBindGroupLayout = screenRuntime.uniformBindGroupLayout;
42
- cacheRuntime.textureBindGroupLayout = screenRuntime.textureBindGroupLayout;
43
- cacheRuntime.uniformBuffer = screenRuntime.uniformBuffer;
44
- cacheRuntime.uniformData = screenRuntime.uniformData;
45
- cacheRuntime.uniformDataU32 = screenRuntime.uniformDataU32;
46
- cacheRuntime.uniformStride = screenRuntime.uniformStride;
47
- cacheRuntime.uniformBindGroup = screenRuntime.uniformBindGroup;
48
- cacheRuntime.matrixArray = screenRuntime.matrixArray;
49
- cacheRuntime.pipelineCache = screenRuntime.pipelineCache;
50
- cacheRuntime.linearSampler = screenRuntime.linearSampler;
51
- cacheRuntime.nearestSampler = screenRuntime.nearestSampler;
52
- cacheRuntime.textureCache = screenRuntime.textureCache;
53
- cacheRuntime.defaultBitmapShader = screenRuntime.defaultBitmapShader;
54
- cacheRuntime.particleInstanceBuffer = screenRuntime.particleInstanceBuffer;
55
- cacheRuntime.particleInstanceData = screenRuntime.particleInstanceData;
56
- cacheRuntime.particleInstanceCapacity = screenRuntime.particleInstanceCapacity;
57
- // The baked subtree is recorded into the screen state's command encoder, so the cache
58
- // state must share the live per-frame encoder/pass surfaces rather than its own.
59
- cacheRuntime.commandEncoder = screenRuntime.commandEncoder;
60
- cacheRuntime.renderPass = screenRuntime.renderPass;
61
- cacheRuntime.canvasTextureView = screenRuntime.canvasTextureView;
62
- cacheRuntime.canvasViewCleared = screenRuntime.canvasViewCleared;
63
- cacheRuntime.depthStencilTexture = screenRuntime.depthStencilTexture;
64
- cacheRuntime.depthStencilView = screenRuntime.depthStencilView;
65
- cacheRuntime.depthStencilWidth = screenRuntime.depthStencilWidth;
66
- cacheRuntime.depthStencilHeight = screenRuntime.depthStencilHeight;
67
- // Cache rendering is a derived pipeline: it starts from the screen's persistent registration
68
- // snapshots through a distinct aggregate, so later replacements on either state diverge cleanly.
69
- cacheRuntime.registries = {
70
- colorAdjustmentFeature: screenRuntime.registries.colorAdjustmentFeature,
71
- colorAdjustmentFeatureGuard: screenRuntime.registries.colorAdjustmentFeatureGuard,
72
- colorAdjustments: screenRuntime.registries.colorAdjustments,
73
- colorAdjustmentUnsupportedGuard: screenRuntime.registries.colorAdjustmentUnsupportedGuard,
74
- compressedTextureDecoder: screenRuntime.registries.compressedTextureDecoder,
75
- compressedTextureUpload: screenRuntime.registries.compressedTextureUpload,
76
- customMaterialShaders: screenRuntime.registries.customMaterialShaders,
77
- materialRenderers: screenRuntime.registries.materialRenderers,
78
- meshMaterialRenderers: screenRuntime.registries.meshMaterialRenderers,
79
- modifierSnippets: screenRuntime.registries.modifierSnippets,
80
- modifierSnippetRevision: screenRuntime.registries.modifierSnippetRevision,
81
- renderEffects: screenRuntime.registries.renderEffects,
82
- renderers: cacheRuntime.registries.renderers,
83
- renderRootGuard: screenRuntime.registries.renderRootGuard,
84
- shapeRasterizer: screenRuntime.registries.shapeRasterizer,
85
- strokeTessellator: screenRuntime.registries.strokeTessellator,
86
- textureResolvers: screenRuntime.registries.textureResolvers,
87
- velocityWriters: screenRuntime.registries.velocityWriters,
88
- };
89
- cacheRuntime.uniformOffset = 0;
90
- cacheRuntime.currentBlendMode = null;
91
- cacheRuntime.currentMaskDepth = 0;
92
- // Contour-clip pipelines can be lazily rebuilt against the cache's device; the active-clip stack must
93
- // start empty so a cached subtree's clips don't reference the screen state's GPU buffers.
94
- cacheRuntime.clipContourPipelines = undefined;
95
- cacheRuntime.clipContourStack = [];
96
- cacheRuntime.clipForms = [];
97
- // The flat-color shape-fill pipelines can be lazily rebuilt against the (shared) device on first use.
98
- cacheRuntime.shapeMeshPipelines = undefined;
99
- cacheRuntime.quadBatchWriterBlendMode = null;
100
- cacheRuntime.quadBatchWriterMaterial = null;
101
- cacheRuntime.quadBatchWriterMaterialRenderer = null;
102
- cacheRuntime.quadBatchWriterMaterialFloats = 0;
103
- cacheRuntime.quadBatchWriterCount = 0;
104
- cacheRuntime.quadBatchWriterInstanceData = new Float32Array(0);
105
- cacheRuntime.quadBatchWriterMaterialData = new Float32Array(0);
106
- cacheRuntime.quadBatchWriterTexture = null;
107
- cacheRuntime.quadBatchWriterSampler = null;
108
- cacheRuntime.quadBatchWriterSmoothing = null;
109
- // The opt-in fold and diagnostic guard already propagate through their independent persistent
110
- // registry snapshots above; per-batch color-adjustment data lives on cacheRuntime and grows lazily.
111
- // The bake state owns its own buffer pool (its flushes record into the same frame, so they must
112
- // not share slots with the screen's batch either).
113
- cacheRuntime.quadBatchWriterBufferPool = [];
114
- cacheRuntime.quadBatchWriterBufferCursor = 0;
115
- cacheRuntime.maskWriteMode = false;
116
- cacheRuntime.currentScissorRect = null;
117
- cacheRuntime.scissorStack = [];
118
- cacheRuntime.renderTargetViewport = null;
119
- cacheRuntime.renderTargetStack = [];
120
- _cacheStateScreen.set(cacheState, screenState);
20
+ const cacheRuntime = getWgpuRenderStateRuntime(cacheState);
21
+ cacheRuntime.applyBlendModeParent = ownerState;
22
+ registerWgpuRenderStateTeardown(ownerState, () => destroyWgpuRenderState(cacheState));
121
23
  return cacheState;
122
24
  }
123
25
  export function enableWgpuRenderCache(state) {
@@ -140,90 +42,48 @@ export function ensureWgpuRenderCacheTarget(state, cache, width, height) {
140
42
  }
141
43
  return target;
142
44
  }
143
- // Cache rendering uses a second render state over the screen state's GPU device. Backend resources
144
- // that must remain visible while that cache state walks a subtree are owned by the screen state.
145
- export function getWgpuRenderCacheScreenState(state) {
146
- return _cacheStateScreen.get(state) ?? state;
147
- }
148
45
  export function getWgpuRenderCacheTarget(state, cache) {
149
- return getTargets(state).get(cache) ?? null;
46
+ return _renderCacheTargets.get(state)?.get(cache) ?? null;
150
47
  }
151
48
  /**
152
49
  * Bakes `source`'s subtree into its cache target using the offscreen `cacheState`, then records
153
50
  * the transform that places the result back in scene space. Returns whether a bake happened —
154
51
  * the offscreen state's own dirtiness decides it (honoring its sceneGraphSyncPolicy), so this is
155
- * cheap to call every frame. Because the bake runs on the shared GPU device, the screen state's
156
- * cached GPU state is reset afterward so it re-establishes cleanly on its next draw.
52
+ * cheap to call every frame. Because the bake runs on the shared GPU device, it can composite its
53
+ * owned target in the owner's frame without acquiring presentation capability itself.
157
54
  */
158
- export function refreshWgpuRenderCache(cacheState, cache, source, options) {
159
- const screenState = getWgpuRenderCacheScreenState(cacheState);
160
- const cacheRuntime = getWgpuRenderStateRuntime(cacheState);
161
- const screenRuntime = getWgpuRenderStateRuntime(screenState);
162
- const ownsFrame = screenRuntime.commandEncoder === null;
163
- if (ownsFrame)
164
- beginWgpuFrame(screenState);
165
- // The bake records into the screen state's live, per-frame command encoder and render pass.
166
- // createWgpuCacheState captured those once at setup — stale now, since webgpu rebuilds them every
167
- // frame — so sync them here. When no application frame is active, beginWgpuFrame gives this bake a
168
- // standalone encoder that is submitted below; callers may therefore refresh either inside or outside
169
- // their visible frame, matching the GL/cache API contract.
170
- cacheRuntime.commandEncoder = screenRuntime.commandEncoder;
171
- cacheRuntime.renderPass = screenRuntime.renderPass;
172
- cacheRuntime.canvasTextureView = screenRuntime.canvasTextureView;
173
- cacheRuntime.canvasViewCleared = screenRuntime.canvasViewCleared;
174
- cacheRuntime.depthStencilTexture = screenRuntime.depthStencilTexture;
175
- cacheRuntime.depthStencilView = screenRuntime.depthStencilView;
176
- cacheRuntime.depthStencilWidth = screenRuntime.depthStencilWidth;
177
- cacheRuntime.depthStencilHeight = screenRuntime.depthStencilHeight;
178
- // The cache state shares the screen state's uniform ring buffer (createWgpuCacheState aliases
179
- // uniformBuffer/uniformData). Continue from the screen's current cursor so the bake's draws claim
180
- // a region the screen render won't overwrite — otherwise both start at 0, the later screen writes
181
- // clobber the bake's uniforms, and the baked subtree draws with corrupted transforms.
182
- cacheRuntime.uniformOffset = screenRuntime.uniformOffset;
183
- const padding = options?.padding ?? 0;
184
- const minWidth = options?.minWidth ?? 1;
185
- const minHeight = options?.minHeight ?? 1;
186
- computeNodeBoundsRectangle(_bounds, source, source);
187
- const { width, height } = computeRenderTargetSize(_targetSize, _bounds, padding, minWidth, minHeight);
188
- const existing = getWgpuRenderCacheTarget(screenState, cache);
189
- const resized = existing === null || existing.width !== width || existing.height !== height;
190
- const target = ensureWgpuRenderCacheTarget(screenState, cache, width, height);
191
- computeScene2DRenderTargetTransform(_renderTransform, source, _bounds, padding, padding);
192
- computeRenderCacheTransform(cache.transform, _bounds, padding, padding);
193
- // Wgpu render targets store content for a bottom-left UV origin (what drawWgpuRenderTargetResult's
194
- // V-flip expects on composite), so bake with a Y-inverted render transform — unlike the Gl backend,
195
- // whose framebuffer convention needs no inversion.
196
- _yInvert.d = -1;
197
- _yInvert.ty = target.height;
198
- multiplyMatrix(_bakeTransform, _yInvert, _renderTransform);
199
- // Reclaim the bake state's buffer pool from the start of this bake; the previous bake's submit
200
- // has been queued, so its slots are safe to reuse.
201
- cacheRuntime.quadBatchWriterBufferCursor = 0;
202
- // The pass clears to transparent by default (target.clearColors is empty); the Y-inverted bake
203
- // transform is a display-object draw concern, set explicitly rather than carried by the pass.
204
- beginWgpuRenderPass(cacheState, target);
205
- setWgpuRenderTransform2D(cacheState, _bakeTransform);
206
- const dirty = prepareScene2DRender(cacheState, source);
207
- if (dirty || resized) {
208
- renderWgpuScene2D(cacheState, source);
209
- }
210
- endWgpuRenderPass(cacheState);
211
- // endWgpuRenderPass reopened a fresh canvas pass on the cache state — hand the live encoder
212
- // and pass back to the screen state so its subsequent draws continue in the same frame.
213
- screenRuntime.commandEncoder = cacheRuntime.commandEncoder;
214
- screenRuntime.renderPass = cacheRuntime.renderPass;
215
- screenRuntime.canvasTextureView = cacheRuntime.canvasTextureView;
216
- screenRuntime.canvasViewCleared = cacheRuntime.canvasViewCleared;
217
- screenRuntime.currentBlendMode = null;
218
- // Advance the screen's cursor past the bake's uniform writes so its subsequent draws don't
219
- // overwrite them in the shared ring buffer.
220
- screenRuntime.uniformOffset = cacheRuntime.uniformOffset;
221
- if (ownsFrame)
222
- submitWgpuRenderPass(screenState);
223
- return dirty || resized;
55
+ export function refreshWgpuRenderCache(ownerState, cacheState, cache, source, options) {
56
+ return withWgpuFrameBorrow(ownerState, cacheState, () => {
57
+ const padding = options?.padding ?? 0;
58
+ const minWidth = options?.minWidth ?? 1;
59
+ const minHeight = options?.minHeight ?? 1;
60
+ computeNodeBoundsRectangle(_bounds, source, source);
61
+ const { width, height } = computeRenderTargetSize(_targetSize, _bounds, padding, minWidth, minHeight);
62
+ const existing = getWgpuRenderCacheTarget(ownerState, cache);
63
+ const resized = existing === null || existing.width !== width || existing.height !== height;
64
+ const target = ensureWgpuRenderCacheTarget(ownerState, cache, width, height);
65
+ computeScene2DRenderTargetTransform(_renderTransform, source, _bounds, padding, padding);
66
+ computeRenderCacheTransform(cache.transform, _bounds, padding, padding);
67
+ _yInvert.d = -1;
68
+ _yInvert.ty = target.height;
69
+ multiplyMatrix(_bakeTransform, _yInvert, _renderTransform);
70
+ beginWgpuRenderPass(cacheState, target);
71
+ try {
72
+ setWgpuRenderTransform2D(cacheState, _bakeTransform);
73
+ const dirty = prepareScene2DRender(cacheState, source);
74
+ if (dirty || resized)
75
+ renderWgpuScene2D(cacheState, source);
76
+ return dirty || resized;
77
+ }
78
+ finally {
79
+ endWgpuRenderPass(cacheState);
80
+ }
81
+ });
224
82
  }
225
83
  export function releaseWgpuRenderCache(state, cache) {
226
- const targets = getTargets(state);
84
+ const targets = _renderCacheTargets.get(state);
85
+ if (targets === undefined)
86
+ return;
227
87
  const target = targets.get(cache);
228
88
  if (target === undefined)
229
89
  return;
@@ -235,7 +95,7 @@ function drawWgpuRenderCache(state, renderProxy) {
235
95
  const cache = getRenderProxyCache(state, renderProxy.source);
236
96
  if (cache === null)
237
97
  return;
238
- const target = getTargets(state).get(cache);
98
+ const target = _renderCacheTargets.get(state)?.get(cache);
239
99
  if (target === undefined)
240
100
  return;
241
101
  // Drain pending batched geometry before the immediate composite quad. Like every other
@@ -250,11 +110,21 @@ function drawWgpuRenderCache(state, renderProxy) {
250
110
  function getTargets(state) {
251
111
  let targets = _renderCacheTargets.get(state);
252
112
  if (targets === undefined) {
253
- targets = new WeakMap();
113
+ targets = new Map();
254
114
  _renderCacheTargets.set(state, targets);
115
+ registerWgpuRenderStateTeardown(state, destroyOwnedWgpuRenderCacheTargets);
255
116
  }
256
117
  return targets;
257
118
  }
119
+ function destroyOwnedWgpuRenderCacheTargets(state) {
120
+ const targets = _renderCacheTargets.get(state);
121
+ if (targets === undefined)
122
+ return;
123
+ for (const target of targets.values())
124
+ destroyWgpuRenderTarget(state, target);
125
+ targets.clear();
126
+ _renderCacheTargets.delete(state);
127
+ }
258
128
  export const defaultWgpuRenderCacheRenderer = {
259
129
  createData: noopRendererData,
260
130
  submit: drawWgpuRenderCache,
@@ -262,8 +132,6 @@ export const defaultWgpuRenderCacheRenderer = {
262
132
  // The screen state owns each cache's target, keyed by the handle, so one handle can be
263
133
  // composited by several states without the handle carrying a backend resource.
264
134
  const _renderCacheTargets = new WeakMap();
265
- // Links an offscreen cache state back to the screen state whose targets it bakes into.
266
- const _cacheStateScreen = new WeakMap();
267
135
  const _bounds = createRectangle();
268
136
  const _renderTransform = createMatrix();
269
137
  const _bakeTransform = createMatrix();
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuCache.js","sourceRoot":"","sources":["../src/wgpuCache.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuCache.js","sourceRoot":"","sources":["../src/wgpuCache.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuClipContours.d.ts","sourceRoot":"","sources":["../src/wgpuClipContours.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAA4B,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAsC/G,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAuBhE;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,EACxC,OAAO,EAAE,WAAW,EACpB,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,GAC/B,IAAI,CA+BN"}
1
+ {"version":3,"file":"wgpuClipContours.d.ts","sourceRoot":"","sources":["../src/wgpuClipContours.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,WAAW,EAA4B,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAsC/G,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAuBhE;AAED,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,EACxC,OAAO,EAAE,WAAW,EACpB,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,GAC/B,IAAI,CA+BN"}
@@ -1,4 +1,4 @@
1
- import { getWgpuRenderStateRuntime, retireWgpuBuffer } from '@flighthq/render-wgpu/contract';
1
+ import { getWgpuRenderStateRuntime, getWgpuSurfaceRenderExtent, retireWgpuBuffer, } from '@flighthq/render-wgpu/contract';
2
2
  import { flushWgpuQuadBatchWriter } from './wgpuQuadBatchWriter';
3
3
  // Wgpu contour clip via stencil nesting — the Wgpu counterpart to webglClipContours. A path
4
4
  // ClipRegion is realized by stamping its covered pixels into the stencil buffer, then content draws in
@@ -87,7 +87,7 @@ export function pushWgpuClipContours(state, contours, winding, worldTransform) {
87
87
  }
88
88
  function createClipContourUniformBuffer(state, t) {
89
89
  const runtime = getWgpuRenderStateRuntime(state);
90
- const viewport = runtime.renderTargetViewport ?? state.canvas;
90
+ const viewport = runtime.renderTargetViewport ?? getWgpuSurfaceRenderExtent(state);
91
91
  const iw = 2 / viewport.width;
92
92
  const ih = 2 / viewport.height;
93
93
  // Column-major mat3x3f = projection · worldTransform, mapping clip-local points to clip space exactly
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuClipContours.js","sourceRoot":"","sources":["../src/wgpuClipContours.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wgpuClipContours.js","sourceRoot":"","sources":["../src/wgpuClipContours.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,0BAA0B,EAC1B,gBAAgB,GACjB,MAAM,gCAAgC,CAAC;AAGxC,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEjE,4FAA4F;AAC5F,uGAAuG;AACvG,uGAAuG;AACvG,mGAAmG;AACnG,WAAW;AACX,EAAE;AACF,mGAAmG;AACnG,iGAAiG;AACjG,sGAAsG;AACtG,wGAAwG;AACxG,yGAAyG;AACzG,4EAA4E;AAC5E,EAAE;AACF,oGAAoG;AACpG,yGAAyG;AACzG,mGAAmG;AACnG,mGAAmG;AACnG,EAAE;AACF,yGAAyG;AACzG,wGAAwG;AAExG,MAAM,SAAS,GAAG,UAAU,CAAC;;;;;;;;CAQ5B,CAAC;AAEF,4GAA4G;AAC5G,MAAM,kBAAkB,GAAG,EAAE,CAAC;AAE9B,MAAM,UAAU,mBAAmB,CAAC,KAAsB;IACxD,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,KAAK,GAAG,OAAO,CAAC,gBAAgB,CAAC,GAAG,EAAE,CAAC;IAC7C,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC;IAErE,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC;IAChC,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;QACpD,iGAAiG;QACjG,iFAAiF;QACjF,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACtC,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QAC5C,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAC1C,IAAI,KAAK,CAAC,WAAW,GAAG,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,2FAA2F;QAC3F,4EAA4E;QAC5E,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QAC5C,gBAAgB,CAAC,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,KAAsB,EACtB,QAAwC,EACxC,OAAoB,EACpB,cAAgC;IAEhC,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,wBAAwB,CAAC,KAAK,CAAC,CAAC;IAChC,8FAA8F;IAC9F,KAAK,OAAO,CAAC;IAEb,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,MAAM,KAAK,GAAG,OAAO,CAAC,gBAAgB,CAAC;IACvC,MAAM,SAAS,GAAG,0BAA0B,CAAC,KAAK,CAAC,CAAC;IACpD,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,6BAA6B,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACrF,MAAM,aAAa,GAAG,8BAA8B,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;IAC5E,MAAM,SAAS,GAAG,MAAM,CAAC,eAAe,CAAC;QACvC,MAAM,EAAE,SAAS,CAAC,eAAe;QACjC,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC;KAC/D,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC;IAChC,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAClB,oGAAoG;QACpG,oGAAoG;QACpG,sGAAsG;QACtG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QAChC,IAAI,CAAC,eAAe,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;QACtC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,WAAW,GAAG,CAAC;YAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;IAC9F,sGAAsG;IACtG,OAAO,CAAC,gBAAgB,GAAG,KAAK,GAAG,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,8BAA8B,CAAC,KAAsB,EAAE,CAAmB;IACjF,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,QAAQ,GAAG,OAAO,CAAC,oBAAoB,IAAI,0BAA0B,CAAC,KAAK,CAAC,CAAC;IACnF,MAAM,EAAE,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC;IAC9B,MAAM,EAAE,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC/B,sGAAsG;IACtG,mGAAmG;IACnG,mEAAmE;IACnE,MAAM,CAAC,GAAG,IAAI,YAAY,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACT,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACT,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACrB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACtB,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;IACV,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC;QACvC,IAAI,EAAE,kBAAkB;QACxB,KAAK,EAAE,cAAc,CAAC,OAAO,GAAG,cAAc,CAAC,QAAQ;KACxD,CAAC,CAAC;IACH,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7C,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,qGAAqG;AACrG,oGAAoG;AACpG,SAAS,6BAA6B,CACpC,KAAsB,EACtB,QAAwC;IAExC,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC;QACvC,IAAI,UAAU,GAAG,CAAC;YAAE,SAAS;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,IAAI,CAAC,IAAI,CACP,OAAO,CAAC,CAAC,CAAC,EACV,OAAO,CAAC,CAAC,CAAC,EACV,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,EACd,OAAO,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAClB,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EACpB,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CACzB,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IACrC,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC;QAC7C,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC;QAClC,KAAK,EAAE,cAAc,CAAC,MAAM,GAAG,cAAc,CAAC,QAAQ;KACvD,CAAC,CAAC;IACH,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC;QAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IAC/E,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAsB;IACxD,MAAM,OAAO,GAAG,yBAAyB,CAAC,KAAK,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,OAAO,CAAC,kBAAkB,IAAI,KAAK,CAAC,MAAM,CAAC;IAC1D,MAAM,KAAK,GAAG,OAAO,CAAC,oBAAoB,IAAI,CAAC,OAAO,CAAC,oBAAoB,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC;IACzF,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IAE5C,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,kBAAkB,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IAC9D,MAAM,eAAe,GAAG,MAAM,CAAC,qBAAqB,CAAC;QACnD,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC;KAC1F,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,CAAC,oBAAoB,CAAC,EAAE,gBAAgB,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IACpF,MAAM,aAAa,GAA4B;QAC7C,EAAE,WAAW,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,cAAc,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,EAAE;KACxF,CAAC;IAEF,MAAM,IAAI,GAAG,CAAC,MAA2B,EAAqB,EAAE,CAC9D,MAAM,CAAC,oBAAoB,CAAC;QAC1B,MAAM;QACN,MAAM,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE;QACjE,QAAQ,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE;QAChF,SAAS,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE;QAC1D,YAAY,EAAE;YACZ,MAAM,EAAE,sBAAsB;YAC9B,iBAAiB,EAAE,KAAK;YACxB,YAAY,EAAE,QAAQ;YACtB,YAAY,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE;YAC/E,WAAW,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE;YAC9E,eAAe,EAAE,IAAI;YACrB,gBAAgB,EAAE,IAAI;SACvB;KACF,CAAC,CAAC;IAEL,MAAM,SAAS,GAA6B;QAC1C,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC;QAC9B,KAAK,EAAE,IAAI,CAAC,iBAAiB,CAAC;QAC9B,eAAe;KAChB,CAAC;IACF,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAC7B,OAAO,SAAS,CAAC;AACnB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"wgpuClipRectangle.d.ts","sourceRoot":"","sources":["../src/wgpuClipRectangle.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,eAAe,EAAmB,MAAM,0BAA0B,CAAC;AAI5G,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAoBjE;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,EAC7B,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,GAC9B,IAAI,CAmBN"}
1
+ {"version":3,"file":"wgpuClipRectangle.d.ts","sourceRoot":"","sources":["../src/wgpuClipRectangle.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,eAAe,EAAmB,MAAM,0BAA0B,CAAC;AAI5G,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,eAAe,GAAG,IAAI,CAoBjE;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,eAAe,EACtB,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,EAC7B,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,GAC9B,IAAI,CAmBN"}