@codexo/exojs 0.8.3 → 0.9.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 (317) hide show
  1. package/CHANGELOG.md +107 -0
  2. package/README.md +26 -5
  3. package/dist/esm/animation/Tween.d.ts +20 -3
  4. package/dist/esm/animation/Tween.js +16 -8
  5. package/dist/esm/animation/Tween.js.map +1 -1
  6. package/dist/esm/animation/TweenManager.d.ts +16 -1
  7. package/dist/esm/animation/TweenManager.js +27 -2
  8. package/dist/esm/animation/TweenManager.js.map +1 -1
  9. package/dist/esm/audio/AudioAnalyser.d.ts +2 -0
  10. package/dist/esm/audio/AudioAnalyser.js +24 -9
  11. package/dist/esm/audio/AudioAnalyser.js.map +1 -1
  12. package/dist/esm/audio/AudioBus.d.ts +1 -0
  13. package/dist/esm/audio/AudioBus.js +8 -4
  14. package/dist/esm/audio/AudioBus.js.map +1 -1
  15. package/dist/esm/audio/AudioListener.d.ts +1 -0
  16. package/dist/esm/audio/AudioListener.js +7 -5
  17. package/dist/esm/audio/AudioListener.js.map +1 -1
  18. package/dist/esm/audio/AudioManager.d.ts +8 -2
  19. package/dist/esm/audio/AudioManager.js +14 -1
  20. package/dist/esm/audio/AudioManager.js.map +1 -1
  21. package/dist/esm/audio/BeatDetector.d.ts +2 -0
  22. package/dist/esm/audio/BeatDetector.js +27 -661
  23. package/dist/esm/audio/BeatDetector.js.map +1 -1
  24. package/dist/esm/audio/Music.d.ts +1 -0
  25. package/dist/esm/audio/Music.js +7 -3
  26. package/dist/esm/audio/Music.js.map +1 -1
  27. package/dist/esm/audio/OscillatorSound.d.ts +1 -0
  28. package/dist/esm/audio/OscillatorSound.js +7 -3
  29. package/dist/esm/audio/OscillatorSound.js.map +1 -1
  30. package/dist/esm/audio/Sound.d.ts +1 -0
  31. package/dist/esm/audio/Sound.js +7 -3
  32. package/dist/esm/audio/Sound.js.map +1 -1
  33. package/dist/esm/audio/audio-context.d.ts +2 -2
  34. package/dist/esm/audio/audio-context.js +4 -4
  35. package/dist/esm/audio/audio-context.js.map +1 -1
  36. package/dist/esm/audio/filters/ChorusFilter.d.ts +1 -0
  37. package/dist/esm/audio/filters/ChorusFilter.js +7 -3
  38. package/dist/esm/audio/filters/ChorusFilter.js.map +1 -1
  39. package/dist/esm/audio/filters/CompressorFilter.d.ts +1 -0
  40. package/dist/esm/audio/filters/CompressorFilter.js +7 -3
  41. package/dist/esm/audio/filters/CompressorFilter.js.map +1 -1
  42. package/dist/esm/audio/filters/DelayFilter.d.ts +1 -0
  43. package/dist/esm/audio/filters/DelayFilter.js +7 -3
  44. package/dist/esm/audio/filters/DelayFilter.js.map +1 -1
  45. package/dist/esm/audio/filters/EqualizerFilter.d.ts +1 -0
  46. package/dist/esm/audio/filters/EqualizerFilter.js +7 -3
  47. package/dist/esm/audio/filters/EqualizerFilter.js.map +1 -1
  48. package/dist/esm/audio/filters/GranularFilter.js +1 -86
  49. package/dist/esm/audio/filters/GranularFilter.js.map +1 -1
  50. package/dist/esm/audio/filters/HighpassFilter.d.ts +1 -0
  51. package/dist/esm/audio/filters/HighpassFilter.js +7 -3
  52. package/dist/esm/audio/filters/HighpassFilter.js.map +1 -1
  53. package/dist/esm/audio/filters/LowpassFilter.d.ts +1 -0
  54. package/dist/esm/audio/filters/LowpassFilter.js +7 -3
  55. package/dist/esm/audio/filters/LowpassFilter.js.map +1 -1
  56. package/dist/esm/audio/filters/PitchShiftFilter.js +1 -71
  57. package/dist/esm/audio/filters/PitchShiftFilter.js.map +1 -1
  58. package/dist/esm/audio/filters/ReverbFilter.d.ts +1 -0
  59. package/dist/esm/audio/filters/ReverbFilter.js +7 -3
  60. package/dist/esm/audio/filters/ReverbFilter.js.map +1 -1
  61. package/dist/esm/audio/filters/VocoderFilter.js +1 -89
  62. package/dist/esm/audio/filters/VocoderFilter.js.map +1 -1
  63. package/dist/esm/audio/filters/WorkletFilter.d.ts +2 -0
  64. package/dist/esm/audio/filters/WorkletFilter.js +10 -5
  65. package/dist/esm/audio/filters/WorkletFilter.js.map +1 -1
  66. package/dist/esm/audio/index.d.ts +15 -10
  67. package/dist/esm/audio/worklet/registerWorklet.d.ts +1 -1
  68. package/dist/esm/audio/worklet/registerWorklet.js +2 -2
  69. package/dist/esm/audio/worklet/registerWorklet.js.map +1 -1
  70. package/dist/esm/audio/worklets/beat-detector.worklet.d.ts +1 -0
  71. package/dist/esm/audio/worklets/beat-detector.worklet.js +647 -0
  72. package/dist/esm/audio/worklets/beat-detector.worklet.js.map +1 -0
  73. package/dist/esm/audio/worklets/granular.worklet.d.ts +1 -0
  74. package/dist/esm/audio/worklets/granular.worklet.js +89 -0
  75. package/dist/esm/audio/worklets/granular.worklet.js.map +1 -0
  76. package/dist/esm/audio/worklets/pitch-shift.worklet.d.ts +1 -0
  77. package/dist/esm/audio/worklets/pitch-shift.worklet.js +74 -0
  78. package/dist/esm/audio/worklets/pitch-shift.worklet.js.map +1 -0
  79. package/dist/esm/audio/worklets/vocoder.worklet.d.ts +1 -0
  80. package/dist/esm/audio/worklets/vocoder.worklet.js +92 -0
  81. package/dist/esm/audio/worklets/vocoder.worklet.js.map +1 -0
  82. package/dist/esm/core/Application.d.ts +62 -24
  83. package/dist/esm/core/Application.js +116 -40
  84. package/dist/esm/core/Application.js.map +1 -1
  85. package/dist/esm/core/Color.d.ts +0 -8
  86. package/dist/esm/core/Color.js +0 -24
  87. package/dist/esm/core/Color.js.map +1 -1
  88. package/dist/esm/core/Scene.d.ts +32 -72
  89. package/dist/esm/core/Scene.js +56 -36
  90. package/dist/esm/core/Scene.js.map +1 -1
  91. package/dist/esm/core/SceneManager.d.ts +11 -25
  92. package/dist/esm/core/SceneManager.js +37 -100
  93. package/dist/esm/core/SceneManager.js.map +1 -1
  94. package/dist/esm/core/SceneNode.d.ts +28 -14
  95. package/dist/esm/core/SceneNode.js +66 -33
  96. package/dist/esm/core/SceneNode.js.map +1 -1
  97. package/dist/esm/core/Signal.d.ts +24 -28
  98. package/dist/esm/core/Signal.js +64 -50
  99. package/dist/esm/core/Signal.js.map +1 -1
  100. package/dist/esm/core/Timer.d.ts +1 -0
  101. package/dist/esm/core/Timer.js +3 -0
  102. package/dist/esm/core/Timer.js.map +1 -1
  103. package/dist/esm/debug/BoundingBoxesLayer.js +1 -1
  104. package/dist/esm/debug/BoundingBoxesLayer.js.map +1 -1
  105. package/dist/esm/debug/HitTestLayer.js +1 -1
  106. package/dist/esm/debug/HitTestLayer.js.map +1 -1
  107. package/dist/esm/debug/PerformanceLayer.js +1 -2
  108. package/dist/esm/debug/PerformanceLayer.js.map +1 -1
  109. package/dist/esm/debug/PointerStackLayer.js +1 -2
  110. package/dist/esm/debug/PointerStackLayer.js.map +1 -1
  111. package/dist/esm/debug/RenderPassInspectorLayer.js +1 -2
  112. package/dist/esm/debug/RenderPassInspectorLayer.js.map +1 -1
  113. package/dist/esm/index.js +23 -7
  114. package/dist/esm/index.js.map +1 -1
  115. package/dist/esm/input/InputManager.d.ts +1 -0
  116. package/dist/esm/input/InputManager.js +30 -3
  117. package/dist/esm/input/InputManager.js.map +1 -1
  118. package/dist/esm/input/InteractionManager.d.ts +5 -2
  119. package/dist/esm/input/InteractionManager.js +29 -18
  120. package/dist/esm/input/InteractionManager.js.map +1 -1
  121. package/dist/esm/input/Pointer.js +3 -2
  122. package/dist/esm/input/Pointer.js.map +1 -1
  123. package/dist/esm/input/internal/interactionManagerRegistry.d.ts +9 -0
  124. package/dist/esm/input/internal/interactionManagerRegistry.js +10 -0
  125. package/dist/esm/input/internal/interactionManagerRegistry.js.map +1 -0
  126. package/dist/esm/math/AbstractVector.d.ts +1 -7
  127. package/dist/esm/math/AbstractVector.js +6 -20
  128. package/dist/esm/math/AbstractVector.js.map +1 -1
  129. package/dist/esm/math/Circle.js +0 -2
  130. package/dist/esm/math/Circle.js.map +1 -1
  131. package/dist/esm/math/Collision.d.ts +9 -3
  132. package/dist/esm/math/Ellipse.d.ts +2 -5
  133. package/dist/esm/math/Ellipse.js +10 -7
  134. package/dist/esm/math/Ellipse.js.map +1 -1
  135. package/dist/esm/math/ObservableVector.d.ts +1 -1
  136. package/dist/esm/math/ObservableVector.js +3 -3
  137. package/dist/esm/math/ObservableVector.js.map +1 -1
  138. package/dist/esm/math/Polygon.d.ts +0 -2
  139. package/dist/esm/math/Polygon.js +1 -9
  140. package/dist/esm/math/Polygon.js.map +1 -1
  141. package/dist/esm/math/Rectangle.js +0 -2
  142. package/dist/esm/math/Rectangle.js.map +1 -1
  143. package/dist/esm/math/collision-detection.d.ts +19 -4
  144. package/dist/esm/math/collision-detection.js +61 -4
  145. package/dist/esm/math/collision-detection.js.map +1 -1
  146. package/dist/esm/math/swept-collision.d.ts +16 -12
  147. package/dist/esm/math/swept-collision.js +109 -19
  148. package/dist/esm/math/swept-collision.js.map +1 -1
  149. package/dist/esm/particles/ParticleSystem.js +1 -1
  150. package/dist/esm/particles/ParticleSystem.js.map +1 -1
  151. package/dist/esm/particles/index.d.ts +1 -0
  152. package/dist/esm/rendering/CallbackRenderPass.d.ts +1 -0
  153. package/dist/esm/rendering/CallbackRenderPass.js +1 -0
  154. package/dist/esm/rendering/CallbackRenderPass.js.map +1 -1
  155. package/dist/esm/rendering/Container.d.ts +2 -1
  156. package/dist/esm/rendering/Container.js +17 -16
  157. package/dist/esm/rendering/Container.js.map +1 -1
  158. package/dist/esm/rendering/RenderBackend.d.ts +1 -0
  159. package/dist/esm/rendering/RenderNode.d.ts +1 -3
  160. package/dist/esm/rendering/RenderNode.js +12 -19
  161. package/dist/esm/rendering/RenderNode.js.map +1 -1
  162. package/dist/esm/rendering/RenderPass.d.ts +1 -0
  163. package/dist/esm/rendering/RenderStats.d.ts +9 -0
  164. package/dist/esm/rendering/RenderStats.js +2 -0
  165. package/dist/esm/rendering/RenderStats.js.map +1 -1
  166. package/dist/esm/rendering/RendererRegistry.d.ts +1 -0
  167. package/dist/esm/rendering/RendererRegistry.js +1 -0
  168. package/dist/esm/rendering/RendererRegistry.js.map +1 -1
  169. package/dist/esm/rendering/View.d.ts +23 -0
  170. package/dist/esm/rendering/View.js +42 -0
  171. package/dist/esm/rendering/View.js.map +1 -1
  172. package/dist/esm/rendering/index.d.ts +89 -59
  173. package/dist/esm/rendering/mesh/Mesh.js +1 -1
  174. package/dist/esm/rendering/mesh/Mesh.js.map +1 -1
  175. package/dist/esm/rendering/mesh/MeshShader.d.ts +1 -0
  176. package/dist/esm/rendering/mesh/MeshShader.js +1 -0
  177. package/dist/esm/rendering/mesh/MeshShader.js.map +1 -1
  178. package/dist/esm/rendering/shader/Shader.d.ts +1 -0
  179. package/dist/esm/rendering/shader/Shader.js +1 -0
  180. package/dist/esm/rendering/shader/Shader.js.map +1 -1
  181. package/dist/esm/rendering/shader/ShaderUniform.d.ts +1 -0
  182. package/dist/esm/rendering/shader/ShaderUniform.js +1 -0
  183. package/dist/esm/rendering/shader/ShaderUniform.js.map +1 -1
  184. package/dist/esm/rendering/sprite/Sprite.d.ts +3 -2
  185. package/dist/esm/rendering/sprite/Sprite.js +15 -13
  186. package/dist/esm/rendering/sprite/Sprite.js.map +1 -1
  187. package/dist/esm/rendering/text/AbstractText.d.ts +36 -0
  188. package/dist/esm/rendering/text/AbstractText.js +49 -0
  189. package/dist/esm/rendering/text/AbstractText.js.map +1 -0
  190. package/dist/esm/rendering/text/BitmapText.d.ts +97 -0
  191. package/dist/esm/rendering/text/BitmapText.js +220 -0
  192. package/dist/esm/rendering/text/BitmapText.js.map +1 -0
  193. package/dist/esm/rendering/text/BmFont.d.ts +50 -0
  194. package/dist/esm/rendering/text/BmFont.js +24 -0
  195. package/dist/esm/rendering/text/BmFont.js.map +1 -0
  196. package/dist/esm/rendering/text/GlyphAtlas.d.ts +104 -0
  197. package/dist/esm/rendering/text/GlyphAtlas.js +347 -0
  198. package/dist/esm/rendering/text/GlyphAtlas.js.map +1 -0
  199. package/dist/esm/rendering/text/GlyphAtlasPool.d.ts +40 -0
  200. package/dist/esm/rendering/text/GlyphAtlasPool.js +67 -0
  201. package/dist/esm/rendering/text/GlyphAtlasPool.js.map +1 -0
  202. package/dist/esm/rendering/text/GlyphSdf.d.ts +92 -0
  203. package/dist/esm/rendering/text/GlyphSdf.js +220 -0
  204. package/dist/esm/rendering/text/GlyphSdf.js.map +1 -0
  205. package/dist/esm/rendering/text/HTMLText.d.ts +107 -0
  206. package/dist/esm/rendering/text/HTMLText.js +284 -0
  207. package/dist/esm/rendering/text/HTMLText.js.map +1 -0
  208. package/dist/esm/rendering/text/LayoutOptions.d.ts +30 -0
  209. package/dist/esm/rendering/text/Text.d.ts +89 -20
  210. package/dist/esm/rendering/text/Text.js +176 -101
  211. package/dist/esm/rendering/text/Text.js.map +1 -1
  212. package/dist/esm/rendering/text/TextLayout.d.ts +20 -8
  213. package/dist/esm/rendering/text/TextLayout.js +234 -25
  214. package/dist/esm/rendering/text/TextLayout.js.map +1 -1
  215. package/dist/esm/rendering/text/TextStyle.d.ts +154 -87
  216. package/dist/esm/rendering/text/TextStyle.js +257 -203
  217. package/dist/esm/rendering/text/TextStyle.js.map +1 -1
  218. package/dist/esm/rendering/text/types.d.ts +73 -13
  219. package/dist/esm/rendering/texture/Texture.d.ts +1 -0
  220. package/dist/esm/rendering/texture/Texture.js +1 -0
  221. package/dist/esm/rendering/texture/Texture.js.map +1 -1
  222. package/dist/esm/rendering/types.d.ts +3 -1
  223. package/dist/esm/rendering/types.js +2 -0
  224. package/dist/esm/rendering/types.js.map +1 -1
  225. package/dist/esm/rendering/video/Video.d.ts +2 -1
  226. package/dist/esm/rendering/video/Video.js +9 -5
  227. package/dist/esm/rendering/video/Video.js.map +1 -1
  228. package/dist/esm/rendering/webgl2/WebGl2Backend.js +41 -5
  229. package/dist/esm/rendering/webgl2/WebGl2Backend.js.map +1 -1
  230. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js +4 -4
  231. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js.map +1 -1
  232. package/dist/esm/rendering/webgl2/WebGl2TextRenderer.d.ts +56 -0
  233. package/dist/esm/rendering/webgl2/WebGl2TextRenderer.js +482 -0
  234. package/dist/esm/rendering/webgl2/WebGl2TextRenderer.js.map +1 -0
  235. package/dist/esm/rendering/webgl2/glsl/text-color.frag.js +4 -0
  236. package/dist/esm/rendering/webgl2/glsl/text-color.frag.js.map +1 -0
  237. package/dist/esm/rendering/webgl2/glsl/text-msdf.frag.js +4 -0
  238. package/dist/esm/rendering/webgl2/glsl/text-msdf.frag.js.map +1 -0
  239. package/dist/esm/rendering/webgl2/glsl/text-sdf.frag.js +4 -0
  240. package/dist/esm/rendering/webgl2/glsl/text-sdf.frag.js.map +1 -0
  241. package/dist/esm/rendering/webgl2/glsl/text.vert.js +4 -0
  242. package/dist/esm/rendering/webgl2/glsl/text.vert.js.map +1 -0
  243. package/dist/esm/rendering/webgpu/WebGpuBackend.js +16 -8
  244. package/dist/esm/rendering/webgpu/WebGpuBackend.js.map +1 -1
  245. package/dist/esm/rendering/webgpu/WebGpuBlendState.js +26 -0
  246. package/dist/esm/rendering/webgpu/WebGpuBlendState.js.map +1 -1
  247. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.d.ts +2 -2
  248. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js +23 -15
  249. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js.map +1 -1
  250. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js +9 -1
  251. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js.map +1 -1
  252. package/dist/esm/rendering/webgpu/WebGpuTextRenderer.d.ts +70 -0
  253. package/dist/esm/rendering/webgpu/WebGpuTextRenderer.js +773 -0
  254. package/dist/esm/rendering/webgpu/WebGpuTextRenderer.js.map +1 -0
  255. package/dist/esm/rendering/webgpu/compute/WebGpuComputePipeline.js +96 -0
  256. package/dist/esm/rendering/webgpu/compute/WebGpuComputePipeline.js.map +1 -0
  257. package/dist/esm/rendering/webgpu/compute/WebGpuStorageBuffer.js +68 -0
  258. package/dist/esm/rendering/webgpu/compute/WebGpuStorageBuffer.js.map +1 -0
  259. package/dist/esm/resources/Asset.d.ts +23 -0
  260. package/dist/esm/resources/Asset.js +23 -0
  261. package/dist/esm/resources/Asset.js.map +1 -0
  262. package/dist/esm/resources/AssetDefinitions.d.ts +137 -0
  263. package/dist/esm/resources/Assets.d.ts +35 -0
  264. package/dist/esm/resources/Assets.js +32 -0
  265. package/dist/esm/resources/Assets.js.map +1 -0
  266. package/dist/esm/resources/IndexedDbDatabase.js +17 -1
  267. package/dist/esm/resources/IndexedDbDatabase.js.map +1 -1
  268. package/dist/esm/resources/IndexedDbStore.js +17 -1
  269. package/dist/esm/resources/IndexedDbStore.js.map +1 -1
  270. package/dist/esm/resources/Loader.d.ts +244 -18
  271. package/dist/esm/resources/Loader.js +456 -50
  272. package/dist/esm/resources/Loader.js.map +1 -1
  273. package/dist/esm/resources/LoadingQueue.d.ts +28 -0
  274. package/dist/esm/resources/LoadingQueue.js +59 -0
  275. package/dist/esm/resources/LoadingQueue.js.map +1 -0
  276. package/dist/esm/resources/factories/BmFontFactory.d.ts +25 -0
  277. package/dist/esm/resources/factories/BmFontFactory.js +96 -0
  278. package/dist/esm/resources/factories/BmFontFactory.js.map +1 -0
  279. package/dist/esm/resources/factories/CsvFactory.d.ts +35 -0
  280. package/dist/esm/resources/factories/CsvFactory.js +87 -0
  281. package/dist/esm/resources/factories/CsvFactory.js.map +1 -0
  282. package/dist/esm/resources/factories/MusicFactory.d.ts +8 -2
  283. package/dist/esm/resources/factories/MusicFactory.js +25 -14
  284. package/dist/esm/resources/factories/MusicFactory.js.map +1 -1
  285. package/dist/esm/resources/factories/SoundFactory.d.ts +2 -2
  286. package/dist/esm/resources/factories/SoundFactory.js.map +1 -1
  287. package/dist/esm/resources/factories/SubtitleFactory.d.ts +28 -0
  288. package/dist/esm/resources/factories/SubtitleFactory.js +203 -0
  289. package/dist/esm/resources/factories/SubtitleFactory.js.map +1 -0
  290. package/dist/esm/resources/factories/SvgFactory.d.ts +18 -1
  291. package/dist/esm/resources/factories/SvgFactory.js +21 -2
  292. package/dist/esm/resources/factories/SvgFactory.js.map +1 -1
  293. package/dist/esm/resources/factories/VideoFactory.d.ts +8 -2
  294. package/dist/esm/resources/factories/VideoFactory.js +27 -20
  295. package/dist/esm/resources/factories/VideoFactory.js.map +1 -1
  296. package/dist/esm/resources/factories/XmlFactory.d.ts +24 -0
  297. package/dist/esm/resources/factories/XmlFactory.js +37 -0
  298. package/dist/esm/resources/factories/XmlFactory.js.map +1 -0
  299. package/dist/esm/resources/index.d.ts +8 -1
  300. package/dist/esm/resources/tokens.d.ts +49 -3
  301. package/dist/esm/resources/tokens.js +50 -4
  302. package/dist/esm/resources/tokens.js.map +1 -1
  303. package/dist/exo.esm.js +6635 -2550
  304. package/dist/exo.esm.js.map +1 -1
  305. package/package.json +19 -6
  306. package/dist/esm/input/interaction-hooks.d.ts +0 -34
  307. package/dist/esm/input/interaction-hooks.js +0 -35
  308. package/dist/esm/input/interaction-hooks.js.map +0 -1
  309. package/dist/esm/rendering/text/DynamicGlyphAtlas.d.ts +0 -33
  310. package/dist/esm/rendering/text/DynamicGlyphAtlas.js +0 -134
  311. package/dist/esm/rendering/text/DynamicGlyphAtlas.js.map +0 -1
  312. package/dist/esm/rendering/text/atlas-singleton.d.ts +0 -7
  313. package/dist/esm/rendering/text/atlas-singleton.js +0 -17
  314. package/dist/esm/rendering/text/atlas-singleton.js.map +0 -1
  315. package/dist/esm/resources/factories/VttFactory.d.ts +0 -24
  316. package/dist/esm/resources/factories/VttFactory.js +0 -158
  317. package/dist/esm/resources/factories/VttFactory.js.map +0 -1
@@ -0,0 +1,4 @@
1
+ var textSdfFragSource = "#version 300 es\nprecision mediump float;\n\nuniform sampler2D u_texture; // R8 SDF atlas\nuniform sampler2D u_nodeData; // RGBA32F per-node data (see WebGl2TextRenderer)\nuniform float u_pageSize; // atlas page size in px (for shadow UV conversion)\n\nflat in int v_nodeIndex;\n in vec2 v_texcoord;\n in vec2 v_gradUV;\n\nlayout(location = 0) out vec4 fragColor;\n\nvoid main(void) {\n int ni = v_nodeIndex;\n\n // texel 2: fillColor\n // texel 3: outlineColor\n // texel 4: (outlineMin, shadowAlpha, softness, gradientEnabled)\n // outlineMin = 0.5 → disabled; outlineMin < 0.5 → enabled\n // texel 5: shadowColor\n // texel 6: (shadowOffsetX_px, shadowOffsetY_px, gradientVertical, unused)\n // texel 7: gradientTop\n // texel 8: gradientBottom\n vec4 tFill = texelFetch(u_nodeData, ivec2(2, ni), 0);\n vec4 tOutline = texelFetch(u_nodeData, ivec2(3, ni), 0);\n vec4 tParams = texelFetch(u_nodeData, ivec2(4, ni), 0);\n vec4 tShadow = texelFetch(u_nodeData, ivec2(5, ni), 0);\n vec4 tShadow2 = texelFetch(u_nodeData, ivec2(6, ni), 0);\n vec4 tGradTop = texelFetch(u_nodeData, ivec2(7, ni), 0);\n vec4 tGradBot = texelFetch(u_nodeData, ivec2(8, ni), 0);\n\n float outlineMin = tParams.x;\n float shadowAlpha = tParams.y;\n float soft = max(tParams.z, 0.001);\n float gradEnabled = tParams.w;\n vec2 shadowOffset = tShadow2.xy / u_pageSize;\n float gradVertical = tShadow2.z;\n\n float sd = texture(u_texture, v_texcoord).r;\n float fill = smoothstep(0.5 - soft, 0.5 + soft, sd);\n\n float outline = outlineMin < 0.5\n ? smoothstep(outlineMin - soft, outlineMin + soft, sd) * (1.0 - fill)\n : 0.0;\n\n float shadowSd = texture(u_texture, v_texcoord - shadowOffset).r;\n float shadow = smoothstep(0.5 - soft, 0.5 + soft, shadowSd)\n * shadowAlpha * (1.0 - fill) * (1.0 - outline);\n\n vec4 fillColor;\n if (gradEnabled > 0.5) {\n float t = gradVertical > 0.5 ? v_gradUV.y : v_gradUV.x;\n fillColor = mix(tGradBot, tGradTop, t);\n } else {\n fillColor = tFill;\n }\n\n fragColor = fillColor * fill\n + tOutline * outline\n + tShadow * shadow;\n}\n";
2
+
3
+ export { textSdfFragSource as default };
4
+ //# sourceMappingURL=text-sdf.frag.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-sdf.frag.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -0,0 +1,4 @@
1
+ var textVertSource = "#version 300 es\nprecision highp float;\n\nlayout(location = 0) in vec2 a_position;\nlayout(location = 1) in vec2 a_texcoord;\nlayout(location = 2) in float a_nodeIndex;\n\nuniform mat3 u_projection;\nuniform sampler2D u_nodeData;\n\nflat out int v_nodeIndex;\n out vec2 v_texcoord;\n out vec2 v_gradUV;\n\nvoid main(void) {\n int ni = int(a_nodeIndex);\n\n // texel 0: (a, c, 0, tx) texel 1: (b, d, 0, ty)\n vec4 t0 = texelFetch(u_nodeData, ivec2(0, ni), 0);\n vec4 t1 = texelFetch(u_nodeData, ivec2(1, ni), 0);\n\n // Reconstruct column-major mat3 from stored components\n mat3 xf = mat3(\n t0.x, t0.y, 0.0, // col 0: (a, c, 0)\n t1.x, t1.y, 0.0, // col 1: (b, d, 0)\n t0.w, t1.w, 1.0 // col 2: (tx, ty, 1)\n );\n\n gl_Position = vec4((u_projection * xf * vec3(a_position, 1.0)).xy, 0.0, 1.0);\n v_texcoord = a_texcoord;\n v_nodeIndex = ni;\n\n // texel 9: (minX, minY, width, height) — text block bounds in local space.\n // Normalise a_position into [0,1] so fragment shaders can interpolate\n // gradients across the whole block rather than individual atlas UVs.\n vec4 tBounds = texelFetch(u_nodeData, ivec2(9, ni), 0);\n vec2 bSize = tBounds.zw;\n v_gradUV = (bSize.x > 0.0 && bSize.y > 0.0)\n ? clamp((a_position - tBounds.xy) / bSize, 0.0, 1.0)\n : vec2(0.0);\n}\n";
2
+
3
+ export { textVertSource as default };
4
+ //# sourceMappingURL=text.vert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.vert.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;"}
@@ -2,6 +2,8 @@ import { Color } from '../../core/Color.js';
2
2
  import { Signal } from '../../core/Signal.js';
3
3
  import { Vector } from '../../math/Vector.js';
4
4
  import { ParticleSystem } from '../../particles/ParticleSystem.js';
5
+ import { BitmapText } from '../text/BitmapText.js';
6
+ import { Text } from '../text/Text.js';
5
7
  import { WrapModes, ScaleModes } from '../types.js';
6
8
  import { Mesh } from '../mesh/Mesh.js';
7
9
  import { RenderBackendType } from '../RenderBackendType.js';
@@ -15,6 +17,7 @@ import { WebGpuMaskCompositor } from './WebGpuMaskCompositor.js';
15
17
  import { WebGpuMeshRenderer } from './WebGpuMeshRenderer.js';
16
18
  import { WebGpuParticleRenderer } from './WebGpuParticleRenderer.js';
17
19
  import { WebGpuSpriteRenderer } from './WebGpuSpriteRenderer.js';
20
+ import { WebGpuTextRenderer } from './WebGpuTextRenderer.js';
18
21
 
19
22
  /// <reference types="@webgpu/types" />
20
23
  const managedTextureFormat = 'rgba8unorm';
@@ -78,7 +81,10 @@ class WebGpuBackend {
78
81
  _hasPresentedFrame = false;
79
82
  _stats = createRenderStats();
80
83
  constructor(app) {
81
- const { width, height, clearColor } = app.options;
84
+ const canvasOptions = app.options.canvas ?? {};
85
+ const width = canvasOptions.width ?? 800;
86
+ const height = canvasOptions.height ?? 600;
87
+ const clearColor = app.options.clearColor;
82
88
  this._canvas = app.canvas;
83
89
  this._rootRenderTarget = new RenderTarget(width, height, true);
84
90
  this._renderTarget = this._rootRenderTarget;
@@ -88,6 +94,8 @@ class WebGpuBackend {
88
94
  this.rendererRegistry.registerRenderer(Sprite, new WebGpuSpriteRenderer());
89
95
  this.rendererRegistry.registerRenderer(Mesh, new WebGpuMeshRenderer());
90
96
  this.rendererRegistry.registerRenderer(ParticleSystem, new WebGpuParticleRenderer());
97
+ this.rendererRegistry.registerRenderer(Text, new WebGpuTextRenderer());
98
+ this.rendererRegistry.registerRenderer(BitmapText, new WebGpuTextRenderer());
91
99
  this.resize(width, height);
92
100
  }
93
101
  get view() {
@@ -228,11 +236,13 @@ class WebGpuBackend {
228
236
  return null;
229
237
  }
230
238
  const clip = this._clipPixelStack[this._clipPixelStack.length - 1];
239
+ const scaleX = this._renderTarget.root && this._renderTarget.width > 0 ? this._canvas.width / this._renderTarget.width : 1;
240
+ const scaleY = this._renderTarget.root && this._renderTarget.height > 0 ? this._canvas.height / this._renderTarget.height : 1;
231
241
  return {
232
- x: clip.x,
233
- y: clip.y,
234
- width: clip.width,
235
- height: clip.height,
242
+ x: Math.floor(clip.x * scaleX),
243
+ y: Math.floor(clip.y * scaleY),
244
+ width: Math.max(0, Math.round(clip.width * scaleX)),
245
+ height: Math.max(0, Math.round(clip.height * scaleY)),
236
246
  };
237
247
  }
238
248
  acquireRenderTexture(width, height) {
@@ -266,8 +276,6 @@ class WebGpuBackend {
266
276
  return this;
267
277
  }
268
278
  resize(width, height) {
269
- this._canvas.width = width;
270
- this._canvas.height = height;
271
279
  this._rootRenderTarget.resize(width, height);
272
280
  this._hasPresentedFrame = false;
273
281
  return this;
@@ -454,7 +462,7 @@ class WebGpuBackend {
454
462
  this._hasPresentedFrame = false;
455
463
  this._subscribeToDeviceLoss();
456
464
  this.rendererRegistry.connect(this);
457
- this.resize(this._canvas.width, this._canvas.height);
465
+ this.resize(this._rootRenderTarget.width, this._rootRenderTarget.height);
458
466
  // Kick off async pipeline pre-warm for any renderer that supports
459
467
  // it. Each renderer creates its full set of (blendMode × format)
460
468
  // pipelines via createRenderPipelineAsync in parallel, so the first
@@ -1 +1 @@
1
- {"version":3,"file":"WebGpuBackend.js","sources":["../../../../../src/rendering/webgpu/WebGpuBackend.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WebGpuBackend.js","sources":["../../../../../src/rendering/webgpu/WebGpuBackend.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -59,6 +59,32 @@ function getWebGpuBlendState(blendMode) {
59
59
  dstFactor: 'one-minus-src-alpha',
60
60
  },
61
61
  };
62
+ case BlendModes.Darken:
63
+ return {
64
+ color: {
65
+ operation: 'min',
66
+ srcFactor: 'one',
67
+ dstFactor: 'one',
68
+ },
69
+ alpha: {
70
+ operation: 'min',
71
+ srcFactor: 'one',
72
+ dstFactor: 'one',
73
+ },
74
+ };
75
+ case BlendModes.Lighten:
76
+ return {
77
+ color: {
78
+ operation: 'max',
79
+ srcFactor: 'one',
80
+ dstFactor: 'one',
81
+ },
82
+ alpha: {
83
+ operation: 'max',
84
+ srcFactor: 'one',
85
+ dstFactor: 'one',
86
+ },
87
+ };
62
88
  default:
63
89
  return {
64
90
  color: {
@@ -1 +1 @@
1
- {"version":3,"file":"WebGpuBlendState.js","sources":["../../../../../src/rendering/webgpu/WebGpuBlendState.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;AAIA;;;AAGG;AACG,SAAU,mBAAmB,CAAC,SAAqB,EAAA;IACvD,QAAQ,SAAS;QACf,KAAK,UAAU,CAAC,QAAQ;YACtB,OAAO;AACL,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AACjB,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AACjB,iBAAA;aACF;QACH,KAAK,UAAU,CAAC,QAAQ;YACtB,OAAO;AACL,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,MAAM;AACjB,oBAAA,SAAS,EAAE,eAAe;AAC3B,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,MAAM;AACjB,oBAAA,SAAS,EAAE,qBAAqB;AACjC,iBAAA;aACF;QACH,KAAK,UAAU,CAAC,QAAQ;YACtB,OAAO;AACL,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,qBAAqB;AACjC,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,WAAW;AACtB,oBAAA,SAAS,EAAE,qBAAqB;AACjC,iBAAA;aACF;QACH,KAAK,UAAU,CAAC,MAAM;YACpB,OAAO;AACL,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,eAAe;AAC3B,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,qBAAqB;AACjC,iBAAA;aACF;AACH,QAAA;YACE,OAAO;AACL,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,qBAAqB;AACjC,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,qBAAqB;AACjC,iBAAA;aACF;;AAEP;;;;"}
1
+ {"version":3,"file":"WebGpuBlendState.js","sources":["../../../../../src/rendering/webgpu/WebGpuBlendState.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;AAIA;;;AAGG;AACG,SAAU,mBAAmB,CAAC,SAAqB,EAAA;IACvD,QAAQ,SAAS;QACf,KAAK,UAAU,CAAC,QAAQ;YACtB,OAAO;AACL,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AACjB,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AACjB,iBAAA;aACF;QACH,KAAK,UAAU,CAAC,QAAQ;YACtB,OAAO;AACL,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,MAAM;AACjB,oBAAA,SAAS,EAAE,eAAe;AAC3B,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,MAAM;AACjB,oBAAA,SAAS,EAAE,qBAAqB;AACjC,iBAAA;aACF;QACH,KAAK,UAAU,CAAC,QAAQ;YACtB,OAAO;AACL,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,qBAAqB;AACjC,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,WAAW;AACtB,oBAAA,SAAS,EAAE,qBAAqB;AACjC,iBAAA;aACF;QACH,KAAK,UAAU,CAAC,MAAM;YACpB,OAAO;AACL,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,eAAe;AAC3B,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,qBAAqB;AACjC,iBAAA;aACF;QACH,KAAK,UAAU,CAAC,MAAM;YACpB,OAAO;AACL,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AACjB,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AACjB,iBAAA;aACF;QACH,KAAK,UAAU,CAAC,OAAO;YACrB,OAAO;AACL,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AACjB,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AACjB,iBAAA;aACF;AACH,QAAA;YACE,OAAO;AACL,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,qBAAqB;AACjC,iBAAA;AACD,gBAAA,KAAK,EAAE;AACL,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,KAAK;AAChB,oBAAA,SAAS,EAAE,qBAAqB;AACjC,iBAAA;aACF;;AAEP;;;;"}
@@ -5,7 +5,7 @@ export declare class WebGpuMeshRenderer extends AbstractWebGpuRenderer<Mesh> {
5
5
  private readonly _combinedTransform;
6
6
  private readonly _drawCalls;
7
7
  private readonly _pipelines;
8
- private readonly _textureBindGroups;
8
+ private _textureBindGroups;
9
9
  private readonly _customShaders;
10
10
  private _device;
11
11
  private _shaderModule;
@@ -45,7 +45,7 @@ export declare class WebGpuMeshRenderer extends AbstractWebGpuRenderer<Mesh> {
45
45
  private _writeMeshVerticesIntoBuffer;
46
46
  private _writeCustomMeshUniform;
47
47
  private _getOrCreateCustomPipeline;
48
- private _getOrCreateCustomMeshTextureBindGroup;
48
+ private _getOrCreateMeshTextureBindGroup;
49
49
  private _buildUserBindGroupLayout;
50
50
  private _uploadUserUniforms;
51
51
  private _buildUserBindGroup;
@@ -67,7 +67,7 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
67
67
  _combinedTransform = new Matrix();
68
68
  _drawCalls = [];
69
69
  _pipelines = new Map();
70
- _textureBindGroups = new Map();
70
+ _textureBindGroups = new WeakMap();
71
71
  _customShaders = new Map();
72
72
  _device = null;
73
73
  _shaderModule = null;
@@ -215,10 +215,10 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
215
215
  if (defaultUniformF32 !== null) {
216
216
  const offsetWords = (defaultUniformIndex * this._uniformAlignment) / Float32Array.BYTES_PER_ELEMENT;
217
217
  const tint = dc.mesh.tint;
218
- defaultUniformF32[offsetWords + 0] = tint.red;
219
- defaultUniformF32[offsetWords + 1] = tint.green;
220
- defaultUniformF32[offsetWords + 2] = tint.blue;
221
- defaultUniformF32[offsetWords + 3] = tint.alpha;
218
+ defaultUniformF32[offsetWords + 0] = tint.r;
219
+ defaultUniformF32[offsetWords + 1] = tint.g;
220
+ defaultUniformF32[offsetWords + 2] = tint.b;
221
+ defaultUniformF32[offsetWords + 3] = tint.a;
222
222
  defaultUniformF32[offsetWords + 4] = dc.premultiplySample ? 1 : 0;
223
223
  defaultUniformF32[offsetWords + 5] = 0;
224
224
  defaultUniformF32[offsetWords + 6] = 0;
@@ -333,7 +333,7 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
333
333
  pass.setBindGroup(0, resources.meshUniformBindGroup, [cursor * meshUniformAlignment]);
334
334
  if (dc.texture !== lastTexture) {
335
335
  lastTexture = dc.texture;
336
- pass.setBindGroup(1, this._getOrCreateCustomMeshTextureBindGroup(resources, backend, dc.texture));
336
+ pass.setBindGroup(1, this._getOrCreateMeshTextureBindGroup(resources, backend, dc.texture));
337
337
  }
338
338
  pass.setVertexBuffer(0, resources.vertexBuffer, dc.vertexByteOffset);
339
339
  pass.setIndexBuffer(resources.indexBuffer, 'uint16', dc.indexByteOffset);
@@ -360,7 +360,15 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
360
360
  if (typeof device.createRenderPipelineAsync !== 'function') {
361
361
  return;
362
362
  }
363
- const blendModes = [BlendModes.Normal, BlendModes.Additive, BlendModes.Subtract, BlendModes.Multiply, BlendModes.Screen];
363
+ const blendModes = [
364
+ BlendModes.Normal,
365
+ BlendModes.Additive,
366
+ BlendModes.Subtract,
367
+ BlendModes.Multiply,
368
+ BlendModes.Screen,
369
+ BlendModes.Darken,
370
+ BlendModes.Lighten,
371
+ ];
364
372
  const promises = [];
365
373
  for (const blendMode of blendModes) {
366
374
  for (const format of formats) {
@@ -413,7 +421,7 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
413
421
  this._indexBuffer?.destroy();
414
422
  this._uniformBuffer?.destroy();
415
423
  this._pipelines.clear();
416
- this._textureBindGroups.clear();
424
+ this._textureBindGroups = new WeakMap();
417
425
  this._vertexBuffer = null;
418
426
  this._indexBuffer = null;
419
427
  this._uniformBuffer = null;
@@ -673,7 +681,7 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
673
681
  meshUniformBindGroup: null,
674
682
  userUniformBuffer: null,
675
683
  userUniformBufferCapacity: 0,
676
- meshTextureBindGroups: new Map(),
684
+ meshTextureBindGroups: new WeakMap(),
677
685
  sampler,
678
686
  drawCount: 0,
679
687
  totalVertices: 0,
@@ -803,10 +811,10 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
803
811
  off += 12;
804
812
  // tint (vec4)
805
813
  const tint = mesh.tint;
806
- data[off + 0] = tint.red;
807
- data[off + 1] = tint.green;
808
- data[off + 2] = tint.blue;
809
- data[off + 3] = tint.alpha;
814
+ data[off + 0] = tint.r;
815
+ data[off + 1] = tint.g;
816
+ data[off + 2] = tint.b;
817
+ data[off + 3] = tint.a;
810
818
  this._device.queue.writeBuffer(resources.meshUniformBuffer, drawCursor * slotBytes, data);
811
819
  }
812
820
  _getOrCreateCustomPipeline(resources, blendMode, format) {
@@ -850,7 +858,7 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
850
858
  }
851
859
  return pipeline;
852
860
  }
853
- _getOrCreateCustomMeshTextureBindGroup(resources, backend, texture) {
861
+ _getOrCreateMeshTextureBindGroup(resources, backend, texture) {
854
862
  let group = resources.meshTextureBindGroups.get(texture);
855
863
  if (group === undefined) {
856
864
  const binding = backend.getTextureBinding(texture);
@@ -968,7 +976,7 @@ class WebGpuMeshRenderer extends AbstractWebGpuRenderer {
968
976
  resources.meshUniformBuffer?.destroy();
969
977
  resources.userUniformBuffer?.destroy();
970
978
  resources.pipelines.clear();
971
- resources.meshTextureBindGroups.clear();
979
+ resources.meshTextureBindGroups = new WeakMap();
972
980
  resources.vertexBuffer = null;
973
981
  resources.indexBuffer = null;
974
982
  resources.meshUniformBuffer = null;
@@ -1 +1 @@
1
- {"version":3,"file":"WebGpuMeshRenderer.js","sources":["../../../../../src/rendering/webgpu/WebGpuMeshRenderer.ts"],"sourcesContent":[null],"names":["TextureClass"],"mappings":"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"}
1
+ {"version":3,"file":"WebGpuMeshRenderer.js","sources":["../../../../../src/rendering/webgpu/WebGpuMeshRenderer.ts"],"sourcesContent":[null],"names":["TextureClass"],"mappings":"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"}
@@ -356,7 +356,15 @@ class WebGpuSpriteRenderer extends AbstractWebGpuRenderer {
356
356
  if (typeof device.createRenderPipelineAsync !== 'function') {
357
357
  return;
358
358
  }
359
- const blendModes = [BlendModes.Normal, BlendModes.Additive, BlendModes.Subtract, BlendModes.Multiply, BlendModes.Screen];
359
+ const blendModes = [
360
+ BlendModes.Normal,
361
+ BlendModes.Additive,
362
+ BlendModes.Subtract,
363
+ BlendModes.Multiply,
364
+ BlendModes.Screen,
365
+ BlendModes.Darken,
366
+ BlendModes.Lighten,
367
+ ];
360
368
  const promises = [];
361
369
  for (const blendMode of blendModes) {
362
370
  for (const format of formats) {