modern-canvas 0.4.10 → 0.4.12
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.
- package/dist/index.cjs +25 -11
- package/dist/index.d.cts +5 -0
- package/dist/index.d.mts +5 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +14 -14
- package/dist/index.mjs +25 -11
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -3219,8 +3219,8 @@ class WebGLFramebufferModule extends WebGLModule {
|
|
|
3219
3219
|
this._renderer.viewport.bind({
|
|
3220
3220
|
x: 0,
|
|
3221
3221
|
y: 0,
|
|
3222
|
-
width: this._renderer.screen.width,
|
|
3223
|
-
height: this._renderer.screen.height
|
|
3222
|
+
width: this._renderer.screen.width * this._renderer.pixelRatio,
|
|
3223
|
+
height: this._renderer.screen.height * this._renderer.pixelRatio
|
|
3224
3224
|
});
|
|
3225
3225
|
}
|
|
3226
3226
|
}
|
|
@@ -5794,6 +5794,14 @@ exports.Node = class Node extends CoreObject {
|
|
|
5794
5794
|
return false;
|
|
5795
5795
|
}
|
|
5796
5796
|
}
|
|
5797
|
+
_update(changed) {
|
|
5798
|
+
this._tree?.log(this.name, "updating");
|
|
5799
|
+
super._update(changed);
|
|
5800
|
+
}
|
|
5801
|
+
_updateProperty(key, value, oldValue, declaration) {
|
|
5802
|
+
this._tree?.log(this.name, `updating [${String(key)}]`);
|
|
5803
|
+
super._updateProperty(key, value, oldValue, declaration);
|
|
5804
|
+
}
|
|
5797
5805
|
_onTreeEnter(tree) {
|
|
5798
5806
|
this._treeEnter(tree);
|
|
5799
5807
|
this.emit("treeEntered", tree);
|
|
@@ -6297,8 +6305,8 @@ exports.Viewport = class Viewport extends exports.Node {
|
|
|
6297
6305
|
if (this.valid) {
|
|
6298
6306
|
renderer.flush();
|
|
6299
6307
|
this._tree?.setCurrentViewport(this);
|
|
6300
|
-
renderer.framebuffer.bind(this._glFramebuffer(renderer));
|
|
6301
6308
|
this.upload(renderer);
|
|
6309
|
+
renderer.framebuffer.bind(this._glFramebuffer(renderer));
|
|
6302
6310
|
return true;
|
|
6303
6311
|
}
|
|
6304
6312
|
return false;
|
|
@@ -8357,20 +8365,20 @@ class SceneTree extends MainLoop {
|
|
|
8357
8365
|
this.emit("processed");
|
|
8358
8366
|
}
|
|
8359
8367
|
_render(renderer) {
|
|
8368
|
+
this.emit("rendering");
|
|
8360
8369
|
renderer.program.uniforms.projectionMatrix = this.root.toProjectionArray(true);
|
|
8361
8370
|
this.renderStack.render(renderer);
|
|
8362
8371
|
this._renderScreen(renderer);
|
|
8372
|
+
this.emit("rendered");
|
|
8363
8373
|
}
|
|
8364
8374
|
_renderScreen(renderer) {
|
|
8365
8375
|
renderer.state.reset();
|
|
8366
|
-
const { pixelRatio } = renderer;
|
|
8367
|
-
const { width, height } = this.root;
|
|
8368
8376
|
renderer.framebuffer.bind(null);
|
|
8369
8377
|
renderer.viewport.bind({
|
|
8370
8378
|
x: 0,
|
|
8371
8379
|
y: 0,
|
|
8372
|
-
width: width * pixelRatio,
|
|
8373
|
-
height: height * pixelRatio
|
|
8380
|
+
width: this.root.width * renderer.pixelRatio,
|
|
8381
|
+
height: this.root.height * renderer.pixelRatio
|
|
8374
8382
|
});
|
|
8375
8383
|
if (this.backgroundColor) {
|
|
8376
8384
|
renderer.gl.clearColor(...this._backgroundColor.toArray());
|
|
@@ -13191,8 +13199,9 @@ class Engine extends SceneTree {
|
|
|
13191
13199
|
await this.nextTick();
|
|
13192
13200
|
}
|
|
13193
13201
|
async waitAndRender(delta = 0) {
|
|
13202
|
+
await assets.waitUntilLoad();
|
|
13194
13203
|
this._process(delta);
|
|
13195
|
-
await this.
|
|
13204
|
+
await this.nextTick();
|
|
13196
13205
|
this._render(this.renderer);
|
|
13197
13206
|
}
|
|
13198
13207
|
render(delta = 0) {
|
|
@@ -13264,11 +13273,16 @@ async function start(sleep = 100) {
|
|
|
13264
13273
|
starting = false;
|
|
13265
13274
|
}
|
|
13266
13275
|
async function task(options) {
|
|
13267
|
-
const { data, width, height, time = 0 } = options;
|
|
13268
|
-
engine ??= new Engine({
|
|
13276
|
+
const { data, width, height, debug = false, time = 0 } = options;
|
|
13277
|
+
engine ??= new Engine({
|
|
13278
|
+
width: 1,
|
|
13279
|
+
height: 1,
|
|
13280
|
+
preserveDrawingBuffer: true
|
|
13281
|
+
});
|
|
13282
|
+
engine.debug = debug;
|
|
13269
13283
|
engine.root.removeChildren();
|
|
13270
13284
|
engine.timeline.currentTime = time;
|
|
13271
|
-
engine.resize(width, height);
|
|
13285
|
+
engine.resize(width, height, true);
|
|
13272
13286
|
(Array.isArray(data) ? data : [data]).forEach((v) => {
|
|
13273
13287
|
if (v instanceof exports.Node) {
|
|
13274
13288
|
engine.root.appendChild(v);
|
package/dist/index.d.cts
CHANGED
|
@@ -1559,6 +1559,8 @@ declare class Viewport extends Node implements Rectangulable {
|
|
|
1559
1559
|
interface SceneTreeEventMap extends MainLoopEventMap {
|
|
1560
1560
|
processing: () => void;
|
|
1561
1561
|
processed: () => void;
|
|
1562
|
+
rendering: () => void;
|
|
1563
|
+
rendered: () => void;
|
|
1562
1564
|
nodeProcessing: (node: Node) => void;
|
|
1563
1565
|
nodeProcessed: (node: Node) => void;
|
|
1564
1566
|
}
|
|
@@ -1670,6 +1672,8 @@ declare class Node extends CoreObject {
|
|
|
1670
1672
|
clearMeta(): void;
|
|
1671
1673
|
canProcess(): boolean;
|
|
1672
1674
|
canRender(): boolean;
|
|
1675
|
+
protected _update(changed: Map<PropertyKey, any>): void;
|
|
1676
|
+
protected _updateProperty(key: PropertyKey, value: any, oldValue: any, declaration?: PropertyDeclaration): void;
|
|
1673
1677
|
protected _onTreeEnter(tree: SceneTree): void;
|
|
1674
1678
|
protected _onTreeExit(oldTree: SceneTree): void;
|
|
1675
1679
|
protected _onParented(parent: Node): void;
|
|
@@ -3056,6 +3060,7 @@ interface RenderOptions {
|
|
|
3056
3060
|
data: Record<string, any> | Node | (Node | Record<string, any>)[];
|
|
3057
3061
|
width: number;
|
|
3058
3062
|
height: number;
|
|
3063
|
+
debug?: boolean;
|
|
3059
3064
|
time?: number;
|
|
3060
3065
|
onBeforeRender?: (engine: Engine) => void | Promise<void>;
|
|
3061
3066
|
}
|
package/dist/index.d.mts
CHANGED
|
@@ -1559,6 +1559,8 @@ declare class Viewport extends Node implements Rectangulable {
|
|
|
1559
1559
|
interface SceneTreeEventMap extends MainLoopEventMap {
|
|
1560
1560
|
processing: () => void;
|
|
1561
1561
|
processed: () => void;
|
|
1562
|
+
rendering: () => void;
|
|
1563
|
+
rendered: () => void;
|
|
1562
1564
|
nodeProcessing: (node: Node) => void;
|
|
1563
1565
|
nodeProcessed: (node: Node) => void;
|
|
1564
1566
|
}
|
|
@@ -1670,6 +1672,8 @@ declare class Node extends CoreObject {
|
|
|
1670
1672
|
clearMeta(): void;
|
|
1671
1673
|
canProcess(): boolean;
|
|
1672
1674
|
canRender(): boolean;
|
|
1675
|
+
protected _update(changed: Map<PropertyKey, any>): void;
|
|
1676
|
+
protected _updateProperty(key: PropertyKey, value: any, oldValue: any, declaration?: PropertyDeclaration): void;
|
|
1673
1677
|
protected _onTreeEnter(tree: SceneTree): void;
|
|
1674
1678
|
protected _onTreeExit(oldTree: SceneTree): void;
|
|
1675
1679
|
protected _onParented(parent: Node): void;
|
|
@@ -3056,6 +3060,7 @@ interface RenderOptions {
|
|
|
3056
3060
|
data: Record<string, any> | Node | (Node | Record<string, any>)[];
|
|
3057
3061
|
width: number;
|
|
3058
3062
|
height: number;
|
|
3063
|
+
debug?: boolean;
|
|
3059
3064
|
time?: number;
|
|
3060
3065
|
onBeforeRender?: (engine: Engine) => void | Promise<void>;
|
|
3061
3066
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -1559,6 +1559,8 @@ declare class Viewport extends Node implements Rectangulable {
|
|
|
1559
1559
|
interface SceneTreeEventMap extends MainLoopEventMap {
|
|
1560
1560
|
processing: () => void;
|
|
1561
1561
|
processed: () => void;
|
|
1562
|
+
rendering: () => void;
|
|
1563
|
+
rendered: () => void;
|
|
1562
1564
|
nodeProcessing: (node: Node) => void;
|
|
1563
1565
|
nodeProcessed: (node: Node) => void;
|
|
1564
1566
|
}
|
|
@@ -1670,6 +1672,8 @@ declare class Node extends CoreObject {
|
|
|
1670
1672
|
clearMeta(): void;
|
|
1671
1673
|
canProcess(): boolean;
|
|
1672
1674
|
canRender(): boolean;
|
|
1675
|
+
protected _update(changed: Map<PropertyKey, any>): void;
|
|
1676
|
+
protected _updateProperty(key: PropertyKey, value: any, oldValue: any, declaration?: PropertyDeclaration): void;
|
|
1673
1677
|
protected _onTreeEnter(tree: SceneTree): void;
|
|
1674
1678
|
protected _onTreeExit(oldTree: SceneTree): void;
|
|
1675
1679
|
protected _onParented(parent: Node): void;
|
|
@@ -3056,6 +3060,7 @@ interface RenderOptions {
|
|
|
3056
3060
|
data: Record<string, any> | Node | (Node | Record<string, any>)[];
|
|
3057
3061
|
width: number;
|
|
3058
3062
|
height: number;
|
|
3063
|
+
debug?: boolean;
|
|
3059
3064
|
time?: number;
|
|
3060
3065
|
onBeforeRender?: (engine: Engine) => void | Promise<void>;
|
|
3061
3066
|
}
|