@blakron/core 0.3.7 → 0.3.8

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.
@@ -5,6 +5,8 @@ type RenderFunction = (displayObject: DisplayObject, width: number, height: numb
5
5
  export declare class RenderTexture extends Texture {
6
6
  static renderer?: RenderFunction;
7
7
  private _canvas?;
8
+ /** Cached context created with willReadFrequently so getPixel32 doesn't trigger warnings. */
9
+ private _ctx?;
8
10
  drawToTexture(displayObject: DisplayObject, clipBounds?: Rectangle, scale?: number): boolean;
9
11
  getPixel32(x: number, y: number): number[];
10
12
  dispose(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"RenderTexture.d.ts","sourceRoot":"","sources":["../../../../src/blakron/display/texture/RenderTexture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEpD,OAAO,EAAE,OAAO,EAAsB,MAAM,cAAc,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,KAAK,cAAc,GAAG,CACrB,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,KACX,iBAAiB,CAAC;AAEvB,qBAAa,aAAc,SAAQ,OAAO;IAGzC,MAAM,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAIjC,OAAO,CAAC,OAAO,CAAC,CAAoB;IAI7B,aAAa,CAAC,aAAa,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,KAAK,SAAI,GAAG,OAAO;IA8B9E,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAa1C,OAAO,IAAI,IAAI;CAI/B"}
1
+ {"version":3,"file":"RenderTexture.d.ts","sourceRoot":"","sources":["../../../../src/blakron/display/texture/RenderTexture.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEpD,OAAO,EAAE,OAAO,EAAsB,MAAM,cAAc,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,KAAK,cAAc,GAAG,CACrB,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,KACX,iBAAiB,CAAC;AAEvB,qBAAa,aAAc,SAAQ,OAAO;IAGzC,MAAM,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAIjC,OAAO,CAAC,OAAO,CAAC,CAAoB;IACpC,6FAA6F;IAC7F,OAAO,CAAC,IAAI,CAAC,CAA2B;IAIjC,aAAa,CAAC,aAAa,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,SAAS,EAAE,KAAK,SAAI,GAAG,OAAO;IAiC9E,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAc1C,OAAO,IAAI,IAAI;CAK/B"}
@@ -5,6 +5,8 @@ export class RenderTexture extends Texture {
5
5
  static renderer;
6
6
  // ── Instance fields ───────────────────────────────────────────────────────
7
7
  _canvas;
8
+ /** Cached context created with willReadFrequently so getPixel32 doesn't trigger warnings. */
9
+ _ctx;
8
10
  // ── Public methods ────────────────────────────────────────────────────────
9
11
  drawToTexture(displayObject, clipBounds, scale = 1) {
10
12
  if (clipBounds && (clipBounds.width === 0 || clipBounds.height === 0)) {
@@ -23,6 +25,9 @@ export class RenderTexture extends Texture {
23
25
  const offsetX = clipBounds ? -clipBounds.x : 0;
24
26
  const offsetY = clipBounds ? -clipBounds.y : 0;
25
27
  this._canvas = RenderTexture.renderer(displayObject, width, height, offsetX * s, offsetY * s);
28
+ // Pre-create the context with willReadFrequently so getPixel32 can call
29
+ // getImageData without triggering browser warnings.
30
+ this._ctx = this._canvas.getContext('2d', { willReadFrequently: true }) ?? undefined;
26
31
  const bitmapData = new BitmapData(this._canvas);
27
32
  bitmapData.deleteSource = false;
28
33
  bitmapData.width = width;
@@ -36,7 +41,8 @@ export class RenderTexture extends Texture {
36
41
  return [];
37
42
  }
38
43
  const scale = textureScaleFactor;
39
- const ctx = this._canvas.getContext('2d');
44
+ // Use the pre-created context (willReadFrequently) to avoid repeated warnings.
45
+ const ctx = this._ctx ?? this._canvas.getContext('2d', { willReadFrequently: true });
40
46
  if (!ctx) {
41
47
  return [];
42
48
  }
@@ -46,6 +52,7 @@ export class RenderTexture extends Texture {
46
52
  dispose() {
47
53
  super.dispose();
48
54
  this._canvas = undefined;
55
+ this._ctx = undefined;
49
56
  }
50
57
  }
51
58
  //# sourceMappingURL=RenderTexture.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RenderTexture.js","sourceRoot":"","sources":["../../../../src/blakron/display/texture/RenderTexture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RenderTexture.js","sourceRoot":"","sources":["../../../../src/blakron/display/texture/RenderTexture.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"RenderBuffer.d.ts","sourceRoot":"","sources":["../../../src/blakron/player/RenderBuffer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,YAAY;IAGxB,SAAgB,OAAO,EAAE,iBAAiB,CAAC;IAC3C,SAAgB,OAAO,EAAE,wBAAwB,CAAC;gBAI/B,KAAK,SAAI,EAAE,MAAM,SAAI;IAUxC,IAAW,KAAK,IAAI,MAAM,CAEzB;IACD,IAAW,MAAM,IAAI,MAAM,CAE1B;IAID;;;OAGG;IACI,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,UAAQ,GAAG,IAAI;IAYtE;;OAEG;IACI,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,SAAI,EAAE,MAAM,SAAI,GAAG,MAAM,EAAE;IAKvE;;OAEG;IACI,SAAS,CAAC,IAAI,SAAc,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IAI9D;;OAEG;IACI,KAAK,IAAI,IAAI;IAKpB;;OAEG;IACI,OAAO,IAAI,IAAI;CAItB;AAID,wBAAgB,aAAa,IAAI,YAAY,CAG5C"}
1
+ {"version":3,"file":"RenderBuffer.d.ts","sourceRoot":"","sources":["../../../src/blakron/player/RenderBuffer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,YAAY;IAGxB,SAAgB,OAAO,EAAE,iBAAiB,CAAC;IAC3C,SAAgB,OAAO,EAAE,wBAAwB,CAAC;gBAI/B,KAAK,SAAI,EAAE,MAAM,SAAI;IAYxC,IAAW,KAAK,IAAI,MAAM,CAEzB;IACD,IAAW,MAAM,IAAI,MAAM,CAE1B;IAID;;;OAGG;IACI,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,UAAQ,GAAG,IAAI;IAYtE;;OAEG;IACI,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,SAAI,EAAE,MAAM,SAAI,GAAG,MAAM,EAAE;IAKvE;;OAEG;IACI,SAAS,CAAC,IAAI,SAAc,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;IAI9D;;OAEG;IACI,KAAK,IAAI,IAAI;IAKpB;;OAEG;IACI,OAAO,IAAI,IAAI;CAItB;AAID,wBAAgB,aAAa,IAAI,YAAY,CAG5C"}
@@ -10,7 +10,9 @@ export class RenderBuffer {
10
10
  // ── Constructor ───────────────────────────────────────────────────────────
11
11
  constructor(width = 0, height = 0) {
12
12
  this.surface = document.createElement('canvas');
13
- const ctx = this.surface.getContext('2d');
13
+ // willReadFrequently: this buffer is used for hit testing and pixel
14
+ // readback (getImageData), so keeping it in CPU memory avoids GPU round-trips.
15
+ const ctx = this.surface.getContext('2d', { willReadFrequently: true });
14
16
  if (!ctx)
15
17
  throw new Error('Failed to create Canvas 2D context');
16
18
  this.context = ctx;
@@ -1 +1 @@
1
- {"version":3,"file":"RenderBuffer.js","sourceRoot":"","sources":["../../../src/blakron/player/RenderBuffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RenderBuffer.js","sourceRoot":"","sources":["../../../src/blakron/player/RenderBuffer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,52 +1,53 @@
1
1
  {
2
- "name": "@blakron/core",
3
- "version": "0.3.7",
4
- "description": "Modern rewrite of the Egret game engine — WebGL multi-texture batching, instruction-driven render pipeline, strict TypeScript, Egret-compatible API",
5
- "author": "",
6
- "license": "MIT",
7
- "type": "module",
8
- "main": "./dist/index.js",
9
- "module": "./dist/index.js",
10
- "types": "./dist/index.d.ts",
11
- "exports": {
12
- ".": {
13
- "types": "./dist/index.d.ts",
14
- "import": "./dist/index.js",
15
- "require": "./dist/index.js"
16
- }
17
- },
18
- "files": [
19
- "dist/**/*",
20
- "types/**/*"
21
- ],
22
- "devDependencies": {
23
- "@types/node": "^22.0.0",
24
- "fast-check": "^4.6.0",
25
- "happy-dom": "^20.8.9",
26
- "typescript": "^5.6.0",
27
- "vite": "^8.0.8",
28
- "vitest": "^4.1.4"
29
- },
30
- "keywords": [
31
- "blakron",
32
- "h5-game",
33
- "webgl",
34
- "webgpu",
35
- "typescript"
36
- ],
37
- "repository": {
38
- "type": "git",
39
- "url": "https://github.com/irwinmc/blakron-core.git"
40
- },
41
- "scripts": {
42
- "build": "tsc --build && npm run build:types",
43
- "build:types": "tsc --emitDeclarationOnly --declaration --declarationMap",
44
- "dev": "tsc --watch",
45
- "clean": "rm -rf dist",
46
- "test": "vitest run",
47
- "test:watch": "vitest",
48
- "benchmark": "vite --config vite.config.ts --open /index.html",
49
- "build:benchmark": "vite --config vite.config.ts build && cp examples/egret.min.js examples/egret.web.min.js benchmark-dist/",
50
- "preview:benchmark": "vite preview --config vite.config.ts --host 0.0.0.0 --port 4173"
51
- }
52
- }
2
+ "name": "@blakron/core",
3
+ "version": "0.3.8",
4
+ "description": "Modern rewrite of the Egret game engine — WebGL multi-texture batching, instruction-driven render pipeline, strict TypeScript, Egret-compatible API",
5
+ "author": "",
6
+ "license": "MIT",
7
+ "type": "module",
8
+ "main": "./dist/index.js",
9
+ "module": "./dist/index.js",
10
+ "types": "./dist/index.d.ts",
11
+ "exports": {
12
+ ".": {
13
+ "types": "./dist/index.d.ts",
14
+ "import": "./dist/index.js",
15
+ "require": "./dist/index.js"
16
+ }
17
+ },
18
+ "files": [
19
+ "dist/**/*",
20
+ "types/**/*"
21
+ ],
22
+ "scripts": {
23
+ "build": "tsc --build && npm run build:types",
24
+ "build:types": "tsc --emitDeclarationOnly --declaration --declarationMap",
25
+ "dev": "tsc --watch",
26
+ "clean": "rm -rf dist",
27
+ "test": "vitest run",
28
+ "test:watch": "vitest",
29
+ "benchmark": "vite --config vite.config.ts --open /index.html",
30
+ "build:benchmark": "vite --config vite.config.ts build && cp examples/egret.min.js examples/egret.web.min.js benchmark-dist/",
31
+ "preview:benchmark": "vite preview --config vite.config.ts --host 0.0.0.0 --port 4173"
32
+ },
33
+ "devDependencies": {
34
+ "@types/node": "^22.0.0",
35
+ "fast-check": "^4.6.0",
36
+ "happy-dom": "^20.8.9",
37
+ "typescript": "^5.6.0",
38
+ "vite": "^8.0.8",
39
+ "vitest": "^4.1.4"
40
+ },
41
+ "keywords": [
42
+ "blakron",
43
+ "h5-game",
44
+ "webgl",
45
+ "webgpu",
46
+ "typescript"
47
+ ],
48
+ "repository": {
49
+ "type": "git",
50
+ "url": "https://github.com/irwinmc/blakron-core.git"
51
+ },
52
+ "packageManager": "pnpm@10.33.0"
53
+ }