@codexo/exojs 0.4.0 → 0.6.2

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 (151) hide show
  1. package/CHANGELOG.md +499 -163
  2. package/README.md +156 -141
  3. package/dist/esm/audio/AudioAnalyser.d.ts +0 -1
  4. package/dist/esm/audio/AudioAnalyser.js +0 -2
  5. package/dist/esm/audio/AudioAnalyser.js.map +1 -1
  6. package/dist/esm/core/Application.d.ts +4 -4
  7. package/dist/esm/core/Application.js +19 -19
  8. package/dist/esm/core/Application.js.map +1 -1
  9. package/dist/esm/core/Scene.d.ts +59 -24
  10. package/dist/esm/core/Scene.js +60 -18
  11. package/dist/esm/core/Scene.js.map +1 -1
  12. package/dist/esm/core/SceneManager.js +15 -9
  13. package/dist/esm/core/SceneManager.js.map +1 -1
  14. package/dist/esm/core/SceneNode.d.ts +45 -5
  15. package/dist/esm/core/SceneNode.js +136 -7
  16. package/dist/esm/core/SceneNode.js.map +1 -1
  17. package/dist/esm/index.js +6 -4
  18. package/dist/esm/index.js.map +1 -1
  19. package/dist/esm/math/index.d.ts +0 -1
  20. package/dist/esm/rendering/CallbackRenderPass.d.ts +3 -3
  21. package/dist/esm/rendering/CallbackRenderPass.js +2 -2
  22. package/dist/esm/rendering/CallbackRenderPass.js.map +1 -1
  23. package/dist/esm/rendering/Container.d.ts +10 -11
  24. package/dist/esm/rendering/Container.js +5 -5
  25. package/dist/esm/rendering/Container.js.map +1 -1
  26. package/dist/esm/rendering/Drawable.d.ts +2 -2
  27. package/dist/esm/rendering/Drawable.js +5 -5
  28. package/dist/esm/rendering/Drawable.js.map +1 -1
  29. package/dist/esm/rendering/{SceneRenderRuntime.d.ts → RenderBackend.d.ts} +21 -3
  30. package/dist/esm/rendering/RenderNode.d.ts +41 -5
  31. package/dist/esm/rendering/RenderNode.js +89 -24
  32. package/dist/esm/rendering/RenderNode.js.map +1 -1
  33. package/dist/esm/rendering/RenderPass.d.ts +2 -2
  34. package/dist/esm/rendering/RenderTargetPass.d.ts +3 -3
  35. package/dist/esm/rendering/RenderTargetPass.js +9 -9
  36. package/dist/esm/rendering/RenderTargetPass.js.map +1 -1
  37. package/dist/esm/rendering/Renderer.d.ts +3 -3
  38. package/dist/esm/rendering/RendererRegistry.d.ts +13 -7
  39. package/dist/esm/rendering/RendererRegistry.js +18 -10
  40. package/dist/esm/rendering/RendererRegistry.js.map +1 -1
  41. package/dist/esm/rendering/filters/BlurFilter.d.ts +2 -2
  42. package/dist/esm/rendering/filters/BlurFilter.js +5 -5
  43. package/dist/esm/rendering/filters/BlurFilter.js.map +1 -1
  44. package/dist/esm/rendering/filters/ColorFilter.d.ts +2 -2
  45. package/dist/esm/rendering/filters/ColorFilter.js +3 -3
  46. package/dist/esm/rendering/filters/ColorFilter.js.map +1 -1
  47. package/dist/esm/rendering/filters/Filter.d.ts +2 -2
  48. package/dist/esm/rendering/index.d.ts +9 -6
  49. package/dist/esm/rendering/mesh/Mesh.d.ts +69 -0
  50. package/dist/esm/rendering/mesh/Mesh.js +114 -0
  51. package/dist/esm/rendering/mesh/Mesh.js.map +1 -0
  52. package/dist/esm/rendering/primitives/Graphics.d.ts +3 -3
  53. package/dist/esm/rendering/primitives/Graphics.js.map +1 -1
  54. package/dist/esm/rendering/shader/Shader.d.ts +3 -3
  55. package/dist/esm/rendering/shader/Shader.js +10 -10
  56. package/dist/esm/rendering/text/Text.d.ts +2 -2
  57. package/dist/esm/rendering/text/Text.js +2 -2
  58. package/dist/esm/rendering/text/Text.js.map +1 -1
  59. package/dist/esm/rendering/texture/Sampler.d.ts +0 -3
  60. package/dist/esm/rendering/texture/Sampler.js +5 -7
  61. package/dist/esm/rendering/texture/Sampler.js.map +1 -1
  62. package/dist/esm/rendering/types.d.ts +4 -0
  63. package/dist/esm/rendering/types.js +4 -0
  64. package/dist/esm/rendering/types.js.map +1 -1
  65. package/dist/esm/rendering/video/Video.d.ts +2 -2
  66. package/dist/esm/rendering/video/Video.js +2 -2
  67. package/dist/esm/rendering/video/Video.js.map +1 -1
  68. package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.d.ts +2 -2
  69. package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.js +35 -11
  70. package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.js.map +1 -1
  71. package/dist/esm/rendering/webgl2/AbstractWebGl2Renderer.d.ts +13 -13
  72. package/dist/esm/rendering/webgl2/AbstractWebGl2Renderer.js +20 -20
  73. package/dist/esm/rendering/webgl2/AbstractWebGl2Renderer.js.map +1 -1
  74. package/dist/esm/rendering/webgl2/{WebGl2RenderManager.d.ts → WebGl2Backend.d.ts} +15 -12
  75. package/dist/esm/rendering/webgl2/{WebGl2RenderManager.js → WebGl2Backend.js} +63 -38
  76. package/dist/esm/rendering/webgl2/WebGl2Backend.js.map +1 -0
  77. package/dist/esm/rendering/webgl2/WebGl2MaskCompositor.d.ts +31 -0
  78. package/dist/esm/rendering/webgl2/WebGl2MaskCompositor.js +186 -0
  79. package/dist/esm/rendering/webgl2/WebGl2MaskCompositor.js.map +1 -0
  80. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.d.ts +27 -0
  81. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js +242 -0
  82. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js.map +1 -0
  83. package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.d.ts +38 -7
  84. package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.js +281 -90
  85. package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.js.map +1 -1
  86. package/dist/esm/rendering/webgl2/WebGl2PrimitiveRenderer.d.ts +2 -2
  87. package/dist/esm/rendering/webgl2/WebGl2PrimitiveRenderer.js +15 -10
  88. package/dist/esm/rendering/webgl2/WebGl2PrimitiveRenderer.js.map +1 -1
  89. package/dist/esm/rendering/webgl2/WebGl2ShaderMappings.js +12 -0
  90. package/dist/esm/rendering/webgl2/WebGl2ShaderMappings.js.map +1 -1
  91. package/dist/esm/rendering/webgl2/WebGl2ShaderProgram.d.ts +2 -0
  92. package/dist/esm/rendering/webgl2/{WebGl2ShaderRuntime.js → WebGl2ShaderProgram.js} +58 -18
  93. package/dist/esm/rendering/webgl2/WebGl2ShaderProgram.js.map +1 -0
  94. package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.d.ts +26 -7
  95. package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js +260 -62
  96. package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js.map +1 -1
  97. package/dist/esm/rendering/webgl2/WebGl2VertexArrayObject.d.ts +24 -1
  98. package/dist/esm/rendering/webgl2/WebGl2VertexArrayObject.js +6 -2
  99. package/dist/esm/rendering/webgl2/WebGl2VertexArrayObject.js.map +1 -1
  100. package/dist/esm/rendering/webgl2/glsl/mask-compose.frag.js +4 -0
  101. package/dist/esm/rendering/webgl2/glsl/mask-compose.frag.js.map +1 -0
  102. package/dist/esm/rendering/webgl2/glsl/mask-compose.vert.js +4 -0
  103. package/dist/esm/rendering/webgl2/glsl/mask-compose.vert.js.map +1 -0
  104. package/dist/esm/rendering/webgl2/glsl/mesh.frag.js +4 -0
  105. package/dist/esm/rendering/webgl2/glsl/mesh.frag.js.map +1 -0
  106. package/dist/esm/rendering/webgl2/glsl/mesh.vert.js +4 -0
  107. package/dist/esm/rendering/webgl2/glsl/mesh.vert.js.map +1 -0
  108. package/dist/esm/rendering/webgl2/glsl/particle.vert.js +1 -1
  109. package/dist/esm/rendering/webgl2/glsl/sprite.frag.js +1 -1
  110. package/dist/esm/rendering/webgl2/glsl/sprite.vert.js +1 -1
  111. package/dist/esm/rendering/webgpu/AbstractWebGpuRenderer.d.ts +9 -9
  112. package/dist/esm/rendering/webgpu/AbstractWebGpuRenderer.js +18 -18
  113. package/dist/esm/rendering/webgpu/AbstractWebGpuRenderer.js.map +1 -1
  114. package/dist/esm/rendering/webgpu/{WebGpuRenderManager.d.ts → WebGpuBackend.d.ts} +17 -14
  115. package/dist/esm/rendering/webgpu/{WebGpuRenderManager.js → WebGpuBackend.js} +77 -40
  116. package/dist/esm/rendering/webgpu/WebGpuBackend.js.map +1 -0
  117. package/dist/esm/rendering/webgpu/WebGpuMaskCompositor.d.ts +37 -0
  118. package/dist/esm/rendering/webgpu/WebGpuMaskCompositor.js +279 -0
  119. package/dist/esm/rendering/webgpu/WebGpuMaskCompositor.js.map +1 -0
  120. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.d.ts +40 -0
  121. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js +439 -0
  122. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js.map +1 -0
  123. package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.d.ts +2 -3
  124. package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js +65 -82
  125. package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js.map +1 -1
  126. package/dist/esm/rendering/webgpu/WebGpuPrimitiveRenderer.d.ts +2 -3
  127. package/dist/esm/rendering/webgpu/WebGpuPrimitiveRenderer.js +24 -25
  128. package/dist/esm/rendering/webgpu/WebGpuPrimitiveRenderer.js.map +1 -1
  129. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.d.ts +28 -13
  130. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js +410 -382
  131. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js.map +1 -1
  132. package/dist/esm/resources/Loader.js +5 -3
  133. package/dist/esm/resources/Loader.js.map +1 -1
  134. package/dist/exo.esm.js +3574 -1696
  135. package/dist/exo.esm.js.map +1 -1
  136. package/package.json +20 -11
  137. package/dist/esm/math/Transformable.d.ts +0 -47
  138. package/dist/esm/math/Transformable.js +0 -140
  139. package/dist/esm/math/Transformable.js.map +0 -1
  140. package/dist/esm/rendering/webgl2/WebGl2RenderManager.js.map +0 -1
  141. package/dist/esm/rendering/webgl2/WebGl2RendererRuntime.d.ts +0 -15
  142. package/dist/esm/rendering/webgl2/WebGl2ShaderRuntime.d.ts +0 -2
  143. package/dist/esm/rendering/webgl2/WebGl2ShaderRuntime.js.map +0 -1
  144. package/dist/esm/rendering/webgpu/WebGpuRenderManager.js.map +0 -1
  145. package/dist/esm/rendering/webgpu/WebGpuRendererRuntime.d.ts +0 -8
  146. package/dist/exo.esm.min.js +0 -2
  147. package/dist/exo.esm.min.js.map +0 -1
  148. package/dist/exo.global.js +0 -17328
  149. package/dist/exo.global.js.map +0 -1
  150. package/dist/exo.global.min.js +0 -2
  151. package/dist/exo.global.min.js.map +0 -1
@@ -3,18 +3,16 @@ class Sampler {
3
3
  _sampler;
4
4
  _scaleMode;
5
5
  _wrapMode;
6
- _premultiplyAlpha;
7
- _generateMipMap;
8
- _flipY;
9
6
  constructor(gl, options) {
10
- const { scaleMode, wrapMode, premultiplyAlpha, generateMipMap, flipY } = options;
7
+ const { scaleMode, wrapMode } = options;
11
8
  this._context = gl;
12
9
  this._sampler = gl.createSampler();
13
10
  this._scaleMode = scaleMode;
14
11
  this._wrapMode = wrapMode;
15
- this._premultiplyAlpha = premultiplyAlpha;
16
- this._generateMipMap = generateMipMap;
17
- this._flipY = flipY;
12
+ // SamplerOptions also carries premultiplyAlpha / generateMipMap /
13
+ // flipY for the Texture's pixel-store path; the GL sampler object
14
+ // itself only cares about scale and wrap modes, so we don't store
15
+ // the texture-level fields here.
18
16
  this.updateWrapModeParameters();
19
17
  this.updateScaleModeParameters();
20
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Sampler.js","sources":["../../../../../src/rendering/texture/Sampler.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Sampler.js","sources":["../../../../../src/rendering/texture/Sampler.ts"],"sourcesContent":[null],"names":[],"mappings":"MAUa,OAAO,CAAA;AAEC,IAAA,QAAQ;AACR,IAAA,QAAQ;AACjB,IAAA,UAAU;AACV,IAAA,SAAS;IAEjB,WAAA,CAAmB,EAA0B,EAAE,OAAuB,EAAA;AAClE,QAAA,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO;AAEvC,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE;AAClB,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,aAAa,EAAE;AAClC,QAAA,IAAI,CAAC,UAAU,GAAG,SAAS;AAC3B,QAAA,IAAI,CAAC,SAAS,GAAG,QAAQ;;;;;QAOzB,IAAI,CAAC,wBAAwB,EAAE;QAC/B,IAAI,CAAC,yBAAyB,EAAE;IACpC;AAEA,IAAA,IAAW,OAAO,GAAA;QACd,OAAO,IAAI,CAAC,QAAQ;IACxB;AAEA,IAAA,IAAW,SAAS,GAAA;QAChB,OAAO,IAAI,CAAC,UAAU;IAC1B;IAEA,IAAW,SAAS,CAAC,SAAqB,EAAA;AACtC,QAAA,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC;IAChC;AAEA,IAAA,IAAW,QAAQ,GAAA;QACf,OAAO,IAAI,CAAC,SAAS;IACzB;IAEA,IAAW,QAAQ,CAAC,QAAmB,EAAA;AACnC,QAAA,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;IAC9B;AAEO,IAAA,YAAY,CAAC,SAAqB,EAAA;AACrC,QAAA,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE;AAC/B,YAAA,IAAI,CAAC,UAAU,GAAG,SAAS;YAC3B,IAAI,CAAC,yBAAyB,EAAE;QACpC;AAEA,QAAA,OAAO,IAAI;IACf;AAEO,IAAA,WAAW,CAAC,QAAmB,EAAA;AAClC,QAAA,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,EAAE;AAC7B,YAAA,IAAI,CAAC,SAAS,GAAG,QAAQ;YACzB,IAAI,CAAC,wBAAwB,EAAE;QACnC;AAEA,QAAA,OAAO,IAAI;IACf;AAEO,IAAA,IAAI,CAAC,WAAmB,EAAA;QAC3B,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,QAAQ,CAAC;AAErD,QAAA,OAAO,IAAI;IACf;IAEO,OAAO,GAAA;QACV,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC;IAC9C;IAEQ,yBAAyB,GAAA;AAC7B,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;AACxB,YAAA,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC;QAC5E;AAEA,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ;AAExB,QAAA,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,kBAAkB,EAAE,IAAI,CAAC,UAAU,CAAC;AAC3E,QAAA,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,kBAAkB,EAAE,IAAI,CAAC,UAAU,CAAC;IAC/E;IAEQ,wBAAwB,GAAA;AAC5B,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;AACxB,YAAA,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC;QAC5E;AAEA,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,QAAQ;AAExB,QAAA,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC;AACtE,QAAA,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC;IAC1E;AACH;;;;"}
@@ -53,6 +53,10 @@ export declare enum ShaderPrimitives {
53
53
  IntVec2 = 35667,
54
54
  IntVec3 = 35668,
55
55
  IntVec4 = 35669,
56
+ UnsignedInt = 5125,
57
+ UnsignedIntVec2 = 36294,
58
+ UnsignedIntVec3 = 36295,
59
+ UnsignedIntVec4 = 36296,
56
60
  Float = 5126,
57
61
  FloatVec2 = 35664,
58
62
  FloatVec3 = 35665,
@@ -61,6 +61,10 @@ var ShaderPrimitives;
61
61
  ShaderPrimitives[ShaderPrimitives["IntVec2"] = 35667] = "IntVec2";
62
62
  ShaderPrimitives[ShaderPrimitives["IntVec3"] = 35668] = "IntVec3";
63
63
  ShaderPrimitives[ShaderPrimitives["IntVec4"] = 35669] = "IntVec4";
64
+ ShaderPrimitives[ShaderPrimitives["UnsignedInt"] = 5125] = "UnsignedInt";
65
+ ShaderPrimitives[ShaderPrimitives["UnsignedIntVec2"] = 36294] = "UnsignedIntVec2";
66
+ ShaderPrimitives[ShaderPrimitives["UnsignedIntVec3"] = 36295] = "UnsignedIntVec3";
67
+ ShaderPrimitives[ShaderPrimitives["UnsignedIntVec4"] = 36296] = "UnsignedIntVec4";
64
68
  ShaderPrimitives[ShaderPrimitives["Float"] = 5126] = "Float";
65
69
  ShaderPrimitives[ShaderPrimitives["FloatVec2"] = 35664] = "FloatVec2";
66
70
  ShaderPrimitives[ShaderPrimitives["FloatVec3"] = 35665] = "FloatVec3";
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sources":["../../../../src/rendering/types.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sources":["../../../../src/rendering/types.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { Sprite } from '../sprite/Sprite';
2
2
  import { Signal } from '@/core/Signal';
3
3
  import type { PlaybackOptions } from '@/core/types';
4
- import type { SceneRenderRuntime } from '../SceneRenderRuntime';
4
+ import type { RenderBackend } from '../RenderBackend';
5
5
  import type { SamplerOptions } from '../texture/Sampler';
6
6
  import type { Media } from '@/audio/Media';
7
7
  export declare class Video extends Sprite implements Media {
@@ -50,7 +50,7 @@ export declare class Video extends Sprite implements Media {
50
50
  getTime(): number;
51
51
  setTime(time: number): this;
52
52
  setMuted(muted: boolean): this;
53
- render(renderManager: SceneRenderRuntime): this;
53
+ render(backend: RenderBackend): this;
54
54
  updateTexture(): this;
55
55
  destroy(): void;
56
56
  private _onVideoMetadataUpdated;
@@ -206,11 +206,11 @@ class Video extends Sprite {
206
206
  }
207
207
  return this;
208
208
  }
209
- render(renderManager) {
209
+ render(backend) {
210
210
  if (this.visible) {
211
211
  this._markTextureDirtyIfPlaybackAdvanced();
212
212
  this.updateTexture();
213
- super.render(renderManager);
213
+ super.render(backend);
214
214
  }
215
215
  return this;
216
216
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Video.js","sources":["../../../../../src/rendering/video/Video.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Video.js","sources":["../../../../../src/rendering/video/Video.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import { WebGl2RenderBuffer, type WebGl2RenderBufferRuntime } from './WebGl2Rend
5
5
  import type { Texture } from '../texture/Texture';
6
6
  import type { BlendModes } from '@/rendering/types';
7
7
  import type { View } from '../View';
8
- import type { WebGl2RendererRuntime } from './WebGl2RendererRuntime';
8
+ import type { WebGl2Backend } from './WebGl2Backend';
9
9
  import type { RenderTexture } from '../texture/RenderTexture';
10
10
  import type { Drawable } from '../Drawable';
11
11
  interface ManagedBufferState {
@@ -37,7 +37,7 @@ export declare abstract class AbstractWebGl2BatchedRenderer extends AbstractWebG
37
37
  protected constructor(batchSize: number, attributeCount: number, vertexSource: string, fragmentSource: string);
38
38
  flush(): void;
39
39
  destroy(): void;
40
- protected onConnect(runtime: WebGl2RendererRuntime): void;
40
+ protected onConnect(backend: WebGl2Backend): void;
41
41
  protected onDisconnect(): void;
42
42
  abstract render(drawable: Drawable): void;
43
43
  protected abstract createVao(gl: WebGL2RenderingContext, indexBuffer: WebGl2RenderBuffer, vertexBuffer: WebGl2RenderBuffer): WebGl2VertexArrayObject;
@@ -1,6 +1,6 @@
1
1
  import { AbstractWebGl2Renderer } from './AbstractWebGl2Renderer.js';
2
2
  import { Shader } from '../shader/Shader.js';
3
- import { createWebGl2ShaderRuntime } from './WebGl2ShaderRuntime.js';
3
+ import { createWebGl2ShaderProgram } from './WebGl2ShaderProgram.js';
4
4
  import { WebGl2RenderBuffer } from './WebGl2RenderBuffer.js';
5
5
  import { createQuadIndices } from '../utils.js';
6
6
  import { BufferTypes, BufferUsage } from '../types.js';
@@ -33,24 +33,24 @@ class AbstractWebGl2BatchedRenderer extends AbstractWebGl2Renderer {
33
33
  this.shader = new Shader(vertexSource, fragmentSource);
34
34
  }
35
35
  flush() {
36
- const runtime = this.getRuntimeOrNull();
36
+ const backend = this.getBackendOrNull();
37
37
  const vertexBuffer = this.vertexBuffer;
38
38
  const vao = this.vao;
39
- if (this.batchIndex === 0 || runtime === null || vertexBuffer === null || vao === null) {
39
+ if (this.batchIndex === 0 || backend === null || vertexBuffer === null || vao === null) {
40
40
  return;
41
41
  }
42
- const view = runtime.view;
42
+ const view = backend.view;
43
43
  if (this.currentView !== view || this.currentViewId !== view.updateId) {
44
44
  this.currentView = view;
45
45
  this.currentViewId = view.updateId;
46
46
  this.updateView(view);
47
47
  }
48
48
  this.shader.sync();
49
- runtime.bindVertexArrayObject(vao);
49
+ backend.bindVertexArrayObject(vao);
50
50
  vertexBuffer.upload(this.float32View.subarray(0, this.batchIndex * this.attributeCount));
51
51
  vao.draw(this.batchIndex * 6, 0);
52
- runtime.stats.batches++;
53
- runtime.stats.drawCalls++;
52
+ backend.stats.batches++;
53
+ backend.stats.drawCalls++;
54
54
  this.batchIndex = 0;
55
55
  }
56
56
  destroy() {
@@ -61,14 +61,23 @@ class AbstractWebGl2BatchedRenderer extends AbstractWebGl2Renderer {
61
61
  this.currentView = null;
62
62
  this.connection = null;
63
63
  }
64
- onConnect(runtime) {
65
- const gl = runtime.context;
66
- this.shader.connect(createWebGl2ShaderRuntime(gl));
64
+ onConnect(backend) {
65
+ const gl = backend.context;
66
+ // Order matters here: shader.connect() issues compile/link to the
67
+ // GL driver but defers the COMPILE_STATUS / LINK_STATUS query (and
68
+ // attribute / uniform extraction) until shader.sync(). With
69
+ // KHR_parallel_shader_compile the driver may service compile on
70
+ // a worker thread in parallel with the buffer setup that follows.
71
+ // Once we need attribute locations (createVao), we sync — at which
72
+ // point compile is hopefully already finished and the eventual
73
+ // blocking status query becomes a no-op.
74
+ this.shader.connect(createWebGl2ShaderProgram(gl));
67
75
  this.connection = this.createConnection(gl);
68
76
  this.indexBuffer = new WebGl2RenderBuffer(BufferTypes.ElementArrayBuffer, this.indexData, BufferUsage.StaticDraw)
69
77
  .connect(this.createBufferRuntime(this.connection));
70
78
  this.vertexBuffer = new WebGl2RenderBuffer(BufferTypes.ArrayBuffer, this.vertexData, BufferUsage.DynamicDraw)
71
79
  .connect(this.createBufferRuntime(this.connection));
80
+ this.shader.sync();
72
81
  this.vao = this.createVao(gl, this.indexBuffer, this.vertexBuffer)
73
82
  .connect(this.createVaoRuntime(this.connection));
74
83
  }
@@ -142,8 +151,14 @@ class AbstractWebGl2BatchedRenderer extends AbstractWebGl2Renderer {
142
151
  attribute.buffer.bind();
143
152
  lastBuffer = attribute.buffer;
144
153
  }
145
- gl.vertexAttribPointer(attribute.location, attribute.size, attribute.type, attribute.normalized, attribute.stride, attribute.start);
154
+ if (attribute.integer) {
155
+ gl.vertexAttribIPointer(attribute.location, attribute.size, attribute.type, attribute.stride, attribute.start);
156
+ }
157
+ else {
158
+ gl.vertexAttribPointer(attribute.location, attribute.size, attribute.type, attribute.normalized, attribute.stride, attribute.start);
159
+ }
146
160
  gl.enableVertexAttribArray(attribute.location);
161
+ gl.vertexAttribDivisor(attribute.location, attribute.divisor);
147
162
  }
148
163
  if (vao.indexBuffer) {
149
164
  vao.indexBuffer.bind();
@@ -163,6 +178,15 @@ class AbstractWebGl2BatchedRenderer extends AbstractWebGl2Renderer {
163
178
  gl.drawArrays(type, start, size);
164
179
  }
165
180
  },
181
+ drawInstanced: (vao, count, start, instanceCount, type) => {
182
+ const gl = connection.gl;
183
+ if (vao.indexBuffer) {
184
+ gl.drawElementsInstanced(type, count, gl.UNSIGNED_SHORT, start, instanceCount);
185
+ }
186
+ else {
187
+ gl.drawArraysInstanced(type, start, count, instanceCount);
188
+ }
189
+ },
166
190
  destroy: (vao) => {
167
191
  connection.gl.deleteVertexArray(connection.vaoHandle);
168
192
  vao.disconnect();
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractWebGl2BatchedRenderer.js","sources":["../../../../../src/rendering/webgl2/AbstractWebGl2BatchedRenderer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractWebGl2BatchedRenderer.js","sources":["../../../../../src/rendering/webgl2/AbstractWebGl2BatchedRenderer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,44 +1,44 @@
1
1
  import { RenderBackendType } from '../RenderBackendType';
2
2
  import type { Drawable } from '../Drawable';
3
3
  import type { Renderer } from '../Renderer';
4
- import type { WebGl2RendererRuntime } from './WebGl2RendererRuntime';
4
+ import type { WebGl2Backend } from './WebGl2Backend';
5
5
  /**
6
6
  * Base class for WebGL2 renderers.
7
7
  *
8
8
  * Manages the connect/disconnect lifecycle and provides a safe
9
- * `getRuntime()` accessor that throws if the renderer is not connected.
9
+ * `getBackend()` accessor that throws if the renderer is not connected.
10
10
  *
11
11
  * Subclasses must implement:
12
- * - onConnect(runtime): set up GL resources
12
+ * - onConnect(backend): set up GL resources
13
13
  * - onDisconnect(): tear down GL resources
14
14
  * - render(drawable): batch or immediately draw the given drawable
15
15
  * - flush(): submit any batched draw calls to the GPU
16
16
  */
17
- export declare abstract class AbstractWebGl2Renderer<Target extends Drawable> implements Renderer<WebGl2RendererRuntime, Target> {
17
+ export declare abstract class AbstractWebGl2Renderer<Target extends Drawable> implements Renderer<WebGl2Backend, Target> {
18
18
  readonly backendType = RenderBackendType.WebGl2;
19
- private _runtime;
20
- connect(runtime: WebGl2RendererRuntime): void;
19
+ private _backend;
20
+ connect(backend: WebGl2Backend): void;
21
21
  disconnect(): void;
22
22
  abstract render(drawable: Target): void;
23
23
  abstract flush(): void;
24
24
  /**
25
- * Called once when the renderer is first connected to a runtime.
25
+ * Called once when the renderer is first connected to a backend.
26
26
  * Subclasses create GL resources here.
27
27
  */
28
- protected abstract onConnect(runtime: WebGl2RendererRuntime): void;
28
+ protected abstract onConnect(backend: WebGl2Backend): void;
29
29
  /**
30
- * Called when the renderer is disconnected from its runtime.
30
+ * Called when the renderer is disconnected from its backend.
31
31
  * Subclasses tear down GL resources here.
32
32
  */
33
33
  protected abstract onDisconnect(): void;
34
34
  /**
35
- * Safe accessor for the connected runtime.
35
+ * Safe accessor for the connected backend.
36
36
  * @throws Error if the renderer is not connected.
37
37
  */
38
- protected getRuntime(): WebGl2RendererRuntime;
38
+ protected getBackend(): WebGl2Backend;
39
39
  /**
40
- * Returns the connected runtime, or null if not connected.
40
+ * Returns the connected backend, or null if not connected.
41
41
  * Use this for conditional checks where disconnected state is expected.
42
42
  */
43
- protected getRuntimeOrNull(): WebGl2RendererRuntime | null;
43
+ protected getBackendOrNull(): WebGl2Backend | null;
44
44
  }
@@ -4,52 +4,52 @@ import { RenderBackendType } from '../RenderBackendType.js';
4
4
  * Base class for WebGL2 renderers.
5
5
  *
6
6
  * Manages the connect/disconnect lifecycle and provides a safe
7
- * `getRuntime()` accessor that throws if the renderer is not connected.
7
+ * `getBackend()` accessor that throws if the renderer is not connected.
8
8
  *
9
9
  * Subclasses must implement:
10
- * - onConnect(runtime): set up GL resources
10
+ * - onConnect(backend): set up GL resources
11
11
  * - onDisconnect(): tear down GL resources
12
12
  * - render(drawable): batch or immediately draw the given drawable
13
13
  * - flush(): submit any batched draw calls to the GPU
14
14
  */
15
15
  class AbstractWebGl2Renderer {
16
16
  backendType = RenderBackendType.WebGl2;
17
- _runtime = null;
18
- connect(runtime) {
19
- if (this._runtime !== null) {
17
+ _backend = null;
18
+ connect(backend) {
19
+ if (this._backend !== null) {
20
20
  return;
21
21
  }
22
- if (runtime.backendType !== RenderBackendType.WebGl2) {
23
- throw new Error(`${this.constructor.name} requires a WebGL2 runtime, `
24
- + `but received backendType ${String(runtime.backendType)}.`);
22
+ if (backend.backendType !== RenderBackendType.WebGl2) {
23
+ throw new Error(`${this.constructor.name} requires a WebGL2 backend, `
24
+ + `but received backendType ${String(backend.backendType)}.`);
25
25
  }
26
- this._runtime = runtime;
27
- this.onConnect(runtime);
26
+ this._backend = backend;
27
+ this.onConnect(backend);
28
28
  }
29
29
  disconnect() {
30
- if (this._runtime === null) {
30
+ if (this._backend === null) {
31
31
  return;
32
32
  }
33
33
  this.flush();
34
34
  this.onDisconnect();
35
- this._runtime = null;
35
+ this._backend = null;
36
36
  }
37
37
  /**
38
- * Safe accessor for the connected runtime.
38
+ * Safe accessor for the connected backend.
39
39
  * @throws Error if the renderer is not connected.
40
40
  */
41
- getRuntime() {
42
- if (this._runtime === null) {
43
- throw new Error(`${this.constructor.name} is not connected to a runtime.`);
41
+ getBackend() {
42
+ if (this._backend === null) {
43
+ throw new Error(`${this.constructor.name} is not connected to a backend.`);
44
44
  }
45
- return this._runtime;
45
+ return this._backend;
46
46
  }
47
47
  /**
48
- * Returns the connected runtime, or null if not connected.
48
+ * Returns the connected backend, or null if not connected.
49
49
  * Use this for conditional checks where disconnected state is expected.
50
50
  */
51
- getRuntimeOrNull() {
52
- return this._runtime;
51
+ getBackendOrNull() {
52
+ return this._backend;
53
53
  }
54
54
  }
55
55
 
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractWebGl2Renderer.js","sources":["../../../../../src/rendering/webgl2/AbstractWebGl2Renderer.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAKA;;;;;;;;;;;AAWG;MACmB,sBAAsB,CAAA;AAExB,IAAA,WAAW,GAAG,iBAAiB,CAAC,MAAM;IAE9C,QAAQ,GAAiC,IAAI;AAE9C,IAAA,OAAO,CAAC,OAA8B,EAAA;AACzC,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;YACxB;QACJ;QAEA,IAAI,OAAO,CAAC,WAAW,KAAK,iBAAiB,CAAC,MAAM,EAAE;YAClD,MAAM,IAAI,KAAK,CACX,CAAA,EAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA,4BAAA;kBACtB,CAAA,yBAAA,EAA4B,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA,CAAA,CAAG,CAC/D;QACL;AAEA,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;AACvB,QAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;IAC3B;IAEO,UAAU,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;YACxB;QACJ;QAEA,IAAI,CAAC,KAAK,EAAE;QACZ,IAAI,CAAC,YAAY,EAAE;AACnB,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;IACxB;AAiBA;;;AAGG;IACO,UAAU,GAAA;AAChB,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;YACxB,MAAM,IAAI,KAAK,CAAC,CAAA,EAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA,+BAAA,CAAiC,CAAC;QAC9E;QAEA,OAAO,IAAI,CAAC,QAAQ;IACxB;AAEA;;;AAGG;IACO,gBAAgB,GAAA;QACtB,OAAO,IAAI,CAAC,QAAQ;IACxB;AACH;;;;"}
1
+ {"version":3,"file":"AbstractWebGl2Renderer.js","sources":["../../../../../src/rendering/webgl2/AbstractWebGl2Renderer.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAKA;;;;;;;;;;;AAWG;MACmB,sBAAsB,CAAA;AAExB,IAAA,WAAW,GAAG,iBAAiB,CAAC,MAAM;IAE9C,QAAQ,GAAyB,IAAI;AAEtC,IAAA,OAAO,CAAC,OAAsB,EAAA;AACjC,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;YACxB;QACJ;QAEA,IAAI,OAAO,CAAC,WAAW,KAAK,iBAAiB,CAAC,MAAM,EAAE;YAClD,MAAM,IAAI,KAAK,CACX,CAAA,EAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA,4BAAA;kBACtB,CAAA,yBAAA,EAA4B,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA,CAAA,CAAG,CAC/D;QACL;AAEA,QAAA,IAAI,CAAC,QAAQ,GAAG,OAAO;AACvB,QAAA,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;IAC3B;IAEO,UAAU,GAAA;AACb,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;YACxB;QACJ;QAEA,IAAI,CAAC,KAAK,EAAE;QACZ,IAAI,CAAC,YAAY,EAAE;AACnB,QAAA,IAAI,CAAC,QAAQ,GAAG,IAAI;IACxB;AAiBA;;;AAGG;IACO,UAAU,GAAA;AAChB,QAAA,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;YACxB,MAAM,IAAI,KAAK,CAAC,CAAA,EAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA,+BAAA,CAAiC,CAAC;QAC9E;QAEA,OAAO,IAAI,CAAC,QAAQ;IACxB;AAEA;;;AAGG;IACO,gBAAgB,GAAA;QACtB,OAAO,IAAI,CAAC,QAAQ;IACxB;AACH;;;;"}
@@ -8,15 +8,15 @@ import { RendererRegistry } from '../RendererRegistry';
8
8
  import type { Rectangle } from '@/math/Rectangle';
9
9
  import type { RenderPass } from '../RenderPass';
10
10
  import type { Drawable } from '../Drawable';
11
- import type { WebGl2RendererRuntime } from './WebGl2RendererRuntime';
11
+ import type { RenderBackend } from '../RenderBackend';
12
12
  import type { Shader } from '../shader/Shader';
13
13
  import type { WebGl2VertexArrayObject } from './WebGl2VertexArrayObject';
14
14
  import type { View } from '../View';
15
15
  import type { Application } from '@/core/Application';
16
16
  import type { RenderStats } from '../RenderStats';
17
- export declare class WebGl2RenderManager implements WebGl2RendererRuntime {
17
+ export declare class WebGl2Backend implements RenderBackend {
18
18
  readonly backendType = RenderBackendType.WebGl2;
19
- readonly rendererRegistry: RendererRegistry<WebGl2RendererRuntime>;
19
+ readonly rendererRegistry: RendererRegistry<WebGl2Backend>;
20
20
  private readonly _context;
21
21
  private readonly _rootRenderTarget;
22
22
  private readonly _onContextLostHandler;
@@ -26,10 +26,12 @@ export declare class WebGl2RenderManager implements WebGl2RendererRuntime {
26
26
  private readonly _textureDestroyHandlers;
27
27
  private readonly _renderTargetDestroyHandlers;
28
28
  private readonly _temporaryRenderTextures;
29
- private readonly _maskStack;
30
- private readonly _maskPixelStack;
31
- private readonly _maskPointA;
32
- private readonly _maskPointB;
29
+ private readonly _clipBoundsStack;
30
+ private readonly _clipPixelStack;
31
+ private readonly _clipPointA;
32
+ private readonly _clipPointB;
33
+ private readonly _maskCompositor;
34
+ private _maskCompositorConnected;
33
35
  private _canvas;
34
36
  private _contextLost;
35
37
  private _renderTarget;
@@ -55,8 +57,9 @@ export declare class WebGl2RenderManager implements WebGl2RendererRuntime {
55
57
  draw(drawable: Drawable): this;
56
58
  execute(pass: RenderPass): this;
57
59
  setRenderTarget(target: RenderTarget | null): this;
58
- pushMask(maskBounds: Rectangle): this;
59
- popMask(): this;
60
+ pushScissorRect(bounds: Rectangle): this;
61
+ popScissorRect(): this;
62
+ composeWithAlphaMask(content: Texture | RenderTexture, mask: Texture | RenderTexture, x: number, y: number, width: number, height: number, blendMode: BlendModes): this;
60
63
  acquireRenderTexture(width: number, height: number): RenderTexture;
61
64
  releaseRenderTexture(texture: RenderTexture): this;
62
65
  setView(view: View | null): this;
@@ -93,7 +96,7 @@ export declare class WebGl2RenderManager implements WebGl2RendererRuntime {
93
96
  private _flushActiveRenderer;
94
97
  private _prepareRenderTarget;
95
98
  private _syncTexture;
96
- private _toMaskPixels;
97
- private _intersectMasks;
98
- private _applyMaskState;
99
+ private _toClipPixels;
100
+ private _intersectClips;
101
+ private _applyClipState;
99
102
  }