@codexo/exojs 0.8.0 → 0.8.3

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 (498) hide show
  1. package/CHANGELOG.md +390 -208
  2. package/README.md +19 -19
  3. package/dist/esm/animation/Easing.js +13 -21
  4. package/dist/esm/animation/Easing.js.map +1 -1
  5. package/dist/esm/animation/Tween.d.ts +3 -3
  6. package/dist/esm/animation/Tween.js +7 -5
  7. package/dist/esm/animation/Tween.js.map +1 -1
  8. package/dist/esm/animation/TweenManager.js +1 -1
  9. package/dist/esm/animation/TweenManager.js.map +1 -1
  10. package/dist/esm/animation/types.js.map +1 -1
  11. package/dist/esm/audio/AbstractMedia.d.ts +1 -1
  12. package/dist/esm/audio/AbstractMedia.js +1 -1
  13. package/dist/esm/audio/AbstractMedia.js.map +1 -1
  14. package/dist/esm/audio/AudioAnalyser.d.ts +37 -1
  15. package/dist/esm/audio/AudioAnalyser.js +150 -2
  16. package/dist/esm/audio/AudioAnalyser.js.map +1 -1
  17. package/dist/esm/audio/AudioBus.d.ts +1 -1
  18. package/dist/esm/audio/AudioBus.js.map +1 -1
  19. package/dist/esm/audio/AudioFilter.js +3 -1
  20. package/dist/esm/audio/AudioFilter.js.map +1 -1
  21. package/dist/esm/audio/AudioListener.d.ts +1 -1
  22. package/dist/esm/audio/AudioListener.js +5 -3
  23. package/dist/esm/audio/AudioListener.js.map +1 -1
  24. package/dist/esm/audio/AudioManager.js.map +1 -1
  25. package/dist/esm/audio/BeatDetector.d.ts +66 -4
  26. package/dist/esm/audio/BeatDetector.js +145 -44
  27. package/dist/esm/audio/BeatDetector.js.map +1 -1
  28. package/dist/esm/audio/Envelope.d.ts +1 -1
  29. package/dist/esm/audio/Envelope.js +2 -2
  30. package/dist/esm/audio/Envelope.js.map +1 -1
  31. package/dist/esm/audio/Music.d.ts +1 -1
  32. package/dist/esm/audio/Music.js +1 -1
  33. package/dist/esm/audio/Music.js.map +1 -1
  34. package/dist/esm/audio/OscillatorSound.d.ts +2 -2
  35. package/dist/esm/audio/OscillatorSound.js.map +1 -1
  36. package/dist/esm/audio/Sound.d.ts +40 -2
  37. package/dist/esm/audio/Sound.js +69 -9
  38. package/dist/esm/audio/Sound.js.map +1 -1
  39. package/dist/esm/audio/audio-context.js +1 -1
  40. package/dist/esm/audio/audio-context.js.map +1 -1
  41. package/dist/esm/audio/crossFade.js +1 -1
  42. package/dist/esm/audio/crossFade.js.map +1 -1
  43. package/dist/esm/audio/dsp/mel.d.ts +2 -2
  44. package/dist/esm/audio/dsp/mel.js +70 -0
  45. package/dist/esm/audio/dsp/mel.js.map +1 -0
  46. package/dist/esm/audio/dsp/tempogram.d.ts +2 -2
  47. package/dist/esm/audio/filters/ChorusFilter.js +12 -4
  48. package/dist/esm/audio/filters/ChorusFilter.js.map +1 -1
  49. package/dist/esm/audio/filters/CompressorFilter.d.ts +9 -0
  50. package/dist/esm/audio/filters/CompressorFilter.js +11 -0
  51. package/dist/esm/audio/filters/CompressorFilter.js.map +1 -1
  52. package/dist/esm/audio/filters/DelayFilter.js.map +1 -1
  53. package/dist/esm/audio/filters/DuckingFilter.d.ts +1 -1
  54. package/dist/esm/audio/filters/DuckingFilter.js +13 -5
  55. package/dist/esm/audio/filters/DuckingFilter.js.map +1 -1
  56. package/dist/esm/audio/filters/EqualizerFilter.js.map +1 -1
  57. package/dist/esm/audio/filters/GranularFilter.js +30 -14
  58. package/dist/esm/audio/filters/GranularFilter.js.map +1 -1
  59. package/dist/esm/audio/filters/HighpassFilter.js.map +1 -1
  60. package/dist/esm/audio/filters/LowpassFilter.js.map +1 -1
  61. package/dist/esm/audio/filters/PitchShiftFilter.js +14 -10
  62. package/dist/esm/audio/filters/PitchShiftFilter.js.map +1 -1
  63. package/dist/esm/audio/filters/ReverbFilter.js.map +1 -1
  64. package/dist/esm/audio/filters/VocoderFilter.d.ts +2 -2
  65. package/dist/esm/audio/filters/VocoderFilter.js +20 -12
  66. package/dist/esm/audio/filters/VocoderFilter.js.map +1 -1
  67. package/dist/esm/audio/filters/WorkletFilter.js +5 -6
  68. package/dist/esm/audio/filters/WorkletFilter.js.map +1 -1
  69. package/dist/esm/audio/filters/index.d.ts +7 -7
  70. package/dist/esm/audio/index.d.ts +9 -9
  71. package/dist/esm/audio/worklet/registerWorklet.js +7 -3
  72. package/dist/esm/audio/worklet/registerWorklet.js.map +1 -1
  73. package/dist/esm/core/Application.d.ts +13 -13
  74. package/dist/esm/core/Application.js +24 -16
  75. package/dist/esm/core/Application.js.map +1 -1
  76. package/dist/esm/core/Bounds.d.ts +1 -1
  77. package/dist/esm/core/Bounds.js +1 -3
  78. package/dist/esm/core/Bounds.js.map +1 -1
  79. package/dist/esm/core/Clock.js +1 -1
  80. package/dist/esm/core/Clock.js.map +1 -1
  81. package/dist/esm/core/Color.js +2 -5
  82. package/dist/esm/core/Color.js.map +1 -1
  83. package/dist/esm/core/Scene.d.ts +10 -10
  84. package/dist/esm/core/Scene.js +1 -1
  85. package/dist/esm/core/Scene.js.map +1 -1
  86. package/dist/esm/core/SceneManager.d.ts +4 -4
  87. package/dist/esm/core/SceneManager.js +39 -33
  88. package/dist/esm/core/SceneManager.js.map +1 -1
  89. package/dist/esm/core/SceneNode.d.ts +8 -8
  90. package/dist/esm/core/SceneNode.js +39 -29
  91. package/dist/esm/core/SceneNode.js.map +1 -1
  92. package/dist/esm/core/Signal.d.ts +3 -3
  93. package/dist/esm/core/Signal.js +3 -3
  94. package/dist/esm/core/Signal.js.map +1 -1
  95. package/dist/esm/core/Time.js +6 -6
  96. package/dist/esm/core/Time.js.map +1 -1
  97. package/dist/esm/core/Timer.d.ts +1 -1
  98. package/dist/esm/core/Timer.js +1 -1
  99. package/dist/esm/core/Timer.js.map +1 -1
  100. package/dist/esm/core/capabilities.js +2 -4
  101. package/dist/esm/core/capabilities.js.map +1 -1
  102. package/dist/esm/core/index.d.ts +2 -2
  103. package/dist/esm/core/utils.d.ts +4 -4
  104. package/dist/esm/core/utils.js +10 -10
  105. package/dist/esm/core/utils.js.map +1 -1
  106. package/dist/esm/debug/BoundingBoxesLayer.d.ts +3 -3
  107. package/dist/esm/debug/BoundingBoxesLayer.js +6 -13
  108. package/dist/esm/debug/BoundingBoxesLayer.js.map +1 -1
  109. package/dist/esm/debug/DebugLayer.d.ts +1 -1
  110. package/dist/esm/debug/DebugLayer.js.map +1 -1
  111. package/dist/esm/debug/DebugOverlay.d.ts +2 -2
  112. package/dist/esm/debug/DebugOverlay.js +2 -2
  113. package/dist/esm/debug/DebugOverlay.js.map +1 -1
  114. package/dist/esm/debug/HitTestLayer.d.ts +3 -3
  115. package/dist/esm/debug/HitTestLayer.js +3 -10
  116. package/dist/esm/debug/HitTestLayer.js.map +1 -1
  117. package/dist/esm/debug/PerformanceLayer.d.ts +2 -2
  118. package/dist/esm/debug/PerformanceLayer.js +6 -6
  119. package/dist/esm/debug/PerformanceLayer.js.map +1 -1
  120. package/dist/esm/debug/PointerStackLayer.d.ts +3 -3
  121. package/dist/esm/debug/PointerStackLayer.js +3 -3
  122. package/dist/esm/debug/PointerStackLayer.js.map +1 -1
  123. package/dist/esm/debug/RenderPassInspectorLayer.d.ts +71 -0
  124. package/dist/esm/debug/RenderPassInspectorLayer.js +201 -0
  125. package/dist/esm/debug/RenderPassInspectorLayer.js.map +1 -0
  126. package/dist/esm/debug/index.d.ts +4 -3
  127. package/dist/esm/debug/index.js +4 -3
  128. package/dist/esm/debug/index.js.map +1 -1
  129. package/dist/esm/index.d.ts +1 -1
  130. package/dist/esm/index.js +101 -98
  131. package/dist/esm/index.js.map +1 -1
  132. package/dist/esm/input/ArcadeStickGamepadMapping.js.map +1 -1
  133. package/dist/esm/input/GameCubeGamepadMapping.d.ts +1 -1
  134. package/dist/esm/input/GameCubeGamepadMapping.js +1 -1
  135. package/dist/esm/input/GameCubeGamepadMapping.js.map +1 -1
  136. package/dist/esm/input/Gamepad.d.ts +7 -7
  137. package/dist/esm/input/Gamepad.js +10 -6
  138. package/dist/esm/input/Gamepad.js.map +1 -1
  139. package/dist/esm/input/GamepadAxis.js +1 -1
  140. package/dist/esm/input/GamepadAxis.js.map +1 -1
  141. package/dist/esm/input/GamepadButton.js +1 -1
  142. package/dist/esm/input/GamepadButton.js.map +1 -1
  143. package/dist/esm/input/GamepadDefinitions.d.ts +4 -4
  144. package/dist/esm/input/GamepadDefinitions.js +12 -14
  145. package/dist/esm/input/GamepadDefinitions.js.map +1 -1
  146. package/dist/esm/input/GamepadMapping.d.ts +5 -5
  147. package/dist/esm/input/GamepadMapping.js.map +1 -1
  148. package/dist/esm/input/GamepadPromptLayouts.d.ts +2 -2
  149. package/dist/esm/input/GamepadPromptLayouts.js +8 -8
  150. package/dist/esm/input/GamepadPromptLayouts.js.map +1 -1
  151. package/dist/esm/input/GenericDualAnalogGamepadMapping.js.map +1 -1
  152. package/dist/esm/input/GestureRecognizer.d.ts +1 -1
  153. package/dist/esm/input/GestureRecognizer.js.map +1 -1
  154. package/dist/esm/input/InputBinding.d.ts +3 -3
  155. package/dist/esm/input/InputBinding.js.map +1 -1
  156. package/dist/esm/input/InputManager.d.ts +9 -9
  157. package/dist/esm/input/InputManager.js +25 -16
  158. package/dist/esm/input/InputManager.js.map +1 -1
  159. package/dist/esm/input/InteractionEvent.d.ts +1 -1
  160. package/dist/esm/input/InteractionEvent.js.map +1 -1
  161. package/dist/esm/input/InteractionManager.d.ts +2 -2
  162. package/dist/esm/input/InteractionManager.js +25 -16
  163. package/dist/esm/input/InteractionManager.js.map +1 -1
  164. package/dist/esm/input/JoyConLeftGamepadMapping.js.map +1 -1
  165. package/dist/esm/input/JoyConRightGamepadMapping.js.map +1 -1
  166. package/dist/esm/input/PlayStationGamepadMapping.d.ts +1 -1
  167. package/dist/esm/input/PlayStationGamepadMapping.js +1 -1
  168. package/dist/esm/input/PlayStationGamepadMapping.js.map +1 -1
  169. package/dist/esm/input/Pointer.d.ts +2 -2
  170. package/dist/esm/input/Pointer.js +6 -6
  171. package/dist/esm/input/Pointer.js.map +1 -1
  172. package/dist/esm/input/SteamControllerGamepadMapping.d.ts +1 -1
  173. package/dist/esm/input/SteamControllerGamepadMapping.js +1 -1
  174. package/dist/esm/input/SteamControllerGamepadMapping.js.map +1 -1
  175. package/dist/esm/input/SteamDeckGamepadMapping.js.map +1 -1
  176. package/dist/esm/input/SwitchProGamepadMapping.d.ts +1 -1
  177. package/dist/esm/input/SwitchProGamepadMapping.js +1 -1
  178. package/dist/esm/input/SwitchProGamepadMapping.js.map +1 -1
  179. package/dist/esm/input/XboxGamepadMapping.d.ts +1 -1
  180. package/dist/esm/input/XboxGamepadMapping.js +1 -1
  181. package/dist/esm/input/XboxGamepadMapping.js.map +1 -1
  182. package/dist/esm/input/index.d.ts +16 -16
  183. package/dist/esm/input/interaction-hooks.js.map +1 -1
  184. package/dist/esm/input/types.js.map +1 -1
  185. package/dist/esm/math/AbstractVector.js +8 -9
  186. package/dist/esm/math/AbstractVector.js.map +1 -1
  187. package/dist/esm/math/Circle.d.ts +5 -5
  188. package/dist/esm/math/Circle.js +33 -21
  189. package/dist/esm/math/Circle.js.map +1 -1
  190. package/dist/esm/math/Collision.d.ts +2 -2
  191. package/dist/esm/math/Collision.js.map +1 -1
  192. package/dist/esm/math/Ellipse.d.ts +5 -5
  193. package/dist/esm/math/Ellipse.js +28 -19
  194. package/dist/esm/math/Ellipse.js.map +1 -1
  195. package/dist/esm/math/Flags.d.ts +4 -4
  196. package/dist/esm/math/Flags.js.map +1 -1
  197. package/dist/esm/math/Interval.js.map +1 -1
  198. package/dist/esm/math/Line.d.ts +5 -5
  199. package/dist/esm/math/Line.js +23 -15
  200. package/dist/esm/math/Line.js.map +1 -1
  201. package/dist/esm/math/Matrix.js +14 -16
  202. package/dist/esm/math/Matrix.js.map +1 -1
  203. package/dist/esm/math/ObservableSize.js.map +1 -1
  204. package/dist/esm/math/ObservableVector.d.ts +1 -1
  205. package/dist/esm/math/ObservableVector.js.map +1 -1
  206. package/dist/esm/math/PolarVector.js.map +1 -1
  207. package/dist/esm/math/Polygon.d.ts +11 -11
  208. package/dist/esm/math/Polygon.js +37 -26
  209. package/dist/esm/math/Polygon.js.map +1 -1
  210. package/dist/esm/math/PolygonLike.d.ts +1 -1
  211. package/dist/esm/math/Quadtree.js +2 -8
  212. package/dist/esm/math/Quadtree.js.map +1 -1
  213. package/dist/esm/math/Random.js +5 -5
  214. package/dist/esm/math/Random.js.map +1 -1
  215. package/dist/esm/math/Rectangle.d.ts +4 -4
  216. package/dist/esm/math/Rectangle.js +59 -41
  217. package/dist/esm/math/Rectangle.js.map +1 -1
  218. package/dist/esm/math/Segment.d.ts +1 -1
  219. package/dist/esm/math/Segment.js +4 -4
  220. package/dist/esm/math/Segment.js.map +1 -1
  221. package/dist/esm/math/ShapeLike.d.ts +1 -1
  222. package/dist/esm/math/Size.js +1 -2
  223. package/dist/esm/math/Size.js.map +1 -1
  224. package/dist/esm/math/Vector.d.ts +4 -4
  225. package/dist/esm/math/Vector.js +19 -13
  226. package/dist/esm/math/Vector.js.map +1 -1
  227. package/dist/esm/math/collision-detection.d.ts +3 -3
  228. package/dist/esm/math/collision-detection.js +49 -49
  229. package/dist/esm/math/collision-detection.js.map +1 -1
  230. package/dist/esm/math/collision-primitives.d.ts +8 -8
  231. package/dist/esm/math/collision-primitives.js +27 -33
  232. package/dist/esm/math/collision-primitives.js.map +1 -1
  233. package/dist/esm/math/geometry.d.ts +3 -3
  234. package/dist/esm/math/geometry.js +55 -48
  235. package/dist/esm/math/geometry.js.map +1 -1
  236. package/dist/esm/math/index.d.ts +16 -16
  237. package/dist/esm/math/swept-collision.d.ts +3 -3
  238. package/dist/esm/math/swept-collision.js +5 -8
  239. package/dist/esm/math/swept-collision.js.map +1 -1
  240. package/dist/esm/math/triangulate.js +34 -24
  241. package/dist/esm/math/triangulate.js.map +1 -1
  242. package/dist/esm/math/utils.d.ts +2 -2
  243. package/dist/esm/math/utils.js +7 -7
  244. package/dist/esm/math/utils.js.map +1 -1
  245. package/dist/esm/particles/ParticleSystem.d.ts +9 -9
  246. package/dist/esm/particles/ParticleSystem.js +29 -29
  247. package/dist/esm/particles/ParticleSystem.js.map +1 -1
  248. package/dist/esm/particles/distributions/BoxArea.js.map +1 -1
  249. package/dist/esm/particles/distributions/CircleArea.js.map +1 -1
  250. package/dist/esm/particles/distributions/ConeDirection.js.map +1 -1
  251. package/dist/esm/particles/distributions/Constant.js.map +1 -1
  252. package/dist/esm/particles/distributions/Curve.d.ts +1 -1
  253. package/dist/esm/particles/distributions/Curve.js.map +1 -1
  254. package/dist/esm/particles/distributions/Gradient.d.ts +1 -1
  255. package/dist/esm/particles/distributions/Gradient.js +1 -1
  256. package/dist/esm/particles/distributions/Gradient.js.map +1 -1
  257. package/dist/esm/particles/distributions/LineSegment.js.map +1 -1
  258. package/dist/esm/particles/distributions/Range.js.map +1 -1
  259. package/dist/esm/particles/distributions/VectorRange.js.map +1 -1
  260. package/dist/esm/particles/distributions/index.d.ts +9 -9
  261. package/dist/esm/particles/gpu/ParticleGpuState.d.ts +3 -3
  262. package/dist/esm/particles/gpu/ParticleGpuState.js +48 -21
  263. package/dist/esm/particles/gpu/ParticleGpuState.js.map +1 -1
  264. package/dist/esm/particles/index.d.ts +1 -1
  265. package/dist/esm/particles/modules/AlphaFadeOverLifetime.d.ts +2 -2
  266. package/dist/esm/particles/modules/AlphaFadeOverLifetime.js.map +1 -1
  267. package/dist/esm/particles/modules/ApplyForce.d.ts +1 -1
  268. package/dist/esm/particles/modules/ApplyForce.js.map +1 -1
  269. package/dist/esm/particles/modules/AttractToPoint.d.ts +1 -1
  270. package/dist/esm/particles/modules/AttractToPoint.js.map +1 -1
  271. package/dist/esm/particles/modules/BurstSpawn.d.ts +4 -4
  272. package/dist/esm/particles/modules/BurstSpawn.js +2 -2
  273. package/dist/esm/particles/modules/BurstSpawn.js.map +1 -1
  274. package/dist/esm/particles/modules/ColorOverLifetime.d.ts +2 -2
  275. package/dist/esm/particles/modules/ColorOverLifetime.js +1 -1
  276. package/dist/esm/particles/modules/ColorOverLifetime.js.map +1 -1
  277. package/dist/esm/particles/modules/ColorOverSpeed.d.ts +2 -2
  278. package/dist/esm/particles/modules/ColorOverSpeed.js +1 -1
  279. package/dist/esm/particles/modules/ColorOverSpeed.js.map +1 -1
  280. package/dist/esm/particles/modules/DeathModule.js.map +1 -1
  281. package/dist/esm/particles/modules/Drag.d.ts +1 -1
  282. package/dist/esm/particles/modules/Drag.js +1 -3
  283. package/dist/esm/particles/modules/Drag.js.map +1 -1
  284. package/dist/esm/particles/modules/OrbitalForce.d.ts +1 -1
  285. package/dist/esm/particles/modules/OrbitalForce.js.map +1 -1
  286. package/dist/esm/particles/modules/RateSpawn.d.ts +3 -3
  287. package/dist/esm/particles/modules/RateSpawn.js +2 -2
  288. package/dist/esm/particles/modules/RateSpawn.js.map +1 -1
  289. package/dist/esm/particles/modules/RepelFromPoint.d.ts +1 -1
  290. package/dist/esm/particles/modules/RepelFromPoint.js.map +1 -1
  291. package/dist/esm/particles/modules/RotateOverLifetime.d.ts +1 -1
  292. package/dist/esm/particles/modules/RotateOverLifetime.js +1 -3
  293. package/dist/esm/particles/modules/RotateOverLifetime.js.map +1 -1
  294. package/dist/esm/particles/modules/ScaleOverLifetime.d.ts +2 -2
  295. package/dist/esm/particles/modules/ScaleOverLifetime.js.map +1 -1
  296. package/dist/esm/particles/modules/SpawnModule.js.map +1 -1
  297. package/dist/esm/particles/modules/SpawnOnDeath.d.ts +1 -1
  298. package/dist/esm/particles/modules/SpawnOnDeath.js.map +1 -1
  299. package/dist/esm/particles/modules/Turbulence.d.ts +1 -1
  300. package/dist/esm/particles/modules/Turbulence.js.map +1 -1
  301. package/dist/esm/particles/modules/UpdateModule.js.map +1 -1
  302. package/dist/esm/particles/modules/VelocityOverLifetime.d.ts +2 -2
  303. package/dist/esm/particles/modules/VelocityOverLifetime.js.map +1 -1
  304. package/dist/esm/particles/modules/WgslContribution.d.ts +3 -3
  305. package/dist/esm/particles/modules/WgslContribution.js.map +1 -1
  306. package/dist/esm/particles/modules/index.d.ts +17 -17
  307. package/dist/esm/rendering/CallbackRenderPass.js.map +1 -1
  308. package/dist/esm/rendering/Container.d.ts +2 -2
  309. package/dist/esm/rendering/Container.js +10 -11
  310. package/dist/esm/rendering/Container.js.map +1 -1
  311. package/dist/esm/rendering/Drawable.js.map +1 -1
  312. package/dist/esm/rendering/RenderBackend.d.ts +6 -6
  313. package/dist/esm/rendering/RenderBackendType.js.map +1 -1
  314. package/dist/esm/rendering/RenderNode.d.ts +10 -10
  315. package/dist/esm/rendering/RenderNode.js +31 -31
  316. package/dist/esm/rendering/RenderNode.js.map +1 -1
  317. package/dist/esm/rendering/RenderStats.js.map +1 -1
  318. package/dist/esm/rendering/RenderTarget.d.ts +2 -2
  319. package/dist/esm/rendering/RenderTarget.js +5 -5
  320. package/dist/esm/rendering/RenderTarget.js.map +1 -1
  321. package/dist/esm/rendering/RenderTargetPass.d.ts +3 -3
  322. package/dist/esm/rendering/RenderTargetPass.js.map +1 -1
  323. package/dist/esm/rendering/Renderer.d.ts +2 -2
  324. package/dist/esm/rendering/RendererRegistry.d.ts +3 -3
  325. package/dist/esm/rendering/RendererRegistry.js +2 -3
  326. package/dist/esm/rendering/RendererRegistry.js.map +1 -1
  327. package/dist/esm/rendering/View.d.ts +3 -3
  328. package/dist/esm/rendering/View.js +17 -20
  329. package/dist/esm/rendering/View.js.map +1 -1
  330. package/dist/esm/rendering/filters/BlurFilter.d.ts +1 -1
  331. package/dist/esm/rendering/filters/BlurFilter.js +4 -9
  332. package/dist/esm/rendering/filters/BlurFilter.js.map +1 -1
  333. package/dist/esm/rendering/filters/ColorFilter.d.ts +1 -1
  334. package/dist/esm/rendering/filters/ColorFilter.js +3 -9
  335. package/dist/esm/rendering/filters/ColorFilter.js.map +1 -1
  336. package/dist/esm/rendering/filters/Filter.d.ts +1 -1
  337. package/dist/esm/rendering/filters/Filter.js.map +1 -1
  338. package/dist/esm/rendering/filters/LutFilter.d.ts +87 -0
  339. package/dist/esm/rendering/filters/LutFilter.js +261 -0
  340. package/dist/esm/rendering/filters/LutFilter.js.map +1 -0
  341. package/dist/esm/rendering/filters/WebGl2ShaderFilter.d.ts +2 -2
  342. package/dist/esm/rendering/filters/WebGl2ShaderFilter.js +7 -14
  343. package/dist/esm/rendering/filters/WebGl2ShaderFilter.js.map +1 -1
  344. package/dist/esm/rendering/filters/WebGpuShaderFilter.d.ts +1 -1
  345. package/dist/esm/rendering/filters/WebGpuShaderFilter.js +16 -11
  346. package/dist/esm/rendering/filters/WebGpuShaderFilter.js.map +1 -1
  347. package/dist/esm/rendering/index.d.ts +30 -27
  348. package/dist/esm/rendering/mesh/Mesh.d.ts +6 -1
  349. package/dist/esm/rendering/mesh/Mesh.js +3 -1
  350. package/dist/esm/rendering/mesh/Mesh.js.map +1 -1
  351. package/dist/esm/rendering/mesh/MeshShader.d.ts +183 -0
  352. package/dist/esm/rendering/mesh/MeshShader.js +231 -0
  353. package/dist/esm/rendering/mesh/MeshShader.js.map +1 -0
  354. package/dist/esm/rendering/primitives/Graphics.d.ts +3 -3
  355. package/dist/esm/rendering/primitives/Graphics.js +12 -12
  356. package/dist/esm/rendering/primitives/Graphics.js.map +1 -1
  357. package/dist/esm/rendering/shader/Shader.js.map +1 -1
  358. package/dist/esm/rendering/shader/ShaderAttribute.js.map +1 -1
  359. package/dist/esm/rendering/shader/ShaderUniform.js.map +1 -1
  360. package/dist/esm/rendering/shader/upgradeFragmentShaderToGl300.js +6 -8
  361. package/dist/esm/rendering/shader/upgradeFragmentShaderToGl300.js.map +1 -1
  362. package/dist/esm/rendering/sprite/AnimatedSprite.d.ts +3 -3
  363. package/dist/esm/rendering/sprite/AnimatedSprite.js.map +1 -1
  364. package/dist/esm/rendering/sprite/Sprite.d.ts +4 -4
  365. package/dist/esm/rendering/sprite/Sprite.js +51 -35
  366. package/dist/esm/rendering/sprite/Sprite.js.map +1 -1
  367. package/dist/esm/rendering/sprite/Spritesheet.d.ts +5 -9
  368. package/dist/esm/rendering/sprite/Spritesheet.js +1 -1
  369. package/dist/esm/rendering/sprite/Spritesheet.js.map +1 -1
  370. package/dist/esm/rendering/text/DynamicGlyphAtlas.js +3 -9
  371. package/dist/esm/rendering/text/DynamicGlyphAtlas.js.map +1 -1
  372. package/dist/esm/rendering/text/Text.js +9 -9
  373. package/dist/esm/rendering/text/Text.js.map +1 -1
  374. package/dist/esm/rendering/text/TextLayout.d.ts +2 -2
  375. package/dist/esm/rendering/text/TextLayout.js.map +1 -1
  376. package/dist/esm/rendering/text/TextStyle.js.map +1 -1
  377. package/dist/esm/rendering/text/atlas-singleton.js.map +1 -1
  378. package/dist/esm/rendering/texture/DataTexture.d.ts +115 -0
  379. package/dist/esm/rendering/texture/DataTexture.js +173 -0
  380. package/dist/esm/rendering/texture/DataTexture.js.map +1 -0
  381. package/dist/esm/rendering/texture/RenderTexture.d.ts +1 -1
  382. package/dist/esm/rendering/texture/RenderTexture.js +4 -1
  383. package/dist/esm/rendering/texture/RenderTexture.js.map +1 -1
  384. package/dist/esm/rendering/texture/Sampler.js.map +1 -1
  385. package/dist/esm/rendering/texture/Texture.d.ts +2 -2
  386. package/dist/esm/rendering/texture/Texture.js +8 -5
  387. package/dist/esm/rendering/texture/Texture.js.map +1 -1
  388. package/dist/esm/rendering/types.js.map +1 -1
  389. package/dist/esm/rendering/utils.js.map +1 -1
  390. package/dist/esm/rendering/video/Video.d.ts +3 -3
  391. package/dist/esm/rendering/video/Video.js +7 -6
  392. package/dist/esm/rendering/video/Video.js.map +1 -1
  393. package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.d.ts +6 -6
  394. package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.js +7 -10
  395. package/dist/esm/rendering/webgl2/AbstractWebGl2BatchedRenderer.js.map +1 -1
  396. package/dist/esm/rendering/webgl2/AbstractWebGl2Renderer.d.ts +1 -1
  397. package/dist/esm/rendering/webgl2/AbstractWebGl2Renderer.js +1 -2
  398. package/dist/esm/rendering/webgl2/AbstractWebGl2Renderer.js.map +1 -1
  399. package/dist/esm/rendering/webgl2/WebGl2Backend.d.ts +11 -11
  400. package/dist/esm/rendering/webgl2/WebGl2Backend.js +61 -22
  401. package/dist/esm/rendering/webgl2/WebGl2Backend.js.map +1 -1
  402. package/dist/esm/rendering/webgl2/WebGl2MaskCompositor.d.ts +2 -2
  403. package/dist/esm/rendering/webgl2/WebGl2MaskCompositor.js +6 -8
  404. package/dist/esm/rendering/webgl2/WebGl2MaskCompositor.js.map +1 -1
  405. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.d.ts +7 -4
  406. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js +121 -43
  407. package/dist/esm/rendering/webgl2/WebGl2MeshRenderer.js.map +1 -1
  408. package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.d.ts +1 -1
  409. package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.js +10 -18
  410. package/dist/esm/rendering/webgl2/WebGl2ParticleRenderer.js.map +1 -1
  411. package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.d.ts +1 -1
  412. package/dist/esm/rendering/webgl2/WebGl2RenderBuffer.js.map +1 -1
  413. package/dist/esm/rendering/webgl2/WebGl2ShaderBlock.js.map +1 -1
  414. package/dist/esm/rendering/webgl2/WebGl2ShaderMappings.js.map +1 -1
  415. package/dist/esm/rendering/webgl2/WebGl2ShaderProgram.js +54 -22
  416. package/dist/esm/rendering/webgl2/WebGl2ShaderProgram.js.map +1 -1
  417. package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.d.ts +1 -1
  418. package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js +11 -14
  419. package/dist/esm/rendering/webgl2/WebGl2SpriteRenderer.js.map +1 -1
  420. package/dist/esm/rendering/webgl2/WebGl2VertexArrayObject.d.ts +1 -1
  421. package/dist/esm/rendering/webgl2/WebGl2VertexArrayObject.js.map +1 -1
  422. package/dist/esm/rendering/webgpu/AbstractWebGpuRenderer.d.ts +1 -1
  423. package/dist/esm/rendering/webgpu/AbstractWebGpuRenderer.js +1 -2
  424. package/dist/esm/rendering/webgpu/AbstractWebGpuRenderer.js.map +1 -1
  425. package/dist/esm/rendering/webgpu/WebGpuBackend.d.ts +8 -7
  426. package/dist/esm/rendering/webgpu/WebGpuBackend.js +104 -37
  427. package/dist/esm/rendering/webgpu/WebGpuBackend.js.map +1 -1
  428. package/dist/esm/rendering/webgpu/WebGpuBlendState.js.map +1 -1
  429. package/dist/esm/rendering/webgpu/WebGpuMaskCompositor.d.ts +2 -2
  430. package/dist/esm/rendering/webgpu/WebGpuMaskCompositor.js +3 -4
  431. package/dist/esm/rendering/webgpu/WebGpuMaskCompositor.js.map +1 -1
  432. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.d.ts +15 -2
  433. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js +657 -102
  434. package/dist/esm/rendering/webgpu/WebGpuMeshRenderer.js.map +1 -1
  435. package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.d.ts +1 -1
  436. package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js +100 -56
  437. package/dist/esm/rendering/webgpu/WebGpuParticleRenderer.js.map +1 -1
  438. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.d.ts +2 -2
  439. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js +45 -45
  440. package/dist/esm/rendering/webgpu/WebGpuSpriteRenderer.js.map +1 -1
  441. package/dist/esm/rendering/webgpu/compute/WebGpuComputePipeline.d.ts +1 -1
  442. package/dist/esm/rendering/webgpu/compute/index.d.ts +2 -2
  443. package/dist/esm/resources/AbstractAssetFactory.d.ts +1 -1
  444. package/dist/esm/resources/AbstractAssetFactory.js.map +1 -1
  445. package/dist/esm/resources/AssetManifest.d.ts +1 -1
  446. package/dist/esm/resources/AssetManifest.js +2 -2
  447. package/dist/esm/resources/AssetManifest.js.map +1 -1
  448. package/dist/esm/resources/CacheFirstStrategy.d.ts +2 -2
  449. package/dist/esm/resources/CacheFirstStrategy.js.map +1 -1
  450. package/dist/esm/resources/CacheStrategy.d.ts +1 -1
  451. package/dist/esm/resources/FactoryRegistry.d.ts +1 -1
  452. package/dist/esm/resources/FactoryRegistry.js +2 -3
  453. package/dist/esm/resources/FactoryRegistry.js.map +1 -1
  454. package/dist/esm/resources/IndexedDbDatabase.d.ts +1 -1
  455. package/dist/esm/resources/IndexedDbDatabase.js +11 -14
  456. package/dist/esm/resources/IndexedDbDatabase.js.map +1 -1
  457. package/dist/esm/resources/IndexedDbStore.d.ts +1 -1
  458. package/dist/esm/resources/IndexedDbStore.js +2 -7
  459. package/dist/esm/resources/IndexedDbStore.js.map +1 -1
  460. package/dist/esm/resources/Loader.d.ts +9 -9
  461. package/dist/esm/resources/Loader.js +48 -35
  462. package/dist/esm/resources/Loader.js.map +1 -1
  463. package/dist/esm/resources/NetworkOnlyStrategy.d.ts +2 -2
  464. package/dist/esm/resources/NetworkOnlyStrategy.js.map +1 -1
  465. package/dist/esm/resources/factories/BinaryFactory.js.map +1 -1
  466. package/dist/esm/resources/factories/FontFactory.js +1 -1
  467. package/dist/esm/resources/factories/FontFactory.js.map +1 -1
  468. package/dist/esm/resources/factories/ImageFactory.js +4 -4
  469. package/dist/esm/resources/factories/ImageFactory.js.map +1 -1
  470. package/dist/esm/resources/factories/JsonFactory.d.ts +1 -1
  471. package/dist/esm/resources/factories/JsonFactory.js +1 -1
  472. package/dist/esm/resources/factories/JsonFactory.js.map +1 -1
  473. package/dist/esm/resources/factories/MusicFactory.d.ts +1 -1
  474. package/dist/esm/resources/factories/MusicFactory.js +4 -4
  475. package/dist/esm/resources/factories/MusicFactory.js.map +1 -1
  476. package/dist/esm/resources/factories/SoundFactory.d.ts +1 -1
  477. package/dist/esm/resources/factories/SoundFactory.js +3 -3
  478. package/dist/esm/resources/factories/SoundFactory.js.map +1 -1
  479. package/dist/esm/resources/factories/SvgFactory.js +3 -3
  480. package/dist/esm/resources/factories/SvgFactory.js.map +1 -1
  481. package/dist/esm/resources/factories/TextFactory.js +1 -1
  482. package/dist/esm/resources/factories/TextFactory.js.map +1 -1
  483. package/dist/esm/resources/factories/TextureFactory.d.ts +1 -1
  484. package/dist/esm/resources/factories/TextureFactory.js +3 -3
  485. package/dist/esm/resources/factories/TextureFactory.js.map +1 -1
  486. package/dist/esm/resources/factories/VideoFactory.d.ts +2 -2
  487. package/dist/esm/resources/factories/VideoFactory.js +5 -5
  488. package/dist/esm/resources/factories/VideoFactory.js.map +1 -1
  489. package/dist/esm/resources/factories/VttFactory.d.ts +2 -2
  490. package/dist/esm/resources/factories/VttFactory.js +6 -6
  491. package/dist/esm/resources/factories/VttFactory.js.map +1 -1
  492. package/dist/esm/resources/factories/WasmFactory.js.map +1 -1
  493. package/dist/esm/resources/index.d.ts +11 -11
  494. package/dist/esm/resources/utils.js +30 -25
  495. package/dist/esm/resources/utils.js.map +1 -1
  496. package/dist/exo.esm.js +26260 -24256
  497. package/dist/exo.esm.js.map +1 -1
  498. package/package.json +15 -4
@@ -1,6 +1,6 @@
1
- import { Size } from '@/math/Size';
2
- import type { TextureSource } from '@/core/types';
3
1
  import { Time } from '@/core/Time';
2
+ import type { TextureSource } from '@/core/types';
3
+ import { Size } from '@/math/Size';
4
4
  /**
5
5
  * Random number in the range `[min, max]` from the module-level shared
6
6
  * {@link Random} instance. Pass no arguments for `[0, 1)`. For deterministic
@@ -43,13 +43,13 @@ export declare const emptyArrayBuffer: ArrayBuffer;
43
43
  * skips the allocation of a removed-items array. Returns the same array
44
44
  * for chaining.
45
45
  */
46
- export declare const removeArrayItems: <T = unknown>(array: Array<T>, startIndex: number, amount: number) => Array<T>;
46
+ export declare const removeArrayItems: <T = unknown>(array: T[], startIndex: number, amount: number) => T[];
47
47
  /**
48
48
  * `true` when the host browser reports any of the given media-codec
49
49
  * strings as playable on a transient `<audio>` element. Use to gate format
50
50
  * selection (e.g. prefer OGG, fall back to MP3).
51
51
  */
52
- export declare const supportsCodec: (...codecs: Array<string>) => boolean;
52
+ export declare const supportsCodec: (...codecs: string[]) => boolean;
53
53
  /**
54
54
  * Resolve the natural pixel dimensions of any `CanvasImageSource`. Returns
55
55
  * a {@link Size.temp} scratch instance — copy if you need to retain the
@@ -1,6 +1,6 @@
1
- import { Size } from '../math/Size.js';
2
- import { Random } from '../math/Random.js';
3
1
  import { Time } from './Time.js';
2
+ import { Random } from '../math/Random.js';
3
+ import { Size } from '../math/Size.js';
4
4
 
5
5
  const codecNotSupportedPattern = /^no$/;
6
6
  let internalAudioElement = null;
@@ -51,7 +51,9 @@ const getRandom = () => {
51
51
  */
52
52
  const rand = (min, max) => getRandom().next(min, max);
53
53
  /** Empty function literal — useful as a default callback that does nothing. */
54
- const noop = () => { };
54
+ const noop = () => {
55
+ /* empty function */
56
+ };
55
57
  /** `preventDefault()` + `stopImmediatePropagation()` on an event in one call. */
56
58
  const stopEvent = (event) => {
57
59
  event.preventDefault();
@@ -84,11 +86,11 @@ const supportsEventOptions = () => {
84
86
  get passive() {
85
87
  supportsPassive = true;
86
88
  return false;
87
- }
89
+ },
88
90
  });
89
91
  window.removeEventListener('test', noop);
90
92
  }
91
- catch (e) {
93
+ catch (_e) {
92
94
  // do nothing
93
95
  }
94
96
  supportsEventOptionsValue = supportsPassive;
@@ -114,10 +116,8 @@ const emptyArrayBuffer = new ArrayBuffer(0);
114
116
  */
115
117
  const removeArrayItems = (array, startIndex, amount) => {
116
118
  if (startIndex < array.length && amount > 0) {
117
- const removeCount = (startIndex + amount > array.length)
118
- ? (array.length - startIndex)
119
- : amount;
120
- const newLen = (array.length - removeCount);
119
+ const removeCount = startIndex + amount > array.length ? array.length - startIndex : amount;
120
+ const newLen = array.length - removeCount;
121
121
  for (let i = startIndex; i < newLen; i++) {
122
122
  array[i] = array[i + removeCount];
123
123
  }
@@ -130,7 +130,7 @@ const removeArrayItems = (array, startIndex, amount) => {
130
130
  * strings as playable on a transient `<audio>` element. Use to gate format
131
131
  * selection (e.g. prefer OGG, fall back to MP3).
132
132
  */
133
- const supportsCodec = (...codecs) => codecs.some((codec) => getAudioElement().canPlayType(codec).replace(codecNotSupportedPattern, ''));
133
+ const supportsCodec = (...codecs) => codecs.some(codec => getAudioElement().canPlayType(codec).replace(codecNotSupportedPattern, ''));
134
134
  /**
135
135
  * Resolve the natural pixel dimensions of any `CanvasImageSource`. Returns
136
136
  * a {@link Size.temp} scratch instance — copy if you need to retain the
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sources":["../../../../src/core/utils.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sources":["../../../../src/core/utils.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import { DebugLayer } from './DebugLayer';
2
- import type { DebugLayerViewMode } from './DebugLayer';
1
+ import type { Application } from '@/core/Application';
3
2
  import type { Time } from '@/core/Time';
4
3
  import type { RenderBackend } from '@/rendering/RenderBackend';
5
- import type { Application } from '@/core/Application';
4
+ import type { DebugLayerViewMode } from './DebugLayer';
5
+ import { DebugLayer } from './DebugLayer';
6
6
  /**
7
7
  * Debug layer that draws a bounding-box outline around every visible
8
8
  * RenderNode in the scene. Colours cycle by zIndex (HSL hue). World-space.
@@ -1,13 +1,6 @@
1
- import { DebugLayer } from './DebugLayer.js';
2
- import { Graphics } from '../rendering/primitives/Graphics.js';
3
1
  import { Color } from '../core/Color.js';
4
- import '../math/Size.js';
5
- import '../core/Time.js';
6
- import '../core/SceneNode.js';
7
- import '../math/Rectangle.js';
8
- import '../rendering/types.js';
9
- import '../rendering/View.js';
10
- import '../rendering/texture/RenderTexture.js';
2
+ import { Graphics } from '../rendering/primitives/Graphics.js';
3
+ import { DebugLayer } from './DebugLayer.js';
11
4
 
12
5
  // ---------------------------------------------------------------------------
13
6
  // HSL → RGB helper
@@ -20,9 +13,9 @@ function hslToColor(h, s, l, alpha) {
20
13
  const c = (1 - Math.abs(2 * l - 1)) * s;
21
14
  const x = c * (1 - Math.abs(((h / 60) % 2) - 1));
22
15
  const m = l - c / 2;
23
- let r = 0;
24
- let g = 0;
25
- let b = 0;
16
+ let r;
17
+ let g;
18
+ let b;
26
19
  if (h < 60) {
27
20
  r = c;
28
21
  g = x;
@@ -107,7 +100,7 @@ class BoundingBoxesLayer extends DebugLayer {
107
100
  const bounds = node.getBounds();
108
101
  // Skip zero-area bounds (defensive).
109
102
  if (bounds.width > 0 && bounds.height > 0) {
110
- const hue = ((node.zIndex * 30) % 360 + 360) % 360;
103
+ const hue = (((node.zIndex * 30) % 360) + 360) % 360;
111
104
  const color = hslToColor(hue, 0.7, 0.5, 0.7);
112
105
  gfx.lineColor = color;
113
106
  // Draw the rectangle outline as four line segments.
@@ -1 +1 @@
1
- {"version":3,"file":"BoundingBoxesLayer.js","sources":["../../../../src/debug/BoundingBoxesLayer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BoundingBoxesLayer.js","sources":["../../../../src/debug/BoundingBoxesLayer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
+ import type { Application } from '@/core/Application';
1
2
  import type { Time } from '@/core/Time';
2
3
  import type { RenderBackend } from '@/rendering/RenderBackend';
3
- import type { Application } from '@/core/Application';
4
4
  /**
5
5
  * Determines the coordinate space a {@link DebugLayer} renders into.
6
6
  * `'screen'` uses the overlay's pixel-space view; `'world'` uses the scene's
@@ -1 +1 @@
1
- {"version":3,"file":"DebugLayer.js","sources":["../../../../src/debug/DebugLayer.ts"],"sourcesContent":[null],"names":[],"mappings":"AAWA;;;;;;;AAOG;MACmB,UAAU,CAAA;AAGU,IAAA,IAAA;IAF/B,OAAO,GAAY,KAAK;AAE/B,IAAA,WAAA,CAAsC,IAAiB,EAAA;QAAjB,IAAA,CAAA,IAAI,GAAJ,IAAI;IAAgB;AAE1D;;;;AAIG;AACH,IAAA,IAAW,QAAQ,GAAA;AACf,QAAA,OAAO,QAAQ;IACnB;AAYA;;;;AAIG;IACI,OAAO,GAAA;;IAEd;AACH;;;;"}
1
+ {"version":3,"file":"DebugLayer.js","sources":["../../../../src/debug/DebugLayer.ts"],"sourcesContent":[null],"names":[],"mappings":"AAWA;;;;;;;AAOG;MACmB,UAAU,CAAA;AAGQ,IAAA,IAAA;IAF/B,OAAO,GAAG,KAAK;AAEtB,IAAA,WAAA,CAAsC,IAAiB,EAAA;QAAjB,IAAA,CAAA,IAAI,GAAJ,IAAI;IAAgB;AAE1D;;;;AAIG;AACH,IAAA,IAAW,QAAQ,GAAA;AACjB,QAAA,OAAO,QAAQ;IACjB;AAYA;;;;AAIG;IACI,OAAO,GAAA;;IAEd;AACD;;;;"}
@@ -1,8 +1,8 @@
1
- import { PerformanceLayer } from './PerformanceLayer';
1
+ import type { Application } from '@/core/Application';
2
2
  import { BoundingBoxesLayer } from './BoundingBoxesLayer';
3
3
  import { HitTestLayer } from './HitTestLayer';
4
+ import { PerformanceLayer } from './PerformanceLayer';
4
5
  import { PointerStackLayer } from './PointerStackLayer';
5
- import type { Application } from '@/core/Application';
6
6
  /**
7
7
  * Typed map of the four built-in diagnostic layers managed by
8
8
  * {@link DebugOverlay}. Access individual layers to toggle visibility or
@@ -1,8 +1,8 @@
1
- import { View } from '../rendering/View.js';
2
1
  import { Keyboard } from '../input/types.js';
3
- import { PerformanceLayer } from './PerformanceLayer.js';
2
+ import { View } from '../rendering/View.js';
4
3
  import { BoundingBoxesLayer } from './BoundingBoxesLayer.js';
5
4
  import { HitTestLayer } from './HitTestLayer.js';
5
+ import { PerformanceLayer } from './PerformanceLayer.js';
6
6
  import { PointerStackLayer } from './PointerStackLayer.js';
7
7
 
8
8
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"DebugOverlay.js","sources":["../../../../src/debug/DebugOverlay.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DebugOverlay.js","sources":["../../../../src/debug/DebugOverlay.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import { DebugLayer } from './DebugLayer';
2
- import type { DebugLayerViewMode } from './DebugLayer';
1
+ import type { Application } from '@/core/Application';
3
2
  import type { Time } from '@/core/Time';
4
3
  import type { RenderBackend } from '@/rendering/RenderBackend';
5
- import type { Application } from '@/core/Application';
4
+ import type { DebugLayerViewMode } from './DebugLayer';
5
+ import { DebugLayer } from './DebugLayer';
6
6
  /**
7
7
  * Debug layer that draws outlines around interactive scene nodes.
8
8
  * - Magenta: interactive but idle.
@@ -1,13 +1,6 @@
1
- import { DebugLayer } from './DebugLayer.js';
2
- import { Graphics } from '../rendering/primitives/Graphics.js';
3
1
  import { Color } from '../core/Color.js';
4
- import '../math/Size.js';
5
- import '../core/Time.js';
6
- import '../core/SceneNode.js';
7
- import '../math/Rectangle.js';
8
- import '../rendering/types.js';
9
- import '../rendering/View.js';
10
- import '../rendering/texture/RenderTexture.js';
2
+ import { Graphics } from '../rendering/primitives/Graphics.js';
3
+ import { DebugLayer } from './DebugLayer.js';
11
4
 
12
5
  // Color constants (created once, reused).
13
6
  const colorIdle = new Color(1, 0, 1, 0.6); // magenta
@@ -63,7 +56,7 @@ class HitTestLayer extends DebugLayer {
63
56
  const quadtree = interaction._getDebugQuadtree();
64
57
  if (quadtree !== null) {
65
58
  gfx.lineColor = colorQuadrant;
66
- quadtree._walkBounds((rect) => {
59
+ quadtree._walkBounds(rect => {
67
60
  gfx.moveTo(rect.left, rect.top);
68
61
  gfx.lineTo(rect.right, rect.top);
69
62
  gfx.lineTo(rect.right, rect.bottom);
@@ -1 +1 @@
1
- {"version":3,"file":"HitTestLayer.js","sources":["../../../../src/debug/HitTestLayer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HitTestLayer.js","sources":["../../../../src/debug/HitTestLayer.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAUA;AACA,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;AAC1C,MAAM,YAAY,GAAG,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;AAC7C,MAAM,aAAa,GAAG,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;AAC9C,MAAM,aAAa,GAAG,IAAI,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAEpD;;;;;;;;AAQG;AACG,MAAO,YAAa,SAAQ,UAAU,CAAA;IAClC,SAAS,GAAoB,IAAI;AAEzC,IAAA,WAAA,CAAmB,GAAgB,EAAA;QACjC,KAAK,CAAC,GAAG,CAAC;IACZ;;AAGA,IAAA,IAAoB,QAAQ,GAAA;AAC1B,QAAA,OAAO,OAAO;IAChB;;AAGgB,IAAA,MAAM,CAAC,MAAY,EAAA;;IAEnC;AAEA;;;;;AAKG;AACa,IAAA,MAAM,CAAC,OAAsB,EAAA;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI;QAE/C,IAAI,CAAC,IAAI,EAAE;YACT;QACF;AAEA,QAAA,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE;AAC3B,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI,QAAQ,EAAE;QACjC;AAEA,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS;QAE1B,GAAG,CAAC,KAAK,EAAE;AACX,QAAA,GAAG,CAAC,SAAS,GAAG,CAAC;;AAGjB,QAAA,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW;AACzC,QAAA,MAAM,WAAW,GAAG,WAAW,CAAC,cAAc,EAAE;QAChD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;;QAG7D,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,aAAa,CAAC;;AAGrD,QAAA,MAAM,QAAQ,GAAG,WAAW,CAAC,iBAAiB,EAAE;AAEhD,QAAA,IAAI,QAAQ,KAAK,IAAI,EAAE;AACrB,YAAA,GAAG,CAAC,SAAS,GAAG,aAAa;AAE7B,YAAA,QAAQ,CAAC,WAAW,CAAC,IAAI,IAAG;gBAC1B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;gBAC/B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC;gBAChC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC;gBACnC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;gBAClC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC;AACjC,YAAA,CAAC,CAAC;QACJ;AAEA,QAAA,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;IACrB;;IAGgB,OAAO,GAAA;AACrB,QAAA,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,EAAE;AAC3B,YAAA,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE;AACxB,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI;QACvB;IACF;;AAIQ,IAAA,SAAS,CAAC,IAAgB,EAAE,GAAa,EAAE,OAA0B,EAAE,QAAyB,EAAA;AACtG,QAAA,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACjB;QACF;AAEA,QAAA,IAAI,IAAI,CAAC,WAAW,EAAE;AACpB,YAAA,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE;AAE/B,YAAA,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;AACzC,gBAAA,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;AACtB,oBAAA,GAAG,CAAC,SAAS,GAAG,aAAa;gBAC/B;AAAO,qBAAA,IAAI,IAAI,KAAK,OAAO,EAAE;AAC3B,oBAAA,GAAG,CAAC,SAAS,GAAG,YAAY;gBAC9B;qBAAO;AACL,oBAAA,GAAG,CAAC,SAAS,GAAG,SAAS;gBAC3B;gBAEA,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC;gBACnC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC;gBACpC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;gBACvC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;gBACtC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC;YACrC;QACF;;QAGA,MAAM,SAAS,GAAG,IAA2C;QAE7D,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE;AACrC,YAAA,KAAK,MAAM,KAAK,IAAI,SAAS,CAAC,QAAQ,EAAE;gBACtC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC;YAC/C;QACF;IACF;AACD;;;;"}
@@ -1,7 +1,7 @@
1
- import { DebugLayer, type DebugLayerViewMode } from './DebugLayer';
1
+ import type { Application } from '@/core/Application';
2
2
  import type { Time } from '@/core/Time';
3
3
  import type { RenderBackend } from '@/rendering/RenderBackend';
4
- import type { Application } from '@/core/Application';
4
+ import { DebugLayer, type DebugLayerViewMode } from './DebugLayer';
5
5
  /**
6
6
  * Debug layer that renders a compact screen-space HUD (top-left) showing
7
7
  * rolling-average FPS, per-frame time in milliseconds, draw-call count, and
@@ -1,9 +1,9 @@
1
- import { DebugLayer } from './DebugLayer.js';
1
+ import { Color } from '../core/Color.js';
2
+ import { Container } from '../rendering/Container.js';
2
3
  import { Graphics } from '../rendering/primitives/Graphics.js';
3
4
  import { Text } from '../rendering/text/Text.js';
4
5
  import { TextStyle } from '../rendering/text/TextStyle.js';
5
- import { Color } from '../core/Color.js';
6
- import { Container } from '../rendering/Container.js';
6
+ import { DebugLayer } from './DebugLayer.js';
7
7
 
8
8
  // --- layout constants (camelCase to satisfy lint naming convention) ----------
9
9
  const panelX = 8;
@@ -25,7 +25,7 @@ const bgColor = new Color(0, 0, 0, 0.7);
25
25
  // Bright text color (light blue-white).
26
26
  const textColor = Color.white.clone();
27
27
  // Cyan sparkline.
28
- const sparklineColor = new Color(0, 1, 1, 1.0);
28
+ const sparklineColor = new Color(0, 1, 1, 1);
29
29
  // -----------------------------------------------------------------------------
30
30
  /** Recursively count nodes under a RenderNode. */
31
31
  function countNodes(node) {
@@ -124,8 +124,8 @@ class PerformanceLayer extends DebugLayer {
124
124
  const stepX = sparklineW / (sparklineSampleCount - 1);
125
125
  let started = false;
126
126
  for (let i = 0; i < sparklineSampleCount; i++) {
127
- const idx = (oldest + i) % sparklineSampleCount;
128
- const ms = this._sparkSamples[idx];
127
+ const sampleIndex = (oldest + i) % sparklineSampleCount;
128
+ const ms = this._sparkSamples[sampleIndex];
129
129
  const px = sparklineX + i * stepX;
130
130
  const py = sparklineY + sparklineH - Math.min(1, ms / sparklineMaxMs) * sparklineH;
131
131
  if (!started) {
@@ -1 +1 @@
1
- {"version":3,"file":"PerformanceLayer.js","sources":["../../../../src/debug/PerformanceLayer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PerformanceLayer.js","sources":["../../../../src/debug/PerformanceLayer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import { DebugLayer } from './DebugLayer';
2
- import type { DebugLayerViewMode } from './DebugLayer';
1
+ import type { Application } from '@/core/Application';
3
2
  import type { Time } from '@/core/Time';
4
3
  import type { RenderBackend } from '@/rendering/RenderBackend';
5
- import type { Application } from '@/core/Application';
4
+ import type { DebugLayerViewMode } from './DebugLayer';
5
+ import { DebugLayer } from './DebugLayer';
6
6
  /**
7
7
  * Debug layer that shows a screen-space panel (top-right corner) listing all
8
8
  * RenderNodes under the current pointer position, sorted by zIndex descending.
@@ -1,9 +1,9 @@
1
- import { DebugLayer } from './DebugLayer.js';
1
+ import { Color } from '../core/Color.js';
2
+ import { Container } from '../rendering/Container.js';
2
3
  import { Graphics } from '../rendering/primitives/Graphics.js';
3
4
  import { Text } from '../rendering/text/Text.js';
4
5
  import { TextStyle } from '../rendering/text/TextStyle.js';
5
- import { Color } from '../core/Color.js';
6
- import { Container } from '../rendering/Container.js';
6
+ import { DebugLayer } from './DebugLayer.js';
7
7
 
8
8
  // ---------------------------------------------------------------------------
9
9
  // Layout constants
@@ -1 +1 @@
1
- {"version":3,"file":"PointerStackLayer.js","sources":["../../../../src/debug/PointerStackLayer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PointerStackLayer.js","sources":["../../../../src/debug/PointerStackLayer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ import type { Application } from '@/core/Application';
2
+ import type { Time } from '@/core/Time';
3
+ import type { Filter } from '@/rendering/filters/Filter';
4
+ import type { RenderBackend } from '@/rendering/RenderBackend';
5
+ import { DebugLayer, type DebugLayerViewMode } from './DebugLayer';
6
+ /**
7
+ * Snapshot of one drawable's filter chain at the moment the inspector
8
+ * collected it. Held by reference inside {@link RenderPassInspectorLayer}
9
+ * for the duration of one frame; replaced on the next update.
10
+ */
11
+ export interface RenderPassInspectorEntry {
12
+ /** Constructor name of the inspected drawable (e.g. `Sprite`, `Container`). */
13
+ readonly drawableLabel: string;
14
+ /** Filter instances currently attached, in execution order. */
15
+ readonly filters: readonly Filter[];
16
+ /** Bounding-box width as the filter pipeline sees it (ceil). */
17
+ readonly width: number;
18
+ /** Bounding-box height as the filter pipeline sees it (ceil). */
19
+ readonly height: number;
20
+ /** Whether the drawable has a mask attached (mask passes count toward total). */
21
+ readonly hasMask: boolean;
22
+ /** Whether the drawable is bitmap-cached (cached drawables apply filters once, not per frame). */
23
+ readonly cachedAsBitmap: boolean;
24
+ }
25
+ /**
26
+ * Debug layer that lists every {@link RenderNode} with an active filter chain
27
+ * each frame. Renders a compact text panel with per-drawable rows showing
28
+ * the filter sequence, bounding-box dimensions, and mask/cache status.
29
+ *
30
+ * Use during development to answer:
31
+ *
32
+ * - "Is my filter actually attached?" → it appears in the list
33
+ * - "Why does my frame have N render passes?" → see total pass count
34
+ * - "Is this drawable being re-rendered or cached?" → `[cached]` flag
35
+ *
36
+ * For deep per-pass inspection (intermediate render-target contents, GLSL/WGSL
37
+ * source, uniform values), use Spector.js or Chrome DevTools' WebGPU panel —
38
+ * the engine emits debug-group labels around filter and mesh-custom-shader
39
+ * passes so those tools show meaningful pass names.
40
+ */
41
+ export declare class RenderPassInspectorLayer extends DebugLayer {
42
+ private readonly _entries;
43
+ private _root;
44
+ private _bg;
45
+ private _header;
46
+ private _lines;
47
+ constructor(app: Application);
48
+ get viewMode(): DebugLayerViewMode;
49
+ /**
50
+ * Walk the scene graph and collect filter-chain entries for every
51
+ * {@link RenderNode} with at least one filter. Replaces the previous
52
+ * frame's snapshot. The current snapshot is exposed via {@link entries}
53
+ * for tests and external consumers.
54
+ */
55
+ update(_delta: Time): void;
56
+ /** Submit the panel's {@link Container} subtree to the backend for drawing. */
57
+ render(backend: RenderBackend): void;
58
+ destroy(): void;
59
+ /**
60
+ * Read-only snapshot of the entries collected on the most recent
61
+ * {@link update} call. Useful for tests and for external tooling that
62
+ * wants to render its own visualisation rather than use the built-in
63
+ * panel.
64
+ */
65
+ get entries(): readonly RenderPassInspectorEntry[];
66
+ /** Total pass count across all collected entries. */
67
+ get totalPasses(): number;
68
+ private _collect;
69
+ private _build;
70
+ private _refreshPanel;
71
+ }