@blakron/core 0.5.18 → 0.6.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 (134) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +29 -30
  3. package/dist/blakron/benchmark/SceneRegistry.js +13 -13
  4. package/dist/blakron/benchmark/SceneRegistry.js.map +1 -1
  5. package/dist/blakron/display/Bitmap.d.ts +4 -4
  6. package/dist/blakron/display/Bitmap.d.ts.map +1 -1
  7. package/dist/blakron/display/Bitmap.js +23 -23
  8. package/dist/blakron/display/Bitmap.js.map +1 -1
  9. package/dist/blakron/display/DisplayObject.d.ts +82 -86
  10. package/dist/blakron/display/DisplayObject.d.ts.map +1 -1
  11. package/dist/blakron/display/DisplayObject.js +293 -331
  12. package/dist/blakron/display/DisplayObject.js.map +1 -1
  13. package/dist/blakron/display/DisplayObjectContainer.d.ts +9 -8
  14. package/dist/blakron/display/DisplayObjectContainer.d.ts.map +1 -1
  15. package/dist/blakron/display/DisplayObjectContainer.js +86 -101
  16. package/dist/blakron/display/DisplayObjectContainer.js.map +1 -1
  17. package/dist/blakron/display/Graphics.d.ts +3 -3
  18. package/dist/blakron/display/Graphics.d.ts.map +1 -1
  19. package/dist/blakron/display/Graphics.js +6 -6
  20. package/dist/blakron/display/Graphics.js.map +1 -1
  21. package/dist/blakron/display/Mesh.d.ts +1 -1
  22. package/dist/blakron/display/Mesh.d.ts.map +1 -1
  23. package/dist/blakron/display/Mesh.js +4 -4
  24. package/dist/blakron/display/Mesh.js.map +1 -1
  25. package/dist/blakron/display/Shape.d.ts +3 -3
  26. package/dist/blakron/display/Shape.d.ts.map +1 -1
  27. package/dist/blakron/display/Shape.js +10 -10
  28. package/dist/blakron/display/Shape.js.map +1 -1
  29. package/dist/blakron/display/Sprite.d.ts +3 -3
  30. package/dist/blakron/display/Sprite.d.ts.map +1 -1
  31. package/dist/blakron/display/Sprite.js +10 -10
  32. package/dist/blakron/display/Sprite.js.map +1 -1
  33. package/dist/blakron/display/Stage.js +2 -2
  34. package/dist/blakron/display/Stage.js.map +1 -1
  35. package/dist/blakron/display/texture/BitmapData.d.ts.map +1 -1
  36. package/dist/blakron/display/texture/BitmapData.js +13 -26
  37. package/dist/blakron/display/texture/BitmapData.js.map +1 -1
  38. package/dist/blakron/display/texture/RenderTexture.js +1 -1
  39. package/dist/blakron/display/texture/RenderTexture.js.map +1 -1
  40. package/dist/blakron/events/Event.d.ts.map +1 -1
  41. package/dist/blakron/events/Event.js +1 -0
  42. package/dist/blakron/events/Event.js.map +1 -1
  43. package/dist/blakron/events/EventDispatcher.d.ts.map +1 -1
  44. package/dist/blakron/events/EventDispatcher.js +13 -12
  45. package/dist/blakron/events/EventDispatcher.js.map +1 -1
  46. package/dist/blakron/events/TouchEvent.js +2 -2
  47. package/dist/blakron/events/TouchEvent.js.map +1 -1
  48. package/dist/blakron/filters/ColorMatrixFilter.d.ts +1 -1
  49. package/dist/blakron/filters/ColorMatrixFilter.d.ts.map +1 -1
  50. package/dist/blakron/filters/ColorMatrixFilter.js +3 -3
  51. package/dist/blakron/filters/ColorMatrixFilter.js.map +1 -1
  52. package/dist/blakron/media/Sound.d.ts +1 -0
  53. package/dist/blakron/media/Sound.d.ts.map +1 -1
  54. package/dist/blakron/media/Sound.js +23 -5
  55. package/dist/blakron/media/Sound.js.map +1 -1
  56. package/dist/blakron/media/Video.d.ts +1 -1
  57. package/dist/blakron/media/Video.d.ts.map +1 -1
  58. package/dist/blakron/media/Video.js +5 -5
  59. package/dist/blakron/media/Video.js.map +1 -1
  60. package/dist/blakron/net/HttpMethod.d.ts +6 -0
  61. package/dist/blakron/net/HttpMethod.d.ts.map +1 -1
  62. package/dist/blakron/net/HttpMethod.js +5 -0
  63. package/dist/blakron/net/HttpMethod.js.map +1 -1
  64. package/dist/blakron/net/HttpRequest.d.ts +40 -0
  65. package/dist/blakron/net/HttpRequest.d.ts.map +1 -1
  66. package/dist/blakron/net/HttpRequest.js +60 -2
  67. package/dist/blakron/net/HttpRequest.js.map +1 -1
  68. package/dist/blakron/net/HttpResponseType.d.ts +6 -0
  69. package/dist/blakron/net/HttpResponseType.d.ts.map +1 -1
  70. package/dist/blakron/net/HttpResponseType.js +5 -0
  71. package/dist/blakron/net/HttpResponseType.js.map +1 -1
  72. package/dist/blakron/net/ImageLoader.d.ts +18 -0
  73. package/dist/blakron/net/ImageLoader.d.ts.map +1 -1
  74. package/dist/blakron/net/ImageLoader.js +26 -4
  75. package/dist/blakron/net/ImageLoader.js.map +1 -1
  76. package/dist/blakron/player/Player.d.ts.map +1 -1
  77. package/dist/blakron/player/Player.js +18 -6
  78. package/dist/blakron/player/Player.js.map +1 -1
  79. package/dist/blakron/player/RenderPipe.d.ts +1 -1
  80. package/dist/blakron/player/SystemTicker.js +2 -2
  81. package/dist/blakron/player/SystemTicker.js.map +1 -1
  82. package/dist/blakron/player/TouchHandler.js +1 -1
  83. package/dist/blakron/player/TouchHandler.js.map +1 -1
  84. package/dist/blakron/player/canvas/CanvasRenderer.js +52 -52
  85. package/dist/blakron/player/canvas/CanvasRenderer.js.map +1 -1
  86. package/dist/blakron/player/canvas/DisplayList.js +1 -1
  87. package/dist/blakron/player/canvas/DisplayList.js.map +1 -1
  88. package/dist/blakron/player/webgl/WebGLRenderContext.d.ts +2 -5
  89. package/dist/blakron/player/webgl/WebGLRenderContext.d.ts.map +1 -1
  90. package/dist/blakron/player/webgl/WebGLRenderContext.js +3 -11
  91. package/dist/blakron/player/webgl/WebGLRenderContext.js.map +1 -1
  92. package/dist/blakron/player/webgl/WebGLRenderer.d.ts +107 -4
  93. package/dist/blakron/player/webgl/WebGLRenderer.d.ts.map +1 -1
  94. package/dist/blakron/player/webgl/WebGLRenderer.js +194 -91
  95. package/dist/blakron/player/webgl/WebGLRenderer.js.map +1 -1
  96. package/dist/blakron/player/webgl/pipes/FilterPipe.js +7 -7
  97. package/dist/blakron/player/webgl/pipes/FilterPipe.js.map +1 -1
  98. package/dist/blakron/player/webgl/pipes/GraphicsPipe.js +1 -1
  99. package/dist/blakron/player/webgl/pipes/GraphicsPipe.js.map +1 -1
  100. package/dist/blakron/player/webgl/pipes/MaskPipe.js +12 -12
  101. package/dist/blakron/player/webgl/pipes/MaskPipe.js.map +1 -1
  102. package/dist/blakron/player/webgl/pipes/ParticlePipe.js +1 -1
  103. package/dist/blakron/player/webgl/pipes/ParticlePipe.js.map +1 -1
  104. package/dist/blakron/player/webgl/pipes/TextPipe.d.ts +3 -1
  105. package/dist/blakron/player/webgl/pipes/TextPipe.d.ts.map +1 -1
  106. package/dist/blakron/player/webgl/pipes/TextPipe.js +42 -5
  107. package/dist/blakron/player/webgl/pipes/TextPipe.js.map +1 -1
  108. package/dist/blakron/resource/Resource.d.ts +16 -4
  109. package/dist/blakron/resource/Resource.d.ts.map +1 -1
  110. package/dist/blakron/resource/Resource.js +30 -20
  111. package/dist/blakron/resource/Resource.js.map +1 -1
  112. package/dist/blakron/resource/ResourceLoader.d.ts +20 -0
  113. package/dist/blakron/resource/ResourceLoader.d.ts.map +1 -1
  114. package/dist/blakron/resource/ResourceLoader.js +44 -16
  115. package/dist/blakron/resource/ResourceLoader.js.map +1 -1
  116. package/dist/blakron/system/Capabilities.d.ts +1 -1
  117. package/dist/blakron/system/Capabilities.d.ts.map +1 -1
  118. package/dist/blakron/system/Capabilities.js +1 -1
  119. package/dist/blakron/system/Capabilities.js.map +1 -1
  120. package/dist/blakron/text/BitmapText.d.ts +1 -1
  121. package/dist/blakron/text/BitmapText.d.ts.map +1 -1
  122. package/dist/blakron/text/BitmapText.js +11 -11
  123. package/dist/blakron/text/BitmapText.js.map +1 -1
  124. package/dist/blakron/text/InputController.js +1 -1
  125. package/dist/blakron/text/InputController.js.map +1 -1
  126. package/dist/blakron/text/TextField.d.ts +3 -3
  127. package/dist/blakron/text/TextField.d.ts.map +1 -1
  128. package/dist/blakron/text/TextField.js +33 -33
  129. package/dist/blakron/text/TextField.js.map +1 -1
  130. package/dist/blakron/utils/ByteArray.d.ts +0 -1
  131. package/dist/blakron/utils/ByteArray.d.ts.map +1 -1
  132. package/dist/blakron/utils/ByteArray.js +2 -5
  133. package/dist/blakron/utils/ByteArray.js.map +1 -1
  134. package/package.json +4 -6
@@ -2,19 +2,27 @@ import { EventDispatcher } from '../events/EventDispatcher.js';
2
2
  import { Event } from '../events/Event.js';
3
3
  import { IOErrorEvent } from '../events/IOErrorEvent.js';
4
4
  import { BitmapData } from '../display/texture/BitmapData.js';
5
+ /**
6
+ * Event-driven browser image loader.
7
+ *
8
+ * `load()` replaces and cancels a prior image request. `close()` detaches the
9
+ * browser handlers and clears the image source, preventing cancelled requests
10
+ * from updating data or dispatching an event later.
11
+ */
5
12
  export class ImageLoader extends EventDispatcher {
6
13
  // ── Static fields ─────────────────────────────────────────────────────────
14
+ /** Default cross-origin mode applied to newly created loaders. */
7
15
  static crossOrigin;
8
16
  // ── Instance fields ───────────────────────────────────────────────────────
17
+ /** Bitmap data from the most recently completed image request. */
9
18
  data;
19
+ /** Cross-origin mode applied to the next image request, when specified. */
10
20
  crossOrigin = ImageLoader.crossOrigin;
11
21
  _img;
12
22
  // ── Public methods ────────────────────────────────────────────────────────
23
+ /** Start loading an image URL, cancelling any previous request first. */
13
24
  load(url) {
14
- if (this._img) {
15
- this._img.onload = null;
16
- this._img.onerror = null;
17
- }
25
+ this.close();
18
26
  const img = new Image();
19
27
  this._img = img;
20
28
  if (this.crossOrigin)
@@ -28,5 +36,19 @@ export class ImageLoader extends EventDispatcher {
28
36
  };
29
37
  img.src = url;
30
38
  }
39
+ /**
40
+ * Cancel an in-flight image request.
41
+ *
42
+ * The most recently loaded `data` value is retained; only the active browser
43
+ * image element and its pending callbacks are released.
44
+ */
45
+ close() {
46
+ if (this._img) {
47
+ this._img.onload = null;
48
+ this._img.onerror = null;
49
+ this._img.src = '';
50
+ this._img = undefined;
51
+ }
52
+ }
31
53
  }
32
54
  //# sourceMappingURL=ImageLoader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ImageLoader.js","sourceRoot":"","sources":["../../../src/blakron/net/ImageLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAE9D,MAAM,OAAO,WAAY,SAAQ,eAAe;IAC/C,6EAA6E;IAEtE,MAAM,CAAC,WAAW,CAAU;IAEnC,6EAA6E;IAEtE,IAAI,CAAc;IAClB,WAAW,GAAY,WAAW,CAAC,WAAW,CAAC;IAE9C,IAAI,CAAoB;IAEhC,6EAA6E;IAEtE,IAAI,CAAC,GAAW;QACtB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QAC1B,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAEhB,IAAI,IAAI,CAAC,WAAW;YAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAEzD,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE;YACjB,IAAI,CAAC,IAAI,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC,CAAC;QACF,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE;YAClB,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC;QAEF,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC;IACf,CAAC;CACD"}
1
+ {"version":3,"file":"ImageLoader.js","sourceRoot":"","sources":["../../../src/blakron/net/ImageLoader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAE9D;;;;;;GAMG;AACH,MAAM,OAAO,WAAY,SAAQ,eAAe;IAC/C,6EAA6E;IAE7E,kEAAkE;IAC3D,MAAM,CAAC,WAAW,CAAU;IAEnC,6EAA6E;IAE7E,kEAAkE;IAC3D,IAAI,CAAc;IACzB,2EAA2E;IACpE,WAAW,GAAY,WAAW,CAAC,WAAW,CAAC;IAE9C,IAAI,CAAoB;IAEhC,6EAA6E;IAE7E,yEAAyE;IAClE,IAAI,CAAC,GAAW;QACtB,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAEhB,IAAI,IAAI,CAAC,WAAW;YAAE,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAEzD,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE;YACjB,IAAI,CAAC,IAAI,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxC,CAAC,CAAC;QACF,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE;YAClB,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC;QAEF,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC;IACf,CAAC;IAED;;;;;OAKG;IACI,KAAK;QACX,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;YACnB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACvB,CAAC;IACF,CAAC;CACD"}
@@ -1 +1 @@
1
- {"version":3,"file":"Player.d.ts","sourceRoot":"","sources":["../../../src/blakron/player/Player.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAI5D,OAAO,EAAU,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG5D;;;GAGG;AACH,qBAAa,MAAO,YAAW,UAAU;IAExC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAGjD,SAAgB,KAAK,EAAE,KAAK,CAAC;IAC7B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,KAAK,CAAC,CAAgB;IAC9B,OAAO,CAAC,eAAe,CAAC,CAAe;IACvC,OAAO,CAAC,iBAAiB,CAAC,CAAiB;IAC3C,OAAO,CAAC,YAAY,CAAC,CAAoB;IACzC,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,aAAa,CAAC,CAAqB;IAC3C,OAAO,CAAC,oBAAoB,CAAyB;IAErD,SAAgB,IAAI;;;;;gBAKN,MAAM;gBACN,MAAM;;;;;;;MAOlB;IAEF,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,YAAY,CAAqB;gBAGtB,MAAM,EAAE,iBAAiB,EAAE,KAAK,CAAC,EAAE,KAAK;IA4C3D,IAAW,OAAO,IAAI,OAAO,CAE5B;IAEM,KAAK,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,IAAI;IAWjC,IAAI,IAAI,IAAI;IAIZ,KAAK,IAAI,IAAI;IAMpB,oDAAoD;IAC7C,OAAO,IAAI,IAAI;IAMf,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAWpD,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;CAoClE"}
1
+ {"version":3,"file":"Player.d.ts","sourceRoot":"","sources":["../../../src/blakron/player/Player.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAI5D,OAAO,EAAU,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG5D;;;GAGG;AACH,qBAAa,MAAO,YAAW,UAAU;IAExC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAGjD,SAAgB,KAAK,EAAE,KAAK,CAAC;IAC7B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,KAAK,CAAC,CAAgB;IAC9B,OAAO,CAAC,eAAe,CAAC,CAAe;IACvC,OAAO,CAAC,iBAAiB,CAAC,CAAiB;IAC3C,OAAO,CAAC,YAAY,CAAC,CAAoB;IACzC,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,aAAa,CAAC,CAAqB;IAC3C,OAAO,CAAC,oBAAoB,CAAyB;IAErD,SAAgB,IAAI;;;;;gBAKN,MAAM;gBACN,MAAM;;;;;;;MAOlB;IAEF,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,YAAY,CAAqB;gBAGtB,MAAM,EAAE,iBAAiB,EAAE,KAAK,CAAC,EAAE,KAAK;IA8C3D,IAAW,OAAO,IAAI,OAAO,CAE5B;IAEM,KAAK,CAAC,IAAI,CAAC,EAAE,aAAa,GAAG,IAAI;IAWjC,IAAI,IAAI,IAAI;IAIZ,KAAK,IAAI,IAAI;IAMpB,oDAAoD;IAC7C,OAAO,IAAI,IAAI;IAWf,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAWpD,MAAM,CAAC,eAAe,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI;CAoClE"}
@@ -43,13 +43,17 @@ export class Player {
43
43
  this.stage = stage ?? new Stage();
44
44
  if (checkWebGLSupport()) {
45
45
  try {
46
- this._webglContext = WebGLRenderContext.getInstance(canvas);
46
+ this._webglContext = new WebGLRenderContext(canvas);
47
47
  this._webglBuffer = new WebGLRenderBuffer(this._webglContext, canvas.width || 1, canvas.height || 1, true);
48
48
  this._webglRenderer = new WebGLRenderer();
49
- // Wire up notifications using the registration API so multiple
50
- // Player instances on the same page don't clobber each other.
49
+ // Wire up renderer hooks. The engine is single-Player by design:
50
+ // Player assigns these static hooks directly and clears them in
51
+ // `destroy()`. There is no multi-Player listener registry.
51
52
  const renderer = this._webglRenderer;
52
- this._unregisterCallbacks.push(DisplayObject.addStructureChangeListener(() => renderer.markStructureDirty()), DisplayObjectContainer.addContainerStructureChangeListener(owner => renderer.markStructureDirty(owner)), DisplayObject.addRenderableDirtyListener(obj => renderer.markRenderableDirty(obj)),
53
+ DisplayObject.$onStructureChange = () => renderer.markStructureDirty();
54
+ DisplayObjectContainer.$onContainerStructureChange = owner => renderer.markStructureDirty(owner);
55
+ DisplayObject.$onRenderableDirty = obj => renderer.markRenderableDirty(obj);
56
+ this._unregisterCallbacks.push(
53
57
  // After context loss + restore, all WebGL textures are invalid and
54
58
  // the instruction set contains stale texture references. Force a
55
59
  // full rebuild so the next render re-uploads everything.
@@ -57,8 +61,11 @@ export class Player {
57
61
  return;
58
62
  }
59
63
  catch {
60
- // WebGL init failed, fall through to Canvas 2D
61
- WebGLRenderContext.resetInstance();
64
+ // WebGL init failed fall through to Canvas 2D. Drop references so the
65
+ // half-constructed context can be GC'd; the GL resources themselves are
66
+ // reclaimed by the browser when the canvas is dropped.
67
+ this._webglContext = undefined;
68
+ this._webglBuffer = undefined;
62
69
  }
63
70
  }
64
71
  const ctx = canvas.getContext('2d');
@@ -98,6 +105,11 @@ export class Player {
98
105
  for (const fn of this._unregisterCallbacks)
99
106
  fn();
100
107
  this._unregisterCallbacks = [];
108
+ // Single-Player engine: clear the static renderer hooks so they stop
109
+ // notifying a renderer whose owner is gone.
110
+ DisplayObject.$onStructureChange = undefined;
111
+ DisplayObject.$onRenderableDirty = undefined;
112
+ DisplayObjectContainer.$onContainerStructureChange = undefined;
101
113
  }
102
114
  updateStageSize(width, height) {
103
115
  this.stage.resize(width, height);
@@ -1 +1 @@
1
- {"version":3,"file":"Player.js","sourceRoot":"","sources":["../../../src/blakron/player/Player.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Player.js","sourceRoot":"","sources":["../../../src/blakron/player/Player.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ import type { InstructionSet } from './webgl/InstructionSet.js';
8
8
  * Lifecycle per frame:
9
9
  * 1. If InstructionSet.structureDirty:
10
10
  * pipe.addToInstructionSet(obj, set) — build instruction from scratch
11
- * 2. Else if obj.renderDirty:
11
+ * 2. Else if obj.$renderDirty:
12
12
  * pipe.updateRenderable(obj) — patch GPU data only
13
13
  * 3. Always:
14
14
  * pipe.execute(instruction, ...) — issue the actual draw call
@@ -154,13 +154,13 @@ export class SystemTicker {
154
154
  requestRenderingFlag = false;
155
155
  }
156
156
  broadcastEnterFrame() {
157
- const list = [...DisplayObject.enterFrameCallBackList];
157
+ const list = [...DisplayObject.$enterFrameCallBackList];
158
158
  for (const obj of list) {
159
159
  obj.dispatchEventWith(Event.ENTER_FRAME);
160
160
  }
161
161
  }
162
162
  broadcastRender() {
163
- const list = [...DisplayObject.renderCallBackList];
163
+ const list = [...DisplayObject.$renderCallBackList];
164
164
  for (const obj of list) {
165
165
  obj.dispatchEventWith(Event.RENDER);
166
166
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SystemTicker.js","sourceRoot":"","sources":["../../../src/blakron/player/SystemTicker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SystemTicker.js","sourceRoot":"","sources":["../../../src/blakron/player/SystemTicker.ts"],"names":[],"mappings":"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"}
@@ -84,7 +84,7 @@ export class TouchHandler {
84
84
  }
85
85
  // ── Private methods ───────────────────────────────────────────────────────
86
86
  findTarget(stageX, stageY) {
87
- return this._stage.hitTest(stageX, stageY) ?? this._stage;
87
+ return this._stage.$hitTest(stageX, stageY) ?? this._stage;
88
88
  }
89
89
  getStageCoords(clientX, clientY) {
90
90
  const rect = this._canvas.getBoundingClientRect();
@@ -1 +1 @@
1
- {"version":3,"file":"TouchHandler.js","sourceRoot":"","sources":["../../../src/blakron/player/TouchHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TouchHandler.js","sourceRoot":"","sources":["../../../src/blakron/player/TouchHandler.ts"],"names":[],"mappings":"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"}
@@ -72,67 +72,67 @@ export class CanvasRenderer {
72
72
  drawDisplayObject(displayObject, ctx, offsetX, offsetY, _isStage = false) {
73
73
  let drawCalls = 0;
74
74
  // DisplayList cache (cacheAsBitmap)
75
- const displayList = displayObject.displayList;
76
- if (displayList && !_isStage) {
77
- if (displayObject.cacheDirty || displayObject.renderDirty) {
78
- if (displayList.updateSurfaceSize()) {
79
- displayList.renderBuffer.clear();
80
- this.drawDisplayObject(displayObject, displayList.renderBuffer.context, displayList.offsetX, displayList.offsetY, true);
81
- displayList.updateBitmapData();
75
+ const $displayList = displayObject.$displayList;
76
+ if ($displayList && !_isStage) {
77
+ if (displayObject.$cacheDirty || displayObject.$renderDirty) {
78
+ if ($displayList.updateSurfaceSize()) {
79
+ $displayList.renderBuffer.clear();
80
+ this.drawDisplayObject(displayObject, $displayList.renderBuffer.context, $displayList.offsetX, $displayList.offsetY, true);
81
+ $displayList.updateBitmapData();
82
82
  }
83
- displayObject.cacheDirty = false;
84
- displayObject.renderDirty = false;
83
+ displayObject.$cacheDirty = false;
84
+ displayObject.$renderDirty = false;
85
85
  }
86
- // Draw cached result and skip children
87
- if (displayList.bitmapData?.source) {
88
- ctx.drawImage(displayList.bitmapData.source, offsetX - displayList.offsetX, offsetY - displayList.offsetY);
86
+ // Draw cached result and skip $children
87
+ if ($displayList.bitmapData?.source) {
88
+ ctx.drawImage($displayList.bitmapData.source, offsetX - $displayList.offsetX, offsetY - $displayList.offsetY);
89
89
  drawCalls++;
90
90
  }
91
91
  return drawCalls;
92
92
  }
93
93
  // Draw self
94
94
  drawCalls += this.renderSelf(displayObject, ctx, offsetX, offsetY);
95
- // Draw children
96
- const children = displayObject.children;
97
- if (!children)
95
+ // Draw $children
96
+ const $children = displayObject.$children;
97
+ if (!$children)
98
98
  return drawCalls;
99
- for (let i = 0; i < children.length; i++) {
100
- const child = children[i];
101
- if (child.renderMode === 1 /* RenderMode.NONE */)
99
+ for (let i = 0; i < $children.length; i++) {
100
+ const child = $children[i];
101
+ if (child.$renderMode === 1 /* RenderMode.NONE */)
102
102
  continue;
103
103
  let childOffsetX;
104
104
  let childOffsetY;
105
- if (child.useTranslate) {
106
- const m = child.getMatrix();
107
- childOffsetX = offsetX + child.internalX;
108
- childOffsetY = offsetY + child.internalY;
105
+ if (child.$useTranslate) {
106
+ const m = child.$getMatrix();
107
+ childOffsetX = offsetX + child.$x;
108
+ childOffsetY = offsetY + child.$y;
109
109
  ctx.save();
110
110
  ctx.transform(m.a, m.b, m.c, m.d, childOffsetX, childOffsetY);
111
- childOffsetX = -child.internalAnchorOffsetX;
112
- childOffsetY = -child.internalAnchorOffsetY;
111
+ childOffsetX = -child.$anchorOffsetX;
112
+ childOffsetY = -child.$anchorOffsetY;
113
113
  }
114
114
  else {
115
- childOffsetX = offsetX + child.internalX - child.internalAnchorOffsetX;
116
- childOffsetY = offsetY + child.internalY - child.internalAnchorOffsetY;
115
+ childOffsetX = offsetX + child.$x - child.$anchorOffsetX;
116
+ childOffsetY = offsetY + child.$y - child.$anchorOffsetY;
117
117
  }
118
118
  let prevAlpha;
119
- if (child.internalAlpha !== 1) {
119
+ if (child.$alpha !== 1) {
120
120
  prevAlpha = ctx.globalAlpha;
121
- ctx.globalAlpha *= child.internalAlpha;
121
+ ctx.globalAlpha *= child.$alpha;
122
122
  }
123
- if (child.renderMode === 2 /* RenderMode.FILTER */) {
123
+ if (child.$renderMode === 2 /* RenderMode.FILTER */) {
124
124
  drawCalls += this.drawWithFilter(child, ctx, childOffsetX, childOffsetY);
125
125
  }
126
- else if (child.renderMode === 4 /* RenderMode.SCROLLRECT */) {
126
+ else if (child.$renderMode === 4 /* RenderMode.SCROLLRECT */) {
127
127
  drawCalls += this.drawWithScrollRect(child, ctx, childOffsetX, childOffsetY);
128
128
  }
129
- else if (child.renderMode === 3 /* RenderMode.CLIP */) {
129
+ else if (child.$renderMode === 3 /* RenderMode.CLIP */) {
130
130
  drawCalls += this.drawWithClip(child, ctx, childOffsetX, childOffsetY);
131
131
  }
132
132
  else {
133
133
  drawCalls += this.drawDisplayObject(child, ctx, childOffsetX, childOffsetY);
134
134
  }
135
- if (child.useTranslate) {
135
+ if (child.$useTranslate) {
136
136
  ctx.restore();
137
137
  }
138
138
  else if (prevAlpha !== undefined) {
@@ -142,10 +142,10 @@ export class CanvasRenderer {
142
142
  return drawCalls;
143
143
  }
144
144
  drawWithScrollRect(displayObject, ctx, offsetX, offsetY) {
145
- const rect = displayObject.internalScrollRect ?? displayObject.internalMaskRect;
145
+ const rect = displayObject.$scrollRect ?? displayObject.$maskRect;
146
146
  if (!rect || rect.isEmpty())
147
147
  return 0;
148
- if (displayObject.internalScrollRect) {
148
+ if (displayObject.$scrollRect) {
149
149
  offsetX -= rect.x;
150
150
  offsetY -= rect.y;
151
151
  }
@@ -158,10 +158,10 @@ export class CanvasRenderer {
158
158
  return drawCalls;
159
159
  }
160
160
  drawWithFilter(displayObject, ctx, offsetX, offsetY) {
161
- const filters = displayObject.internalFilters;
161
+ const filters = displayObject.$filters;
162
162
  if (!filters.length)
163
163
  return this.drawDisplayObject(displayObject, ctx, offsetX, offsetY);
164
- const bounds = displayObject.getOriginalBounds();
164
+ const bounds = displayObject.$getOriginalBounds();
165
165
  if (bounds.width <= 0 || bounds.height <= 0)
166
166
  return 0;
167
167
  // Build CSS filter string for GPU-accelerated filters.
@@ -200,7 +200,7 @@ export class CanvasRenderer {
200
200
  hasCpuFilter = true;
201
201
  }
202
202
  }
203
- const hasBlendMode = displayObject.internalBlendMode !== 0;
203
+ const hasBlendMode = displayObject.$blendMode !== 0;
204
204
  // ── Fast path: all filters expressible as CSS ─────────────────────────
205
205
  if (!hasCpuFilter && cssFilters.length > 0) {
206
206
  ctx.save();
@@ -208,10 +208,10 @@ export class CanvasRenderer {
208
208
  if (hasBlendMode)
209
209
  ctx.globalCompositeOperation = displayObject.blendMode;
210
210
  let drawCalls = 0;
211
- if (displayObject.internalMask) {
211
+ if (displayObject.$mask) {
212
212
  drawCalls += this.drawWithClip(displayObject, ctx, offsetX, offsetY);
213
213
  }
214
- else if (displayObject.internalScrollRect || displayObject.internalMaskRect) {
214
+ else if (displayObject.$scrollRect || displayObject.$maskRect) {
215
215
  drawCalls += this.drawWithScrollRect(displayObject, ctx, offsetX, offsetY);
216
216
  }
217
217
  else {
@@ -229,10 +229,10 @@ export class CanvasRenderer {
229
229
  if (cssFilters.length > 0)
230
230
  offCtx.filter = cssFilters.join(' ');
231
231
  let drawCalls = 0;
232
- if (displayObject.internalMask) {
232
+ if (displayObject.$mask) {
233
233
  drawCalls += this.drawWithClip(displayObject, offCtx, -bounds.x, -bounds.y);
234
234
  }
235
- else if (displayObject.internalScrollRect || displayObject.internalMaskRect) {
235
+ else if (displayObject.$scrollRect || displayObject.$maskRect) {
236
236
  drawCalls += this.drawWithScrollRect(displayObject, offCtx, -bounds.x, -bounds.y);
237
237
  }
238
238
  else {
@@ -261,9 +261,9 @@ export class CanvasRenderer {
261
261
  return drawCalls + 1;
262
262
  }
263
263
  drawWithClip(displayObject, ctx, offsetX, offsetY) {
264
- const scrollRect = displayObject.internalScrollRect ?? displayObject.internalMaskRect;
265
- const mask = displayObject.internalMask;
266
- const hasBlendMode = displayObject.internalBlendMode !== 0;
264
+ const scrollRect = displayObject.$scrollRect ?? displayObject.$maskRect;
265
+ const mask = displayObject.$mask;
266
+ const hasBlendMode = displayObject.$blendMode !== 0;
267
267
  if (hasBlendMode) {
268
268
  ctx.globalCompositeOperation = displayObject.blendMode;
269
269
  }
@@ -276,7 +276,7 @@ export class CanvasRenderer {
276
276
  // DisplayObject mask: render content and mask to offscreen buffers,
277
277
  // composite with 'destination-in' to produce the masked result.
278
278
  if (mask) {
279
- const bounds = displayObject.getOriginalBounds();
279
+ const bounds = displayObject.$getOriginalBounds();
280
280
  if (bounds.width <= 0 || bounds.height <= 0) {
281
281
  if (scrollRect)
282
282
  ctx.restore();
@@ -294,8 +294,8 @@ export class CanvasRenderer {
294
294
  const drawCalls = this.drawDisplayObject(displayObject, contentCtx, -bx, -by);
295
295
  // Render mask shape to the same buffer using destination-in
296
296
  contentCtx.globalCompositeOperation = 'destination-in';
297
- const maskMatrix = mask.getConcatenatedMatrix();
298
- const parentMatrix = displayObject.getConcatenatedMatrix();
297
+ const maskMatrix = mask.$getConcatenatedMatrix();
298
+ const parentMatrix = displayObject.$getConcatenatedMatrix();
299
299
  // Transform mask relative to the content's local space
300
300
  contentCtx.save();
301
301
  const invA = parentMatrix.a, invB = parentMatrix.b, invC = parentMatrix.c, invD = parentMatrix.d;
@@ -338,7 +338,7 @@ export class CanvasRenderer {
338
338
  }
339
339
  // ── Private: render individual node types ─────────────────────────────────
340
340
  renderSelf(displayObject, ctx, offsetX, offsetY) {
341
- switch (displayObject.renderObjectType) {
341
+ switch (displayObject.$renderObjectType) {
342
342
  case 2 /* RenderObjectType.MESH */:
343
343
  return this.renderMesh(displayObject, ctx, offsetX, offsetY);
344
344
  case 1 /* RenderObjectType.BITMAP */:
@@ -386,7 +386,7 @@ export class CanvasRenderer {
386
386
  if (graphics.canvasCacheDirty || !graphics.offscreenCanvas) {
387
387
  // Measure bounds to size the offscreen canvas
388
388
  const bounds = new Rectangle();
389
- graphics.measureContentBounds(bounds);
389
+ graphics.$measureContentBounds(bounds);
390
390
  const cw = Math.ceil(bounds.width) || 1;
391
391
  const ch = Math.ceil(bounds.height) || 1;
392
392
  // Create or resize offscreen canvas
@@ -440,8 +440,8 @@ export class CanvasRenderer {
440
440
  // Only render background/border so the field is visible, but skip
441
441
  // text content to avoid the double-text artefact.
442
442
  const inputFocused = tf.type === TextFieldType.INPUT && tf.isTyping;
443
- const width = !isNaN(tf.explicitWidth) ? tf.explicitWidth : tf.textWidth;
444
- const height = !isNaN(tf.explicitHeight) ? tf.explicitHeight : tf.textHeight;
443
+ const width = !isNaN(tf.$explicitWidth) ? tf.$explicitWidth : tf.textWidth;
444
+ const height = !isNaN(tf.$explicitHeight) ? tf.$explicitHeight : tf.textHeight;
445
445
  if (width <= 0 || height <= 0)
446
446
  return 0;
447
447
  ctx.save();
@@ -591,7 +591,7 @@ export class CanvasRenderer {
591
591
  const regY = texH / 2;
592
592
  for (let i = 0; i < ps.numParticles; i++) {
593
593
  const particle = ps.particles[i];
594
- const matrix = particle.getMatrix(regX, regY);
594
+ const matrix = particle.$getMatrix(regX, regY);
595
595
  ctx.save();
596
596
  ctx.globalAlpha *= particle.alpha;
597
597
  ctx.transform(matrix.a, matrix.b, matrix.c, matrix.d, offsetX + matrix.tx, offsetY + matrix.ty);