@blakron/core 0.4.2 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (538) hide show
  1. package/dist/blakron/display/DisplayObject.d.ts +1 -1
  2. package/dist/blakron/display/DisplayObject.d.ts.map +1 -1
  3. package/dist/blakron/display/DisplayObject.js +1 -1
  4. package/dist/blakron/display/DisplayObject.js.map +1 -1
  5. package/dist/blakron/player/Player.d.ts.map +1 -1
  6. package/dist/blakron/player/Player.js +2 -1
  7. package/dist/blakron/player/Player.js.map +1 -1
  8. package/dist/blakron/player/RenderPipe.d.ts +1 -1
  9. package/dist/blakron/player/RenderPipe.d.ts.map +1 -1
  10. package/dist/blakron/player/createPlayer.d.ts.map +1 -1
  11. package/dist/blakron/player/createPlayer.js +2 -1
  12. package/dist/blakron/player/createPlayer.js.map +1 -1
  13. package/dist/blakron/player/index.d.ts +4 -2
  14. package/dist/blakron/player/index.d.ts.map +1 -1
  15. package/dist/blakron/player/index.js +4 -2
  16. package/dist/blakron/player/index.js.map +1 -1
  17. package/dist/blakron/player/webgl/ShaderLib.d.ts +16 -4
  18. package/dist/blakron/player/webgl/ShaderLib.d.ts.map +1 -1
  19. package/dist/blakron/player/webgl/ShaderLib.js +27 -5
  20. package/dist/blakron/player/webgl/ShaderLib.js.map +1 -1
  21. package/dist/blakron/player/webgl/WebGLProgram.d.ts +2 -3
  22. package/dist/blakron/player/webgl/WebGLProgram.d.ts.map +1 -1
  23. package/dist/blakron/player/webgl/WebGLProgram.js.map +1 -1
  24. package/dist/blakron/player/webgl/WebGLRenderContext.d.ts +1 -9
  25. package/dist/blakron/player/webgl/WebGLRenderContext.d.ts.map +1 -1
  26. package/dist/blakron/player/webgl/WebGLRenderContext.js +14 -45
  27. package/dist/blakron/player/webgl/WebGLRenderContext.js.map +1 -1
  28. package/dist/blakron/player/webgl/WebGLRenderTarget.d.ts +1 -2
  29. package/dist/blakron/player/webgl/WebGLRenderTarget.d.ts.map +1 -1
  30. package/dist/blakron/player/webgl/WebGLRenderTarget.js.map +1 -1
  31. package/dist/blakron/player/webgl/WebGLRenderer.d.ts.map +1 -1
  32. package/dist/blakron/player/webgl/WebGLRenderer.js +8 -3
  33. package/dist/blakron/player/webgl/WebGLRenderer.js.map +1 -1
  34. package/dist/blakron/player/webgl/WebGLUtils.d.ts +3 -9
  35. package/dist/blakron/player/webgl/WebGLUtils.d.ts.map +1 -1
  36. package/dist/blakron/player/webgl/WebGLUtils.js +2 -2
  37. package/dist/blakron/player/webgl/WebGLUtils.js.map +1 -1
  38. package/dist/blakron/player/webgl/index.d.ts +1 -1
  39. package/dist/blakron/player/webgl/index.d.ts.map +1 -1
  40. package/dist/blakron/player/webgl/index.js +1 -1
  41. package/dist/blakron/player/webgl/index.js.map +1 -1
  42. package/package.json +52 -51
  43. package/dist/blakron/player/webgl2/ShaderLib2.d.ts +0 -22
  44. package/dist/blakron/player/webgl2/ShaderLib2.d.ts.map +0 -1
  45. package/dist/blakron/player/webgl2/ShaderLib2.js +0 -261
  46. package/dist/blakron/player/webgl2/ShaderLib2.js.map +0 -1
  47. package/dist/heron/benchmark/BenchmarkRunner.d.ts +0 -60
  48. package/dist/heron/benchmark/BenchmarkRunner.d.ts.map +0 -1
  49. package/dist/heron/benchmark/BenchmarkRunner.js +0 -112
  50. package/dist/heron/benchmark/BenchmarkRunner.js.map +0 -1
  51. package/dist/heron/benchmark/MetricsCollector.d.ts +0 -34
  52. package/dist/heron/benchmark/MetricsCollector.d.ts.map +0 -1
  53. package/dist/heron/benchmark/MetricsCollector.js +0 -123
  54. package/dist/heron/benchmark/MetricsCollector.js.map +0 -1
  55. package/dist/heron/benchmark/PerfPanel.d.ts +0 -24
  56. package/dist/heron/benchmark/PerfPanel.d.ts.map +0 -1
  57. package/dist/heron/benchmark/PerfPanel.js +0 -131
  58. package/dist/heron/benchmark/PerfPanel.js.map +0 -1
  59. package/dist/heron/benchmark/ReportExporter.d.ts +0 -8
  60. package/dist/heron/benchmark/ReportExporter.d.ts.map +0 -1
  61. package/dist/heron/benchmark/ReportExporter.js +0 -54
  62. package/dist/heron/benchmark/ReportExporter.js.map +0 -1
  63. package/dist/heron/benchmark/SceneRegistry.d.ts +0 -16
  64. package/dist/heron/benchmark/SceneRegistry.d.ts.map +0 -1
  65. package/dist/heron/benchmark/SceneRegistry.js +0 -233
  66. package/dist/heron/benchmark/SceneRegistry.js.map +0 -1
  67. package/dist/heron/benchmark/types.d.ts +0 -47
  68. package/dist/heron/benchmark/types.d.ts.map +0 -1
  69. package/dist/heron/benchmark/types.js +0 -2
  70. package/dist/heron/benchmark/types.js.map +0 -1
  71. package/dist/heron/display/Bitmap.d.ts +0 -53
  72. package/dist/heron/display/Bitmap.d.ts.map +0 -1
  73. package/dist/heron/display/Bitmap.js +0 -176
  74. package/dist/heron/display/Bitmap.js.map +0 -1
  75. package/dist/heron/display/DisplayObject.d.ts +0 -206
  76. package/dist/heron/display/DisplayObject.d.ts.map +0 -1
  77. package/dist/heron/display/DisplayObject.js +0 -827
  78. package/dist/heron/display/DisplayObject.js.map +0 -1
  79. package/dist/heron/display/DisplayObjectContainer.d.ts +0 -57
  80. package/dist/heron/display/DisplayObjectContainer.d.ts.map +0 -1
  81. package/dist/heron/display/DisplayObjectContainer.js +0 -348
  82. package/dist/heron/display/DisplayObjectContainer.js.map +0 -1
  83. package/dist/heron/display/Graphics.d.ts +0 -49
  84. package/dist/heron/display/Graphics.d.ts.map +0 -1
  85. package/dist/heron/display/Graphics.js +0 -315
  86. package/dist/heron/display/Graphics.js.map +0 -1
  87. package/dist/heron/display/GraphicsPath.d.ts +0 -112
  88. package/dist/heron/display/GraphicsPath.d.ts.map +0 -1
  89. package/dist/heron/display/GraphicsPath.js +0 -2
  90. package/dist/heron/display/GraphicsPath.js.map +0 -1
  91. package/dist/heron/display/Mesh.d.ts +0 -21
  92. package/dist/heron/display/Mesh.d.ts.map +0 -1
  93. package/dist/heron/display/Mesh.js +0 -56
  94. package/dist/heron/display/Mesh.js.map +0 -1
  95. package/dist/heron/display/Shape.d.ts +0 -12
  96. package/dist/heron/display/Shape.d.ts.map +0 -1
  97. package/dist/heron/display/Shape.js +0 -35
  98. package/dist/heron/display/Shape.js.map +0 -1
  99. package/dist/heron/display/Sprite.d.ts +0 -13
  100. package/dist/heron/display/Sprite.d.ts.map +0 -1
  101. package/dist/heron/display/Sprite.js +0 -37
  102. package/dist/heron/display/Sprite.js.map +0 -1
  103. package/dist/heron/display/Stage.d.ts +0 -45
  104. package/dist/heron/display/Stage.d.ts.map +0 -1
  105. package/dist/heron/display/Stage.js +0 -107
  106. package/dist/heron/display/Stage.js.map +0 -1
  107. package/dist/heron/display/enums/BitmapFillMode.d.ts +0 -7
  108. package/dist/heron/display/enums/BitmapFillMode.d.ts.map +0 -1
  109. package/dist/heron/display/enums/BitmapFillMode.js +0 -6
  110. package/dist/heron/display/enums/BitmapFillMode.js.map +0 -1
  111. package/dist/heron/display/enums/BlendMode.d.ts +0 -24
  112. package/dist/heron/display/enums/BlendMode.d.ts.map +0 -1
  113. package/dist/heron/display/enums/BlendMode.js +0 -31
  114. package/dist/heron/display/enums/BlendMode.js.map +0 -1
  115. package/dist/heron/display/enums/CapsStyle.d.ts +0 -7
  116. package/dist/heron/display/enums/CapsStyle.d.ts.map +0 -1
  117. package/dist/heron/display/enums/CapsStyle.js +0 -6
  118. package/dist/heron/display/enums/CapsStyle.js.map +0 -1
  119. package/dist/heron/display/enums/GradientType.d.ts +0 -6
  120. package/dist/heron/display/enums/GradientType.d.ts.map +0 -1
  121. package/dist/heron/display/enums/GradientType.js +0 -5
  122. package/dist/heron/display/enums/GradientType.js.map +0 -1
  123. package/dist/heron/display/enums/JointStyle.d.ts +0 -7
  124. package/dist/heron/display/enums/JointStyle.d.ts.map +0 -1
  125. package/dist/heron/display/enums/JointStyle.js +0 -6
  126. package/dist/heron/display/enums/JointStyle.js.map +0 -1
  127. package/dist/heron/display/enums/OrientationMode.d.ts +0 -8
  128. package/dist/heron/display/enums/OrientationMode.d.ts.map +0 -1
  129. package/dist/heron/display/enums/OrientationMode.js +0 -7
  130. package/dist/heron/display/enums/OrientationMode.js.map +0 -1
  131. package/dist/heron/display/enums/StageScaleMode.d.ts +0 -12
  132. package/dist/heron/display/enums/StageScaleMode.d.ts.map +0 -1
  133. package/dist/heron/display/enums/StageScaleMode.js +0 -11
  134. package/dist/heron/display/enums/StageScaleMode.js.map +0 -1
  135. package/dist/heron/display/enums/index.d.ts +0 -8
  136. package/dist/heron/display/enums/index.d.ts.map +0 -1
  137. package/dist/heron/display/enums/index.js +0 -8
  138. package/dist/heron/display/enums/index.js.map +0 -1
  139. package/dist/heron/display/index.d.ts +0 -21
  140. package/dist/heron/display/index.d.ts.map +0 -1
  141. package/dist/heron/display/index.js +0 -20
  142. package/dist/heron/display/index.js.map +0 -1
  143. package/dist/heron/display/texture/BitmapData.d.ts +0 -37
  144. package/dist/heron/display/texture/BitmapData.d.ts.map +0 -1
  145. package/dist/heron/display/texture/BitmapData.js +0 -144
  146. package/dist/heron/display/texture/BitmapData.js.map +0 -1
  147. package/dist/heron/display/texture/RenderTexture.d.ts +0 -13
  148. package/dist/heron/display/texture/RenderTexture.d.ts.map +0 -1
  149. package/dist/heron/display/texture/RenderTexture.js +0 -51
  150. package/dist/heron/display/texture/RenderTexture.js.map +0 -1
  151. package/dist/heron/display/texture/SpriteSheet.d.ts +0 -13
  152. package/dist/heron/display/texture/SpriteSheet.d.ts.map +0 -1
  153. package/dist/heron/display/texture/SpriteSheet.js +0 -34
  154. package/dist/heron/display/texture/SpriteSheet.js.map +0 -1
  155. package/dist/heron/display/texture/Texture.d.ts +0 -33
  156. package/dist/heron/display/texture/Texture.d.ts.map +0 -1
  157. package/dist/heron/display/texture/Texture.js +0 -77
  158. package/dist/heron/display/texture/Texture.js.map +0 -1
  159. package/dist/heron/display/texture/index.d.ts +0 -5
  160. package/dist/heron/display/texture/index.d.ts.map +0 -1
  161. package/dist/heron/display/texture/index.js +0 -5
  162. package/dist/heron/display/texture/index.js.map +0 -1
  163. package/dist/heron/events/Event.d.ts +0 -57
  164. package/dist/heron/events/Event.d.ts.map +0 -1
  165. package/dist/heron/events/Event.js +0 -139
  166. package/dist/heron/events/Event.js.map +0 -1
  167. package/dist/heron/events/EventDispatcher.d.ts +0 -23
  168. package/dist/heron/events/EventDispatcher.d.ts.map +0 -1
  169. package/dist/heron/events/EventDispatcher.js +0 -123
  170. package/dist/heron/events/EventDispatcher.js.map +0 -1
  171. package/dist/heron/events/EventPhase.d.ts +0 -6
  172. package/dist/heron/events/EventPhase.d.ts.map +0 -1
  173. package/dist/heron/events/EventPhase.js +0 -2
  174. package/dist/heron/events/EventPhase.js.map +0 -1
  175. package/dist/heron/events/FocusEvent.d.ts +0 -7
  176. package/dist/heron/events/FocusEvent.d.ts.map +0 -1
  177. package/dist/heron/events/FocusEvent.js +0 -11
  178. package/dist/heron/events/FocusEvent.js.map +0 -1
  179. package/dist/heron/events/HTTPStatusEvent.d.ts +0 -10
  180. package/dist/heron/events/HTTPStatusEvent.d.ts.map +0 -1
  181. package/dist/heron/events/HTTPStatusEvent.js +0 -24
  182. package/dist/heron/events/HTTPStatusEvent.js.map +0 -1
  183. package/dist/heron/events/IEventDispatcher.d.ts +0 -11
  184. package/dist/heron/events/IEventDispatcher.d.ts.map +0 -1
  185. package/dist/heron/events/IEventDispatcher.js +0 -2
  186. package/dist/heron/events/IEventDispatcher.js.map +0 -1
  187. package/dist/heron/events/IOErrorEvent.d.ts +0 -8
  188. package/dist/heron/events/IOErrorEvent.d.ts.map +0 -1
  189. package/dist/heron/events/IOErrorEvent.js +0 -17
  190. package/dist/heron/events/IOErrorEvent.js.map +0 -1
  191. package/dist/heron/events/ProgressEvent.d.ts +0 -11
  192. package/dist/heron/events/ProgressEvent.d.ts.map +0 -1
  193. package/dist/heron/events/ProgressEvent.js +0 -25
  194. package/dist/heron/events/ProgressEvent.js.map +0 -1
  195. package/dist/heron/events/StageOrientationEvent.d.ts +0 -8
  196. package/dist/heron/events/StageOrientationEvent.d.ts.map +0 -1
  197. package/dist/heron/events/StageOrientationEvent.js +0 -17
  198. package/dist/heron/events/StageOrientationEvent.js.map +0 -1
  199. package/dist/heron/events/TextEvent.d.ts +0 -9
  200. package/dist/heron/events/TextEvent.d.ts.map +0 -1
  201. package/dist/heron/events/TextEvent.js +0 -21
  202. package/dist/heron/events/TextEvent.js.map +0 -1
  203. package/dist/heron/events/TimerEvent.d.ts +0 -14
  204. package/dist/heron/events/TimerEvent.d.ts.map +0 -1
  205. package/dist/heron/events/TimerEvent.js +0 -27
  206. package/dist/heron/events/TimerEvent.js.map +0 -1
  207. package/dist/heron/events/TouchEvent.d.ts +0 -32
  208. package/dist/heron/events/TouchEvent.d.ts.map +0 -1
  209. package/dist/heron/events/TouchEvent.js +0 -85
  210. package/dist/heron/events/TouchEvent.js.map +0 -1
  211. package/dist/heron/events/index.d.ts +0 -13
  212. package/dist/heron/events/index.d.ts.map +0 -1
  213. package/dist/heron/events/index.js +0 -11
  214. package/dist/heron/events/index.js.map +0 -1
  215. package/dist/heron/external/ExternalInterface.d.ts +0 -18
  216. package/dist/heron/external/ExternalInterface.d.ts.map +0 -1
  217. package/dist/heron/external/ExternalInterface.js +0 -23
  218. package/dist/heron/external/ExternalInterface.js.map +0 -1
  219. package/dist/heron/external/index.d.ts +0 -2
  220. package/dist/heron/external/index.d.ts.map +0 -1
  221. package/dist/heron/external/index.js +0 -2
  222. package/dist/heron/external/index.js.map +0 -1
  223. package/dist/heron/filters/BlurFilter.d.ts +0 -16
  224. package/dist/heron/filters/BlurFilter.d.ts.map +0 -1
  225. package/dist/heron/filters/BlurFilter.js +0 -56
  226. package/dist/heron/filters/BlurFilter.js.map +0 -1
  227. package/dist/heron/filters/ColorMatrixFilter.d.ts +0 -10
  228. package/dist/heron/filters/ColorMatrixFilter.d.ts.map +0 -1
  229. package/dist/heron/filters/ColorMatrixFilter.js +0 -51
  230. package/dist/heron/filters/ColorMatrixFilter.js.map +0 -1
  231. package/dist/heron/filters/CustomFilter.d.ts +0 -12
  232. package/dist/heron/filters/CustomFilter.d.ts.map +0 -1
  233. package/dist/heron/filters/CustomFilter.js +0 -43
  234. package/dist/heron/filters/CustomFilter.js.map +0 -1
  235. package/dist/heron/filters/DropShadowFilter.d.ts +0 -16
  236. package/dist/heron/filters/DropShadowFilter.d.ts.map +0 -1
  237. package/dist/heron/filters/DropShadowFilter.js +0 -76
  238. package/dist/heron/filters/DropShadowFilter.js.map +0 -1
  239. package/dist/heron/filters/Filter.d.ts +0 -20
  240. package/dist/heron/filters/Filter.d.ts.map +0 -1
  241. package/dist/heron/filters/Filter.js +0 -27
  242. package/dist/heron/filters/Filter.js.map +0 -1
  243. package/dist/heron/filters/GlowFilter.d.ts +0 -34
  244. package/dist/heron/filters/GlowFilter.d.ts.map +0 -1
  245. package/dist/heron/filters/GlowFilter.js +0 -131
  246. package/dist/heron/filters/GlowFilter.js.map +0 -1
  247. package/dist/heron/filters/index.d.ts +0 -7
  248. package/dist/heron/filters/index.d.ts.map +0 -1
  249. package/dist/heron/filters/index.js +0 -7
  250. package/dist/heron/filters/index.js.map +0 -1
  251. package/dist/heron/geom/Matrix.d.ts +0 -51
  252. package/dist/heron/geom/Matrix.d.ts.map +0 -1
  253. package/dist/heron/geom/Matrix.js +0 -312
  254. package/dist/heron/geom/Matrix.js.map +0 -1
  255. package/dist/heron/geom/Point.d.ts +0 -24
  256. package/dist/heron/geom/Point.d.ts.map +0 -1
  257. package/dist/heron/geom/Point.js +0 -75
  258. package/dist/heron/geom/Point.js.map +0 -1
  259. package/dist/heron/geom/Rectangle.d.ts +0 -48
  260. package/dist/heron/geom/Rectangle.d.ts.map +0 -1
  261. package/dist/heron/geom/Rectangle.js +0 -176
  262. package/dist/heron/geom/Rectangle.js.map +0 -1
  263. package/dist/heron/geom/index.d.ts +0 -4
  264. package/dist/heron/geom/index.d.ts.map +0 -1
  265. package/dist/heron/geom/index.js +0 -4
  266. package/dist/heron/geom/index.js.map +0 -1
  267. package/dist/heron/localStorage/index.d.ts +0 -2
  268. package/dist/heron/localStorage/index.d.ts.map +0 -1
  269. package/dist/heron/localStorage/index.js +0 -2
  270. package/dist/heron/localStorage/index.js.map +0 -1
  271. package/dist/heron/localStorage/localStorage.d.ts +0 -5
  272. package/dist/heron/localStorage/localStorage.d.ts.map +0 -1
  273. package/dist/heron/localStorage/localStorage.js +0 -19
  274. package/dist/heron/localStorage/localStorage.js.map +0 -1
  275. package/dist/heron/media/Sound.d.ts +0 -26
  276. package/dist/heron/media/Sound.d.ts.map +0 -1
  277. package/dist/heron/media/Sound.js +0 -145
  278. package/dist/heron/media/Sound.js.map +0 -1
  279. package/dist/heron/media/SoundChannel.d.ts +0 -28
  280. package/dist/heron/media/SoundChannel.d.ts.map +0 -1
  281. package/dist/heron/media/SoundChannel.js +0 -117
  282. package/dist/heron/media/SoundChannel.js.map +0 -1
  283. package/dist/heron/media/Video.d.ts +0 -50
  284. package/dist/heron/media/Video.d.ts.map +0 -1
  285. package/dist/heron/media/Video.js +0 -249
  286. package/dist/heron/media/Video.js.map +0 -1
  287. package/dist/heron/media/index.d.ts +0 -4
  288. package/dist/heron/media/index.d.ts.map +0 -1
  289. package/dist/heron/media/index.js +0 -4
  290. package/dist/heron/media/index.js.map +0 -1
  291. package/dist/heron/net/HttpMethod.d.ts +0 -6
  292. package/dist/heron/net/HttpMethod.d.ts.map +0 -1
  293. package/dist/heron/net/HttpMethod.js +0 -5
  294. package/dist/heron/net/HttpMethod.js.map +0 -1
  295. package/dist/heron/net/HttpRequest.d.ts +0 -19
  296. package/dist/heron/net/HttpRequest.d.ts.map +0 -1
  297. package/dist/heron/net/HttpRequest.js +0 -63
  298. package/dist/heron/net/HttpRequest.js.map +0 -1
  299. package/dist/heron/net/HttpResponseType.d.ts +0 -6
  300. package/dist/heron/net/HttpResponseType.d.ts.map +0 -1
  301. package/dist/heron/net/HttpResponseType.js +0 -5
  302. package/dist/heron/net/HttpResponseType.js.map +0 -1
  303. package/dist/heron/net/ImageLoader.d.ts +0 -10
  304. package/dist/heron/net/ImageLoader.d.ts.map +0 -1
  305. package/dist/heron/net/ImageLoader.js +0 -32
  306. package/dist/heron/net/ImageLoader.js.map +0 -1
  307. package/dist/heron/net/index.d.ts +0 -7
  308. package/dist/heron/net/index.d.ts.map +0 -1
  309. package/dist/heron/net/index.js +0 -5
  310. package/dist/heron/net/index.js.map +0 -1
  311. package/dist/heron/player/CanvasRenderer.d.ts +0 -49
  312. package/dist/heron/player/CanvasRenderer.d.ts.map +0 -1
  313. package/dist/heron/player/CanvasRenderer.js +0 -767
  314. package/dist/heron/player/CanvasRenderer.js.map +0 -1
  315. package/dist/heron/player/DisplayList.d.ts +0 -32
  316. package/dist/heron/player/DisplayList.d.ts.map +0 -1
  317. package/dist/heron/player/DisplayList.js +0 -78
  318. package/dist/heron/player/DisplayList.js.map +0 -1
  319. package/dist/heron/player/HeronOptions.d.ts +0 -25
  320. package/dist/heron/player/HeronOptions.d.ts.map +0 -1
  321. package/dist/heron/player/HeronOptions.js +0 -2
  322. package/dist/heron/player/HeronOptions.js.map +0 -1
  323. package/dist/heron/player/InstructionSet.d.ts +0 -49
  324. package/dist/heron/player/InstructionSet.d.ts.map +0 -1
  325. package/dist/heron/player/InstructionSet.js +0 -45
  326. package/dist/heron/player/InstructionSet.js.map +0 -1
  327. package/dist/heron/player/Player.d.ts +0 -45
  328. package/dist/heron/player/Player.d.ts.map +0 -1
  329. package/dist/heron/player/Player.js +0 -149
  330. package/dist/heron/player/Player.js.map +0 -1
  331. package/dist/heron/player/RenderBuffer.d.ts +0 -35
  332. package/dist/heron/player/RenderBuffer.d.ts.map +0 -1
  333. package/dist/heron/player/RenderBuffer.js +0 -81
  334. package/dist/heron/player/RenderBuffer.js.map +0 -1
  335. package/dist/heron/player/RenderPipe.d.ts +0 -33
  336. package/dist/heron/player/RenderPipe.d.ts.map +0 -1
  337. package/dist/heron/player/RenderPipe.js +0 -2
  338. package/dist/heron/player/RenderPipe.js.map +0 -1
  339. package/dist/heron/player/ScreenAdapter.d.ts +0 -29
  340. package/dist/heron/player/ScreenAdapter.d.ts.map +0 -1
  341. package/dist/heron/player/ScreenAdapter.js +0 -127
  342. package/dist/heron/player/ScreenAdapter.js.map +0 -1
  343. package/dist/heron/player/SystemTicker.d.ts +0 -63
  344. package/dist/heron/player/SystemTicker.d.ts.map +0 -1
  345. package/dist/heron/player/SystemTicker.js +0 -207
  346. package/dist/heron/player/SystemTicker.js.map +0 -1
  347. package/dist/heron/player/TouchHandler.d.ts +0 -39
  348. package/dist/heron/player/TouchHandler.d.ts.map +0 -1
  349. package/dist/heron/player/TouchHandler.js +0 -149
  350. package/dist/heron/player/TouchHandler.js.map +0 -1
  351. package/dist/heron/player/createPlayer.d.ts +0 -35
  352. package/dist/heron/player/createPlayer.d.ts.map +0 -1
  353. package/dist/heron/player/createPlayer.js +0 -74
  354. package/dist/heron/player/createPlayer.js.map +0 -1
  355. package/dist/heron/player/index.d.ts +0 -13
  356. package/dist/heron/player/index.d.ts.map +0 -1
  357. package/dist/heron/player/index.js +0 -16
  358. package/dist/heron/player/index.js.map +0 -1
  359. package/dist/heron/player/pipes/BitmapPipe.d.ts +0 -35
  360. package/dist/heron/player/pipes/BitmapPipe.d.ts.map +0 -1
  361. package/dist/heron/player/pipes/BitmapPipe.js +0 -130
  362. package/dist/heron/player/pipes/BitmapPipe.js.map +0 -1
  363. package/dist/heron/player/pipes/FilterPipe.d.ts +0 -68
  364. package/dist/heron/player/pipes/FilterPipe.d.ts.map +0 -1
  365. package/dist/heron/player/pipes/FilterPipe.js +0 -157
  366. package/dist/heron/player/pipes/FilterPipe.js.map +0 -1
  367. package/dist/heron/player/pipes/GraphicsPipe.d.ts +0 -36
  368. package/dist/heron/player/pipes/GraphicsPipe.d.ts.map +0 -1
  369. package/dist/heron/player/pipes/GraphicsPipe.js +0 -126
  370. package/dist/heron/player/pipes/GraphicsPipe.js.map +0 -1
  371. package/dist/heron/player/pipes/MaskPipe.d.ts +0 -58
  372. package/dist/heron/player/pipes/MaskPipe.d.ts.map +0 -1
  373. package/dist/heron/player/pipes/MaskPipe.js +0 -185
  374. package/dist/heron/player/pipes/MaskPipe.js.map +0 -1
  375. package/dist/heron/player/pipes/MeshPipe.d.ts +0 -22
  376. package/dist/heron/player/pipes/MeshPipe.d.ts.map +0 -1
  377. package/dist/heron/player/pipes/MeshPipe.js +0 -50
  378. package/dist/heron/player/pipes/MeshPipe.js.map +0 -1
  379. package/dist/heron/player/pipes/TextPipe.d.ts +0 -52
  380. package/dist/heron/player/pipes/TextPipe.d.ts.map +0 -1
  381. package/dist/heron/player/pipes/TextPipe.js +0 -163
  382. package/dist/heron/player/pipes/TextPipe.js.map +0 -1
  383. package/dist/heron/player/webgl/MultiTextureBatcher.d.ts +0 -37
  384. package/dist/heron/player/webgl/MultiTextureBatcher.d.ts.map +0 -1
  385. package/dist/heron/player/webgl/MultiTextureBatcher.js +0 -63
  386. package/dist/heron/player/webgl/MultiTextureBatcher.js.map +0 -1
  387. package/dist/heron/player/webgl/ShaderLib.d.ts +0 -34
  388. package/dist/heron/player/webgl/ShaderLib.d.ts.map +0 -1
  389. package/dist/heron/player/webgl/ShaderLib.js +0 -268
  390. package/dist/heron/player/webgl/ShaderLib.js.map +0 -1
  391. package/dist/heron/player/webgl/WebGLDrawCmdManager.d.ts +0 -58
  392. package/dist/heron/player/webgl/WebGLDrawCmdManager.d.ts.map +0 -1
  393. package/dist/heron/player/webgl/WebGLDrawCmdManager.js +0 -197
  394. package/dist/heron/player/webgl/WebGLDrawCmdManager.js.map +0 -1
  395. package/dist/heron/player/webgl/WebGLProgram.d.ts +0 -14
  396. package/dist/heron/player/webgl/WebGLProgram.d.ts.map +0 -1
  397. package/dist/heron/player/webgl/WebGLProgram.js +0 -32
  398. package/dist/heron/player/webgl/WebGLProgram.js.map +0 -1
  399. package/dist/heron/player/webgl/WebGLRenderBuffer.d.ts +0 -52
  400. package/dist/heron/player/webgl/WebGLRenderBuffer.d.ts.map +0 -1
  401. package/dist/heron/player/webgl/WebGLRenderBuffer.js +0 -227
  402. package/dist/heron/player/webgl/WebGLRenderBuffer.js.map +0 -1
  403. package/dist/heron/player/webgl/WebGLRenderContext.d.ts +0 -114
  404. package/dist/heron/player/webgl/WebGLRenderContext.d.ts.map +0 -1
  405. package/dist/heron/player/webgl/WebGLRenderContext.js +0 -852
  406. package/dist/heron/player/webgl/WebGLRenderContext.js.map +0 -1
  407. package/dist/heron/player/webgl/WebGLRenderTarget.d.ts +0 -19
  408. package/dist/heron/player/webgl/WebGLRenderTarget.d.ts.map +0 -1
  409. package/dist/heron/player/webgl/WebGLRenderTarget.js +0 -90
  410. package/dist/heron/player/webgl/WebGLRenderTarget.js.map +0 -1
  411. package/dist/heron/player/webgl/WebGLRenderer.d.ts +0 -91
  412. package/dist/heron/player/webgl/WebGLRenderer.d.ts.map +0 -1
  413. package/dist/heron/player/webgl/WebGLRenderer.js +0 -721
  414. package/dist/heron/player/webgl/WebGLRenderer.js.map +0 -1
  415. package/dist/heron/player/webgl/WebGLUtils.d.ts +0 -11
  416. package/dist/heron/player/webgl/WebGLUtils.d.ts.map +0 -1
  417. package/dist/heron/player/webgl/WebGLUtils.js +0 -57
  418. package/dist/heron/player/webgl/WebGLUtils.js.map +0 -1
  419. package/dist/heron/player/webgl/WebGLVertexArrayObject.d.ts +0 -39
  420. package/dist/heron/player/webgl/WebGLVertexArrayObject.d.ts.map +0 -1
  421. package/dist/heron/player/webgl/WebGLVertexArrayObject.js +0 -367
  422. package/dist/heron/player/webgl/WebGLVertexArrayObject.js.map +0 -1
  423. package/dist/heron/player/webgl/index.d.ts +0 -11
  424. package/dist/heron/player/webgl/index.d.ts.map +0 -1
  425. package/dist/heron/player/webgl/index.js +0 -11
  426. package/dist/heron/player/webgl/index.js.map +0 -1
  427. package/dist/heron/system/Capabilities.d.ts +0 -46
  428. package/dist/heron/system/Capabilities.d.ts.map +0 -1
  429. package/dist/heron/system/Capabilities.js +0 -100
  430. package/dist/heron/system/Capabilities.js.map +0 -1
  431. package/dist/heron/system/index.d.ts +0 -2
  432. package/dist/heron/system/index.d.ts.map +0 -1
  433. package/dist/heron/system/index.js +0 -2
  434. package/dist/heron/system/index.js.map +0 -1
  435. package/dist/heron/text/BitmapFont.d.ts +0 -31
  436. package/dist/heron/text/BitmapFont.d.ts.map +0 -1
  437. package/dist/heron/text/BitmapFont.js +0 -86
  438. package/dist/heron/text/BitmapFont.js.map +0 -1
  439. package/dist/heron/text/BitmapText.d.ts +0 -56
  440. package/dist/heron/text/BitmapText.d.ts.map +0 -1
  441. package/dist/heron/text/BitmapText.js +0 -230
  442. package/dist/heron/text/BitmapText.js.map +0 -1
  443. package/dist/heron/text/HtmlTextParser.d.ts +0 -14
  444. package/dist/heron/text/HtmlTextParser.d.ts.map +0 -1
  445. package/dist/heron/text/HtmlTextParser.js +0 -147
  446. package/dist/heron/text/HtmlTextParser.js.map +0 -1
  447. package/dist/heron/text/InputController.d.ts +0 -29
  448. package/dist/heron/text/InputController.d.ts.map +0 -1
  449. package/dist/heron/text/InputController.js +0 -131
  450. package/dist/heron/text/InputController.js.map +0 -1
  451. package/dist/heron/text/StageText.d.ts +0 -53
  452. package/dist/heron/text/StageText.d.ts.map +0 -1
  453. package/dist/heron/text/StageText.js +0 -392
  454. package/dist/heron/text/StageText.js.map +0 -1
  455. package/dist/heron/text/TextField.d.ts +0 -145
  456. package/dist/heron/text/TextField.d.ts.map +0 -1
  457. package/dist/heron/text/TextField.js +0 -716
  458. package/dist/heron/text/TextField.js.map +0 -1
  459. package/dist/heron/text/TextMeasurer.d.ts +0 -9
  460. package/dist/heron/text/TextMeasurer.d.ts.map +0 -1
  461. package/dist/heron/text/TextMeasurer.js +0 -36
  462. package/dist/heron/text/TextMeasurer.js.map +0 -1
  463. package/dist/heron/text/WordWrap.d.ts +0 -15
  464. package/dist/heron/text/WordWrap.d.ts.map +0 -1
  465. package/dist/heron/text/WordWrap.js +0 -50
  466. package/dist/heron/text/WordWrap.js.map +0 -1
  467. package/dist/heron/text/enums/HorizontalAlign.d.ts +0 -9
  468. package/dist/heron/text/enums/HorizontalAlign.d.ts.map +0 -1
  469. package/dist/heron/text/enums/HorizontalAlign.js +0 -8
  470. package/dist/heron/text/enums/HorizontalAlign.js.map +0 -1
  471. package/dist/heron/text/enums/TextFieldInputType.d.ts +0 -7
  472. package/dist/heron/text/enums/TextFieldInputType.d.ts.map +0 -1
  473. package/dist/heron/text/enums/TextFieldInputType.js +0 -6
  474. package/dist/heron/text/enums/TextFieldInputType.js.map +0 -1
  475. package/dist/heron/text/enums/TextFieldType.d.ts +0 -6
  476. package/dist/heron/text/enums/TextFieldType.d.ts.map +0 -1
  477. package/dist/heron/text/enums/TextFieldType.js +0 -5
  478. package/dist/heron/text/enums/TextFieldType.js.map +0 -1
  479. package/dist/heron/text/enums/VerticalAlign.d.ts +0 -9
  480. package/dist/heron/text/enums/VerticalAlign.d.ts.map +0 -1
  481. package/dist/heron/text/enums/VerticalAlign.js +0 -8
  482. package/dist/heron/text/enums/VerticalAlign.js.map +0 -1
  483. package/dist/heron/text/enums/index.d.ts +0 -5
  484. package/dist/heron/text/enums/index.d.ts.map +0 -1
  485. package/dist/heron/text/enums/index.js +0 -5
  486. package/dist/heron/text/enums/index.js.map +0 -1
  487. package/dist/heron/text/index.d.ts +0 -14
  488. package/dist/heron/text/index.d.ts.map +0 -1
  489. package/dist/heron/text/index.js +0 -13
  490. package/dist/heron/text/index.js.map +0 -1
  491. package/dist/heron/text/types/ITextElement.d.ts +0 -31
  492. package/dist/heron/text/types/ITextElement.d.ts.map +0 -1
  493. package/dist/heron/text/types/ITextElement.js +0 -2
  494. package/dist/heron/text/types/ITextElement.js.map +0 -1
  495. package/dist/heron/text/types/index.d.ts +0 -2
  496. package/dist/heron/text/types/index.d.ts.map +0 -1
  497. package/dist/heron/text/types/index.js +0 -2
  498. package/dist/heron/text/types/index.js.map +0 -1
  499. package/dist/heron/utils/Base64Util.d.ts +0 -5
  500. package/dist/heron/utils/Base64Util.d.ts.map +0 -1
  501. package/dist/heron/utils/Base64Util.js +0 -45
  502. package/dist/heron/utils/Base64Util.js.map +0 -1
  503. package/dist/heron/utils/ByteArray.d.ts +0 -66
  504. package/dist/heron/utils/ByteArray.d.ts.map +0 -1
  505. package/dist/heron/utils/ByteArray.js +0 -303
  506. package/dist/heron/utils/ByteArray.js.map +0 -1
  507. package/dist/heron/utils/DebugLog.d.ts +0 -9
  508. package/dist/heron/utils/DebugLog.d.ts.map +0 -1
  509. package/dist/heron/utils/DebugLog.js +0 -25
  510. package/dist/heron/utils/DebugLog.js.map +0 -1
  511. package/dist/heron/utils/FontManager.d.ts +0 -11
  512. package/dist/heron/utils/FontManager.d.ts.map +0 -1
  513. package/dist/heron/utils/FontManager.js +0 -39
  514. package/dist/heron/utils/FontManager.js.map +0 -1
  515. package/dist/heron/utils/HashObject.d.ts +0 -9
  516. package/dist/heron/utils/HashObject.d.ts.map +0 -1
  517. package/dist/heron/utils/HashObject.js +0 -11
  518. package/dist/heron/utils/HashObject.js.map +0 -1
  519. package/dist/heron/utils/Logger.d.ts +0 -16
  520. package/dist/heron/utils/Logger.d.ts.map +0 -1
  521. package/dist/heron/utils/Logger.js +0 -26
  522. package/dist/heron/utils/Logger.js.map +0 -1
  523. package/dist/heron/utils/NumberUtils.d.ts +0 -15
  524. package/dist/heron/utils/NumberUtils.d.ts.map +0 -1
  525. package/dist/heron/utils/NumberUtils.js +0 -60
  526. package/dist/heron/utils/NumberUtils.js.map +0 -1
  527. package/dist/heron/utils/Timer.d.ts +0 -22
  528. package/dist/heron/utils/Timer.d.ts.map +0 -1
  529. package/dist/heron/utils/Timer.js +0 -67
  530. package/dist/heron/utils/Timer.js.map +0 -1
  531. package/dist/heron/utils/index.d.ts +0 -11
  532. package/dist/heron/utils/index.d.ts.map +0 -1
  533. package/dist/heron/utils/index.js +0 -10
  534. package/dist/heron/utils/index.js.map +0 -1
  535. package/dist/heron/utils/toColorString.d.ts +0 -2
  536. package/dist/heron/utils/toColorString.d.ts.map +0 -1
  537. package/dist/heron/utils/toColorString.js +0 -5
  538. package/dist/heron/utils/toColorString.js.map +0 -1
@@ -1,157 +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 null.
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 null for inline path).
72
- */
73
- executePush(inst, buffer) {
74
- const filters = inst.filters;
75
- if (!filters.length)
76
- return null;
77
- const bounds = inst.renderable.getOriginalBounds();
78
- if (bounds.width <= 0 || bounds.height <= 0)
79
- return null;
80
- // Inline ColorMatrix optimisation: no offscreen buffer needed.
81
- if (!inst.renderable.internalMask && filters.length === 1 && filters[0] instanceof ColorMatrixFilter) {
82
- const hasBlend = inst.renderable.internalBlendMode !== 0;
83
- if (hasBlend) {
84
- inst.savedBlendMode = buffer.context.currentBlendMode;
85
- buffer.context.setGlobalCompositeOperation(BLEND_MODES[inst.renderable.internalBlendMode] ?? 'source-over');
86
- }
87
- buffer.context.activeFilter = filters[0];
88
- return null; // signal: inline mode, no offscreen
89
- }
90
- // Offscreen path: redirect all subsequent draw calls into this buffer.
91
- // Expand the buffer by the union of all filters' padding so blur/glow
92
- // has room to bleed outside the content bounds.
93
- let padL = 0, padR = 0, padT = 0, padB = 0;
94
- for (const f of filters) {
95
- const p = f.getPadding();
96
- if (p.left > padL)
97
- padL = p.left;
98
- if (p.right > padR)
99
- padR = p.right;
100
- if (p.top > padT)
101
- padT = p.top;
102
- if (p.bottom > padB)
103
- padB = p.bottom;
104
- }
105
- const offW = Math.ceil(bounds.width + padL + padR);
106
- const offH = Math.ceil(bounds.height + padT + padB);
107
- const offscreen = WGLBuf.create(buffer.context, offW, offH);
108
- // Store padding offsets so the renderer can adjust the offscreen origin.
109
- offscreen.filterPadX = padL;
110
- offscreen.filterPadY = padT;
111
- // pushBuffer activates the offscreen FBO so WebGL draws land there.
112
- offscreen.context.pushBuffer(offscreen);
113
- return offscreen;
114
- }
115
- /**
116
- * Called by the renderer when it encounters a filterPop instruction.
117
- * Deactivates the offscreen buffer and composites it back onto the main buffer.
118
- */
119
- executePop(inst, buffer, offscreen) {
120
- const { renderable, push } = inst;
121
- const filters = push.filters;
122
- const hasBlend = renderable.internalBlendMode !== 0;
123
- const blendOp = BLEND_MODES[renderable.internalBlendMode] ?? 'source-over';
124
- // Inline ColorMatrix path — just clear the filter flag.
125
- if (!offscreen) {
126
- buffer.context.activeFilter = undefined;
127
- if (hasBlend)
128
- buffer.context.setGlobalCompositeOperation(push.savedBlendMode);
129
- return;
130
- }
131
- // Deactivate the offscreen buffer, restoring the main buffer as active.
132
- offscreen.context.popBuffer();
133
- const bounds = renderable.getOriginalBounds();
134
- const bx = bounds.x;
135
- const by = bounds.y;
136
- // Save the current blend mode before applying the filter's blend mode,
137
- // so we can restore it after compositing.
138
- const prevBlend = buffer.context.currentBlendMode;
139
- if (hasBlend)
140
- buffer.context.setGlobalCompositeOperation(blendOp);
141
- // Position the offscreen result.
142
- // The offscreen texture's top-left is (padL, padT) above/left of
143
- // the content bounds origin, so we offset by (bx - padL, by - padT).
144
- const padX = offscreen.filterPadX;
145
- const padY = offscreen.filterPadY;
146
- buffer.offsetX = bx - padX;
147
- buffer.offsetY = by - padY;
148
- buffer.saveTransform();
149
- buffer.useOffset();
150
- buffer.context.compositeFilterResult(filters, offscreen);
151
- buffer.restoreTransform();
152
- if (hasBlend)
153
- buffer.context.setGlobalCompositeOperation(prevBlend);
154
- WGLBuf.release(offscreen);
155
- }
156
- }
157
- //# sourceMappingURL=FilterPipe.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FilterPipe.js","sourceRoot":"","sources":["../../../../src/heron/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/heron/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/heron/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 null 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 | null;
54
- executeClipPop(inst: MaskPopInstruction, buffer: WebGLRenderBuffer, displayBuffer: WebGLRenderBuffer | null, 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/heron/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;IA6BpF,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,IAAI;IAgCpB,cAAc,CACpB,IAAI,EAAE,kBAAkB,EACxB,MAAM,EAAE,iBAAiB,EACzB,aAAa,EAAE,iBAAiB,GAAG,IAAI,EACvC,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"}
@@ -1,185 +0,0 @@
1
- import { Matrix } from '../../geom/Matrix.js';
2
- import { WebGLRenderBuffer as WGLBuf } from '../webgl/WebGLRenderBuffer.js';
3
- // ── Pipe ──────────────────────────────────────────────────────────────────────
4
- /**
5
- * Handles mask / clip / scrollRect rendering for WebGL.
6
- *
7
- * Mirrors the old WebGLRenderer._drawWithClip() and _drawWithScrollRect()
8
- * logic as a push/pop instruction pair.
9
- */
10
- export class MaskPipe {
11
- // ── Static fields ─────────────────────────────────────────────────────────
12
- static PUSH_ID = 'maskPush';
13
- static POP_ID = 'maskPop';
14
- static _pushPool = [];
15
- static _popPool = [];
16
- // ── RenderPipe impl ───────────────────────────────────────────────────────
17
- addToInstructionSet(_renderable, _set) {
18
- // Added by the renderer traversal, not here.
19
- }
20
- updateRenderable(_renderable) { }
21
- // ── Factory helpers ───────────────────────────────────────────────────────
22
- static makePush(renderable, offsetX, offsetY) {
23
- const inst = MaskPipe._pushPool.pop();
24
- if (inst) {
25
- inst.renderable = renderable;
26
- inst.offsetX = offsetX;
27
- inst.offsetY = offsetY;
28
- inst.isScrollRect = undefined;
29
- return inst;
30
- }
31
- return { renderPipeId: 'maskPush', renderable, offsetX, offsetY };
32
- }
33
- static makePop(renderable, push) {
34
- const inst = MaskPipe._popPool.pop();
35
- if (inst) {
36
- inst.renderable = renderable;
37
- inst.push = push;
38
- return inst;
39
- }
40
- return { renderPipeId: 'maskPop', renderable, push };
41
- }
42
- static releasePush(inst) {
43
- MaskPipe._pushPool.push(inst);
44
- }
45
- static releasePop(inst) {
46
- MaskPipe._popPool.push(inst);
47
- }
48
- // ── Execute ───────────────────────────────────────────────────────────────
49
- /**
50
- * Handles scrollRect / maskRect via scissor or stencil.
51
- * Returns true if a scissor was used (caller must call executePopScissor).
52
- */
53
- executeScrollRectPush(inst, buffer) {
54
- const { renderable, offsetX, offsetY } = inst;
55
- const rect = renderable.internalScrollRect ?? renderable.internalMaskRect;
56
- if (!rect || rect.isEmpty()) {
57
- return false;
58
- }
59
- const m = buffer.globalMatrix;
60
- if (buffer.hasScissor || m.b !== 0 || m.c !== 0) {
61
- buffer.context.pushMask(rect.x + offsetX, rect.y + offsetY, rect.width, rect.height);
62
- return false; // stencil path
63
- }
64
- const a = m.a, d = m.d, tx = m.tx, ty = m.ty;
65
- const x = rect.x + offsetX, y = rect.y + offsetY;
66
- const xMax = x + rect.width, yMax = y + rect.height;
67
- const minX = Math.min(a * x + tx, a * xMax + tx);
68
- const maxX = Math.max(a * x + tx, a * xMax + tx);
69
- const minY = Math.min(d * y + ty, d * yMax + ty);
70
- const maxY = Math.max(d * y + ty, d * yMax + ty);
71
- buffer.context.enableScissor(minX, -maxY + buffer.height, maxX - minX, maxY - minY);
72
- return true; // scissor path
73
- }
74
- executeScrollRectPop(buffer, usedScissor) {
75
- if (usedScissor) {
76
- buffer.context.disableScissor();
77
- }
78
- else {
79
- buffer.context.popMask();
80
- }
81
- }
82
- /**
83
- * Handles DisplayObject mask (stencil-based compositing).
84
- *
85
- * Allocates an offscreen buffer and activates it via pushBuffer so that
86
- * all subsequent leaf instructions (the masked subtree) draw into it.
87
- * The mask object itself is rendered separately in executeClipPop because
88
- * it is not part of the main InstructionSet.
89
- *
90
- * Returns the offscreen buffer, or null if the object has zero bounds.
91
- */
92
- executeClipPush(inst, buffer, renderer) {
93
- const { renderable } = inst;
94
- const scrollRect = renderable.internalScrollRect ?? renderable.internalMaskRect;
95
- // Simple case: no mask object, no children — stencil/scissor only.
96
- if (!renderable.internalMask && (!renderable.children || renderable.children.length === 0)) {
97
- if (scrollRect) {
98
- buffer.context.pushMask(scrollRect.x + inst.offsetX, scrollRect.y + inst.offsetY, scrollRect.width, scrollRect.height);
99
- }
100
- return null;
101
- }
102
- const bounds = renderable.getOriginalBounds();
103
- if (bounds.width <= 0 || bounds.height <= 0) {
104
- return null;
105
- }
106
- const bw = bounds.width;
107
- const bh = bounds.height;
108
- // Allocate and activate the offscreen buffer.
109
- // All subsequent draw calls (the masked subtree instructions) will land here.
110
- const displayBuffer = WGLBuf.create(buffer.context, bw, bh);
111
- displayBuffer.context.pushBuffer(displayBuffer);
112
- return displayBuffer;
113
- }
114
- executeClipPop(inst, buffer, displayBuffer, renderer) {
115
- const { renderable, push } = inst;
116
- const { offsetX, offsetY } = push;
117
- const scrollRect = renderable.internalScrollRect ?? renderable.internalMaskRect;
118
- const hasBlend = renderable.internalBlendMode !== 0;
119
- const blendOp = hasBlend
120
- ? ({ 0: 'source-over', 1: 'lighter', 2: 'destination-out' }[renderable.internalBlendMode] ?? 'source-over')
121
- : 'source-over';
122
- if (!displayBuffer) {
123
- // Simple stencil path — just pop the mask.
124
- if (scrollRect) {
125
- buffer.context.popMask();
126
- }
127
- return;
128
- }
129
- const bounds = renderable.getOriginalBounds();
130
- const bx = bounds.x;
131
- const by = bounds.y;
132
- const bw = bounds.width;
133
- const bh = bounds.height;
134
- // Apply the mask object (if any) to the displayBuffer via destination-in.
135
- const mask = renderable.internalMask;
136
- if (mask) {
137
- const maskBuffer = WGLBuf.create(buffer.context, bw, bh);
138
- maskBuffer.context.pushBuffer(maskBuffer);
139
- const maskMatrix = Matrix.create();
140
- maskMatrix.copyFrom(mask.getConcatenatedMatrix());
141
- mask.getConcatenatedMatrixAt(renderable, maskMatrix);
142
- maskMatrix.translate(-bx, -by);
143
- maskBuffer.setTransform(maskMatrix.a, maskMatrix.b, maskMatrix.c, maskMatrix.d, maskMatrix.tx, maskMatrix.ty);
144
- Matrix.release(maskMatrix);
145
- // Render the mask shape directly — it is not in the InstructionSet.
146
- renderer._drawDisplayObject(mask, maskBuffer, 0, 0);
147
- maskBuffer.context.popBuffer();
148
- displayBuffer.context.setGlobalCompositeOperation('destination-in');
149
- const mw = maskBuffer.rootRenderTarget.width;
150
- const mh = maskBuffer.rootRenderTarget.height;
151
- if (maskBuffer.rootRenderTarget.texture) {
152
- displayBuffer.setTransform(1, 0, 0, -1, 0, maskBuffer.height);
153
- displayBuffer.context.drawTexture(maskBuffer.rootRenderTarget.texture, 0, 0, mw, mh, 0, 0, mw, mh, mw, mh);
154
- displayBuffer.setTransform(1, 0, 0, 1, 0, 0);
155
- }
156
- displayBuffer.context.setGlobalCompositeOperation('source-over');
157
- WGLBuf.release(maskBuffer);
158
- }
159
- // Deactivate the offscreen buffer, restoring the main buffer as active.
160
- displayBuffer.context.popBuffer();
161
- const prevBlend = buffer.context.currentBlendMode;
162
- if (hasBlend)
163
- buffer.context.setGlobalCompositeOperation(blendOp);
164
- if (scrollRect) {
165
- buffer.context.pushMask(scrollRect.x + offsetX, scrollRect.y + offsetY, scrollRect.width, scrollRect.height);
166
- }
167
- const savedMatrix = Matrix.create();
168
- savedMatrix.copyFrom(buffer.globalMatrix);
169
- // offsetX/Y already in globalMatrix via _applyTransform; only add bounds flip.
170
- buffer.globalMatrix.append(1, 0, 0, -1, bx, by + displayBuffer.height);
171
- const dw = displayBuffer.rootRenderTarget.width;
172
- const dh = displayBuffer.rootRenderTarget.height;
173
- if (displayBuffer.rootRenderTarget.texture) {
174
- buffer.context.drawTexture(displayBuffer.rootRenderTarget.texture, 0, 0, dw, dh, 0, 0, dw, dh, dw, dh);
175
- }
176
- buffer.globalMatrix.copyFrom(savedMatrix);
177
- Matrix.release(savedMatrix);
178
- if (scrollRect)
179
- buffer.context.popMask();
180
- if (hasBlend)
181
- buffer.context.setGlobalCompositeOperation(prevBlend);
182
- WGLBuf.release(displayBuffer);
183
- }
184
- }
185
- //# sourceMappingURL=MaskPipe.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MaskPipe.js","sourceRoot":"","sources":["../../../../src/heron/player/pipes/MaskPipe.ts"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import type { Mesh } from '../../display/Mesh.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 MeshInstruction extends Instruction {
7
- readonly renderPipeId: 'mesh';
8
- renderable: Mesh;
9
- offsetX: number;
10
- offsetY: number;
11
- }
12
- export declare class MeshPipe implements RenderPipe<Mesh> {
13
- static readonly PIPE_ID = "mesh";
14
- private static readonly _pool;
15
- private static _alloc;
16
- static release(inst: MeshInstruction): void;
17
- addToInstructionSet(mesh: Mesh, set: InstructionSet): void;
18
- updateRenderable(_mesh: Mesh): void;
19
- destroyRenderable(_mesh: Mesh): void;
20
- execute(inst: MeshInstruction, buffer: WebGLRenderBuffer): void;
21
- }
22
- //# sourceMappingURL=MeshPipe.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MeshPipe.d.ts","sourceRoot":"","sources":["../../../../src/heron/player/pipes/MeshPipe.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAElD,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;AAInD,MAAM,WAAW,eAAgB,SAAQ,WAAW;IACnD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,UAAU,EAAE,IAAI,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAChB;AAID,qBAAa,QAAS,YAAW,UAAU,CAAC,IAAI,CAAC;IAChD,gBAAuB,OAAO,UAAU;IAExC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAyB;IAEtD,OAAO,CAAC,MAAM,CAAC,MAAM;WAaP,OAAO,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI;IAM3C,mBAAmB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI;IAO1D,gBAAgB,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI;IAInC,iBAAiB,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI;IAMpC,OAAO,CAAC,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,iBAAiB,GAAG,IAAI;CAoCtE"}