@blakron/core 0.4.2 → 0.4.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 (541) hide show
  1. package/package.json +1 -1
  2. package/dist/blakron/player/CanvasRenderer.d.ts +0 -49
  3. package/dist/blakron/player/CanvasRenderer.d.ts.map +0 -1
  4. package/dist/blakron/player/CanvasRenderer.js +0 -792
  5. package/dist/blakron/player/CanvasRenderer.js.map +0 -1
  6. package/dist/blakron/player/DisplayList.d.ts +0 -32
  7. package/dist/blakron/player/DisplayList.d.ts.map +0 -1
  8. package/dist/blakron/player/DisplayList.js +0 -78
  9. package/dist/blakron/player/DisplayList.js.map +0 -1
  10. package/dist/blakron/player/InstructionSet.d.ts +0 -49
  11. package/dist/blakron/player/InstructionSet.d.ts.map +0 -1
  12. package/dist/blakron/player/InstructionSet.js +0 -45
  13. package/dist/blakron/player/InstructionSet.js.map +0 -1
  14. package/dist/blakron/player/RenderBuffer.d.ts +0 -35
  15. package/dist/blakron/player/RenderBuffer.d.ts.map +0 -1
  16. package/dist/blakron/player/RenderBuffer.js +0 -83
  17. package/dist/blakron/player/RenderBuffer.js.map +0 -1
  18. package/dist/blakron/player/pipes/BitmapPipe.d.ts +0 -35
  19. package/dist/blakron/player/pipes/BitmapPipe.d.ts.map +0 -1
  20. package/dist/blakron/player/pipes/BitmapPipe.js +0 -130
  21. package/dist/blakron/player/pipes/BitmapPipe.js.map +0 -1
  22. package/dist/blakron/player/pipes/FilterPipe.d.ts +0 -68
  23. package/dist/blakron/player/pipes/FilterPipe.d.ts.map +0 -1
  24. package/dist/blakron/player/pipes/FilterPipe.js +0 -169
  25. package/dist/blakron/player/pipes/FilterPipe.js.map +0 -1
  26. package/dist/blakron/player/pipes/GraphicsPipe.d.ts +0 -36
  27. package/dist/blakron/player/pipes/GraphicsPipe.d.ts.map +0 -1
  28. package/dist/blakron/player/pipes/GraphicsPipe.js +0 -126
  29. package/dist/blakron/player/pipes/GraphicsPipe.js.map +0 -1
  30. package/dist/blakron/player/pipes/MaskPipe.d.ts +0 -58
  31. package/dist/blakron/player/pipes/MaskPipe.d.ts.map +0 -1
  32. package/dist/blakron/player/pipes/MaskPipe.js +0 -190
  33. package/dist/blakron/player/pipes/MaskPipe.js.map +0 -1
  34. package/dist/blakron/player/pipes/MeshPipe.d.ts +0 -22
  35. package/dist/blakron/player/pipes/MeshPipe.d.ts.map +0 -1
  36. package/dist/blakron/player/pipes/MeshPipe.js +0 -50
  37. package/dist/blakron/player/pipes/MeshPipe.js.map +0 -1
  38. package/dist/blakron/player/pipes/TextPipe.d.ts +0 -52
  39. package/dist/blakron/player/pipes/TextPipe.d.ts.map +0 -1
  40. package/dist/blakron/player/pipes/TextPipe.js +0 -163
  41. package/dist/blakron/player/pipes/TextPipe.js.map +0 -1
  42. package/dist/blakron/player/webgl/ShaderLib.d.ts +0 -22
  43. package/dist/blakron/player/webgl/ShaderLib.d.ts.map +0 -1
  44. package/dist/blakron/player/webgl/ShaderLib.js +0 -246
  45. package/dist/blakron/player/webgl/ShaderLib.js.map +0 -1
  46. package/dist/blakron/player/webgl2/ShaderLib2.d.ts +0 -22
  47. package/dist/blakron/player/webgl2/ShaderLib2.d.ts.map +0 -1
  48. package/dist/blakron/player/webgl2/ShaderLib2.js +0 -261
  49. package/dist/blakron/player/webgl2/ShaderLib2.js.map +0 -1
  50. package/dist/heron/benchmark/BenchmarkRunner.d.ts +0 -60
  51. package/dist/heron/benchmark/BenchmarkRunner.d.ts.map +0 -1
  52. package/dist/heron/benchmark/BenchmarkRunner.js +0 -112
  53. package/dist/heron/benchmark/BenchmarkRunner.js.map +0 -1
  54. package/dist/heron/benchmark/MetricsCollector.d.ts +0 -34
  55. package/dist/heron/benchmark/MetricsCollector.d.ts.map +0 -1
  56. package/dist/heron/benchmark/MetricsCollector.js +0 -123
  57. package/dist/heron/benchmark/MetricsCollector.js.map +0 -1
  58. package/dist/heron/benchmark/PerfPanel.d.ts +0 -24
  59. package/dist/heron/benchmark/PerfPanel.d.ts.map +0 -1
  60. package/dist/heron/benchmark/PerfPanel.js +0 -131
  61. package/dist/heron/benchmark/PerfPanel.js.map +0 -1
  62. package/dist/heron/benchmark/ReportExporter.d.ts +0 -8
  63. package/dist/heron/benchmark/ReportExporter.d.ts.map +0 -1
  64. package/dist/heron/benchmark/ReportExporter.js +0 -54
  65. package/dist/heron/benchmark/ReportExporter.js.map +0 -1
  66. package/dist/heron/benchmark/SceneRegistry.d.ts +0 -16
  67. package/dist/heron/benchmark/SceneRegistry.d.ts.map +0 -1
  68. package/dist/heron/benchmark/SceneRegistry.js +0 -233
  69. package/dist/heron/benchmark/SceneRegistry.js.map +0 -1
  70. package/dist/heron/benchmark/types.d.ts +0 -47
  71. package/dist/heron/benchmark/types.d.ts.map +0 -1
  72. package/dist/heron/benchmark/types.js +0 -2
  73. package/dist/heron/benchmark/types.js.map +0 -1
  74. package/dist/heron/display/Bitmap.d.ts +0 -53
  75. package/dist/heron/display/Bitmap.d.ts.map +0 -1
  76. package/dist/heron/display/Bitmap.js +0 -176
  77. package/dist/heron/display/Bitmap.js.map +0 -1
  78. package/dist/heron/display/DisplayObject.d.ts +0 -206
  79. package/dist/heron/display/DisplayObject.d.ts.map +0 -1
  80. package/dist/heron/display/DisplayObject.js +0 -827
  81. package/dist/heron/display/DisplayObject.js.map +0 -1
  82. package/dist/heron/display/DisplayObjectContainer.d.ts +0 -57
  83. package/dist/heron/display/DisplayObjectContainer.d.ts.map +0 -1
  84. package/dist/heron/display/DisplayObjectContainer.js +0 -348
  85. package/dist/heron/display/DisplayObjectContainer.js.map +0 -1
  86. package/dist/heron/display/Graphics.d.ts +0 -49
  87. package/dist/heron/display/Graphics.d.ts.map +0 -1
  88. package/dist/heron/display/Graphics.js +0 -315
  89. package/dist/heron/display/Graphics.js.map +0 -1
  90. package/dist/heron/display/GraphicsPath.d.ts +0 -112
  91. package/dist/heron/display/GraphicsPath.d.ts.map +0 -1
  92. package/dist/heron/display/GraphicsPath.js +0 -2
  93. package/dist/heron/display/GraphicsPath.js.map +0 -1
  94. package/dist/heron/display/Mesh.d.ts +0 -21
  95. package/dist/heron/display/Mesh.d.ts.map +0 -1
  96. package/dist/heron/display/Mesh.js +0 -56
  97. package/dist/heron/display/Mesh.js.map +0 -1
  98. package/dist/heron/display/Shape.d.ts +0 -12
  99. package/dist/heron/display/Shape.d.ts.map +0 -1
  100. package/dist/heron/display/Shape.js +0 -35
  101. package/dist/heron/display/Shape.js.map +0 -1
  102. package/dist/heron/display/Sprite.d.ts +0 -13
  103. package/dist/heron/display/Sprite.d.ts.map +0 -1
  104. package/dist/heron/display/Sprite.js +0 -37
  105. package/dist/heron/display/Sprite.js.map +0 -1
  106. package/dist/heron/display/Stage.d.ts +0 -45
  107. package/dist/heron/display/Stage.d.ts.map +0 -1
  108. package/dist/heron/display/Stage.js +0 -107
  109. package/dist/heron/display/Stage.js.map +0 -1
  110. package/dist/heron/display/enums/BitmapFillMode.d.ts +0 -7
  111. package/dist/heron/display/enums/BitmapFillMode.d.ts.map +0 -1
  112. package/dist/heron/display/enums/BitmapFillMode.js +0 -6
  113. package/dist/heron/display/enums/BitmapFillMode.js.map +0 -1
  114. package/dist/heron/display/enums/BlendMode.d.ts +0 -24
  115. package/dist/heron/display/enums/BlendMode.d.ts.map +0 -1
  116. package/dist/heron/display/enums/BlendMode.js +0 -31
  117. package/dist/heron/display/enums/BlendMode.js.map +0 -1
  118. package/dist/heron/display/enums/CapsStyle.d.ts +0 -7
  119. package/dist/heron/display/enums/CapsStyle.d.ts.map +0 -1
  120. package/dist/heron/display/enums/CapsStyle.js +0 -6
  121. package/dist/heron/display/enums/CapsStyle.js.map +0 -1
  122. package/dist/heron/display/enums/GradientType.d.ts +0 -6
  123. package/dist/heron/display/enums/GradientType.d.ts.map +0 -1
  124. package/dist/heron/display/enums/GradientType.js +0 -5
  125. package/dist/heron/display/enums/GradientType.js.map +0 -1
  126. package/dist/heron/display/enums/JointStyle.d.ts +0 -7
  127. package/dist/heron/display/enums/JointStyle.d.ts.map +0 -1
  128. package/dist/heron/display/enums/JointStyle.js +0 -6
  129. package/dist/heron/display/enums/JointStyle.js.map +0 -1
  130. package/dist/heron/display/enums/OrientationMode.d.ts +0 -8
  131. package/dist/heron/display/enums/OrientationMode.d.ts.map +0 -1
  132. package/dist/heron/display/enums/OrientationMode.js +0 -7
  133. package/dist/heron/display/enums/OrientationMode.js.map +0 -1
  134. package/dist/heron/display/enums/StageScaleMode.d.ts +0 -12
  135. package/dist/heron/display/enums/StageScaleMode.d.ts.map +0 -1
  136. package/dist/heron/display/enums/StageScaleMode.js +0 -11
  137. package/dist/heron/display/enums/StageScaleMode.js.map +0 -1
  138. package/dist/heron/display/enums/index.d.ts +0 -8
  139. package/dist/heron/display/enums/index.d.ts.map +0 -1
  140. package/dist/heron/display/enums/index.js +0 -8
  141. package/dist/heron/display/enums/index.js.map +0 -1
  142. package/dist/heron/display/index.d.ts +0 -21
  143. package/dist/heron/display/index.d.ts.map +0 -1
  144. package/dist/heron/display/index.js +0 -20
  145. package/dist/heron/display/index.js.map +0 -1
  146. package/dist/heron/display/texture/BitmapData.d.ts +0 -37
  147. package/dist/heron/display/texture/BitmapData.d.ts.map +0 -1
  148. package/dist/heron/display/texture/BitmapData.js +0 -144
  149. package/dist/heron/display/texture/BitmapData.js.map +0 -1
  150. package/dist/heron/display/texture/RenderTexture.d.ts +0 -13
  151. package/dist/heron/display/texture/RenderTexture.d.ts.map +0 -1
  152. package/dist/heron/display/texture/RenderTexture.js +0 -51
  153. package/dist/heron/display/texture/RenderTexture.js.map +0 -1
  154. package/dist/heron/display/texture/SpriteSheet.d.ts +0 -13
  155. package/dist/heron/display/texture/SpriteSheet.d.ts.map +0 -1
  156. package/dist/heron/display/texture/SpriteSheet.js +0 -34
  157. package/dist/heron/display/texture/SpriteSheet.js.map +0 -1
  158. package/dist/heron/display/texture/Texture.d.ts +0 -33
  159. package/dist/heron/display/texture/Texture.d.ts.map +0 -1
  160. package/dist/heron/display/texture/Texture.js +0 -77
  161. package/dist/heron/display/texture/Texture.js.map +0 -1
  162. package/dist/heron/display/texture/index.d.ts +0 -5
  163. package/dist/heron/display/texture/index.d.ts.map +0 -1
  164. package/dist/heron/display/texture/index.js +0 -5
  165. package/dist/heron/display/texture/index.js.map +0 -1
  166. package/dist/heron/events/Event.d.ts +0 -57
  167. package/dist/heron/events/Event.d.ts.map +0 -1
  168. package/dist/heron/events/Event.js +0 -139
  169. package/dist/heron/events/Event.js.map +0 -1
  170. package/dist/heron/events/EventDispatcher.d.ts +0 -23
  171. package/dist/heron/events/EventDispatcher.d.ts.map +0 -1
  172. package/dist/heron/events/EventDispatcher.js +0 -123
  173. package/dist/heron/events/EventDispatcher.js.map +0 -1
  174. package/dist/heron/events/EventPhase.d.ts +0 -6
  175. package/dist/heron/events/EventPhase.d.ts.map +0 -1
  176. package/dist/heron/events/EventPhase.js +0 -2
  177. package/dist/heron/events/EventPhase.js.map +0 -1
  178. package/dist/heron/events/FocusEvent.d.ts +0 -7
  179. package/dist/heron/events/FocusEvent.d.ts.map +0 -1
  180. package/dist/heron/events/FocusEvent.js +0 -11
  181. package/dist/heron/events/FocusEvent.js.map +0 -1
  182. package/dist/heron/events/HTTPStatusEvent.d.ts +0 -10
  183. package/dist/heron/events/HTTPStatusEvent.d.ts.map +0 -1
  184. package/dist/heron/events/HTTPStatusEvent.js +0 -24
  185. package/dist/heron/events/HTTPStatusEvent.js.map +0 -1
  186. package/dist/heron/events/IEventDispatcher.d.ts +0 -11
  187. package/dist/heron/events/IEventDispatcher.d.ts.map +0 -1
  188. package/dist/heron/events/IEventDispatcher.js +0 -2
  189. package/dist/heron/events/IEventDispatcher.js.map +0 -1
  190. package/dist/heron/events/IOErrorEvent.d.ts +0 -8
  191. package/dist/heron/events/IOErrorEvent.d.ts.map +0 -1
  192. package/dist/heron/events/IOErrorEvent.js +0 -17
  193. package/dist/heron/events/IOErrorEvent.js.map +0 -1
  194. package/dist/heron/events/ProgressEvent.d.ts +0 -11
  195. package/dist/heron/events/ProgressEvent.d.ts.map +0 -1
  196. package/dist/heron/events/ProgressEvent.js +0 -25
  197. package/dist/heron/events/ProgressEvent.js.map +0 -1
  198. package/dist/heron/events/StageOrientationEvent.d.ts +0 -8
  199. package/dist/heron/events/StageOrientationEvent.d.ts.map +0 -1
  200. package/dist/heron/events/StageOrientationEvent.js +0 -17
  201. package/dist/heron/events/StageOrientationEvent.js.map +0 -1
  202. package/dist/heron/events/TextEvent.d.ts +0 -9
  203. package/dist/heron/events/TextEvent.d.ts.map +0 -1
  204. package/dist/heron/events/TextEvent.js +0 -21
  205. package/dist/heron/events/TextEvent.js.map +0 -1
  206. package/dist/heron/events/TimerEvent.d.ts +0 -14
  207. package/dist/heron/events/TimerEvent.d.ts.map +0 -1
  208. package/dist/heron/events/TimerEvent.js +0 -27
  209. package/dist/heron/events/TimerEvent.js.map +0 -1
  210. package/dist/heron/events/TouchEvent.d.ts +0 -32
  211. package/dist/heron/events/TouchEvent.d.ts.map +0 -1
  212. package/dist/heron/events/TouchEvent.js +0 -85
  213. package/dist/heron/events/TouchEvent.js.map +0 -1
  214. package/dist/heron/events/index.d.ts +0 -13
  215. package/dist/heron/events/index.d.ts.map +0 -1
  216. package/dist/heron/events/index.js +0 -11
  217. package/dist/heron/events/index.js.map +0 -1
  218. package/dist/heron/external/ExternalInterface.d.ts +0 -18
  219. package/dist/heron/external/ExternalInterface.d.ts.map +0 -1
  220. package/dist/heron/external/ExternalInterface.js +0 -23
  221. package/dist/heron/external/ExternalInterface.js.map +0 -1
  222. package/dist/heron/external/index.d.ts +0 -2
  223. package/dist/heron/external/index.d.ts.map +0 -1
  224. package/dist/heron/external/index.js +0 -2
  225. package/dist/heron/external/index.js.map +0 -1
  226. package/dist/heron/filters/BlurFilter.d.ts +0 -16
  227. package/dist/heron/filters/BlurFilter.d.ts.map +0 -1
  228. package/dist/heron/filters/BlurFilter.js +0 -56
  229. package/dist/heron/filters/BlurFilter.js.map +0 -1
  230. package/dist/heron/filters/ColorMatrixFilter.d.ts +0 -10
  231. package/dist/heron/filters/ColorMatrixFilter.d.ts.map +0 -1
  232. package/dist/heron/filters/ColorMatrixFilter.js +0 -51
  233. package/dist/heron/filters/ColorMatrixFilter.js.map +0 -1
  234. package/dist/heron/filters/CustomFilter.d.ts +0 -12
  235. package/dist/heron/filters/CustomFilter.d.ts.map +0 -1
  236. package/dist/heron/filters/CustomFilter.js +0 -43
  237. package/dist/heron/filters/CustomFilter.js.map +0 -1
  238. package/dist/heron/filters/DropShadowFilter.d.ts +0 -16
  239. package/dist/heron/filters/DropShadowFilter.d.ts.map +0 -1
  240. package/dist/heron/filters/DropShadowFilter.js +0 -76
  241. package/dist/heron/filters/DropShadowFilter.js.map +0 -1
  242. package/dist/heron/filters/Filter.d.ts +0 -20
  243. package/dist/heron/filters/Filter.d.ts.map +0 -1
  244. package/dist/heron/filters/Filter.js +0 -27
  245. package/dist/heron/filters/Filter.js.map +0 -1
  246. package/dist/heron/filters/GlowFilter.d.ts +0 -34
  247. package/dist/heron/filters/GlowFilter.d.ts.map +0 -1
  248. package/dist/heron/filters/GlowFilter.js +0 -131
  249. package/dist/heron/filters/GlowFilter.js.map +0 -1
  250. package/dist/heron/filters/index.d.ts +0 -7
  251. package/dist/heron/filters/index.d.ts.map +0 -1
  252. package/dist/heron/filters/index.js +0 -7
  253. package/dist/heron/filters/index.js.map +0 -1
  254. package/dist/heron/geom/Matrix.d.ts +0 -51
  255. package/dist/heron/geom/Matrix.d.ts.map +0 -1
  256. package/dist/heron/geom/Matrix.js +0 -312
  257. package/dist/heron/geom/Matrix.js.map +0 -1
  258. package/dist/heron/geom/Point.d.ts +0 -24
  259. package/dist/heron/geom/Point.d.ts.map +0 -1
  260. package/dist/heron/geom/Point.js +0 -75
  261. package/dist/heron/geom/Point.js.map +0 -1
  262. package/dist/heron/geom/Rectangle.d.ts +0 -48
  263. package/dist/heron/geom/Rectangle.d.ts.map +0 -1
  264. package/dist/heron/geom/Rectangle.js +0 -176
  265. package/dist/heron/geom/Rectangle.js.map +0 -1
  266. package/dist/heron/geom/index.d.ts +0 -4
  267. package/dist/heron/geom/index.d.ts.map +0 -1
  268. package/dist/heron/geom/index.js +0 -4
  269. package/dist/heron/geom/index.js.map +0 -1
  270. package/dist/heron/localStorage/index.d.ts +0 -2
  271. package/dist/heron/localStorage/index.d.ts.map +0 -1
  272. package/dist/heron/localStorage/index.js +0 -2
  273. package/dist/heron/localStorage/index.js.map +0 -1
  274. package/dist/heron/localStorage/localStorage.d.ts +0 -5
  275. package/dist/heron/localStorage/localStorage.d.ts.map +0 -1
  276. package/dist/heron/localStorage/localStorage.js +0 -19
  277. package/dist/heron/localStorage/localStorage.js.map +0 -1
  278. package/dist/heron/media/Sound.d.ts +0 -26
  279. package/dist/heron/media/Sound.d.ts.map +0 -1
  280. package/dist/heron/media/Sound.js +0 -145
  281. package/dist/heron/media/Sound.js.map +0 -1
  282. package/dist/heron/media/SoundChannel.d.ts +0 -28
  283. package/dist/heron/media/SoundChannel.d.ts.map +0 -1
  284. package/dist/heron/media/SoundChannel.js +0 -117
  285. package/dist/heron/media/SoundChannel.js.map +0 -1
  286. package/dist/heron/media/Video.d.ts +0 -50
  287. package/dist/heron/media/Video.d.ts.map +0 -1
  288. package/dist/heron/media/Video.js +0 -249
  289. package/dist/heron/media/Video.js.map +0 -1
  290. package/dist/heron/media/index.d.ts +0 -4
  291. package/dist/heron/media/index.d.ts.map +0 -1
  292. package/dist/heron/media/index.js +0 -4
  293. package/dist/heron/media/index.js.map +0 -1
  294. package/dist/heron/net/HttpMethod.d.ts +0 -6
  295. package/dist/heron/net/HttpMethod.d.ts.map +0 -1
  296. package/dist/heron/net/HttpMethod.js +0 -5
  297. package/dist/heron/net/HttpMethod.js.map +0 -1
  298. package/dist/heron/net/HttpRequest.d.ts +0 -19
  299. package/dist/heron/net/HttpRequest.d.ts.map +0 -1
  300. package/dist/heron/net/HttpRequest.js +0 -63
  301. package/dist/heron/net/HttpRequest.js.map +0 -1
  302. package/dist/heron/net/HttpResponseType.d.ts +0 -6
  303. package/dist/heron/net/HttpResponseType.d.ts.map +0 -1
  304. package/dist/heron/net/HttpResponseType.js +0 -5
  305. package/dist/heron/net/HttpResponseType.js.map +0 -1
  306. package/dist/heron/net/ImageLoader.d.ts +0 -10
  307. package/dist/heron/net/ImageLoader.d.ts.map +0 -1
  308. package/dist/heron/net/ImageLoader.js +0 -32
  309. package/dist/heron/net/ImageLoader.js.map +0 -1
  310. package/dist/heron/net/index.d.ts +0 -7
  311. package/dist/heron/net/index.d.ts.map +0 -1
  312. package/dist/heron/net/index.js +0 -5
  313. package/dist/heron/net/index.js.map +0 -1
  314. package/dist/heron/player/CanvasRenderer.d.ts +0 -49
  315. package/dist/heron/player/CanvasRenderer.d.ts.map +0 -1
  316. package/dist/heron/player/CanvasRenderer.js +0 -767
  317. package/dist/heron/player/CanvasRenderer.js.map +0 -1
  318. package/dist/heron/player/DisplayList.d.ts +0 -32
  319. package/dist/heron/player/DisplayList.d.ts.map +0 -1
  320. package/dist/heron/player/DisplayList.js +0 -78
  321. package/dist/heron/player/DisplayList.js.map +0 -1
  322. package/dist/heron/player/HeronOptions.d.ts +0 -25
  323. package/dist/heron/player/HeronOptions.d.ts.map +0 -1
  324. package/dist/heron/player/HeronOptions.js +0 -2
  325. package/dist/heron/player/HeronOptions.js.map +0 -1
  326. package/dist/heron/player/InstructionSet.d.ts +0 -49
  327. package/dist/heron/player/InstructionSet.d.ts.map +0 -1
  328. package/dist/heron/player/InstructionSet.js +0 -45
  329. package/dist/heron/player/InstructionSet.js.map +0 -1
  330. package/dist/heron/player/Player.d.ts +0 -45
  331. package/dist/heron/player/Player.d.ts.map +0 -1
  332. package/dist/heron/player/Player.js +0 -149
  333. package/dist/heron/player/Player.js.map +0 -1
  334. package/dist/heron/player/RenderBuffer.d.ts +0 -35
  335. package/dist/heron/player/RenderBuffer.d.ts.map +0 -1
  336. package/dist/heron/player/RenderBuffer.js +0 -81
  337. package/dist/heron/player/RenderBuffer.js.map +0 -1
  338. package/dist/heron/player/RenderPipe.d.ts +0 -33
  339. package/dist/heron/player/RenderPipe.d.ts.map +0 -1
  340. package/dist/heron/player/RenderPipe.js +0 -2
  341. package/dist/heron/player/RenderPipe.js.map +0 -1
  342. package/dist/heron/player/ScreenAdapter.d.ts +0 -29
  343. package/dist/heron/player/ScreenAdapter.d.ts.map +0 -1
  344. package/dist/heron/player/ScreenAdapter.js +0 -127
  345. package/dist/heron/player/ScreenAdapter.js.map +0 -1
  346. package/dist/heron/player/SystemTicker.d.ts +0 -63
  347. package/dist/heron/player/SystemTicker.d.ts.map +0 -1
  348. package/dist/heron/player/SystemTicker.js +0 -207
  349. package/dist/heron/player/SystemTicker.js.map +0 -1
  350. package/dist/heron/player/TouchHandler.d.ts +0 -39
  351. package/dist/heron/player/TouchHandler.d.ts.map +0 -1
  352. package/dist/heron/player/TouchHandler.js +0 -149
  353. package/dist/heron/player/TouchHandler.js.map +0 -1
  354. package/dist/heron/player/createPlayer.d.ts +0 -35
  355. package/dist/heron/player/createPlayer.d.ts.map +0 -1
  356. package/dist/heron/player/createPlayer.js +0 -74
  357. package/dist/heron/player/createPlayer.js.map +0 -1
  358. package/dist/heron/player/index.d.ts +0 -13
  359. package/dist/heron/player/index.d.ts.map +0 -1
  360. package/dist/heron/player/index.js +0 -16
  361. package/dist/heron/player/index.js.map +0 -1
  362. package/dist/heron/player/pipes/BitmapPipe.d.ts +0 -35
  363. package/dist/heron/player/pipes/BitmapPipe.d.ts.map +0 -1
  364. package/dist/heron/player/pipes/BitmapPipe.js +0 -130
  365. package/dist/heron/player/pipes/BitmapPipe.js.map +0 -1
  366. package/dist/heron/player/pipes/FilterPipe.d.ts +0 -68
  367. package/dist/heron/player/pipes/FilterPipe.d.ts.map +0 -1
  368. package/dist/heron/player/pipes/FilterPipe.js +0 -157
  369. package/dist/heron/player/pipes/FilterPipe.js.map +0 -1
  370. package/dist/heron/player/pipes/GraphicsPipe.d.ts +0 -36
  371. package/dist/heron/player/pipes/GraphicsPipe.d.ts.map +0 -1
  372. package/dist/heron/player/pipes/GraphicsPipe.js +0 -126
  373. package/dist/heron/player/pipes/GraphicsPipe.js.map +0 -1
  374. package/dist/heron/player/pipes/MaskPipe.d.ts +0 -58
  375. package/dist/heron/player/pipes/MaskPipe.d.ts.map +0 -1
  376. package/dist/heron/player/pipes/MaskPipe.js +0 -185
  377. package/dist/heron/player/pipes/MaskPipe.js.map +0 -1
  378. package/dist/heron/player/pipes/MeshPipe.d.ts +0 -22
  379. package/dist/heron/player/pipes/MeshPipe.d.ts.map +0 -1
  380. package/dist/heron/player/pipes/MeshPipe.js +0 -50
  381. package/dist/heron/player/pipes/MeshPipe.js.map +0 -1
  382. package/dist/heron/player/pipes/TextPipe.d.ts +0 -52
  383. package/dist/heron/player/pipes/TextPipe.d.ts.map +0 -1
  384. package/dist/heron/player/pipes/TextPipe.js +0 -163
  385. package/dist/heron/player/pipes/TextPipe.js.map +0 -1
  386. package/dist/heron/player/webgl/MultiTextureBatcher.d.ts +0 -37
  387. package/dist/heron/player/webgl/MultiTextureBatcher.d.ts.map +0 -1
  388. package/dist/heron/player/webgl/MultiTextureBatcher.js +0 -63
  389. package/dist/heron/player/webgl/MultiTextureBatcher.js.map +0 -1
  390. package/dist/heron/player/webgl/ShaderLib.d.ts +0 -34
  391. package/dist/heron/player/webgl/ShaderLib.d.ts.map +0 -1
  392. package/dist/heron/player/webgl/ShaderLib.js +0 -268
  393. package/dist/heron/player/webgl/ShaderLib.js.map +0 -1
  394. package/dist/heron/player/webgl/WebGLDrawCmdManager.d.ts +0 -58
  395. package/dist/heron/player/webgl/WebGLDrawCmdManager.d.ts.map +0 -1
  396. package/dist/heron/player/webgl/WebGLDrawCmdManager.js +0 -197
  397. package/dist/heron/player/webgl/WebGLDrawCmdManager.js.map +0 -1
  398. package/dist/heron/player/webgl/WebGLProgram.d.ts +0 -14
  399. package/dist/heron/player/webgl/WebGLProgram.d.ts.map +0 -1
  400. package/dist/heron/player/webgl/WebGLProgram.js +0 -32
  401. package/dist/heron/player/webgl/WebGLProgram.js.map +0 -1
  402. package/dist/heron/player/webgl/WebGLRenderBuffer.d.ts +0 -52
  403. package/dist/heron/player/webgl/WebGLRenderBuffer.d.ts.map +0 -1
  404. package/dist/heron/player/webgl/WebGLRenderBuffer.js +0 -227
  405. package/dist/heron/player/webgl/WebGLRenderBuffer.js.map +0 -1
  406. package/dist/heron/player/webgl/WebGLRenderContext.d.ts +0 -114
  407. package/dist/heron/player/webgl/WebGLRenderContext.d.ts.map +0 -1
  408. package/dist/heron/player/webgl/WebGLRenderContext.js +0 -852
  409. package/dist/heron/player/webgl/WebGLRenderContext.js.map +0 -1
  410. package/dist/heron/player/webgl/WebGLRenderTarget.d.ts +0 -19
  411. package/dist/heron/player/webgl/WebGLRenderTarget.d.ts.map +0 -1
  412. package/dist/heron/player/webgl/WebGLRenderTarget.js +0 -90
  413. package/dist/heron/player/webgl/WebGLRenderTarget.js.map +0 -1
  414. package/dist/heron/player/webgl/WebGLRenderer.d.ts +0 -91
  415. package/dist/heron/player/webgl/WebGLRenderer.d.ts.map +0 -1
  416. package/dist/heron/player/webgl/WebGLRenderer.js +0 -721
  417. package/dist/heron/player/webgl/WebGLRenderer.js.map +0 -1
  418. package/dist/heron/player/webgl/WebGLUtils.d.ts +0 -11
  419. package/dist/heron/player/webgl/WebGLUtils.d.ts.map +0 -1
  420. package/dist/heron/player/webgl/WebGLUtils.js +0 -57
  421. package/dist/heron/player/webgl/WebGLUtils.js.map +0 -1
  422. package/dist/heron/player/webgl/WebGLVertexArrayObject.d.ts +0 -39
  423. package/dist/heron/player/webgl/WebGLVertexArrayObject.d.ts.map +0 -1
  424. package/dist/heron/player/webgl/WebGLVertexArrayObject.js +0 -367
  425. package/dist/heron/player/webgl/WebGLVertexArrayObject.js.map +0 -1
  426. package/dist/heron/player/webgl/index.d.ts +0 -11
  427. package/dist/heron/player/webgl/index.d.ts.map +0 -1
  428. package/dist/heron/player/webgl/index.js +0 -11
  429. package/dist/heron/player/webgl/index.js.map +0 -1
  430. package/dist/heron/system/Capabilities.d.ts +0 -46
  431. package/dist/heron/system/Capabilities.d.ts.map +0 -1
  432. package/dist/heron/system/Capabilities.js +0 -100
  433. package/dist/heron/system/Capabilities.js.map +0 -1
  434. package/dist/heron/system/index.d.ts +0 -2
  435. package/dist/heron/system/index.d.ts.map +0 -1
  436. package/dist/heron/system/index.js +0 -2
  437. package/dist/heron/system/index.js.map +0 -1
  438. package/dist/heron/text/BitmapFont.d.ts +0 -31
  439. package/dist/heron/text/BitmapFont.d.ts.map +0 -1
  440. package/dist/heron/text/BitmapFont.js +0 -86
  441. package/dist/heron/text/BitmapFont.js.map +0 -1
  442. package/dist/heron/text/BitmapText.d.ts +0 -56
  443. package/dist/heron/text/BitmapText.d.ts.map +0 -1
  444. package/dist/heron/text/BitmapText.js +0 -230
  445. package/dist/heron/text/BitmapText.js.map +0 -1
  446. package/dist/heron/text/HtmlTextParser.d.ts +0 -14
  447. package/dist/heron/text/HtmlTextParser.d.ts.map +0 -1
  448. package/dist/heron/text/HtmlTextParser.js +0 -147
  449. package/dist/heron/text/HtmlTextParser.js.map +0 -1
  450. package/dist/heron/text/InputController.d.ts +0 -29
  451. package/dist/heron/text/InputController.d.ts.map +0 -1
  452. package/dist/heron/text/InputController.js +0 -131
  453. package/dist/heron/text/InputController.js.map +0 -1
  454. package/dist/heron/text/StageText.d.ts +0 -53
  455. package/dist/heron/text/StageText.d.ts.map +0 -1
  456. package/dist/heron/text/StageText.js +0 -392
  457. package/dist/heron/text/StageText.js.map +0 -1
  458. package/dist/heron/text/TextField.d.ts +0 -145
  459. package/dist/heron/text/TextField.d.ts.map +0 -1
  460. package/dist/heron/text/TextField.js +0 -716
  461. package/dist/heron/text/TextField.js.map +0 -1
  462. package/dist/heron/text/TextMeasurer.d.ts +0 -9
  463. package/dist/heron/text/TextMeasurer.d.ts.map +0 -1
  464. package/dist/heron/text/TextMeasurer.js +0 -36
  465. package/dist/heron/text/TextMeasurer.js.map +0 -1
  466. package/dist/heron/text/WordWrap.d.ts +0 -15
  467. package/dist/heron/text/WordWrap.d.ts.map +0 -1
  468. package/dist/heron/text/WordWrap.js +0 -50
  469. package/dist/heron/text/WordWrap.js.map +0 -1
  470. package/dist/heron/text/enums/HorizontalAlign.d.ts +0 -9
  471. package/dist/heron/text/enums/HorizontalAlign.d.ts.map +0 -1
  472. package/dist/heron/text/enums/HorizontalAlign.js +0 -8
  473. package/dist/heron/text/enums/HorizontalAlign.js.map +0 -1
  474. package/dist/heron/text/enums/TextFieldInputType.d.ts +0 -7
  475. package/dist/heron/text/enums/TextFieldInputType.d.ts.map +0 -1
  476. package/dist/heron/text/enums/TextFieldInputType.js +0 -6
  477. package/dist/heron/text/enums/TextFieldInputType.js.map +0 -1
  478. package/dist/heron/text/enums/TextFieldType.d.ts +0 -6
  479. package/dist/heron/text/enums/TextFieldType.d.ts.map +0 -1
  480. package/dist/heron/text/enums/TextFieldType.js +0 -5
  481. package/dist/heron/text/enums/TextFieldType.js.map +0 -1
  482. package/dist/heron/text/enums/VerticalAlign.d.ts +0 -9
  483. package/dist/heron/text/enums/VerticalAlign.d.ts.map +0 -1
  484. package/dist/heron/text/enums/VerticalAlign.js +0 -8
  485. package/dist/heron/text/enums/VerticalAlign.js.map +0 -1
  486. package/dist/heron/text/enums/index.d.ts +0 -5
  487. package/dist/heron/text/enums/index.d.ts.map +0 -1
  488. package/dist/heron/text/enums/index.js +0 -5
  489. package/dist/heron/text/enums/index.js.map +0 -1
  490. package/dist/heron/text/index.d.ts +0 -14
  491. package/dist/heron/text/index.d.ts.map +0 -1
  492. package/dist/heron/text/index.js +0 -13
  493. package/dist/heron/text/index.js.map +0 -1
  494. package/dist/heron/text/types/ITextElement.d.ts +0 -31
  495. package/dist/heron/text/types/ITextElement.d.ts.map +0 -1
  496. package/dist/heron/text/types/ITextElement.js +0 -2
  497. package/dist/heron/text/types/ITextElement.js.map +0 -1
  498. package/dist/heron/text/types/index.d.ts +0 -2
  499. package/dist/heron/text/types/index.d.ts.map +0 -1
  500. package/dist/heron/text/types/index.js +0 -2
  501. package/dist/heron/text/types/index.js.map +0 -1
  502. package/dist/heron/utils/Base64Util.d.ts +0 -5
  503. package/dist/heron/utils/Base64Util.d.ts.map +0 -1
  504. package/dist/heron/utils/Base64Util.js +0 -45
  505. package/dist/heron/utils/Base64Util.js.map +0 -1
  506. package/dist/heron/utils/ByteArray.d.ts +0 -66
  507. package/dist/heron/utils/ByteArray.d.ts.map +0 -1
  508. package/dist/heron/utils/ByteArray.js +0 -303
  509. package/dist/heron/utils/ByteArray.js.map +0 -1
  510. package/dist/heron/utils/DebugLog.d.ts +0 -9
  511. package/dist/heron/utils/DebugLog.d.ts.map +0 -1
  512. package/dist/heron/utils/DebugLog.js +0 -25
  513. package/dist/heron/utils/DebugLog.js.map +0 -1
  514. package/dist/heron/utils/FontManager.d.ts +0 -11
  515. package/dist/heron/utils/FontManager.d.ts.map +0 -1
  516. package/dist/heron/utils/FontManager.js +0 -39
  517. package/dist/heron/utils/FontManager.js.map +0 -1
  518. package/dist/heron/utils/HashObject.d.ts +0 -9
  519. package/dist/heron/utils/HashObject.d.ts.map +0 -1
  520. package/dist/heron/utils/HashObject.js +0 -11
  521. package/dist/heron/utils/HashObject.js.map +0 -1
  522. package/dist/heron/utils/Logger.d.ts +0 -16
  523. package/dist/heron/utils/Logger.d.ts.map +0 -1
  524. package/dist/heron/utils/Logger.js +0 -26
  525. package/dist/heron/utils/Logger.js.map +0 -1
  526. package/dist/heron/utils/NumberUtils.d.ts +0 -15
  527. package/dist/heron/utils/NumberUtils.d.ts.map +0 -1
  528. package/dist/heron/utils/NumberUtils.js +0 -60
  529. package/dist/heron/utils/NumberUtils.js.map +0 -1
  530. package/dist/heron/utils/Timer.d.ts +0 -22
  531. package/dist/heron/utils/Timer.d.ts.map +0 -1
  532. package/dist/heron/utils/Timer.js +0 -67
  533. package/dist/heron/utils/Timer.js.map +0 -1
  534. package/dist/heron/utils/index.d.ts +0 -11
  535. package/dist/heron/utils/index.d.ts.map +0 -1
  536. package/dist/heron/utils/index.js +0 -10
  537. package/dist/heron/utils/index.js.map +0 -1
  538. package/dist/heron/utils/toColorString.d.ts +0 -2
  539. package/dist/heron/utils/toColorString.d.ts.map +0 -1
  540. package/dist/heron/utils/toColorString.js +0 -5
  541. package/dist/heron/utils/toColorString.js.map +0 -1
@@ -1,68 +0,0 @@
1
- import type { DisplayObject } from '../../display/DisplayObject.js';
2
- import type { Filter } from '../../filters/Filter.js';
3
- import type { WebGLRenderBuffer } from '../webgl/WebGLRenderBuffer.js';
4
- import type { Instruction } from '../InstructionSet.js';
5
- import type { InstructionSet } from '../InstructionSet.js';
6
- import type { RenderPipe } from '../RenderPipe.js';
7
- /** Marks the start of a filtered subtree. */
8
- export interface FilterPushInstruction extends Instruction {
9
- readonly renderPipeId: 'filterPush';
10
- renderable: DisplayObject;
11
- filters: Filter[];
12
- offsetX: number;
13
- offsetY: number;
14
- /**
15
- * The blend mode that was active before this filter changed it.
16
- * Set during executePush() so executePop() can restore it.
17
- */
18
- savedBlendMode: string;
19
- }
20
- /** Marks the end of a filtered subtree — composites the offscreen result. */
21
- export interface FilterPopInstruction extends Instruction {
22
- readonly renderPipeId: 'filterPop';
23
- renderable: DisplayObject;
24
- /** Back-reference to the matching push instruction. */
25
- push: FilterPushInstruction;
26
- }
27
- /**
28
- * Handles filter rendering for WebGL.
29
- *
30
- * The renderer calls pushFilter() before traversing the filtered subtree and
31
- * popFilter() after. The pop instruction composites the offscreen buffer back
32
- * onto the main buffer with the filter applied.
33
- *
34
- * This mirrors the old WebGLRenderer._drawWithFilter() logic but expressed as
35
- * a pair of instructions so the traversal and execution phases are separated.
36
- */
37
- export declare class FilterPipe implements RenderPipe<DisplayObject> {
38
- static readonly PUSH_ID = "filterPush";
39
- static readonly POP_ID = "filterPop";
40
- private static readonly _pushPool;
41
- private static readonly _popPool;
42
- addToInstructionSet(_renderable: DisplayObject, _set: InstructionSet): void;
43
- updateRenderable(_renderable: DisplayObject): void;
44
- static makePush(renderable: DisplayObject, filters: Filter[], offsetX: number, offsetY: number): FilterPushInstruction;
45
- static makePop(renderable: DisplayObject, push: FilterPushInstruction): FilterPopInstruction;
46
- static releasePush(inst: FilterPushInstruction): void;
47
- static releasePop(inst: FilterPopInstruction): void;
48
- /**
49
- * Called by the renderer when it encounters a filterPush instruction.
50
- *
51
- * Two paths:
52
- * - ColorMatrix inline: sets activeFilter on the main buffer, returns undefined.
53
- * Subsequent leaf instructions draw directly to the main buffer with the
54
- * filter applied per-draw-call.
55
- * - All other filters: allocates an offscreen buffer and activates it via
56
- * pushBuffer so that ALL subsequent draw calls (until filterPop) land in
57
- * the offscreen buffer, not the main buffer.
58
- *
59
- * Returns the offscreen buffer (or undefined for inline path).
60
- */
61
- executePush(inst: FilterPushInstruction, buffer: WebGLRenderBuffer): WebGLRenderBuffer | undefined;
62
- /**
63
- * Called by the renderer when it encounters a filterPop instruction.
64
- * Deactivates the offscreen buffer and composites it back onto the main buffer.
65
- */
66
- executePop(inst: FilterPopInstruction, buffer: WebGLRenderBuffer, offscreen: WebGLRenderBuffer | undefined): void;
67
- }
68
- //# sourceMappingURL=FilterPipe.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FilterPipe.d.ts","sourceRoot":"","sources":["../../../../src/blakron/player/pipes/FilterPipe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AAEtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAKnD,6CAA6C;AAC7C,MAAM,WAAW,qBAAsB,SAAQ,WAAW;IACzD,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,UAAU,EAAE,aAAa,CAAC;IAC1B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB;;;OAGG;IACH,cAAc,EAAE,MAAM,CAAC;CACvB;AAED,6EAA6E;AAC7E,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACxD,QAAQ,CAAC,YAAY,EAAE,WAAW,CAAC;IACnC,UAAU,EAAE,aAAa,CAAC;IAC1B,uDAAuD;IACvD,IAAI,EAAE,qBAAqB,CAAC;CAC5B;AAUD;;;;;;;;;GASG;AACH,qBAAa,UAAW,YAAW,UAAU,CAAC,aAAa,CAAC;IAE3D,gBAAuB,OAAO,gBAAgB;IAC9C,gBAAuB,MAAM,eAAe;IAC5C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAA+B;IAChE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAA8B;IAIvD,mBAAmB,CAAC,WAAW,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI;IAK3E,gBAAgB,CAAC,WAAW,EAAE,aAAa,GAAG,IAAI;WAI3C,QAAQ,CACrB,UAAU,EAAE,aAAa,EACzB,OAAO,EAAE,MAAM,EAAE,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GACb,qBAAqB;WAaV,OAAO,CAAC,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,qBAAqB,GAAG,oBAAoB;WAUrF,WAAW,CAAC,IAAI,EAAE,qBAAqB,GAAG,IAAI;WAI9C,UAAU,CAAC,IAAI,EAAE,oBAAoB,GAAG,IAAI;IAM1D;;;;;;;;;;;;OAYG;IACI,WAAW,CAAC,IAAI,EAAE,qBAAqB,EAAE,MAAM,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,SAAS;IAuDzG;;;OAGG;IACI,UAAU,CAChB,IAAI,EAAE,oBAAoB,EAC1B,MAAM,EAAE,iBAAiB,EACzB,SAAS,EAAE,iBAAiB,GAAG,SAAS,GACtC,IAAI;CA6CP"}
@@ -1,169 +0,0 @@
1
- import { ColorMatrixFilter } from '../../filters/ColorMatrixFilter.js';
2
- import { WebGLRenderBuffer as WGLBuf } from '../webgl/WebGLRenderBuffer.js';
3
- // ── Pipe ──────────────────────────────────────────────────────────────────────
4
- const BLEND_MODES = {
5
- 0: 'source-over',
6
- 1: 'lighter',
7
- 2: 'destination-out',
8
- };
9
- /**
10
- * Handles filter rendering for WebGL.
11
- *
12
- * The renderer calls pushFilter() before traversing the filtered subtree and
13
- * popFilter() after. The pop instruction composites the offscreen buffer back
14
- * onto the main buffer with the filter applied.
15
- *
16
- * This mirrors the old WebGLRenderer._drawWithFilter() logic but expressed as
17
- * a pair of instructions so the traversal and execution phases are separated.
18
- */
19
- export class FilterPipe {
20
- // ── Static fields ─────────────────────────────────────────────────────────
21
- static PUSH_ID = 'filterPush';
22
- static POP_ID = 'filterPop';
23
- static _pushPool = [];
24
- static _popPool = [];
25
- // ── RenderPipe impl ───────────────────────────────────────────────────────
26
- addToInstructionSet(_renderable, _set) {
27
- // FilterPipe instructions are added by the renderer's traversal logic,
28
- // not by this method — see WebGLRenderer._buildInstructions().
29
- }
30
- updateRenderable(_renderable) { }
31
- // ── Factory helpers used by the renderer ─────────────────────────────────
32
- static makePush(renderable, filters, offsetX, offsetY) {
33
- const inst = FilterPipe._pushPool.pop();
34
- if (inst) {
35
- inst.renderable = renderable;
36
- inst.filters = filters;
37
- inst.offsetX = offsetX;
38
- inst.offsetY = offsetY;
39
- inst.savedBlendMode = 'source-over';
40
- return inst;
41
- }
42
- return { renderPipeId: 'filterPush', renderable, filters, offsetX, offsetY, savedBlendMode: 'source-over' };
43
- }
44
- static makePop(renderable, push) {
45
- const inst = FilterPipe._popPool.pop();
46
- if (inst) {
47
- inst.renderable = renderable;
48
- inst.push = push;
49
- return inst;
50
- }
51
- return { renderPipeId: 'filterPop', renderable, push };
52
- }
53
- static releasePush(inst) {
54
- FilterPipe._pushPool.push(inst);
55
- }
56
- static releasePop(inst) {
57
- FilterPipe._popPool.push(inst);
58
- }
59
- // ── Execute ───────────────────────────────────────────────────────────────
60
- /**
61
- * Called by the renderer when it encounters a filterPush instruction.
62
- *
63
- * Two paths:
64
- * - ColorMatrix inline: sets activeFilter on the main buffer, returns undefined.
65
- * Subsequent leaf instructions draw directly to the main buffer with the
66
- * filter applied per-draw-call.
67
- * - All other filters: allocates an offscreen buffer and activates it via
68
- * pushBuffer so that ALL subsequent draw calls (until filterPop) land in
69
- * the offscreen buffer, not the main buffer.
70
- *
71
- * Returns the offscreen buffer (or undefined for inline path).
72
- */
73
- executePush(inst, buffer) {
74
- const filters = inst.filters;
75
- if (!filters.length)
76
- return undefined;
77
- const bounds = inst.renderable.getOriginalBounds();
78
- if (bounds.width <= 0 || bounds.height <= 0)
79
- return undefined;
80
- // Inline ColorMatrix optimisation: no offscreen buffer needed.
81
- // Flush any pending commands first, then re-activate the current buffer
82
- // so the GL FBO + viewport/projection are in a known-good state before
83
- // the leaf draw commands are queued. Without this, the colorTransform
84
- // draw may execute against a stale FBO left by a previous filter pass.
85
- if (!inst.renderable.internalMask && filters.length === 1 && filters[0] instanceof ColorMatrixFilter) {
86
- const hasBlend = inst.renderable.internalBlendMode !== 0;
87
- if (hasBlend) {
88
- inst.savedBlendMode = buffer.context.currentBlendMode;
89
- buffer.context.setGlobalCompositeOperation(BLEND_MODES[inst.renderable.internalBlendMode] ?? 'source-over');
90
- }
91
- // Flush pending batched commands so the GL state is clean, then
92
- // re-push the current buffer to guarantee an ACT_BUFFER command
93
- // precedes the upcoming leaf draw in the next flush.
94
- buffer.context.flush();
95
- buffer.context.pushBuffer(buffer);
96
- buffer.context.activeFilter = filters[0];
97
- return undefined; // signal: inline mode, no offscreen
98
- }
99
- // Offscreen path: redirect all subsequent draw calls into this buffer.
100
- // Expand the buffer by the union of all filters' padding so blur/glow
101
- // has room to bleed outside the content bounds.
102
- let padL = 0, padR = 0, padT = 0, padB = 0;
103
- for (const f of filters) {
104
- const p = f.getPadding();
105
- if (p.left > padL)
106
- padL = p.left;
107
- if (p.right > padR)
108
- padR = p.right;
109
- if (p.top > padT)
110
- padT = p.top;
111
- if (p.bottom > padB)
112
- padB = p.bottom;
113
- }
114
- const offW = Math.ceil(bounds.width + padL + padR);
115
- const offH = Math.ceil(bounds.height + padT + padB);
116
- const offscreen = WGLBuf.create(buffer.context, offW, offH);
117
- // Store padding offsets so the renderer can adjust the offscreen origin.
118
- offscreen.filterPadX = padL;
119
- offscreen.filterPadY = padT;
120
- // pushBuffer activates the offscreen FBO so WebGL draws land there.
121
- offscreen.context.pushBuffer(offscreen);
122
- return offscreen;
123
- }
124
- /**
125
- * Called by the renderer when it encounters a filterPop instruction.
126
- * Deactivates the offscreen buffer and composites it back onto the main buffer.
127
- */
128
- executePop(inst, buffer, offscreen) {
129
- const { renderable, push } = inst;
130
- const filters = push.filters;
131
- const hasBlend = renderable.internalBlendMode !== 0;
132
- const blendOp = BLEND_MODES[renderable.internalBlendMode] ?? 'source-over';
133
- // Inline ColorMatrix path — clear the filter flag and pop the buffer
134
- // that was pushed in executePush to balance the stack.
135
- if (!offscreen) {
136
- buffer.context.flush();
137
- buffer.context.popBuffer();
138
- buffer.context.activeFilter = undefined;
139
- if (hasBlend)
140
- buffer.context.setGlobalCompositeOperation(push.savedBlendMode);
141
- return;
142
- }
143
- // Deactivate the offscreen buffer, restoring the main buffer as active.
144
- offscreen.context.popBuffer();
145
- const bounds = renderable.getOriginalBounds();
146
- const bx = bounds.x;
147
- const by = bounds.y;
148
- // Save the current blend mode before applying the filter's blend mode,
149
- // so we can restore it after compositing.
150
- const prevBlend = buffer.context.currentBlendMode;
151
- if (hasBlend)
152
- buffer.context.setGlobalCompositeOperation(blendOp);
153
- // Position the offscreen result.
154
- // The offscreen texture's top-left is (padL, padT) above/left of
155
- // the content bounds origin, so we offset by (bx - padL, by - padT).
156
- const padX = offscreen.filterPadX;
157
- const padY = offscreen.filterPadY;
158
- buffer.offsetX = bx - padX;
159
- buffer.offsetY = by - padY;
160
- buffer.saveTransform();
161
- buffer.useOffset();
162
- buffer.context.compositeFilterResult(filters, offscreen);
163
- buffer.restoreTransform();
164
- if (hasBlend)
165
- buffer.context.setGlobalCompositeOperation(prevBlend);
166
- WGLBuf.release(offscreen);
167
- }
168
- }
169
- //# sourceMappingURL=FilterPipe.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FilterPipe.js","sourceRoot":"","sources":["../../../../src/blakron/player/pipes/FilterPipe.ts"],"names":[],"mappings":"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"}
@@ -1,36 +0,0 @@
1
- import type { Graphics } from '../../display/Graphics.js';
2
- import type { DisplayObject } from '../../display/DisplayObject.js';
3
- import type { WebGLRenderBuffer } from '../webgl/WebGLRenderBuffer.js';
4
- import type { Instruction } from '../InstructionSet.js';
5
- import type { InstructionSet } from '../InstructionSet.js';
6
- import type { RenderPipe } from '../RenderPipe.js';
7
- import type { CanvasRenderer } from '../CanvasRenderer.js';
8
- export interface GraphicsInstruction extends Instruction {
9
- readonly renderPipeId: 'graphics';
10
- renderable: DisplayObject;
11
- /** The Graphics object attached to the renderable. */
12
- graphics: Graphics;
13
- offsetX: number;
14
- offsetY: number;
15
- }
16
- /**
17
- * Handles WebGL rendering of Shape / Sprite graphics.
18
- *
19
- * Rasterizes the Graphics commands to an offscreen Canvas, uploads as a
20
- * WebGL texture, and caches it. The cache is invalidated when
21
- * `graphics.canvasCacheDirty` is true (set by Graphics.dirty()).
22
- */
23
- export declare class GraphicsPipe implements RenderPipe<DisplayObject> {
24
- static readonly PIPE_ID = "graphics";
25
- private static readonly _pool;
26
- private readonly _canvasRenderer;
27
- private readonly _cache;
28
- constructor(canvasRenderer: CanvasRenderer);
29
- private static _alloc;
30
- static release(inst: GraphicsInstruction): void;
31
- addToInstructionSet(renderable: DisplayObject, set: InstructionSet): void;
32
- updateRenderable(_renderable: DisplayObject): void;
33
- destroyRenderable(renderable: DisplayObject): void;
34
- execute(inst: GraphicsInstruction, buffer: WebGLRenderBuffer): void;
35
- }
36
- //# sourceMappingURL=GraphicsPipe.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GraphicsPipe.d.ts","sourceRoot":"","sources":["../../../../src/blakron/player/pipes/GraphicsPipe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAQ3D,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACvD,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;IAClC,UAAU,EAAE,aAAa,CAAC;IAC1B,sDAAsD;IACtD,QAAQ,EAAE,QAAQ,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAChB;AAgBD;;;;;;GAMG;AACH,qBAAa,YAAa,YAAW,UAAU,CAAC,aAAa,CAAC;IAE7D,gBAAuB,OAAO,cAAc;IAC5C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAA6B;IAG1D,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiB;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA0C;gBAG9C,cAAc,EAAE,cAAc;IAIjD,OAAO,CAAC,MAAM,CAAC,MAAM;WAeP,OAAO,CAAC,IAAI,EAAE,mBAAmB,GAAG,IAAI;IAM/C,mBAAmB,CAAC,UAAU,EAAE,aAAa,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI;IAQzE,gBAAgB,CAAC,WAAW,EAAE,aAAa,GAAG,IAAI;IAKlD,iBAAiB,CAAC,UAAU,EAAE,aAAa,GAAG,IAAI;IAOlD,OAAO,CAAC,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,iBAAiB,GAAG,IAAI;CAiF1E"}
@@ -1,126 +0,0 @@
1
- import { Rectangle } from '../../geom/Rectangle.js';
2
- import { RenderBuffer } from '../RenderBuffer.js';
3
- // Shared scratch rectangle — avoids per-execute allocation.
4
- const _scratchBounds = new Rectangle();
5
- // ── Pipe ──────────────────────────────────────────────────────────────────────
6
- /**
7
- * Handles WebGL rendering of Shape / Sprite graphics.
8
- *
9
- * Rasterizes the Graphics commands to an offscreen Canvas, uploads as a
10
- * WebGL texture, and caches it. The cache is invalidated when
11
- * `graphics.canvasCacheDirty` is true (set by Graphics.dirty()).
12
- */
13
- export class GraphicsPipe {
14
- // ── Static fields ─────────────────────────────────────────────────────────
15
- static PIPE_ID = 'graphics';
16
- static _pool = [];
17
- // ── Instance fields ───────────────────────────────────────────────────────
18
- _canvasRenderer;
19
- _cache = new WeakMap();
20
- // ── Constructor ───────────────────────────────────────────────────────────
21
- constructor(canvasRenderer) {
22
- this._canvasRenderer = canvasRenderer;
23
- }
24
- static _alloc(renderable, graphics, ox, oy) {
25
- const inst = GraphicsPipe._pool.pop() ?? {
26
- renderPipeId: 'graphics',
27
- renderable,
28
- graphics,
29
- offsetX: ox,
30
- offsetY: oy,
31
- };
32
- inst.renderable = renderable;
33
- inst.graphics = graphics;
34
- inst.offsetX = ox;
35
- inst.offsetY = oy;
36
- return inst;
37
- }
38
- static release(inst) {
39
- GraphicsPipe._pool.push(inst);
40
- }
41
- // ── RenderPipe impl ───────────────────────────────────────────────────────
42
- addToInstructionSet(renderable, set) {
43
- const graphics = renderable.graphics;
44
- if (!graphics || graphics.commands.length === 0) {
45
- return;
46
- }
47
- set.add(GraphicsPipe._alloc(renderable, graphics, 0, 0));
48
- }
49
- updateRenderable(_renderable) {
50
- // Cache invalidation is driven by graphics.canvasCacheDirty,
51
- // which is checked at execute time — nothing to pre-upload here.
52
- }
53
- destroyRenderable(renderable) {
54
- const graphics = renderable.graphics;
55
- if (graphics)
56
- this._cache.delete(graphics);
57
- }
58
- // ── Execute ───────────────────────────────────────────────────────────────
59
- execute(inst, buffer) {
60
- const { graphics } = inst;
61
- if (graphics.commands.length === 0) {
62
- return;
63
- }
64
- const bounds = _scratchBounds;
65
- bounds.setEmpty();
66
- graphics.measureContentBounds(bounds);
67
- const w = Math.ceil(bounds.width);
68
- const h = Math.ceil(bounds.height);
69
- if (w <= 0 || h <= 0) {
70
- return;
71
- }
72
- const ox = inst.offsetX;
73
- const oy = inst.offsetY;
74
- buffer.offsetX = 0;
75
- buffer.offsetY = 0;
76
- // ── Cache lookup / rebuild ────────────────────────────────────────────
77
- let cache = this._cache.get(graphics);
78
- if (!cache) {
79
- cache = {
80
- renderBuffer: new RenderBuffer(w, h),
81
- texture: undefined,
82
- textureWidth: 0,
83
- textureHeight: 0,
84
- boundsX: bounds.x,
85
- boundsY: bounds.y,
86
- };
87
- this._cache.set(graphics, cache);
88
- }
89
- const needsRebuild = graphics.canvasCacheDirty || cache.textureWidth !== w || cache.textureHeight !== h;
90
- if (needsRebuild) {
91
- if (cache.renderBuffer.width !== w || cache.renderBuffer.height !== h) {
92
- cache.renderBuffer.resize(w, h);
93
- }
94
- cache.renderBuffer.clear();
95
- // skipCache=true: we are the cache owner, bypass CanvasRenderer's own
96
- // offscreen canvas layer to avoid a redundant intermediate rasterization.
97
- this._canvasRenderer.renderGraphicsToContext(graphics, cache.renderBuffer.context, -bounds.x, -bounds.y, false, true);
98
- const surface = cache.renderBuffer.surface;
99
- if (!cache.texture) {
100
- cache.texture = buffer.context.createTexture(surface);
101
- }
102
- else {
103
- buffer.context.updateTexture(cache.texture, surface);
104
- }
105
- cache.textureWidth = w;
106
- cache.textureHeight = h;
107
- cache.boundsX = bounds.x;
108
- cache.boundsY = bounds.y;
109
- // Consume the dirty flag — Phase 1 set it, we've now rebuilt.
110
- graphics.canvasCacheDirty = false;
111
- }
112
- if (!cache.texture) {
113
- return;
114
- }
115
- // ── Draw cached texture ───────────────────────────────────────────────
116
- // ox/oy are already baked into globalMatrix via _applyTransform.
117
- // Only add bounds origin (content may start at non-zero local coords).
118
- buffer.saveTransform();
119
- if (cache.boundsX !== 0 || cache.boundsY !== 0) {
120
- buffer.globalMatrix.append(1, 0, 0, 1, cache.boundsX, cache.boundsY);
121
- }
122
- buffer.context.drawTexture(cache.texture, 0, 0, w, h, 0, 0, w, h, w, h);
123
- buffer.restoreTransform();
124
- }
125
- }
126
- //# sourceMappingURL=GraphicsPipe.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"GraphicsPipe.js","sourceRoot":"","sources":["../../../../src/blakron/player/pipes/GraphicsPipe.ts"],"names":[],"mappings":"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"}
@@ -1,58 +0,0 @@
1
- import type { DisplayObject } from '../../display/DisplayObject.js';
2
- import type { WebGLRenderBuffer } from '../webgl/WebGLRenderBuffer.js';
3
- import type { Instruction } from '../InstructionSet.js';
4
- import type { InstructionSet } from '../InstructionSet.js';
5
- import type { RenderPipe } from '../RenderPipe.js';
6
- export interface MaskPushInstruction extends Instruction {
7
- readonly renderPipeId: 'maskPush';
8
- renderable: DisplayObject;
9
- offsetX: number;
10
- offsetY: number;
11
- isScrollRect?: boolean;
12
- }
13
- export interface MaskPopInstruction extends Instruction {
14
- readonly renderPipeId: 'maskPop';
15
- renderable: DisplayObject;
16
- push: MaskPushInstruction;
17
- }
18
- /**
19
- * Handles mask / clip / scrollRect rendering for WebGL.
20
- *
21
- * Mirrors the old WebGLRenderer._drawWithClip() and _drawWithScrollRect()
22
- * logic as a push/pop instruction pair.
23
- */
24
- export declare class MaskPipe implements RenderPipe<DisplayObject> {
25
- static readonly PUSH_ID = "maskPush";
26
- static readonly POP_ID = "maskPop";
27
- private static readonly _pushPool;
28
- private static readonly _popPool;
29
- addToInstructionSet(_renderable: DisplayObject, _set: InstructionSet): void;
30
- updateRenderable(_renderable: DisplayObject): void;
31
- static makePush(renderable: DisplayObject, offsetX: number, offsetY: number): MaskPushInstruction;
32
- static makePop(renderable: DisplayObject, push: MaskPushInstruction): MaskPopInstruction;
33
- static releasePush(inst: MaskPushInstruction): void;
34
- static releasePop(inst: MaskPopInstruction): void;
35
- /**
36
- * Handles scrollRect / maskRect via scissor or stencil.
37
- * Returns true if a scissor was used (caller must call executePopScissor).
38
- */
39
- executeScrollRectPush(inst: MaskPushInstruction, buffer: WebGLRenderBuffer): boolean;
40
- executeScrollRectPop(buffer: WebGLRenderBuffer, usedScissor: boolean): void;
41
- /**
42
- * Handles DisplayObject mask (stencil-based compositing).
43
- *
44
- * Allocates an offscreen buffer and activates it via pushBuffer so that
45
- * all subsequent leaf instructions (the masked subtree) draw into it.
46
- * The mask object itself is rendered separately in executeClipPop because
47
- * it is not part of the main InstructionSet.
48
- *
49
- * Returns the offscreen buffer, or undefined if the object has zero bounds.
50
- */
51
- executeClipPush(inst: MaskPushInstruction, buffer: WebGLRenderBuffer, renderer: {
52
- _drawDisplayObject(obj: DisplayObject, buf: WebGLRenderBuffer, ox: number, oy: number): number;
53
- }): WebGLRenderBuffer | undefined;
54
- executeClipPop(inst: MaskPopInstruction, buffer: WebGLRenderBuffer, displayBuffer: WebGLRenderBuffer | undefined, renderer: {
55
- _drawDisplayObject(obj: DisplayObject, buf: WebGLRenderBuffer, ox: number, oy: number): number;
56
- }): void;
57
- }
58
- //# sourceMappingURL=MaskPipe.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MaskPipe.d.ts","sourceRoot":"","sources":["../../../../src/blakron/player/pipes/MaskPipe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAKnD,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACvD,QAAQ,CAAC,YAAY,EAAE,UAAU,CAAC;IAClC,UAAU,EAAE,aAAa,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,kBAAmB,SAAQ,WAAW;IACtD,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC;IACjC,UAAU,EAAE,aAAa,CAAC;IAC1B,IAAI,EAAE,mBAAmB,CAAC;CAC1B;AAID;;;;;GAKG;AACH,qBAAa,QAAS,YAAW,UAAU,CAAC,aAAa,CAAC;IAEzD,gBAAuB,OAAO,cAAc;IAC5C,gBAAuB,MAAM,aAAa;IAC1C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAA6B;IAC9D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAA4B;IAIrD,mBAAmB,CAAC,WAAW,EAAE,aAAa,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI;IAI3E,gBAAgB,CAAC,WAAW,EAAE,aAAa,GAAG,IAAI;WAI3C,QAAQ,CAAC,UAAU,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,mBAAmB;WAY1F,OAAO,CAAC,UAAU,EAAE,aAAa,EAAE,IAAI,EAAE,mBAAmB,GAAG,kBAAkB;WAUjF,WAAW,CAAC,IAAI,EAAE,mBAAmB,GAAG,IAAI;WAI5C,UAAU,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI;IAMxD;;;OAGG;IACI,qBAAqB,CAAC,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,iBAAiB,GAAG,OAAO;IAiCpF,oBAAoB,CAAC,MAAM,EAAE,iBAAiB,EAAE,WAAW,EAAE,OAAO,GAAG,IAAI;IAQlF;;;;;;;;;OASG;IACI,eAAe,CACrB,IAAI,EAAE,mBAAmB,EACzB,MAAM,EAAE,iBAAiB,EACzB,QAAQ,EAAE;QAAE,kBAAkB,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,iBAAiB,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAC1G,iBAAiB,GAAG,SAAS;IAgCzB,cAAc,CACpB,IAAI,EAAE,kBAAkB,EACxB,MAAM,EAAE,iBAAiB,EACzB,aAAa,EAAE,iBAAiB,GAAG,SAAS,EAC5C,QAAQ,EAAE;QAAE,kBAAkB,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,iBAAiB,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,GAC1G,IAAI;CAsGP"}