@lightningjs/renderer 0.3.0 → 0.3.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 (295) hide show
  1. package/NOTICE +1 -2
  2. package/dist/exports/core-api.js +1 -1
  3. package/dist/exports/main-api.js +1 -1
  4. package/dist/exports/utils.js +1 -1
  5. package/dist/src/common/CommonTypes.js +1 -1
  6. package/dist/src/common/EventEmitter.js +1 -1
  7. package/dist/src/common/IAnimationController.js +1 -1
  8. package/dist/src/core/CoreExtension.js +1 -1
  9. package/dist/src/core/CoreNode.d.ts +5 -1
  10. package/dist/src/core/CoreNode.js +9 -2
  11. package/dist/src/core/CoreNode.js.map +1 -1
  12. package/dist/src/core/CoreTextNode.d.ts +2 -1
  13. package/dist/src/core/CoreTextNode.js +3 -3
  14. package/dist/src/core/CoreTextNode.js.map +1 -1
  15. package/dist/src/core/CoreTextureManager.js +1 -1
  16. package/dist/src/core/Matrix2DContext.js +1 -1
  17. package/dist/src/core/Stage.d.ts +2 -1
  18. package/dist/src/core/Stage.js +20 -6
  19. package/dist/src/core/Stage.js.map +1 -1
  20. package/dist/src/core/animations/AnimationManager.js +1 -1
  21. package/dist/src/core/animations/CoreAnimation.js +1 -1
  22. package/dist/src/core/animations/CoreAnimationController.js +1 -1
  23. package/dist/src/core/lib/glm/common.js +1 -1
  24. package/dist/src/core/lib/glm/index.js +1 -1
  25. package/dist/src/core/lib/glm/mat2.js +1 -1
  26. package/dist/src/core/lib/glm/mat2d.js +1 -1
  27. package/dist/src/core/lib/glm/mat3.js +1 -1
  28. package/dist/src/core/lib/glm/mat4.js +1 -1
  29. package/dist/src/core/lib/glm/quat.js +1 -1
  30. package/dist/src/core/lib/glm/quat2.js +1 -1
  31. package/dist/src/core/lib/glm/vec2.js +1 -1
  32. package/dist/src/core/lib/glm/vec3.js +1 -1
  33. package/dist/src/core/lib/glm/vec4.js +1 -1
  34. package/dist/src/core/lib/utils.d.ts +1 -0
  35. package/dist/src/core/lib/utils.js +10 -1
  36. package/dist/src/core/lib/utils.js.map +1 -1
  37. package/dist/src/core/platform.js +1 -1
  38. package/dist/src/core/renderers/CoreContextTexture.js +1 -1
  39. package/dist/src/core/renderers/CoreRenderOp.js +1 -1
  40. package/dist/src/core/renderers/CoreRenderer.d.ts +2 -0
  41. package/dist/src/core/renderers/CoreRenderer.js +1 -1
  42. package/dist/src/core/renderers/CoreRenderer.js.map +1 -1
  43. package/dist/src/core/renderers/CoreShader.d.ts +2 -2
  44. package/dist/src/core/renderers/CoreShader.js +1 -1
  45. package/dist/src/core/renderers/CoreShader.js.map +1 -1
  46. package/dist/src/core/renderers/webgl/WebGlCoreCtxSubTexture.js +1 -1
  47. package/dist/src/core/renderers/webgl/WebGlCoreCtxTexture.js +1 -1
  48. package/dist/src/core/renderers/webgl/WebGlCoreRenderOp.d.ts +4 -1
  49. package/dist/src/core/renderers/webgl/WebGlCoreRenderOp.js +22 -4
  50. package/dist/src/core/renderers/webgl/WebGlCoreRenderOp.js.map +1 -1
  51. package/dist/src/core/renderers/webgl/WebGlCoreRenderer.d.ts +2 -2
  52. package/dist/src/core/renderers/webgl/WebGlCoreRenderer.js +29 -15
  53. package/dist/src/core/renderers/webgl/WebGlCoreRenderer.js.map +1 -1
  54. package/dist/src/core/renderers/webgl/WebGlCoreShader.d.ts +46 -3
  55. package/dist/src/core/renderers/webgl/WebGlCoreShader.js +44 -9
  56. package/dist/src/core/renderers/webgl/WebGlCoreShader.js.map +1 -1
  57. package/dist/src/core/renderers/webgl/internal/BufferCollection.js +1 -1
  58. package/dist/src/core/renderers/webgl/internal/RendererUtils.js +1 -1
  59. package/dist/src/core/renderers/webgl/internal/ShaderUtils.js +1 -1
  60. package/dist/src/core/renderers/webgl/internal/WebGlUtils.js +1 -1
  61. package/dist/src/core/renderers/webgl/shaders/DefaultShader.js +1 -1
  62. package/dist/src/core/renderers/webgl/shaders/DefaultShaderBatched.js +1 -1
  63. package/dist/src/core/renderers/webgl/shaders/DynamicShader.d.ts +8 -6
  64. package/dist/src/core/renderers/webgl/shaders/DynamicShader.js +20 -13
  65. package/dist/src/core/renderers/webgl/shaders/DynamicShader.js.map +1 -1
  66. package/dist/src/core/renderers/webgl/shaders/RoundedRectangle.d.ts +5 -6
  67. package/dist/src/core/renderers/webgl/shaders/RoundedRectangle.js +12 -11
  68. package/dist/src/core/renderers/webgl/shaders/RoundedRectangle.js.map +1 -1
  69. package/dist/src/core/renderers/webgl/shaders/SdfShader.d.ts +1 -1
  70. package/dist/src/core/renderers/webgl/shaders/SdfShader.js +1 -1
  71. package/dist/src/core/renderers/webgl/shaders/SdfShader.js.map +1 -1
  72. package/dist/src/core/renderers/webgl/shaders/effects/BorderBottomEffect.d.ts +16 -0
  73. package/dist/src/core/renderers/webgl/shaders/effects/BorderBottomEffect.js +5 -2
  74. package/dist/src/core/renderers/webgl/shaders/effects/BorderBottomEffect.js.map +1 -1
  75. package/dist/src/core/renderers/webgl/shaders/effects/BorderEffect.d.ts +16 -0
  76. package/dist/src/core/renderers/webgl/shaders/effects/BorderEffect.js +5 -2
  77. package/dist/src/core/renderers/webgl/shaders/effects/BorderEffect.js.map +1 -1
  78. package/dist/src/core/renderers/webgl/shaders/effects/BorderLeftEffect.d.ts +16 -0
  79. package/dist/src/core/renderers/webgl/shaders/effects/BorderLeftEffect.js +5 -2
  80. package/dist/src/core/renderers/webgl/shaders/effects/BorderLeftEffect.js.map +1 -1
  81. package/dist/src/core/renderers/webgl/shaders/effects/BorderRightEffect.d.ts +16 -0
  82. package/dist/src/core/renderers/webgl/shaders/effects/BorderRightEffect.js +5 -2
  83. package/dist/src/core/renderers/webgl/shaders/effects/BorderRightEffect.js.map +1 -1
  84. package/dist/src/core/renderers/webgl/shaders/effects/BorderTopEffect.d.ts +16 -0
  85. package/dist/src/core/renderers/webgl/shaders/effects/BorderTopEffect.js +5 -2
  86. package/dist/src/core/renderers/webgl/shaders/effects/BorderTopEffect.js.map +1 -1
  87. package/dist/src/core/renderers/webgl/shaders/effects/EffectUtils.js +1 -1
  88. package/dist/src/core/renderers/webgl/shaders/effects/FadeOutEffect.d.ts +12 -0
  89. package/dist/src/core/renderers/webgl/shaders/effects/FadeOutEffect.js +100 -0
  90. package/dist/src/core/renderers/webgl/shaders/effects/FadeOutEffect.js.map +1 -0
  91. package/dist/src/core/renderers/webgl/shaders/effects/GlitchEffect.d.ts +28 -0
  92. package/dist/src/core/renderers/webgl/shaders/effects/GlitchEffect.js +3 -0
  93. package/dist/src/core/renderers/webgl/shaders/effects/GlitchEffect.js.map +1 -1
  94. package/dist/src/core/renderers/webgl/shaders/effects/GrayscaleEffect.d.ts +3 -0
  95. package/dist/src/core/renderers/webgl/shaders/effects/GrayscaleEffect.js +4 -1
  96. package/dist/src/core/renderers/webgl/shaders/effects/GrayscaleEffect.js.map +1 -1
  97. package/dist/src/core/renderers/webgl/shaders/effects/LinearGradientEffect.d.ts +19 -0
  98. package/dist/src/core/renderers/webgl/shaders/effects/LinearGradientEffect.js +5 -2
  99. package/dist/src/core/renderers/webgl/shaders/effects/LinearGradientEffect.js.map +1 -1
  100. package/dist/src/core/renderers/webgl/shaders/effects/RadialGradientEffect.d.ts +38 -0
  101. package/dist/src/core/renderers/webgl/shaders/effects/RadialGradientEffect.js +116 -0
  102. package/dist/src/core/renderers/webgl/shaders/effects/RadialGradientEffect.js.map +1 -0
  103. package/dist/src/core/renderers/webgl/shaders/effects/RadiusEffect.d.ts +11 -0
  104. package/dist/src/core/renderers/webgl/shaders/effects/RadiusEffect.js +4 -1
  105. package/dist/src/core/renderers/webgl/shaders/effects/RadiusEffect.js.map +1 -1
  106. package/dist/src/core/scene/Scene.js +1 -1
  107. package/dist/src/core/text-rendering/TextTextureRendererUtils.js +1 -1
  108. package/dist/src/core/text-rendering/TrFontManager.js +1 -1
  109. package/dist/src/core/text-rendering/font-face-types/SdfTrFontFace/SdfTrFontFace.js +1 -1
  110. package/dist/src/core/text-rendering/font-face-types/SdfTrFontFace/internal/FontShaper.js +1 -1
  111. package/dist/src/core/text-rendering/font-face-types/SdfTrFontFace/internal/SdfFontShaper.js +1 -1
  112. package/dist/src/core/text-rendering/font-face-types/TrFontFace.js +1 -1
  113. package/dist/src/core/text-rendering/font-face-types/WebTrFontFace.js +1 -1
  114. package/dist/src/core/text-rendering/renderers/CanvasTextRenderer.d.ts +2 -2
  115. package/dist/src/core/text-rendering/renderers/CanvasTextRenderer.js +5 -2
  116. package/dist/src/core/text-rendering/renderers/CanvasTextRenderer.js.map +1 -1
  117. package/dist/src/core/text-rendering/renderers/LightningTextTextureRenderer.js +1 -1
  118. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.d.ts +2 -2
  119. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.js +3 -3
  120. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.js.map +1 -1
  121. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/PeekableGenerator.js +1 -1
  122. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/SpecialCodepoints.js +1 -1
  123. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/constants.js +1 -1
  124. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/getStartConditions.js +1 -1
  125. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/getUnicodeCodepoints.js +1 -1
  126. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/layoutText.js +1 -1
  127. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/makeRenderWindow.js +1 -1
  128. package/dist/src/core/text-rendering/renderers/SdfTextRenderer/internal/measureText.js +1 -1
  129. package/dist/src/core/text-rendering/renderers/TextRenderer.d.ts +2 -1
  130. package/dist/src/core/text-rendering/renderers/TextRenderer.js +1 -1
  131. package/dist/src/core/text-rendering/renderers/TextRenderer.js.map +1 -1
  132. package/dist/src/core/textures/ColorTexture.js +1 -1
  133. package/dist/src/core/textures/ImageTexture.js +1 -1
  134. package/dist/src/core/textures/NoiseTexture.js +1 -1
  135. package/dist/src/core/textures/SubTexture.js +1 -1
  136. package/dist/src/core/textures/Texture.js +1 -1
  137. package/dist/src/core/utils.js +1 -1
  138. package/dist/src/main-api/INode.d.ts +19 -0
  139. package/dist/src/main-api/INode.js +1 -1
  140. package/dist/src/main-api/IRenderDriver.js +1 -1
  141. package/dist/src/main-api/RendererMain.d.ts +1 -1
  142. package/dist/src/main-api/RendererMain.js +2 -1
  143. package/dist/src/main-api/RendererMain.js.map +1 -1
  144. package/dist/src/main-api/TextureRegistry.d.ts +33 -0
  145. package/dist/src/main-api/TextureRegistry.js +97 -0
  146. package/dist/src/main-api/TextureRegistry.js.map +1 -0
  147. package/dist/src/main-api/TextureUsageRegistry/TextureRegistry.d.ts +33 -0
  148. package/dist/src/main-api/TextureUsageRegistry/TextureRegistry.js +97 -0
  149. package/dist/src/main-api/TextureUsageRegistry/TextureRegistry.js.map +1 -0
  150. package/dist/src/main-api/texture-usage-trackers/FinalizationRegistryTextureUsageTracker.d.ts +9 -0
  151. package/dist/src/main-api/texture-usage-trackers/FinalizationRegistryTextureUsageTracker.js +38 -0
  152. package/dist/src/main-api/texture-usage-trackers/FinalizationRegistryTextureUsageTracker.js.map +1 -0
  153. package/dist/src/main-api/texture-usage-trackers/ManualCountTextureUsageTracker.d.ts +56 -0
  154. package/dist/src/main-api/texture-usage-trackers/ManualCountTextureUsageTracker.js +101 -0
  155. package/dist/src/main-api/texture-usage-trackers/ManualCountTextureUsageTracker.js.map +1 -0
  156. package/dist/src/main-api/texture-usage-trackers/TextureUsageTracker.d.ts +32 -0
  157. package/dist/src/main-api/texture-usage-trackers/TextureUsageTracker.js +28 -0
  158. package/dist/src/main-api/texture-usage-trackers/TextureUsageTracker.js.map +1 -0
  159. package/dist/src/render-drivers/main/MainOnlyNode.d.ts +2 -0
  160. package/dist/src/render-drivers/main/MainOnlyNode.js +8 -1
  161. package/dist/src/render-drivers/main/MainOnlyNode.js.map +1 -1
  162. package/dist/src/render-drivers/main/MainOnlyTextNode.js +2 -1
  163. package/dist/src/render-drivers/main/MainOnlyTextNode.js.map +1 -1
  164. package/dist/src/render-drivers/main/MainRenderDriver.js +1 -1
  165. package/dist/src/render-drivers/threadx/NodeStruct.d.ts +3 -0
  166. package/dist/src/render-drivers/threadx/NodeStruct.js +10 -1
  167. package/dist/src/render-drivers/threadx/NodeStruct.js.map +1 -1
  168. package/dist/src/render-drivers/threadx/SharedNode.d.ts +1 -0
  169. package/dist/src/render-drivers/threadx/SharedNode.js +2 -1
  170. package/dist/src/render-drivers/threadx/SharedNode.js.map +1 -1
  171. package/dist/src/render-drivers/threadx/TextNodeStruct.js +1 -1
  172. package/dist/src/render-drivers/threadx/ThreadXMainAnimationController.js +1 -1
  173. package/dist/src/render-drivers/threadx/ThreadXMainNode.js +1 -1
  174. package/dist/src/render-drivers/threadx/ThreadXMainTextNode.js +1 -1
  175. package/dist/src/render-drivers/threadx/ThreadXRenderDriver.js +3 -1
  176. package/dist/src/render-drivers/threadx/ThreadXRenderDriver.js.map +1 -1
  177. package/dist/src/render-drivers/threadx/ThreadXRendererMessage.js +1 -1
  178. package/dist/src/render-drivers/threadx/worker/ThreadXRendererNode.js +2 -1
  179. package/dist/src/render-drivers/threadx/worker/ThreadXRendererNode.js.map +1 -1
  180. package/dist/src/render-drivers/threadx/worker/ThreadXRendererTextNode.js +2 -1
  181. package/dist/src/render-drivers/threadx/worker/ThreadXRendererTextNode.js.map +1 -1
  182. package/dist/src/render-drivers/threadx/worker/renderer.js +2 -1
  183. package/dist/src/render-drivers/threadx/worker/renderer.js.map +1 -1
  184. package/dist/src/utils.d.ts +10 -2
  185. package/dist/src/utils.js +13 -3
  186. package/dist/src/utils.js.map +1 -1
  187. package/dist/tsconfig.dist.tsbuildinfo +1 -1
  188. package/package.json +6 -5
  189. package/src/common/CommonTypes.ts +70 -0
  190. package/src/common/EventEmitter.ts +77 -0
  191. package/src/common/IAnimationController.ts +29 -0
  192. package/src/core/CoreExtension.ts +32 -0
  193. package/src/core/CoreNode.ts +700 -0
  194. package/src/core/CoreShaderManager.ts +111 -0
  195. package/src/core/CoreTextNode.ts +342 -0
  196. package/src/core/CoreTextureManager.ts +323 -0
  197. package/src/core/Matrix2DContext.ts +52 -0
  198. package/src/core/Stage.ts +280 -0
  199. package/src/core/animations/AnimationManager.ts +38 -0
  200. package/src/core/animations/CoreAnimation.ts +139 -0
  201. package/src/core/animations/CoreAnimationController.ts +117 -0
  202. package/src/core/lib/glm/common.ts +231 -0
  203. package/src/core/lib/glm/index.ts +31 -0
  204. package/src/core/lib/glm/mat2.ts +499 -0
  205. package/src/core/lib/glm/mat2d.ts +547 -0
  206. package/src/core/lib/glm/mat3.ts +849 -0
  207. package/src/core/lib/glm/mat4.ts +2169 -0
  208. package/src/core/lib/glm/quat.ts +828 -0
  209. package/src/core/lib/glm/quat2.ts +951 -0
  210. package/src/core/lib/glm/vec2.ts +671 -0
  211. package/src/core/lib/glm/vec3.ts +859 -0
  212. package/src/core/lib/glm/vec4.ts +708 -0
  213. package/src/core/lib/utils.ts +144 -0
  214. package/src/core/platform.ts +40 -0
  215. package/src/core/renderers/CoreContextTexture.ts +30 -0
  216. package/src/core/renderers/CoreRenderOp.ts +22 -0
  217. package/src/core/renderers/CoreRenderer.ts +66 -0
  218. package/src/core/renderers/CoreShader.ts +41 -0
  219. package/src/core/renderers/webgl/WebGlCoreCtxSubTexture.ts +36 -0
  220. package/src/core/renderers/webgl/WebGlCoreCtxTexture.ts +208 -0
  221. package/src/core/renderers/webgl/WebGlCoreRenderOp.ts +111 -0
  222. package/src/core/renderers/webgl/WebGlCoreRenderer.ts +567 -0
  223. package/src/core/renderers/webgl/WebGlCoreShader.ts +328 -0
  224. package/src/core/renderers/webgl/internal/BufferCollection.ts +54 -0
  225. package/src/core/renderers/webgl/internal/RendererUtils.ts +134 -0
  226. package/src/core/renderers/webgl/internal/ShaderUtils.ts +135 -0
  227. package/src/core/renderers/webgl/internal/WebGlUtils.ts +35 -0
  228. package/src/core/renderers/webgl/shaders/DefaultShader.ts +95 -0
  229. package/src/core/renderers/webgl/shaders/DefaultShaderBatched.ts +132 -0
  230. package/src/core/renderers/webgl/shaders/DynamicShader.ts +430 -0
  231. package/src/core/renderers/webgl/shaders/RoundedRectangle.ts +168 -0
  232. package/src/core/renderers/webgl/shaders/SdfShader.ts +165 -0
  233. package/src/core/renderers/webgl/shaders/effects/BorderBottomEffect.ts +101 -0
  234. package/src/core/renderers/webgl/shaders/effects/BorderEffect.ts +86 -0
  235. package/src/core/renderers/webgl/shaders/effects/BorderLeftEffect.ts +101 -0
  236. package/src/core/renderers/webgl/shaders/effects/BorderRightEffect.ts +101 -0
  237. package/src/core/renderers/webgl/shaders/effects/BorderTopEffect.ts +101 -0
  238. package/src/core/renderers/webgl/shaders/effects/EffectUtils.ts +33 -0
  239. package/src/core/renderers/webgl/shaders/effects/FadeOutEffect.ts +111 -0
  240. package/src/core/renderers/webgl/shaders/effects/GlitchEffect.ts +145 -0
  241. package/src/core/renderers/webgl/shaders/effects/GrayscaleEffect.ts +37 -0
  242. package/src/core/renderers/webgl/shaders/effects/LinearGradientEffect.ts +182 -0
  243. package/src/core/renderers/webgl/shaders/effects/RadialGradientEffect.ts +159 -0
  244. package/src/core/renderers/webgl/shaders/effects/RadiusEffect.ts +106 -0
  245. package/src/core/renderers/webgl/shaders/effects/ShaderEffect.ts +114 -0
  246. package/src/core/scene/Scene.ts +120 -0
  247. package/src/core/text-rendering/TextTextureRendererUtils.ts +189 -0
  248. package/src/core/text-rendering/TrFontManager.ts +96 -0
  249. package/src/core/text-rendering/font-face-types/SdfTrFontFace/SdfTrFontFace.ts +128 -0
  250. package/src/core/text-rendering/font-face-types/SdfTrFontFace/internal/FontShaper.ts +139 -0
  251. package/src/core/text-rendering/font-face-types/SdfTrFontFace/internal/SdfFontShaper.test.ts +159 -0
  252. package/src/core/text-rendering/font-face-types/SdfTrFontFace/internal/SdfFontShaper.ts +164 -0
  253. package/src/core/text-rendering/font-face-types/TrFontFace.ts +105 -0
  254. package/src/core/text-rendering/font-face-types/WebTrFontFace.ts +77 -0
  255. package/src/core/text-rendering/renderers/CanvasTextRenderer.ts +634 -0
  256. package/src/core/text-rendering/renderers/LightningTextTextureRenderer.ts +705 -0
  257. package/src/core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.ts +647 -0
  258. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/PeekableGenerator.test.ts +48 -0
  259. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/PeekableGenerator.ts +66 -0
  260. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/SpecialCodepoints.ts +52 -0
  261. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/constants.ts +32 -0
  262. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/getStartConditions.ts +76 -0
  263. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/getUnicodeCodepoints.test.ts +133 -0
  264. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/getUnicodeCodepoints.ts +38 -0
  265. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/layoutText.ts +381 -0
  266. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/makeRenderWindow.test.ts +136 -0
  267. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/makeRenderWindow.ts +64 -0
  268. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/measureText.test.ts +41 -0
  269. package/src/core/text-rendering/renderers/SdfTextRenderer/internal/measureText.ts +51 -0
  270. package/src/core/text-rendering/renderers/TextRenderer.ts +371 -0
  271. package/src/core/textures/ColorTexture.ts +85 -0
  272. package/src/core/textures/ImageTexture.ts +113 -0
  273. package/src/core/textures/NoiseTexture.ts +96 -0
  274. package/src/core/textures/SubTexture.ts +140 -0
  275. package/src/core/textures/Texture.ts +162 -0
  276. package/src/core/utils.ts +222 -0
  277. package/src/main-api/INode.ts +443 -0
  278. package/src/main-api/IRenderDriver.ts +58 -0
  279. package/src/main-api/RendererMain.ts +451 -0
  280. package/src/render-drivers/main/MainOnlyNode.ts +429 -0
  281. package/src/render-drivers/main/MainOnlyTextNode.ts +220 -0
  282. package/src/render-drivers/main/MainRenderDriver.ts +117 -0
  283. package/src/render-drivers/threadx/NodeStruct.ts +290 -0
  284. package/src/render-drivers/threadx/SharedNode.ts +95 -0
  285. package/src/render-drivers/threadx/TextNodeStruct.ts +166 -0
  286. package/src/render-drivers/threadx/ThreadXMainAnimationController.ts +99 -0
  287. package/src/render-drivers/threadx/ThreadXMainNode.ts +151 -0
  288. package/src/render-drivers/threadx/ThreadXMainTextNode.ts +75 -0
  289. package/src/render-drivers/threadx/ThreadXRenderDriver.ts +247 -0
  290. package/src/render-drivers/threadx/ThreadXRendererMessage.ts +82 -0
  291. package/src/render-drivers/threadx/worker/ThreadXRendererNode.ts +232 -0
  292. package/src/render-drivers/threadx/worker/ThreadXRendererTextNode.ts +146 -0
  293. package/src/render-drivers/threadx/worker/renderer.ts +138 -0
  294. package/src/render-drivers/utils.ts +57 -0
  295. package/src/utils.ts +202 -0
package/NOTICE CHANGED
@@ -1,4 +1,3 @@
1
- This component contains software that is Copyright (c) 2023 Comcast.
1
+ This component contains software that is Copyright 2023 Comcast Cable Communications Management, LLC.
2
2
  The component is licensed to you under the Apache License, Version 2.0 (the "License").
3
3
  You may not use the component except in compliance with the License.
4
-
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -6,6 +6,7 @@ import type { CoreShader } from './renderers/CoreShader.js';
6
6
  import type { Stage } from './Stage.js';
7
7
  import type { Texture } from './textures/Texture.js';
8
8
  import { EventEmitter } from '../common/EventEmitter.js';
9
+ import type { Rect } from './lib/utils.js';
9
10
  export interface CoreNodeProps {
10
11
  id: number;
11
12
  x: number;
@@ -13,6 +14,7 @@ export interface CoreNodeProps {
13
14
  width: number;
14
15
  height: number;
15
16
  alpha: number;
17
+ clipping: boolean;
16
18
  color: number;
17
19
  colorTop: number;
18
20
  colorBottom: number;
@@ -84,7 +86,7 @@ export declare class CoreNode extends EventEmitter implements ICoreNode {
84
86
  * @param delta
85
87
  */
86
88
  update(delta: number): void;
87
- renderQuads(renderer: CoreRenderer): void;
89
+ renderQuads(renderer: CoreRenderer, clippingRect: Rect | null): void;
88
90
  get id(): number;
89
91
  get x(): number;
90
92
  set x(value: number);
@@ -119,6 +121,8 @@ export declare class CoreNode extends EventEmitter implements ICoreNode {
119
121
  set rotation(value: number);
120
122
  get alpha(): number;
121
123
  set alpha(value: number);
124
+ get clipping(): boolean;
125
+ set clipping(value: boolean);
122
126
  get color(): number;
123
127
  set color(value: number);
124
128
  get colorTop(): number;
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -204,7 +204,7 @@ export class CoreNode extends EventEmitter {
204
204
  // reset recalculation type
205
205
  this.recalculationType = 0;
206
206
  }
207
- renderQuads(renderer) {
207
+ renderQuads(renderer, clippingRect) {
208
208
  const { width, height, colorTl, colorTr, colorBl, colorBr, texture, textureOptions, shader, shaderProps, scale, } = this.props;
209
209
  const { zIndex, alpha, worldScale } = this;
210
210
  // add to list of renderables to be sorted before rendering
@@ -222,6 +222,7 @@ export class CoreNode extends EventEmitter {
222
222
  shaderProps,
223
223
  alpha,
224
224
  scale,
225
+ clippingRect,
225
226
  wpx: this.worldContext.px,
226
227
  wpy: this.worldContext.py,
227
228
  worldScale,
@@ -376,6 +377,12 @@ export class CoreNode extends EventEmitter {
376
377
  set alpha(value) {
377
378
  this.props.alpha = value;
378
379
  }
380
+ get clipping() {
381
+ return this.props.clipping;
382
+ }
383
+ set clipping(value) {
384
+ this.props.clipping = value;
385
+ }
379
386
  get color() {
380
387
  return this.props.color;
381
388
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CoreNode.js","sourceRoot":"","sources":["../../../src/core/CoreNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CoreNode.js","sourceRoot":"","sources":["../../../src/core/CoreNode.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import type { TextRenderer, TextRendererMap, TrProps, TextRendererState } from '
2
2
  import { CoreNode, type CoreNodeProps } from './CoreNode.js';
3
3
  import type { Stage } from './Stage.js';
4
4
  import type { CoreRenderer } from './renderers/CoreRenderer.js';
5
+ import type { Rect } from './lib/utils.js';
5
6
  export interface CoreTextNodeProps extends CoreNodeProps, TrProps {
6
7
  text: string;
7
8
  textRendererOverride: keyof TextRendererMap | null;
@@ -53,7 +54,7 @@ export declare class CoreTextNode extends CoreNode implements ICoreTextNode {
53
54
  set debug(value: CoreTextNodeProps['debug']);
54
55
  update(delta: number): void;
55
56
  private updateText;
56
- renderQuads(renderer: CoreRenderer): void;
57
+ renderQuads(renderer: CoreRenderer, clippingRect: Rect | null): void;
57
58
  /**
58
59
  * Resolve a text renderer and a new state based on the current text renderer props provided
59
60
  * @param props
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -207,8 +207,8 @@ export class CoreTextNode extends CoreNode {
207
207
  this.textRenderer.updateState(this.trState);
208
208
  });
209
209
  }
210
- renderQuads(renderer) {
211
- this.textRenderer.renderQuads(this.trState);
210
+ renderQuads(renderer, clippingRect) {
211
+ this.textRenderer.renderQuads(this.trState, clippingRect);
212
212
  }
213
213
  /**
214
214
  * Resolve a text renderer and a new state based on the current text renderer props provided
@@ -1 +1 @@
1
- {"version":3,"file":"CoreTextNode.js","sourceRoot":"","sources":["../../../src/core/CoreTextNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CoreTextNode.js","sourceRoot":"","sources":["../../../src/core/CoreTextNode.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -5,6 +5,7 @@ import { CoreTextureManager } from './CoreTextureManager.js';
5
5
  import { TrFontManager } from './text-rendering/TrFontManager.js';
6
6
  import { CoreShaderManager } from './CoreShaderManager.js';
7
7
  import type { TextRenderer, TextRendererMap, TrProps } from './text-rendering/renderers/TextRenderer.js';
8
+ import { type Rect } from './lib/utils.js';
8
9
  export interface StageOptions {
9
10
  rootId: number;
10
11
  appWidth: number;
@@ -37,7 +38,7 @@ export declare class Stage {
37
38
  * Start a new frame draw
38
39
  */
39
40
  drawFrame(): void;
40
- addQuads(node: CoreNode): void;
41
+ addQuads(node: CoreNode, parentClippingRect?: Rect | null): void;
41
42
  /**
42
43
  * Given a font name, and possible renderer override, return the best compatible text renderer.
43
44
  *
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -25,10 +25,9 @@ import { CoreNode } from './CoreNode.js';
25
25
  import { CoreTextureManager } from './CoreTextureManager.js';
26
26
  import { TrFontManager } from './text-rendering/TrFontManager.js';
27
27
  import { CoreShaderManager } from './CoreShaderManager.js';
28
- import { WebTrFontFace } from './text-rendering/font-face-types/WebTrFontFace.js';
29
28
  import { SdfTextRenderer } from './text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.js';
30
- import { SdfTrFontFace } from './text-rendering/font-face-types/SdfTrFontFace/SdfTrFontFace.js';
31
29
  import { CanvasTextRenderer } from './text-rendering/renderers/CanvasTextRenderer.js';
30
+ import { intersectRect } from './lib/utils.js';
32
31
  const bufferMemory = 2e6;
33
32
  const autoStart = true;
34
33
  export class Stage {
@@ -86,6 +85,7 @@ export class Stage {
86
85
  width: appWidth,
87
86
  height: appHeight,
88
87
  alpha: 1,
88
+ clipping: false,
89
89
  color: 0x00000000,
90
90
  colorTop: 0x00000000,
91
91
  colorBottom: 0x00000000,
@@ -142,14 +142,28 @@ export class Stage {
142
142
  renderer?.sortRenderables();
143
143
  renderer?.render();
144
144
  }
145
- addQuads(node) {
145
+ addQuads(node, parentClippingRect = null) {
146
146
  assertTruthy(this.renderer);
147
- node.renderQuads(this.renderer);
147
+ let clippingRect = node.clipping
148
+ ? {
149
+ x: node.worldContext.px,
150
+ y: node.worldContext.py,
151
+ width: node.width,
152
+ height: node.height,
153
+ }
154
+ : null;
155
+ if (parentClippingRect && clippingRect) {
156
+ clippingRect = intersectRect(parentClippingRect, clippingRect);
157
+ }
158
+ else if (parentClippingRect) {
159
+ clippingRect = parentClippingRect;
160
+ }
161
+ node.renderQuads(this.renderer, clippingRect);
148
162
  node.children.forEach((child) => {
149
163
  if (child.alpha === 0) {
150
164
  return;
151
165
  }
152
- this.addQuads(child);
166
+ this.addQuads(child, clippingRect);
153
167
  });
154
168
  }
155
169
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"Stage.js","sourceRoot":"","sources":["../../../src/core/Stage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Stage.js","sourceRoot":"","sources":["../../../src/core/Stage.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -23,5 +23,6 @@ export interface Bound {
23
23
  }
24
24
  export declare function intersectBound(a: Bound, b: Bound): Bound;
25
25
  export declare function intersectRect(a: Rect, b: Rect): Rect;
26
+ export declare function compareRect(a: Rect | null, b: Rect | null): boolean;
26
27
  export declare function isBoundPositive(bound: Bound): boolean;
27
28
  export declare function isRectPositive(rect: Rect): boolean;
@@ -2,7 +2,7 @@
2
2
  * If not stated otherwise in this file or this component's LICENSE file the
3
3
  * following copyright and licenses apply:
4
4
  *
5
- * Copyright 2023 Comcast
5
+ * Copyright 2023 Comcast Cable Communications Management, LLC.
6
6
  *
7
7
  * Licensed under the Apache License, Version 2.0 (the License);
8
8
  * you may not use this file except in compliance with the License.
@@ -99,6 +99,15 @@ export function intersectRect(a, b) {
99
99
  height: 0,
100
100
  };
101
101
  }
102
+ export function compareRect(a, b) {
103
+ if (a === b) {
104
+ return true;
105
+ }
106
+ if (a === null || b === null) {
107
+ return false;
108
+ }
109
+ return (a.x === b.x && a.y === b.y && a.width === b.width && a.height === b.height);
110
+ }
102
111
  export function isBoundPositive(bound) {
103
112
  return bound.x1 < bound.x2 && bound.y1 < bound.y2;
104
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/core/lib/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/core/lib/utils.ts"],"names":[],"mappings":"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"}