@codexo/exojs 0.9.0 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (242) hide show
  1. package/CHANGELOG.md +127 -0
  2. package/README.md +14 -14
  3. package/dist/esm/core/Application.d.ts +25 -6
  4. package/dist/esm/core/Application.js +42 -8
  5. package/dist/esm/core/Application.js.map +1 -1
  6. package/dist/esm/core/Perf.d.ts +23 -0
  7. package/dist/esm/core/Perf.js +49 -0
  8. package/dist/esm/core/Perf.js.map +1 -0
  9. package/dist/esm/core/Scene.d.ts +8 -8
  10. package/dist/esm/core/Scene.js +7 -7
  11. package/dist/esm/core/Scene.js.map +1 -1
  12. package/dist/esm/core/SceneManager.js +2 -2
  13. package/dist/esm/core/SceneManager.js.map +1 -1
  14. package/dist/esm/core/SceneNode.d.ts +0 -3
  15. package/dist/esm/core/SceneNode.js +0 -9
  16. package/dist/esm/core/SceneNode.js.map +1 -1
  17. package/dist/esm/core/capabilities.d.ts +2 -0
  18. package/dist/esm/core/capabilities.js +15 -0
  19. package/dist/esm/core/capabilities.js.map +1 -1
  20. package/dist/esm/core/dev.d.ts +21 -0
  21. package/dist/esm/core/dev.js +18 -0
  22. package/dist/esm/core/dev.js.map +1 -0
  23. package/dist/esm/core/index.d.ts +1 -0
  24. package/dist/esm/core/types.d.ts +1 -1
  25. package/dist/esm/core/utils.d.ts +12 -0
  26. package/dist/esm/core/utils.js +18 -1
  27. package/dist/esm/core/utils.js.map +1 -1
  28. package/dist/esm/index.js +14 -3
  29. package/dist/esm/index.js.map +1 -1
  30. package/dist/esm/particles/ParticleSystem.d.ts +8 -5
  31. package/dist/esm/particles/ParticleSystem.js +9 -5
  32. package/dist/esm/particles/ParticleSystem.js.map +1 -1
  33. package/dist/esm/particles/distributions/{Gradient.d.ts → ColorGradient.d.ts} +5 -5
  34. package/dist/esm/particles/distributions/{Gradient.js → ColorGradient.js} +5 -5
  35. package/dist/esm/particles/distributions/ColorGradient.js.map +1 -0
  36. package/dist/esm/particles/distributions/Distribution.d.ts +2 -2
  37. package/dist/esm/particles/distributions/index.d.ts +2 -2
  38. package/dist/esm/particles/gpu/ParticleGpuState.js +1 -1
  39. package/dist/esm/particles/modules/AlphaFadeOverLifetime.d.ts +2 -2
  40. package/dist/esm/particles/modules/AlphaFadeOverLifetime.js +5 -1
  41. package/dist/esm/particles/modules/AlphaFadeOverLifetime.js.map +1 -1
  42. package/dist/esm/particles/modules/ColorOverLifetime.d.ts +3 -3
  43. package/dist/esm/particles/modules/ColorOverLifetime.js.map +1 -1
  44. package/dist/esm/particles/modules/ColorOverSpeed.d.ts +3 -3
  45. package/dist/esm/particles/modules/ColorOverSpeed.js.map +1 -1
  46. package/dist/esm/particles/modules/UpdateModule.d.ts +2 -2
  47. package/dist/esm/particles/modules/UpdateModule.js +1 -1
  48. package/dist/esm/particles/modules/WgslContribution.d.ts +2 -2
  49. package/dist/esm/rendering/Camera.d.ts +33 -0
  50. package/dist/esm/rendering/Camera.js +38 -0
  51. package/dist/esm/rendering/Camera.js.map +1 -0
  52. package/dist/esm/rendering/Container.d.ts +5 -24
  53. package/dist/esm/rendering/Container.js +8 -71
  54. package/dist/esm/rendering/Container.js.map +1 -1
  55. package/dist/esm/rendering/Drawable.d.ts +8 -10
  56. package/dist/esm/rendering/Drawable.js +12 -20
  57. package/dist/esm/rendering/Drawable.js.map +1 -1
  58. package/dist/esm/rendering/RenderBackend.d.ts +18 -0
  59. package/dist/esm/rendering/RenderNode.d.ts +81 -8
  60. package/dist/esm/rendering/RenderNode.js +121 -144
  61. package/dist/esm/rendering/RenderNode.js.map +1 -1
  62. package/dist/esm/rendering/RenderTarget.d.ts +13 -0
  63. package/dist/esm/rendering/RenderTarget.js +13 -0
  64. package/dist/esm/rendering/RenderTarget.js.map +1 -1
  65. package/dist/esm/rendering/RenderTargetPass.js +17 -0
  66. package/dist/esm/rendering/RenderTargetPass.js.map +1 -1
  67. package/dist/esm/rendering/RenderingContext.d.ts +87 -0
  68. package/dist/esm/rendering/RenderingContext.js +157 -0
  69. package/dist/esm/rendering/RenderingContext.js.map +1 -0
  70. package/dist/esm/rendering/TransformBuffer.d.ts +82 -0
  71. package/dist/esm/rendering/TransformBuffer.js +180 -0
  72. package/dist/esm/rendering/TransformBuffer.js.map +1 -0
  73. package/dist/esm/rendering/filters/WebGpuShaderFilter.js +5 -12
  74. package/dist/esm/rendering/filters/WebGpuShaderFilter.js.map +1 -1
  75. package/dist/esm/rendering/geometry/Geometry.d.ts +40 -0
  76. package/dist/esm/rendering/geometry/Geometry.js +228 -0
  77. package/dist/esm/rendering/geometry/Geometry.js.map +1 -0
  78. package/dist/esm/rendering/geometry/GeometryAttribute.d.ts +32 -0
  79. package/dist/esm/rendering/geometry/QuadGeometry.d.ts +5 -0
  80. package/dist/esm/rendering/gradient/Gradient.d.ts +67 -0
  81. package/dist/esm/rendering/gradient/Gradient.js +160 -0
  82. package/dist/esm/rendering/gradient/Gradient.js.map +1 -0
  83. package/dist/esm/rendering/gradient/LinearGradient.d.ts +18 -0
  84. package/dist/esm/rendering/gradient/LinearGradient.js +49 -0
  85. package/dist/esm/rendering/gradient/LinearGradient.js.map +1 -0
  86. package/dist/esm/rendering/gradient/RadialGradient.d.ts +18 -0
  87. package/dist/esm/rendering/gradient/RadialGradient.js +44 -0
  88. package/dist/esm/rendering/gradient/RadialGradient.js.map +1 -0
  89. package/dist/esm/rendering/index.d.ts +16 -2
  90. package/dist/esm/rendering/material/Material.d.ts +114 -0
  91. package/dist/esm/rendering/material/Material.js +111 -0
  92. package/dist/esm/rendering/material/Material.js.map +1 -0
  93. package/dist/esm/rendering/material/MaterialKey.d.ts +18 -0
  94. package/dist/esm/rendering/material/MaterialKey.js +82 -0
  95. package/dist/esm/rendering/material/MaterialKey.js.map +1 -0
  96. package/dist/esm/rendering/material/MeshMaterial.d.ts +16 -0
  97. package/dist/esm/rendering/material/MeshMaterial.js +21 -0
  98. package/dist/esm/rendering/material/MeshMaterial.js.map +1 -0
  99. package/dist/esm/rendering/{mesh/MeshShader.d.ts → material/ShaderSource.d.ts} +29 -62
  100. package/dist/esm/rendering/{mesh/MeshShader.js → material/ShaderSource.js} +35 -62
  101. package/dist/esm/rendering/material/ShaderSource.js.map +1 -0
  102. package/dist/esm/rendering/material/SpriteMaterial.d.ts +15 -0
  103. package/dist/esm/rendering/material/SpriteMaterial.js +20 -0
  104. package/dist/esm/rendering/material/SpriteMaterial.js.map +1 -0
  105. package/dist/esm/rendering/mesh/Mesh.d.ts +29 -12
  106. package/dist/esm/rendering/mesh/Mesh.js +122 -3
  107. package/dist/esm/rendering/mesh/Mesh.js.map +1 -1
  108. package/dist/esm/rendering/pass/RenderPassCoordinator.d.ts +63 -0
  109. package/dist/esm/rendering/pass/RenderPassDescriptor.d.ts +48 -0
  110. package/dist/esm/rendering/pass/RenderPassDescriptor.js +16 -0
  111. package/dist/esm/rendering/pass/RenderPassDescriptor.js.map +1 -0
  112. package/dist/esm/rendering/plan/RenderCommand.d.ts +86 -0
  113. package/dist/esm/rendering/plan/RenderCommand.js +127 -0
  114. package/dist/esm/rendering/plan/RenderCommand.js.map +1 -0
  115. package/dist/esm/rendering/plan/RenderEffectExecutor.d.ts +10 -0
  116. package/dist/esm/rendering/plan/RenderEffectExecutor.js +159 -0
  117. package/dist/esm/rendering/plan/RenderEffectExecutor.js.map +1 -0
  118. package/dist/esm/rendering/plan/RenderInstruction.d.ts +51 -0
  119. package/dist/esm/rendering/plan/RenderInstruction.js +45 -0
  120. package/dist/esm/rendering/plan/RenderInstruction.js.map +1 -0
  121. package/dist/esm/rendering/plan/RenderPlan.d.ts +23 -0
  122. package/dist/esm/rendering/plan/RenderPlan.js +12 -0
  123. package/dist/esm/rendering/plan/RenderPlan.js.map +1 -0
  124. package/dist/esm/rendering/plan/RenderPlanBuilder.d.ts +31 -0
  125. package/dist/esm/rendering/plan/RenderPlanBuilder.js +242 -0
  126. package/dist/esm/rendering/plan/RenderPlanBuilder.js.map +1 -0
  127. package/dist/esm/rendering/plan/RenderPlanOptimizer.d.ts +10 -0
  128. package/dist/esm/rendering/plan/RenderPlanOptimizer.js +180 -0
  129. package/dist/esm/rendering/plan/RenderPlanOptimizer.js.map +1 -0
  130. package/dist/esm/rendering/plan/RenderPlanPlayer.d.ts +13 -0
  131. package/dist/esm/rendering/plan/RenderPlanPlayer.js +107 -0
  132. package/dist/esm/rendering/plan/RenderPlanPlayer.js.map +1 -0
  133. package/dist/esm/rendering/plan/RenderScope.d.ts +70 -0
  134. package/dist/esm/rendering/plan/RenderScope.js +16 -0
  135. package/dist/esm/rendering/plan/RenderScope.js.map +1 -0
  136. package/dist/esm/rendering/plan/playRenderTree.d.ts +4 -0
  137. package/dist/esm/rendering/plan/playRenderTree.js +19 -0
  138. package/dist/esm/rendering/plan/playRenderTree.js.map +1 -0
  139. package/dist/esm/rendering/primitives/Graphics.d.ts +70 -5
  140. package/dist/esm/rendering/primitives/Graphics.js +172 -14
  141. package/dist/esm/rendering/primitives/Graphics.js.map +1 -1
  142. package/dist/esm/rendering/sprite/Sprite.d.ts +22 -1
  143. package/dist/esm/rendering/sprite/Sprite.js +33 -2
  144. package/dist/esm/rendering/sprite/Sprite.js.map +1 -1
  145. package/dist/esm/rendering/sprite/spriteMaterialSources.d.ts +41 -0
  146. package/dist/esm/rendering/sprite/spriteMaterialSources.js +149 -0
  147. package/dist/esm/rendering/sprite/spriteMaterialSources.js.map +1 -0
  148. package/dist/esm/rendering/text/BitmapText.d.ts +2 -0
  149. package/dist/esm/rendering/text/BitmapText.js +8 -1
  150. package/dist/esm/rendering/text/BitmapText.js.map +1 -1
  151. package/dist/esm/rendering/text/BmFont.js +3 -0
  152. package/dist/esm/rendering/text/BmFont.js.map +1 -1
  153. package/dist/esm/rendering/text/GlyphSdf.d.ts +14 -0
  154. package/dist/esm/rendering/text/GlyphSdf.js +41 -11
  155. package/dist/esm/rendering/text/GlyphSdf.js.map +1 -1
  156. package/dist/esm/rendering/text/TextStyle.d.ts +6 -1
  157. package/dist/esm/rendering/text/TextStyle.js +1 -1
  158. package/dist/esm/rendering/text/TextStyle.js.map +1 -1
  159. package/dist/esm/rendering/texture/DataTexture.d.ts +5 -0
  160. package/dist/esm/rendering/texture/DataTexture.js +7 -0
  161. package/dist/esm/rendering/texture/DataTexture.js.map +1 -1
  162. package/dist/esm/rendering/texture/RenderTexture.js.map +1 -1
  163. package/dist/esm/rendering/video/Video.d.ts +3 -7
  164. package/dist/esm/rendering/video/Video.js +3 -8
  165. package/dist/esm/rendering/video/Video.js.map +1 -1
  166. package/dist/esm/rendering/webgl2/WebGl2Backend.d.ts +62 -0
  167. package/dist/esm/rendering/webgl2/WebGl2Backend.js +352 -21
  168. package/dist/esm/rendering/webgl2/WebGl2Backend.js.map +1 -1
  169. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.d.ts +22 -2
  170. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js +404 -112
  171. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js.map +1 -1
  172. package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.d.ts +8 -0
  173. package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.js +8 -0
  174. package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.js.map +1 -1
  175. package/dist/esm/rendering/webgl2/WebGl2PassCoordinator.d.ts +57 -0
  176. package/dist/esm/rendering/webgl2/WebGl2PassCoordinator.js +79 -0
  177. package/dist/esm/rendering/webgl2/WebGl2PassCoordinator.js.map +1 -0
  178. package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.d.ts +14 -0
  179. package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js +257 -78
  180. package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js.map +1 -1
  181. package/dist/esm/rendering/webgl2/WebGl2StencilClipper.d.ts +34 -0
  182. package/dist/esm/rendering/webgl2/WebGl2StencilClipper.js +169 -0
  183. package/dist/esm/rendering/webgl2/WebGl2StencilClipper.js.map +1 -0
  184. package/dist/esm/rendering/webgl2/WebGl2TextRenderer.d.ts +7 -0
  185. package/dist/esm/rendering/webgl2/WebGl2TextRenderer.js +11 -0
  186. package/dist/esm/rendering/webgl2/WebGl2TextRenderer.js.map +1 -1
  187. package/dist/esm/rendering/webgl2/glsl/mesh.frag.js +1 -1
  188. package/dist/esm/rendering/webgl2/glsl/mesh.vert.js +1 -1
  189. package/dist/esm/rendering/webgl2/glsl/sprite.vert.js +1 -1
  190. package/dist/esm/rendering/webgl2/glsl/stencil-clip.frag.js +4 -0
  191. package/dist/esm/rendering/webgl2/glsl/stencil-clip.frag.js.map +1 -0
  192. package/dist/esm/rendering/webgl2/glsl/stencil-clip.vert.js +4 -0
  193. package/dist/esm/rendering/webgl2/glsl/stencil-clip.vert.js.map +1 -0
  194. package/dist/esm/rendering/webgl2/glsl/text-color.frag.js +1 -1
  195. package/dist/esm/rendering/webgpu/WebGpuBackend.d.ts +63 -0
  196. package/dist/esm/rendering/webgpu/WebGpuBackend.js +180 -19
  197. package/dist/esm/rendering/webgpu/WebGpuBackend.js.map +1 -1
  198. package/dist/esm/rendering/webgpu/WebGpuMaskCompositor.js +22 -17
  199. package/dist/esm/rendering/webgpu/WebGpuMaskCompositor.js.map +1 -1
  200. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.d.ts +24 -0
  201. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js +524 -98
  202. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js.map +1 -1
  203. package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.d.ts +7 -0
  204. package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js +24 -22
  205. package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js.map +1 -1
  206. package/dist/esm/rendering/webgpu/WebGpuPassCoordinator.d.ts +141 -0
  207. package/dist/esm/rendering/webgpu/WebGpuPassCoordinator.js +270 -0
  208. package/dist/esm/rendering/webgpu/WebGpuPassCoordinator.js.map +1 -0
  209. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.d.ts +25 -1
  210. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js +430 -76
  211. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js.map +1 -1
  212. package/dist/esm/rendering/webgpu/WebGpuStencilClipper.d.ts +57 -0
  213. package/dist/esm/rendering/webgpu/WebGpuStencilClipper.js +257 -0
  214. package/dist/esm/rendering/webgpu/WebGpuStencilClipper.js.map +1 -0
  215. package/dist/esm/rendering/webgpu/WebGpuStencilState.d.ts +14 -0
  216. package/dist/esm/rendering/webgpu/WebGpuStencilState.js +36 -0
  217. package/dist/esm/rendering/webgpu/WebGpuStencilState.js.map +1 -0
  218. package/dist/esm/rendering/webgpu/WebGpuTextRenderer.d.ts +7 -0
  219. package/dist/esm/rendering/webgpu/WebGpuTextRenderer.js +30 -19
  220. package/dist/esm/rendering/webgpu/WebGpuTextRenderer.js.map +1 -1
  221. package/dist/esm/rendering/webgpu/WebGpuTransformStorage.d.ts +48 -0
  222. package/dist/esm/rendering/webgpu/WebGpuTransformStorage.js +103 -0
  223. package/dist/esm/rendering/webgpu/WebGpuTransformStorage.js.map +1 -0
  224. package/dist/esm/resources/JsonStore.d.ts +18 -0
  225. package/dist/esm/resources/JsonStore.js +62 -0
  226. package/dist/esm/resources/JsonStore.js.map +1 -0
  227. package/dist/esm/resources/Loader.js +1 -1
  228. package/dist/esm/resources/Loader.js.map +1 -1
  229. package/dist/esm/resources/factories/ImageFactory.d.ts +14 -8
  230. package/dist/esm/resources/factories/ImageFactory.js +13 -6
  231. package/dist/esm/resources/factories/ImageFactory.js.map +1 -1
  232. package/dist/esm/resources/factories/TextureFactory.d.ts +4 -4
  233. package/dist/esm/resources/factories/TextureFactory.js +8 -4
  234. package/dist/esm/resources/factories/TextureFactory.js.map +1 -1
  235. package/dist/esm/resources/index.d.ts +1 -0
  236. package/dist/exo.esm.js +6326 -2350
  237. package/dist/exo.esm.js.map +1 -1
  238. package/package.json +34 -24
  239. package/dist/esm/particles/distributions/Gradient.js.map +0 -1
  240. package/dist/esm/rendering/mesh/MeshShader.js.map +0 -1
  241. package/dist/esm/vendor/webgl-debug.js +0 -1160
  242. package/dist/esm/vendor/webgl-debug.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"WebGl2MeshRenderer.js","sources":["../../../../../src/rendering/webgl2/WebGl2MeshRenderer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebGl2MeshRenderer.js","sources":["../../../../../src/rendering/webgl2/WebGl2MeshRenderer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -2,6 +2,14 @@ import type { ParticleSystem } from '@/particles/ParticleSystem';
2
2
  import { AbstractWebGl2Renderer } from './AbstractWebGl2Renderer';
3
3
  import type { WebGl2Backend } from './WebGl2Backend';
4
4
  export declare class WebGl2ParticleRenderer extends AbstractWebGl2Renderer<ParticleSystem> {
5
+ /**
6
+ * The particle system's transform is bound as a `u_systemTransform` uniform and
7
+ * each particle is positioned system-locally, so this renderer never reads the
8
+ * shared {@link TransformBuffer}; the render-group upload boundary skips writing
9
+ * transform records for particle draws.
10
+ * @internal
11
+ */
12
+ readonly _consumesSharedTransform = false;
5
13
  private readonly _shader;
6
14
  private readonly _batchSize;
7
15
  private readonly _instanceData;
@@ -36,6 +36,14 @@ const wordsPerInstance = instanceStrideBytes / Uint32Array.BYTES_PER_ELEMENT;
36
36
  const indicesPerQuad = 6;
37
37
  const quadIndices = new Uint16Array([0, 1, 2, 0, 2, 3]);
38
38
  class WebGl2ParticleRenderer extends AbstractWebGl2Renderer {
39
+ /**
40
+ * The particle system's transform is bound as a `u_systemTransform` uniform and
41
+ * each particle is positioned system-locally, so this renderer never reads the
42
+ * shared {@link TransformBuffer}; the render-group upload boundary skips writing
43
+ * transform records for particle draws.
44
+ * @internal
45
+ */
46
+ _consumesSharedTransform = false;
39
47
  _shader;
40
48
  _batchSize;
41
49
  _instanceData;
@@ -1 +1 @@
1
- {"version":3,"file":"WebGl2ParticleRenderer.js","sources":["../../../../../src/rendering/webgl2/WebGl2ParticleRenderer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebGl2ParticleRenderer.js","sources":["../../../../../src/rendering/webgl2/WebGl2ParticleRenderer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import type { Color } from '@/core/Color';
2
+ import type { Matrix } from '@/math/Matrix';
3
+ import type { Rectangle } from '@/math/Rectangle';
4
+ import type { Geometry } from '../geometry/Geometry';
5
+ import type { RenderPassCoordinator } from '../pass/RenderPassCoordinator';
6
+ import { type RenderPassDescriptor, type RenderPassLoad } from '../pass/RenderPassDescriptor';
7
+ import type { RenderTarget } from '../RenderTarget';
8
+ import type { View } from '../View';
9
+ /**
10
+ * The minimal surface of {@link WebGl2Backend} that the coordinator drives.
11
+ * Declared structurally so the coordinator stays decoupled from the (large)
12
+ * backend class and is trivially unit-testable with a mock — no GL context
13
+ * required.
14
+ * @internal
15
+ */
16
+ export interface WebGl2PassBackend {
17
+ readonly renderTarget: RenderTarget;
18
+ readonly view: View;
19
+ setRenderTarget(target: RenderTarget | null): unknown;
20
+ setView(view: View | null): unknown;
21
+ clear(color?: Color): unknown;
22
+ flush(): unknown;
23
+ pushScissorRect(bounds: Rectangle): unknown;
24
+ popScissorRect(): unknown;
25
+ pushStencilClip(shape: Geometry, transform: Matrix): unknown;
26
+ popStencilClip(): unknown;
27
+ }
28
+ /**
29
+ * WebGL2 implementation of {@link RenderPassCoordinator}.
30
+ *
31
+ * WebGL2 render-pass behaviour is ambient GL state — a bound framebuffer,
32
+ * viewport, scissor and stencil state — so this coordinator is a thin adapter
33
+ * over the backend's existing state-transition methods. It owns no GPU pass
34
+ * object: "begin a pass" means set target + view (+ clear); "end a pass" means
35
+ * flush the active renderer.
36
+ *
37
+ * Inline stencil clips delegate straight to the backend's stencil stack and
38
+ * never count as a render pass — no {@link RenderTargetPass}, no `renderPasses`
39
+ * stat — matching the existing inline scissor / stencil behaviour.
40
+ * @internal
41
+ */
42
+ export declare class WebGl2PassCoordinator implements RenderPassCoordinator {
43
+ private readonly _backend;
44
+ private _stencilEnabled;
45
+ constructor(backend: WebGl2PassBackend);
46
+ get activeTarget(): RenderTarget;
47
+ get activeView(): View;
48
+ readonly hasActivePass = true;
49
+ beginPass(descriptor: RenderPassDescriptor): void;
50
+ endPass(): void;
51
+ withChildPass(descriptor: RenderPassDescriptor, body: () => void): void;
52
+ pushScissorRect(bounds: Rectangle): void;
53
+ popScissorRect(): void;
54
+ pushStencilClip(shape: Geometry, transform: Matrix): void;
55
+ popStencilClip(): void;
56
+ resolveLoad(_target: RenderTarget, clearRequested: boolean): RenderPassLoad;
57
+ }
@@ -0,0 +1,79 @@
1
+ import { StencilAttachmentMode } from '../pass/RenderPassDescriptor.js';
2
+
3
+ /**
4
+ * WebGL2 implementation of {@link RenderPassCoordinator}.
5
+ *
6
+ * WebGL2 render-pass behaviour is ambient GL state — a bound framebuffer,
7
+ * viewport, scissor and stencil state — so this coordinator is a thin adapter
8
+ * over the backend's existing state-transition methods. It owns no GPU pass
9
+ * object: "begin a pass" means set target + view (+ clear); "end a pass" means
10
+ * flush the active renderer.
11
+ *
12
+ * Inline stencil clips delegate straight to the backend's stencil stack and
13
+ * never count as a render pass — no {@link RenderTargetPass}, no `renderPasses`
14
+ * stat — matching the existing inline scissor / stencil behaviour.
15
+ * @internal
16
+ */
17
+ class WebGl2PassCoordinator {
18
+ _backend;
19
+ _stencilEnabled = false;
20
+ constructor(backend) {
21
+ this._backend = backend;
22
+ }
23
+ get activeTarget() {
24
+ return this._backend.renderTarget;
25
+ }
26
+ get activeView() {
27
+ return this._backend.view;
28
+ }
29
+ // WebGL2 always has an ambient bound target, so a pass is always "active".
30
+ hasActivePass = true;
31
+ beginPass(descriptor) {
32
+ this._backend.setRenderTarget(descriptor.target);
33
+ this._backend.setView(descriptor.view);
34
+ this._stencilEnabled = descriptor.stencil === StencilAttachmentMode.Enabled;
35
+ if (descriptor.load === 'clear') {
36
+ this._backend.clear(descriptor.clearColor ?? undefined);
37
+ }
38
+ }
39
+ endPass() {
40
+ this._backend.flush();
41
+ }
42
+ withChildPass(descriptor, body) {
43
+ const previousTarget = this._backend.renderTarget;
44
+ const previousView = this._backend.view;
45
+ const previousStencilEnabled = this._stencilEnabled;
46
+ this.beginPass(descriptor);
47
+ try {
48
+ body();
49
+ }
50
+ finally {
51
+ // The 10a flush-order fix makes setRenderTarget flush the child batch into
52
+ // the child target before the bind switches back, so no manual flush is
53
+ // needed here to keep the child's draws out of the restored target.
54
+ this._backend.setRenderTarget(previousTarget);
55
+ this._backend.setView(previousView);
56
+ this._stencilEnabled = previousStencilEnabled;
57
+ }
58
+ }
59
+ pushScissorRect(bounds) {
60
+ this._backend.pushScissorRect(bounds);
61
+ }
62
+ popScissorRect() {
63
+ this._backend.popScissorRect();
64
+ }
65
+ pushStencilClip(shape, transform) {
66
+ this._backend.pushStencilClip(shape, transform);
67
+ }
68
+ popStencilClip() {
69
+ this._backend.popStencilClip();
70
+ }
71
+ resolveLoad(_target, clearRequested) {
72
+ // WebGL2 framebuffer contents persist across binds, so "load" is the natural
73
+ // default; only an explicit clear request forces a clear.
74
+ return clearRequested ? 'clear' : 'load';
75
+ }
76
+ }
77
+
78
+ export { WebGl2PassCoordinator };
79
+ //# sourceMappingURL=WebGl2PassCoordinator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebGl2PassCoordinator.js","sources":["../../../../../src/rendering/webgl2/WebGl2PassCoordinator.ts"],"sourcesContent":[null],"names":[],"mappings":";;AA8BA;;;;;;;;;;;;;AAaG;MACU,qBAAqB,CAAA;AACf,IAAA,QAAQ;IACjB,eAAe,GAAG,KAAK;AAE/B,IAAA,WAAA,CAAmB,OAA0B,EAAA;AAC3C,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;IACzB;AAEA,IAAA,IAAW,YAAY,GAAA;AACrB,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY;IACnC;AAEA,IAAA,IAAW,UAAU,GAAA;AACnB,QAAA,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI;IAC3B;;IAGgB,aAAa,GAAG,IAAI;AAE7B,IAAA,SAAS,CAAC,UAAgC,EAAA;QAC/C,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC;QAChD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;QACtC,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,OAAO,KAAK,qBAAqB,CAAC,OAAO;AAE3E,QAAA,IAAI,UAAU,CAAC,IAAI,KAAK,OAAO,EAAE;YAC/B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,IAAI,SAAS,CAAC;QACzD;IACF;IAEO,OAAO,GAAA;AACZ,QAAA,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE;IACvB;IAEO,aAAa,CAAC,UAAgC,EAAE,IAAgB,EAAA;AACrE,QAAA,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY;AACjD,QAAA,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI;AACvC,QAAA,MAAM,sBAAsB,GAAG,IAAI,CAAC,eAAe;AAEnD,QAAA,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC;AAE1B,QAAA,IAAI;AACF,YAAA,IAAI,EAAE;QACR;gBAAU;;;;AAIR,YAAA,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,cAAc,CAAC;AAC7C,YAAA,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC;AACnC,YAAA,IAAI,CAAC,eAAe,GAAG,sBAAsB;QAC/C;IACF;AAEO,IAAA,eAAe,CAAC,MAAiB,EAAA;AACtC,QAAA,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC;IACvC;IAEO,cAAc,GAAA;AACnB,QAAA,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE;IAChC;IAEO,eAAe,CAAC,KAAe,EAAE,SAAiB,EAAA;QACvD,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC;IACjD;IAEO,cAAc,GAAA;AACnB,QAAA,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE;IAChC;IAEO,WAAW,CAAC,OAAqB,EAAE,cAAuB,EAAA;;;QAG/D,OAAO,cAAc,GAAG,OAAO,GAAG,MAAM;IAC1C;AACD;;;;"}
@@ -10,7 +10,13 @@ export declare class WebGl2SpriteRenderer extends AbstractWebGl2Renderer<Sprite>
10
10
  private readonly _activeTextures;
11
11
  private readonly _textureSlots;
12
12
  private _slotCount;
13
+ private readonly _customShaders;
14
+ private readonly _slotScratches;
15
+ private readonly _transformUnitScratch;
16
+ private _currentMaterial;
17
+ private _currentBaseTexture;
13
18
  private _instanceCount;
19
+ private _maxNodeIndex;
14
20
  private _currentBlendMode;
15
21
  private _currentView;
16
22
  private _currentViewId;
@@ -23,6 +29,14 @@ export declare class WebGl2SpriteRenderer extends AbstractWebGl2Renderer<Sprite>
23
29
  protected onConnect(backend: WebGl2Backend): void;
24
30
  protected onDisconnect(): void;
25
31
  destroy(): void;
32
+ /** Default multi-texture path: rotate the base texture through 8 slots. */
33
+ private _renderDefault;
34
+ /** Custom-material path: single base texture on unit 0, instanced. */
35
+ private _renderCustom;
36
+ private _packInstance;
37
+ private _getOrCreateCustomShader;
38
+ private _bindCustomUniforms;
39
+ private _marshalUniformValue;
26
40
  private _resetSlots;
27
41
  private _createConnection;
28
42
  private _createBufferRuntime;