@lightningjs/renderer 2.7.1 → 2.8.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 (200) hide show
  1. package/dist/exports/core-api.d.ts +74 -0
  2. package/dist/exports/core-api.js +96 -0
  3. package/dist/exports/core-api.js.map +1 -0
  4. package/dist/exports/main-api.d.ts +30 -0
  5. package/dist/exports/main-api.js +45 -0
  6. package/dist/exports/main-api.js.map +1 -0
  7. package/dist/src/core/CoreExtension.d.ts +12 -0
  8. package/dist/src/core/CoreExtension.js +29 -0
  9. package/dist/src/core/CoreExtension.js.map +1 -0
  10. package/dist/src/core/CoreNode.d.ts +2 -0
  11. package/dist/src/core/CoreNode.js +27 -8
  12. package/dist/src/core/CoreNode.js.map +1 -1
  13. package/dist/src/core/CoreShaderManager.js.map +1 -1
  14. package/dist/src/core/CoreStuff.d.ts +1 -0
  15. package/dist/src/core/CoreStuff.js +138 -0
  16. package/dist/src/core/CoreStuff.js.map +1 -0
  17. package/dist/src/core/LngNode.d.ts +736 -0
  18. package/dist/src/core/LngNode.js +1174 -0
  19. package/dist/src/core/LngNode.js.map +1 -0
  20. package/dist/src/core/Matrix2DContext.d.ts +15 -0
  21. package/dist/src/core/Matrix2DContext.js +45 -0
  22. package/dist/src/core/Matrix2DContext.js.map +1 -0
  23. package/dist/src/core/ShaderNode.d.ts +10 -0
  24. package/dist/src/core/ShaderNode.js +30 -0
  25. package/dist/src/core/ShaderNode.js.map +1 -0
  26. package/dist/src/core/Stage.d.ts +1 -0
  27. package/dist/src/core/Stage.js +4 -0
  28. package/dist/src/core/Stage.js.map +1 -1
  29. package/dist/src/core/TextNode.d.ts +103 -0
  30. package/dist/src/core/TextNode.js +331 -0
  31. package/dist/src/core/TextNode.js.map +1 -0
  32. package/dist/src/core/lib/Coords.d.ts +14 -0
  33. package/dist/src/core/lib/Coords.js +55 -0
  34. package/dist/src/core/lib/Coords.js.map +1 -0
  35. package/dist/src/core/lib/glm/common.d.ts +162 -0
  36. package/dist/src/core/lib/glm/common.js +81 -0
  37. package/dist/src/core/lib/glm/common.js.map +1 -0
  38. package/dist/src/core/lib/glm/index.d.ts +11 -0
  39. package/dist/src/core/lib/glm/index.js +30 -0
  40. package/dist/src/core/lib/glm/index.js.map +1 -0
  41. package/dist/src/core/lib/glm/mat2.d.ts +219 -0
  42. package/dist/src/core/lib/glm/mat2.js +396 -0
  43. package/dist/src/core/lib/glm/mat2.js.map +1 -0
  44. package/dist/src/core/lib/glm/mat2d.d.ts +237 -0
  45. package/dist/src/core/lib/glm/mat2d.js +442 -0
  46. package/dist/src/core/lib/glm/mat2d.js.map +1 -0
  47. package/dist/src/core/lib/glm/mat3.d.ts +283 -0
  48. package/dist/src/core/lib/glm/mat3.js +680 -0
  49. package/dist/src/core/lib/glm/mat3.js.map +1 -0
  50. package/dist/src/core/lib/glm/mat4.d.ts +550 -0
  51. package/dist/src/core/lib/glm/mat4.js +1802 -0
  52. package/dist/src/core/lib/glm/mat4.js.map +1 -0
  53. package/dist/src/core/lib/glm/quat.d.ts +363 -0
  54. package/dist/src/core/lib/glm/quat.js +693 -0
  55. package/dist/src/core/lib/glm/quat.js.map +1 -0
  56. package/dist/src/core/lib/glm/quat2.d.ts +356 -0
  57. package/dist/src/core/lib/glm/quat2.js +754 -0
  58. package/dist/src/core/lib/glm/quat2.js.map +1 -0
  59. package/dist/src/core/lib/glm/vec2.d.ts +365 -0
  60. package/dist/src/core/lib/glm/vec2.js +569 -0
  61. package/dist/src/core/lib/glm/vec2.js.map +1 -0
  62. package/dist/src/core/lib/glm/vec3.d.ts +406 -0
  63. package/dist/src/core/lib/glm/vec3.js +720 -0
  64. package/dist/src/core/lib/glm/vec3.js.map +1 -0
  65. package/dist/src/core/lib/glm/vec4.d.ts +330 -0
  66. package/dist/src/core/lib/glm/vec4.js +608 -0
  67. package/dist/src/core/lib/glm/vec4.js.map +1 -0
  68. package/dist/src/core/renderers/CoreRenderer.d.ts +1 -0
  69. package/dist/src/core/renderers/CoreRenderer.js.map +1 -1
  70. package/dist/src/core/renderers/CoreShaderManager.d.ts +19 -0
  71. package/dist/src/core/renderers/CoreShaderManager.js +33 -0
  72. package/dist/src/core/renderers/CoreShaderManager.js.map +1 -0
  73. package/dist/src/core/renderers/canvas/CanvasCoreRenderer.d.ts +6 -0
  74. package/dist/src/core/renderers/canvas/CanvasCoreRenderer.js +8 -0
  75. package/dist/src/core/renderers/canvas/CanvasCoreRenderer.js.map +1 -1
  76. package/dist/src/core/renderers/webgl/WebGlCoreRenderer.d.ts +8 -1
  77. package/dist/src/core/renderers/webgl/WebGlCoreRenderer.js +25 -4
  78. package/dist/src/core/renderers/webgl/WebGlCoreRenderer.js.map +1 -1
  79. package/dist/src/core/renderers/webgl/WebGlCoreShaderManager.d.ts +27 -0
  80. package/dist/src/core/renderers/webgl/WebGlCoreShaderManager.js +82 -0
  81. package/dist/src/core/renderers/webgl/WebGlCoreShaderManager.js.map +1 -0
  82. package/dist/src/core/renderers/webgl/WebGlCoreShaderProgram.d.ts +11 -0
  83. package/dist/src/core/renderers/webgl/WebGlCoreShaderProgram.js +34 -0
  84. package/dist/src/core/renderers/webgl/WebGlCoreShaderProgram.js.map +1 -0
  85. package/dist/src/core/renderers/webgl/internal/RendererUtils.d.ts +4 -0
  86. package/dist/src/core/renderers/webgl/shaders/SdfShader.d.ts +1 -0
  87. package/dist/src/core/renderers/webgl/shaders/SdfShader.js +1 -0
  88. package/dist/src/core/renderers/webgl/shaders/SdfShader.js.map +1 -1
  89. package/dist/src/core/scene/Scene.d.ts +59 -0
  90. package/dist/src/core/scene/Scene.js +106 -0
  91. package/dist/src/core/scene/Scene.js.map +1 -0
  92. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.js +8 -1
  93. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.js.map +1 -1
  94. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/makeRenderWindow.d.ts +20 -0
  95. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/makeRenderWindow.js +55 -0
  96. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/makeRenderWindow.js.map +1 -0
  97. package/dist/src/main-api/ICoreDriver.d.ts +27 -0
  98. package/dist/src/main-api/ICoreDriver.js +20 -0
  99. package/dist/src/main-api/ICoreDriver.js.map +1 -0
  100. package/dist/src/main-api/IRenderDriver.d.ts +20 -0
  101. package/dist/src/main-api/IRenderDriver.js +20 -0
  102. package/dist/src/main-api/IRenderDriver.js.map +1 -0
  103. package/dist/src/main-api/IShaderController.d.ts +14 -0
  104. package/dist/src/main-api/IShaderController.js +30 -0
  105. package/dist/src/main-api/IShaderController.js.map +1 -0
  106. package/dist/src/main-api/IShaderNode.d.ts +17 -0
  107. package/dist/src/main-api/IShaderNode.js +19 -0
  108. package/dist/src/main-api/IShaderNode.js.map +1 -0
  109. package/dist/src/main-api/Renderer.d.ts +6 -0
  110. package/dist/src/main-api/Renderer.js +8 -0
  111. package/dist/src/main-api/Renderer.js.map +1 -1
  112. package/dist/src/main-api/RendererMain.d.ts +375 -0
  113. package/dist/src/main-api/RendererMain.js +365 -0
  114. package/dist/src/main-api/RendererMain.js.map +1 -0
  115. package/dist/src/main-api/ShaderController.js.map +1 -1
  116. package/dist/src/main-api/texture-usage-trackers/FinalizationRegistryTextureUsageTracker.d.ts +9 -0
  117. package/dist/src/main-api/texture-usage-trackers/FinalizationRegistryTextureUsageTracker.js +38 -0
  118. package/dist/src/main-api/texture-usage-trackers/FinalizationRegistryTextureUsageTracker.js.map +1 -0
  119. package/dist/src/main-api/texture-usage-trackers/ManualCountTextureUsageTracker.d.ts +56 -0
  120. package/dist/src/main-api/texture-usage-trackers/ManualCountTextureUsageTracker.js +101 -0
  121. package/dist/src/main-api/texture-usage-trackers/ManualCountTextureUsageTracker.js.map +1 -0
  122. package/dist/src/main-api/texture-usage-trackers/TextureUsageTracker.d.ts +32 -0
  123. package/dist/src/main-api/texture-usage-trackers/TextureUsageTracker.js +28 -0
  124. package/dist/src/main-api/texture-usage-trackers/TextureUsageTracker.js.map +1 -0
  125. package/dist/src/render-drivers/main/MainCoreDriver.d.ts +24 -0
  126. package/dist/src/render-drivers/main/MainCoreDriver.js +118 -0
  127. package/dist/src/render-drivers/main/MainCoreDriver.js.map +1 -0
  128. package/dist/src/render-drivers/main/MainOnlyNode.d.ts +99 -0
  129. package/dist/src/render-drivers/main/MainOnlyNode.js +396 -0
  130. package/dist/src/render-drivers/main/MainOnlyNode.js.map +1 -0
  131. package/dist/src/render-drivers/main/MainOnlyShaderController.d.ts +6 -0
  132. package/dist/src/render-drivers/main/MainOnlyShaderController.js +15 -0
  133. package/dist/src/render-drivers/main/MainOnlyShaderController.js.map +1 -0
  134. package/dist/src/render-drivers/main/MainOnlyShaderNode.d.ts +7 -0
  135. package/dist/src/render-drivers/main/MainOnlyShaderNode.js +34 -0
  136. package/dist/src/render-drivers/main/MainOnlyShaderNode.js.map +1 -0
  137. package/dist/src/render-drivers/main/MainOnlyTextNode.d.ts +47 -0
  138. package/dist/src/render-drivers/main/MainOnlyTextNode.js +205 -0
  139. package/dist/src/render-drivers/main/MainOnlyTextNode.js.map +1 -0
  140. package/dist/src/render-drivers/main/MainRenderDriver.d.ts +17 -0
  141. package/dist/src/render-drivers/main/MainRenderDriver.js +88 -0
  142. package/dist/src/render-drivers/main/MainRenderDriver.js.map +1 -0
  143. package/dist/src/render-drivers/threadx/NodeStruct.d.ts +90 -0
  144. package/dist/src/render-drivers/threadx/NodeStruct.js +281 -0
  145. package/dist/src/render-drivers/threadx/NodeStruct.js.map +1 -0
  146. package/dist/src/render-drivers/threadx/SharedNode.d.ts +39 -0
  147. package/dist/src/render-drivers/threadx/SharedNode.js +60 -0
  148. package/dist/src/render-drivers/threadx/SharedNode.js.map +1 -0
  149. package/dist/src/render-drivers/threadx/TextNodeStruct.d.ts +44 -0
  150. package/dist/src/render-drivers/threadx/TextNodeStruct.js +201 -0
  151. package/dist/src/render-drivers/threadx/TextNodeStruct.js.map +1 -0
  152. package/dist/src/render-drivers/threadx/ThreadXCoreDriver.d.ts +28 -0
  153. package/dist/src/render-drivers/threadx/ThreadXCoreDriver.js +234 -0
  154. package/dist/src/render-drivers/threadx/ThreadXCoreDriver.js.map +1 -0
  155. package/dist/src/render-drivers/threadx/ThreadXMainAnimationController.d.ts +20 -0
  156. package/dist/src/render-drivers/threadx/ThreadXMainAnimationController.js +84 -0
  157. package/dist/src/render-drivers/threadx/ThreadXMainAnimationController.js.map +1 -0
  158. package/dist/src/render-drivers/threadx/ThreadXMainNode.d.ts +44 -0
  159. package/dist/src/render-drivers/threadx/ThreadXMainNode.js +154 -0
  160. package/dist/src/render-drivers/threadx/ThreadXMainNode.js.map +1 -0
  161. package/dist/src/render-drivers/threadx/ThreadXMainShaderController.d.ts +6 -0
  162. package/dist/src/render-drivers/threadx/ThreadXMainShaderController.js +16 -0
  163. package/dist/src/render-drivers/threadx/ThreadXMainShaderController.js.map +1 -0
  164. package/dist/src/render-drivers/threadx/ThreadXMainShaderNode.d.ts +7 -0
  165. package/dist/src/render-drivers/threadx/ThreadXMainShaderNode.js +15 -0
  166. package/dist/src/render-drivers/threadx/ThreadXMainShaderNode.js.map +1 -0
  167. package/dist/src/render-drivers/threadx/ThreadXMainTextNode.d.ts +28 -0
  168. package/dist/src/render-drivers/threadx/ThreadXMainTextNode.js +55 -0
  169. package/dist/src/render-drivers/threadx/ThreadXMainTextNode.js.map +1 -0
  170. package/dist/src/render-drivers/threadx/ThreadXRenderDriver.d.ts +21 -0
  171. package/dist/src/render-drivers/threadx/ThreadXRenderDriver.js +198 -0
  172. package/dist/src/render-drivers/threadx/ThreadXRenderDriver.js.map +1 -0
  173. package/dist/src/render-drivers/threadx/ThreadXRendererMessage.d.ts +70 -0
  174. package/dist/src/render-drivers/threadx/ThreadXRendererMessage.js +32 -0
  175. package/dist/src/render-drivers/threadx/ThreadXRendererMessage.js.map +1 -0
  176. package/dist/src/render-drivers/threadx/worker/ThreadXRendererNode.d.ts +19 -0
  177. package/dist/src/render-drivers/threadx/worker/ThreadXRendererNode.js +177 -0
  178. package/dist/src/render-drivers/threadx/worker/ThreadXRendererNode.js.map +1 -0
  179. package/dist/src/render-drivers/threadx/worker/ThreadXRendererTextNode.d.ts +27 -0
  180. package/dist/src/render-drivers/threadx/worker/ThreadXRendererTextNode.js +108 -0
  181. package/dist/src/render-drivers/threadx/worker/ThreadXRendererTextNode.js.map +1 -0
  182. package/dist/src/render-drivers/threadx/worker/renderer.d.ts +1 -0
  183. package/dist/src/render-drivers/threadx/worker/renderer.js +145 -0
  184. package/dist/src/render-drivers/threadx/worker/renderer.js.map +1 -0
  185. package/dist/src/render-drivers/utils.d.ts +12 -0
  186. package/dist/src/render-drivers/utils.js +69 -0
  187. package/dist/src/render-drivers/utils.js.map +1 -0
  188. package/dist/tsconfig.dist.tsbuildinfo +1 -1
  189. package/package.json +2 -1
  190. package/src/core/CoreNode.ts +30 -9
  191. package/src/core/CoreShaderManager.ts +1 -1
  192. package/src/core/Stage.ts +5 -0
  193. package/src/core/renderers/CoreRenderer.ts +1 -0
  194. package/src/core/renderers/canvas/CanvasCoreRenderer.ts +9 -0
  195. package/src/core/renderers/webgl/WebGlCoreRenderer.ts +35 -5
  196. package/src/core/renderers/webgl/internal/RendererUtils.ts +5 -0
  197. package/src/core/renderers/webgl/shaders/SdfShader.ts +2 -0
  198. package/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.ts +8 -1
  199. package/src/main-api/Renderer.ts +9 -0
  200. package/src/main-api/ShaderController.ts +0 -1
@@ -0,0 +1,33 @@
1
+ import { WebGlCoreRenderer } from "./webgl/WebGlCoreRenderer.js";
2
+ export class CoreShaderManager {
3
+ renderer;
4
+ constructor(renderer) {
5
+ this.renderer = renderer;
6
+ }
7
+ loadShader(type, props) {
8
+ console.log('Type', type, props);
9
+ }
10
+ }
11
+ class WebGlShaderManager extends CoreShaderManager {
12
+ }
13
+ /*const renderer = new WebGlCoreRenderer({
14
+
15
+ })
16
+
17
+ const shaderManager = new WebGlShaderManager(renderer)
18
+
19
+ class TestShader implements WebGlShader {
20
+ props = {
21
+ colors: [] as string[]
22
+ }
23
+ fragment = 'banaan'
24
+ }
25
+
26
+ const TestShader2 : WebGlShader = {
27
+ fragment: 'kiwi'
28
+ }
29
+
30
+ shaderManager.loadShader(TestShader, {
31
+ colors: ['ja']
32
+ })*/
33
+ //# sourceMappingURL=CoreShaderManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CoreShaderManager.js","sourceRoot":"","sources":["../../../../src/core/renderers/CoreShaderManager.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAiBjE,MAAM,OAAgB,iBAAiB;IACrC,QAAQ,CAAW;IACnB,YAAY,QAAkB;QAC5B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;IAC1B,CAAC;IACD,UAAU,CAAsB,IAA6B,EAAE,KAA0B;QACvF,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;IAClC,CAAC;CACF;AAGD,MAAM,kBAAmB,SAAQ,iBAAiD;CAMjF;AAGD;;;;;;;;;;;;;;;;;;;IAmBI"}
@@ -23,4 +23,10 @@ export declare class CanvasCoreRenderer extends CoreRenderer {
23
23
  removeRTTNode(node: CoreNode): void;
24
24
  renderToTexture(node: CoreNode): void;
25
25
  getBufferInfo(): null;
26
+ /**
27
+ * Updates the clear color of the canvas renderer.
28
+ *
29
+ * @param color - The color to set as the clear color.
30
+ */
31
+ updateClearColor(color: number): void;
26
32
  }
@@ -217,5 +217,13 @@ export class CanvasCoreRenderer extends CoreRenderer {
217
217
  getBufferInfo() {
218
218
  return null;
219
219
  }
220
+ /**
221
+ * Updates the clear color of the canvas renderer.
222
+ *
223
+ * @param color - The color to set as the clear color.
224
+ */
225
+ updateClearColor(color) {
226
+ this.clearColor = color ? getRgbaComponents(color) : undefined;
227
+ }
220
228
  }
221
229
  //# sourceMappingURL=CanvasCoreRenderer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CanvasCoreRenderer.js","sourceRoot":"","sources":["../../../../../src/core/renderers/canvas/CanvasCoreRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CanvasCoreRenderer.js","sourceRoot":"","sources":["../../../../../src/core/renderers/canvas/CanvasCoreRenderer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,OAAO,EAAE,iBAAiB,EAAa,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAG1D,OAAO,EACL,YAAY,GAGb,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAChF,OAAO,EACL,UAAU,EACV,cAAc,EACd,UAAU,GAEX,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAEnE,MAAM,OAAO,kBAAmB,SAAQ,YAAY;IAC1C,OAAO,CAA2B;IAClC,MAAM,CAAoB;IAC1B,UAAU,CAAS;IACnB,UAAU,CAAmB;IAC9B,qBAAqB,GAAG,KAAK,CAAC;IACrC,aAAa,GAAoB,IAAI,CAAC;IAC9B,YAAY,CAAuB;IAE3C,YAAY,OAA4B;QACtC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEf,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;QACrB,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,IAAI,CAAC;QAE/B,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;QACnD,IAAI,CAAC,MAAM,GAAG,MAA2B,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAA6B,CAAC;QACnE,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEzE,wEAAwE;QACxE,iDAAiD;QACjD,IAAI,CAAC,YAAY,GAAG;YAClB,IAAI,EAAE,eAAe;YACrB,KAAK,EAAE,EAAE;YACT,MAAM,EAAE,IAAI,iBAAiB,CAAC,eAAe,CAAC;YAC9C,gBAAgB,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE;gBAC3B,OAAO,EAAE,CAAC;YACZ,CAAC;SACF,CAAC;IACJ,CAAC;IAED,KAAK;QACH,0CAA0C;QAC1C,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,qBAAqB;QAE5D,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;QAEzB,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC;YACrC,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC;YACrD,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SAC3D;QAED,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM;QACJ,OAAO;IACT,CAAC;IAED,OAAO,CAAC,IAAiB;QACvB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;QACzB,MAAM,EACJ,EAAE,EACF,EAAE,EACF,KAAK,EACL,MAAM,EACN,KAAK,EACL,OAAO,EACP,OAAO,EACP,OAAO,EACP,EAAE,EACF,EAAE,EACF,EAAE,EACF,EAAE,EACF,YAAY,GACb,GAAG,IAAI,CAAC;QACT,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC3B,IAAI,UAAU,GAAkC,SAAS,CAAC;QAC1D,IAAI,KAES,CAAC;QAEd,IAAI,OAAO,EAAE;YACX,IAAI,OAAO,YAAY,UAAU,EAAE;gBACjC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;gBACtB,OAAO,GAAG,OAAO,CAAC,aAAa,CAAC;aACjC;YAED,UAAU,GAAG,OAAO,CAAC,UAA+B,CAAC;YACrD,IAAI,OAAO,CAAC,KAAK,KAAK,OAAO,EAAE;gBAC7B,UAAU,CAAC,IAAI,EAAE,CAAC;gBAClB,OAAO;aACR;YACD,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE;gBACxD,OAAO;aACR;SACF;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,YAAY,GAAG,EAAE,KAAK,CAAC,CAAC;QAC9B,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,KAAK,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC;QAC1E,MAAM,WAAW,GAAG,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,OAAO,CAAC;QAC/D,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAE3D,IAAI,YAAY,IAAI,WAAW,IAAI,MAAM,EAAE;YACzC,GAAG,CAAC,IAAI,EAAE,CAAC;SACZ;QAED,IAAI,WAAW,EAAE;YACf,MAAM,IAAI,GAAG,IAAI,MAAM,EAAE,CAAC;YAC1B,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,YAAY,CAAC;YAC7C,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;YAC/B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAChB;QAED,IAAI,YAAY,EAAE;YAChB,kBAAkB;YAClB,eAAe;YACf,eAAe;YACf,eAAe;YACf,iBAAiB;YACjB,eAAe;YACf,eAAe;YACf,eAAe;YACf,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC;YAC9B,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC;YACzD,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YACxB,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;SACzB;QAED,IAAI,MAAM,EAAE;YACV,MAAM,IAAI,GAAG,IAAI,MAAM,EAAE,CAAC;YAC1B,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAC9C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAChB;QAED,IAAI,UAAU,EAAE;YACd,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACzC,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC;YACnC,IAAI,KAAK,EAAE;gBACT,GAAG,CAAC,SAAS,CACX,KAAK,EACL,KAAK,CAAC,CAAC,EACP,KAAK,CAAC,CAAC,EACP,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,MAAM,EACZ,EAAE,EACF,EAAE,EACF,KAAK,EACL,MAAM,CACP,CAAC;aACH;iBAAM;gBACL,GAAG,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;aAC7C;YACD,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC;SACrB;aAAM,IAAI,WAAW,EAAE;YACtB,IAAI,IAAI,GAAW,EAAE,CAAC;YACtB,IAAI,IAAI,GAAW,EAAE,CAAC;YACtB,IAAI,QAAsB,CAAC;YAC3B,IAAI,OAAO,KAAK,OAAO,EAAE;gBACvB,WAAW;gBACX,IAAI,GAAG,EAAE,CAAC;gBACV,IAAI,GAAG,EAAE,GAAG,MAAM,CAAC;gBACnB,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;aAChC;iBAAM;gBACL,aAAa;gBACb,IAAI,GAAG,EAAE,GAAG,KAAK,CAAC;gBAClB,IAAI,GAAG,EAAE,CAAC;gBACV,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;aAChC;YACD,MAAM,QAAQ,GAAG,GAAG,CAAC,oBAAoB,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC9D,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;YAC5C,QAAQ,CAAC,YAAY,CAAC,CAAC,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,GAAG,CAAC,SAAS,GAAG,QAAQ,CAAC;YACzB,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;SACrC;aAAM;YACL,GAAG,CAAC,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;YAClC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;SACrC;QAED,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,EAAE;YAC1B,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;YACjC,MAAM,gBAAgB,GAAG,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;YAC1C,MAAM,WAAW,GAAG,UAAU,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;YAElE,GAAG,CAAC,SAAS,EAAE,CAAC;YAChB,GAAG,CAAC,SAAS,GAAG,WAAW,CAAC;YAC5B,GAAG,CAAC,WAAW,GAAG,WAAW,CAAC;YAC9B,GAAG,CAAC,WAAW,GAAG,KAAK,CAAC;YACxB,IAAI,MAAM,EAAE;gBACV,GAAG,CAAC,SAAS,CACX,EAAE,GAAG,gBAAgB,EACrB,EAAE,GAAG,gBAAgB,EACrB,KAAK,GAAG,WAAW,EACnB,MAAM,GAAG,WAAW,EACpB,MAAM,CACP,CAAC;gBACF,GAAG,CAAC,MAAM,EAAE,CAAC;aACd;iBAAM;gBACL,GAAG,CAAC,UAAU,CACZ,EAAE,GAAG,gBAAgB,EACrB,EAAE,GAAG,gBAAgB,EACrB,KAAK,GAAG,WAAW,EACnB,MAAM,GAAG,WAAW,CACrB,CAAC;aACH;YACD,GAAG,CAAC,WAAW,GAAG,CAAC,CAAC;SACrB;aAAM,IAAI,aAAa,EAAE;YACxB,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACzC,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YAC7C,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC/C,MAAM,UAAU,GAAG,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAE3C,IAAI,SAAS,EAAE;gBACb,UAAU,CACR,GAAG,EACH,EAAE,EACF,EAAE,EACF,KAAK,EACL,MAAM,EACN,SAAS,CAAC,KAAK,EACf,SAAS,CAAC,KAAK,EACf,KAAK,CACN,CAAC;aACH;YAED,IAAI,WAAW,EAAE;gBACf,UAAU,CACR,GAAG,EACH,EAAE,EACF,EAAE,EACF,KAAK,EACL,MAAM,EACN,WAAW,CAAC,KAAK,EACjB,WAAW,CAAC,KAAK,EACjB,OAAO,CACR,CAAC;aACH;YAED,IAAI,YAAY,EAAE;gBAChB,UAAU,CACR,GAAG,EACH,EAAE,EACF,EAAE,EACF,KAAK,EACL,MAAM,EACN,YAAY,CAAC,KAAK,EAClB,YAAY,CAAC,KAAK,EAClB,QAAQ,CACT,CAAC;aACH;YAED,IAAI,UAAU,EAAE;gBACd,UAAU,CACR,GAAG,EACH,EAAE,EACF,EAAE,EACF,KAAK,EACL,MAAM,EACN,UAAU,CAAC,KAAK,EAChB,UAAU,CAAC,KAAK,EAChB,MAAM,CACP,CAAC;aACH;SACF;QAED,IAAI,YAAY,IAAI,WAAW,IAAI,MAAM,EAAE;YACzC,GAAG,CAAC,OAAO,EAAE,CAAC;SACf;IACH,CAAC;IAED,gBAAgB,CAAC,aAAsB;QACrC,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IACjE,CAAC;IAED,gBAAgB;QACd,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAEQ,eAAe;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,cAAc;QACZ,OAAO;IACT,CAAC;IAED,aAAa,CAAC,IAAc;QAC1B,OAAO;IACT,CAAC;IAED,eAAe,CAAC,IAAc;QAC5B,OAAO;IACT,CAAC;IACD,aAAa;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,KAAa;QAC5B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,CAAC;CACF"}
@@ -1,7 +1,7 @@
1
1
  import { CoreRenderer, type BufferInfo, type CoreRendererOptions, type QuadOptions } from '../CoreRenderer.js';
2
2
  import { WebGlCoreRenderOp } from './WebGlCoreRenderOp.js';
3
3
  import type { CoreContextTexture } from '../CoreContextTexture.js';
4
- import { type CoreWebGlParameters, type CoreWebGlExtensions } from './internal/RendererUtils.js';
4
+ import { type CoreWebGlParameters, type CoreWebGlExtensions, type WebGlColor } from './internal/RendererUtils.js';
5
5
  import { Texture } from '../../textures/Texture.js';
6
6
  import { CoreShaderManager } from '../../CoreShaderManager.js';
7
7
  import { BufferCollection } from './internal/BufferCollection.js';
@@ -28,6 +28,7 @@ export declare class WebGlCoreRenderer extends CoreRenderer {
28
28
  defShaderCtrl: BaseShaderController;
29
29
  defaultShader: WebGlCoreShader;
30
30
  quadBufferCollection: BufferCollection;
31
+ clearColor: WebGlColor;
31
32
  /**
32
33
  * White pixel texture used by default when no texture is specified.
33
34
  */
@@ -121,5 +122,11 @@ export declare class WebGlCoreRenderer extends CoreRenderer {
121
122
  removeRTTNode(node: CoreNode): void;
122
123
  getBufferInfo(): BufferInfo | null;
123
124
  getDefShaderCtr(): BaseShaderController;
125
+ /**
126
+ * Updates the WebGL context's clear color and clears the color buffer.
127
+ *
128
+ * @param color - The color to set as the clear color, represented as a 32-bit integer.
129
+ */
130
+ updateClearColor(color: number): void;
124
131
  }
125
132
  export {};
@@ -52,6 +52,10 @@ export class WebGlCoreRenderer extends CoreRenderer {
52
52
  defShaderCtrl;
53
53
  defaultShader;
54
54
  quadBufferCollection;
55
+ clearColor = {
56
+ raw: 0x00000000,
57
+ normalized: [0, 0, 0, 0],
58
+ };
55
59
  /**
56
60
  * White pixel texture used by default when no texture is specified.
57
61
  */
@@ -80,9 +84,8 @@ export class WebGlCoreRenderer extends CoreRenderer {
80
84
  });
81
85
  const gl = createWebGLContext(canvas, options.forceWebGL2, options.contextSpy);
82
86
  const glw = (this.glw = new WebGlContextWrapper(gl));
83
- const color = getNormalizedRgbaComponents(clearColor);
84
87
  glw.viewport(0, 0, canvas.width, canvas.height);
85
- glw.clearColor(color[0], color[1], color[2], color[3]);
88
+ this.updateClearColor(clearColor);
86
89
  glw.setBlend(true);
87
90
  glw.blendFunc(glw.ONE, glw.ONE_MINUS_SRC_ALPHA);
88
91
  createIndexBuffer(glw, bufferMemory);
@@ -566,9 +569,9 @@ export class WebGlCoreRenderer extends CoreRenderer {
566
569
  this.renderOps.length = 0;
567
570
  node.hasRTTupdates = false;
568
571
  }
569
- const color = getNormalizedRgbaComponents(this.stage.options.clearColor);
572
+ const clearColor = this.clearColor.normalized;
570
573
  // Restore the default clear color
571
- glw.clearColor(color[0], color[1], color[2], color[3]);
574
+ glw.clearColor(clearColor[0], clearColor[1], clearColor[2], clearColor[3]);
572
575
  // Bind the default framebuffer
573
576
  glw.bindFramebuffer(null);
574
577
  glw.viewport(0, 0, this.glw.canvas.width, this.glw.canvas.height);
@@ -591,5 +594,23 @@ export class WebGlCoreRenderer extends CoreRenderer {
591
594
  getDefShaderCtr() {
592
595
  return this.defShaderCtrl;
593
596
  }
597
+ /**
598
+ * Updates the WebGL context's clear color and clears the color buffer.
599
+ *
600
+ * @param color - The color to set as the clear color, represented as a 32-bit integer.
601
+ */
602
+ updateClearColor(color) {
603
+ if (this.clearColor.raw === color) {
604
+ return;
605
+ }
606
+ const glw = this.glw;
607
+ const normalizedColor = getNormalizedRgbaComponents(color);
608
+ glw.clearColor(normalizedColor[0], normalizedColor[1], normalizedColor[2], normalizedColor[3]);
609
+ this.clearColor = {
610
+ raw: color,
611
+ normalized: normalizedColor,
612
+ };
613
+ glw.clear();
614
+ }
594
615
  }
595
616
  //# sourceMappingURL=WebGlCoreRenderer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WebGlCoreRenderer.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/WebGlCoreRenderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebGlCoreRenderer.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/WebGlCoreRenderer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { type DynamicEffects, DynamicShaderController } from '../../../main-api/DynamicShaderController.js';
2
+ import type { ShaderController } from '../../../main-api/ShaderController.js';
3
+ import { CoreShaderManager, type ShaderMap } from '../../CoreShaderManager.js';
4
+ import type { ExtractProps } from '../../CoreTextureManager.js';
5
+ import { type DynamicShaderProps } from './shaders/DynamicShader.js';
6
+ import type { WebGlCoreRenderer } from './WebGlCoreRenderer.js';
7
+ export interface DynamicShaderEffectMap {
8
+ }
9
+ export declare class WebGlCoreShaderManager extends CoreShaderManager {
10
+ protected effectConstructors: Partial<DynamicShaderEffectMap>;
11
+ constructor(renderer: WebGlCoreRenderer);
12
+ registerEffectType<Type extends keyof DynamicShaderEffectMap>(effectType: Type, effectClass: DynamicShaderEffectMap[Type]): void;
13
+ getRegisteredEffects(): Partial<DynamicShaderEffectMap>;
14
+ loadShader<Type extends keyof ShaderMap>(shType: Type, props?: ExtractProps<ShaderMap[Type]>): ShaderController<Type>;
15
+ loadDynamicShader<T extends DynamicEffects<[
16
+ ...{
17
+ name?: string;
18
+ type: keyof DynamicShaderEffectMap;
19
+ }[]
20
+ ]>>(props: DynamicShaderProps): DynamicShaderController<T>;
21
+ protected _createDynShaderCtr<T extends DynamicEffects<[
22
+ ...{
23
+ name?: string;
24
+ type: keyof DynamicShaderEffectMap;
25
+ }[]
26
+ ]>>(shader: InstanceType<ShaderMap['DynamicShader']>, props: ExtractProps<ShaderMap['DynamicShader']>): DynamicShaderController<T>;
27
+ }
@@ -0,0 +1,82 @@
1
+ /*
2
+ * If not stated otherwise in this file or this component's LICENSE file the
3
+ * following copyright and licenses apply:
4
+ *
5
+ * Copyright 2024 Comcast Cable Communications Management, LLC.
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the License);
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ */
19
+ import { DynamicShaderController, } from '../../../main-api/DynamicShaderController.js';
20
+ import { CoreShaderManager } from '../../CoreShaderManager.js';
21
+ import { DefaultShader } from './shaders/DefaultShader.js';
22
+ import { DynamicShader, } from './shaders/DynamicShader.js';
23
+ import { SdfShader } from './shaders/SdfShader.js';
24
+ export class WebGlCoreShaderManager extends CoreShaderManager {
25
+ effectConstructors = {};
26
+ constructor(renderer) {
27
+ super();
28
+ this.renderer = renderer;
29
+ this.registerShaderType('DefaultShader', DefaultShader);
30
+ this.registerShaderType('DynamicShader', DynamicShader);
31
+ this.registerShaderType('SdfShader', SdfShader);
32
+ }
33
+ registerEffectType(effectType, effectClass) {
34
+ this.effectConstructors[effectType] = effectClass;
35
+ }
36
+ getRegisteredEffects() {
37
+ return this.effectConstructors;
38
+ }
39
+ loadShader(shType, props) {
40
+ if (!this.renderer) {
41
+ throw new Error(`Renderer is not been defined`);
42
+ }
43
+ const ShaderClass = this.shConstructors[shType];
44
+ if (!ShaderClass) {
45
+ throw new Error(`Shader type "${shType}" is not registered`);
46
+ }
47
+ if (shType === 'DynamicShader') {
48
+ return this.loadDynamicShader(props);
49
+ }
50
+ const resolvedProps = ShaderClass.resolveDefaults(props);
51
+ const cacheKey = ShaderClass.makeCacheKey(resolvedProps) || ShaderClass.name;
52
+ if (cacheKey && this.shCache.has(cacheKey)) {
53
+ return this._createShaderCtr(shType, this.shCache.get(cacheKey), resolvedProps);
54
+ }
55
+ // @ts-expect-error ShaderClass WILL accept a Renderer
56
+ const shader = new ShaderClass(this.renderer, props);
57
+ if (cacheKey) {
58
+ this.shCache.set(cacheKey, shader);
59
+ }
60
+ return this._createShaderCtr(shType, shader, resolvedProps);
61
+ }
62
+ loadDynamicShader(props) {
63
+ if (!this.renderer) {
64
+ throw new Error(`Renderer is not been defined`);
65
+ }
66
+ const resolvedProps = DynamicShader.resolveDefaults(props, this.effectConstructors);
67
+ const cacheKey = DynamicShader.makeCacheKey(resolvedProps, this.effectConstructors);
68
+ if (cacheKey && this.shCache.has(cacheKey)) {
69
+ return this._createDynShaderCtr(this.shCache.get(cacheKey), resolvedProps);
70
+ }
71
+ const shader = new DynamicShader(this.renderer, props, this.effectConstructors);
72
+ if (cacheKey) {
73
+ this.shCache.set(cacheKey, shader);
74
+ }
75
+ return this._createDynShaderCtr(shader, resolvedProps);
76
+ }
77
+ _createDynShaderCtr(shader, props) {
78
+ shader.bindUniformMethods(props);
79
+ return new DynamicShaderController(shader, props, this);
80
+ }
81
+ }
82
+ //# sourceMappingURL=WebGlCoreShaderManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebGlCoreShaderManager.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/WebGlCoreShaderManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { WebGlContextWrapper } from "../../lib/WebGlContextWrapper.js";
2
+ import type { WebGlShader } from "../CoreShaderManager.js";
3
+ import type { WebGlCoreRenderOp } from "./WebGlCoreRenderOp.js";
4
+ export default class WebGlCoreShaderProgram {
5
+ protected program: WebGLProgram;
6
+ protected vao: WebGLVertexArrayObject | undefined;
7
+ readonly uniformLocations: Record<string, number>;
8
+ readonly attributeLocations: Record<string, number>;
9
+ constructor(glw: WebGlContextWrapper, shader: WebGlShader, options: Record<string, unknown>);
10
+ bindRenderOp(renderOp: WebGlCoreRenderOp): void;
11
+ }
@@ -0,0 +1,34 @@
1
+ import { createProgram, createShader, DEFAULT_FRAGMENT, DEFAULT_VERTEX } from "./internal/ShaderUtils.js";
2
+ export default class WebGlCoreShaderProgram {
3
+ program;
4
+ vao;
5
+ uniformLocations;
6
+ attributeLocations;
7
+ constructor(glw, shader, options) {
8
+ const webGl2 = glw.isWebGl2();
9
+ const requiredExtensions = (webGl2 && options.webgl2Extensions) ||
10
+ (!webGl2 && options.webgl1Extensions) ||
11
+ [];
12
+ const glVersion = webGl2 ? '2.0' : '1.0';
13
+ requiredExtensions.forEach((extensionName) => {
14
+ if (!glw.getExtension(extensionName)) {
15
+ throw new Error(`Shader "${this.constructor.name}" requires extension "${extensionName}" for WebGL ${glVersion} but wasn't found`);
16
+ }
17
+ });
18
+ const vertex = createShader(glw, glw.VERTEX_SHADER, DEFAULT_VERTEX);
19
+ const fragment = createShader(glw, glw.FRAGMENT_SHADER, DEFAULT_FRAGMENT);
20
+ if (!vertex || !fragment) {
21
+ throw new Error();
22
+ }
23
+ const program = createProgram(glw, vertex, fragment);
24
+ if (!program) {
25
+ throw new Error();
26
+ }
27
+ this.program = program;
28
+ this.uniformLocations = glw.getUniformLocations(program);
29
+ this.attributeLocations = glw.getAttributeLocations(program);
30
+ }
31
+ bindRenderOp(renderOp) {
32
+ }
33
+ }
34
+ //# sourceMappingURL=WebGlCoreShaderProgram.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WebGlCoreShaderProgram.js","sourceRoot":"","sources":["../../../../../src/core/renderers/webgl/WebGlCoreShaderProgram.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAG1G,MAAM,CAAC,OAAO,OAAO,sBAAsB;IAC/B,OAAO,CAAe;IACtB,GAAG,CAAqC;IACzC,gBAAgB,CAAyB;IACzC,kBAAkB,CAAwB;IAEnD,YAAY,GAAwB,EAAE,MAAmB,EAAE,OAAgC;QACzF,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;QAC9B,MAAM,kBAAkB,GACtB,CAAC,MAAM,IAAI,OAAO,CAAC,gBAAgB,CAAC;YACpC,CAAC,CAAC,MAAM,IAAI,OAAO,CAAC,gBAAgB,CAAC;YACrC,EAAE,CAAC;QACL,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;QACxC,kBAA+B,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;YACzD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE;gBACpC,MAAM,IAAI,KAAK,CACb,WAAW,IAAI,CAAC,WAAW,CAAC,IAAI,yBAAyB,aAAa,eAAe,SAAS,mBAAmB,CAClH,CAAC;aACH;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,aAAa,EAAE,cAAc,CAAC,CAAA;QACnE,MAAM,QAAQ,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,eAAe,EAAE,gBAAgB,CAAC,CAAA;QAEzE,IAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,EAAE;YACvB,MAAM,IAAI,KAAK,EAAE,CAAC;SACnB;QAED,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAA;QAEpD,IAAG,CAAC,OAAO,EAAE;YACX,MAAM,IAAI,KAAK,EAAE,CAAC;SACnB;QAED,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB,IAAI,CAAC,gBAAgB,GAAG,GAAG,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;QACzD,IAAI,CAAC,kBAAkB,GAAG,GAAG,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED,YAAY,CAAC,QAA2B;IAExC,CAAC;CACF"}
@@ -49,3 +49,7 @@ export declare function createIndexBuffer(glw: WebGlContextWrapper, size: number
49
49
  * @returns
50
50
  */
51
51
  export declare function isHTMLImageElement(obj: unknown): obj is HTMLImageElement;
52
+ export interface WebGlColor {
53
+ raw: number;
54
+ normalized: [number, number, number, number];
55
+ }
@@ -39,6 +39,7 @@ export interface SdfShaderProps {
39
39
  */
40
40
  export declare class SdfShader extends WebGlCoreShader {
41
41
  constructor(renderer: WebGlCoreRenderer);
42
+ static z$__type__Props: SdfShaderProps;
42
43
  bindTextures(textures: WebGlCoreCtxTexture[]): void;
43
44
  protected bindProps(props: SdfShaderProps): void;
44
45
  static resolveDefaults(props?: SdfShaderProps): Required<SdfShaderProps>;
@@ -50,6 +50,7 @@ export class SdfShader extends WebGlCoreShader {
50
50
  ],
51
51
  });
52
52
  }
53
+ static z$__type__Props;
53
54
  bindTextures(textures) {
54
55
  const { glw } = this;
55
56
  glw.activeTexture(0);
@@ -1 +1 @@
1
- {"version":3,"file":"SdfShader.js","sourceRoot":"","sources":["../../../../../../src/core/renderers/webgl/shaders/SdfShader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SdfShader.js","sourceRoot":"","sources":["../../../../../../src/core/renderers/webgl/shaders/SdfShader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,59 @@
1
+ import type { CoreNode } from '../CoreNode.js';
2
+ export type NodeTypes = Node;
3
+ export declare class Scene {
4
+ /**
5
+ * Root node of the scene
6
+ *
7
+ * @type {Node}
8
+ * @memberof Scene
9
+ */
10
+ root: CoreNode;
11
+ constructor(root: CoreNode);
12
+ /**
13
+ * Get all nodes of a specific type
14
+ * @param type
15
+ * @returns
16
+ */
17
+ getNodeByType(type: string): Node[];
18
+ /**
19
+ * Find a node by id
20
+ * @param id
21
+ * @returns
22
+ */
23
+ getNodeById(id: string): Node | null;
24
+ /**
25
+ * Create a new node
26
+ * @param parent
27
+ * @returns
28
+ */
29
+ /**
30
+ * create a new RectangleNode
31
+ * @param w
32
+ * @param h
33
+ * @param parent
34
+ * @returns
35
+ */
36
+ /**
37
+ * Create a new CircleNode
38
+ * @param r
39
+ * @param parent
40
+ * @returns
41
+ */
42
+ /**
43
+ * Create a new TextNode
44
+ * @param text
45
+ * @param parent
46
+ * @returns
47
+ */
48
+ /**
49
+ * Setup and attaching Node
50
+ * @param node
51
+ * @param parent
52
+ * @returns
53
+ */
54
+ /**
55
+ * Update the scene
56
+ * @param delta
57
+ */
58
+ update(delta: number): void;
59
+ }