From 8fde18a83037c7f9ab1509e6e6edf03ae271a158 Mon Sep 17 00:00:00 2001 From: Maikel Brons Date: Mon, 17 Feb 2025 09:04:52 +0100 Subject: [PATCH 01/13] Initial render settings updatable renderer.setOptions --- src/core/Stage.ts | 15 +++++++++++++++ src/main-api/Renderer.ts | 30 ++++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) diff --git a/src/core/Stage.ts b/src/core/Stage.ts index db2a1206..25329651 100644 --- a/src/core/Stage.ts +++ b/src/core/Stage.ts @@ -56,6 +56,7 @@ import type { CanvasTextRenderer } from './text-rendering/renderers/CanvasTextRe import { createBound, createPreloadBounds, type Bound } from './lib/utils.js'; import type { Texture } from './textures/Texture.js'; import { ColorTexture } from './textures/ColorTexture.js'; +import type { RendererMainSettings } from '../main-api/Renderer.js'; export interface StageOptions { appWidth: number; @@ -431,6 +432,20 @@ export class Stage { this.frameEventQueue = []; } + setOptions(options: Partial) { + console.log('setOptions', options); + const updatedSettings = { + ...this.options, + ...options, + } as Readonly>; + (this as { options: Readonly> }).options = + updatedSettings; + + if (options.clearColor !== undefined) { + this.setClearColor(options.clearColor); + } + } + calculateFps() { // If there's an FPS update interval, emit the FPS update event // when the specified interval has elapsed. diff --git a/src/main-api/Renderer.ts b/src/main-api/Renderer.ts index 1c43213b..7103436a 100644 --- a/src/main-api/Renderer.ts +++ b/src/main-api/Renderer.ts @@ -290,6 +290,13 @@ export interface RendererMainSettings { canvas?: HTMLCanvasElement; } +/** + * Partial Renderer Main Settings for updating settings + */ +export type PartialRendererMainSettings = Partial< + Pick +>; + /** * The Renderer Main API * @@ -717,4 +724,27 @@ export class RendererMain extends EventEmitter { setClearColor(color: number) { this.stage.setClearColor(color); } + + setOptions(options: Partial) { + const allowedOptions: Partial = {}; + const allowedKeys: (keyof PartialRendererMainSettings)[] = [ + 'clearColor', + 'fpsUpdateInterval', + ]; // List of allowed settings + + for (const key of allowedKeys) { + if (options[key] !== undefined) { + allowedOptions[key] = options[key]; + } + } + + const updatedSettings = { + ...this.settings, + ...allowedOptions, + } as Readonly>; + + (this as { settings: Readonly> }).settings = + updatedSettings; + this.stage.setOptions(allowedOptions); + } } From e52dbd46c0ac20619b9e54f44629decd2a87bef5 Mon Sep 17 00:00:00 2001 From: Maikel Brons Date: Fri, 21 Feb 2025 10:50:35 +0100 Subject: [PATCH 02/13] Added boundsMargin --- src/core/Stage.ts | 32 ++++++++++++++++++-------------- src/main-api/Renderer.ts | 20 ++++++++++++++++++-- 2 files changed, 36 insertions(+), 16 deletions(-) diff --git a/src/core/Stage.ts b/src/core/Stage.ts index 25329651..960295fe 100644 --- a/src/core/Stage.ts +++ b/src/core/Stage.ts @@ -432,20 +432,6 @@ export class Stage { this.frameEventQueue = []; } - setOptions(options: Partial) { - console.log('setOptions', options); - const updatedSettings = { - ...this.options, - ...options, - } as Readonly>; - (this as { options: Readonly> }).options = - updatedSettings; - - if (options.clearColor !== undefined) { - this.setClearColor(options.clearColor); - } - } - calculateFps() { // If there's an FPS update interval, emit the FPS update event // when the specified interval has elapsed. @@ -734,4 +720,22 @@ export class Stage { cleanup() { this.txMemManager.cleanup(); } + + /** + * Set the options for the Stage + * + * @param options + */ + setOptions(options: Partial) { + const updatedSettings = { + ...this.options, + ...options, + } as Readonly>; + (this as { options: Readonly> }).options = + updatedSettings; + + if (options.clearColor !== undefined) { + this.setClearColor(options.clearColor); + } + } } diff --git a/src/main-api/Renderer.ts b/src/main-api/Renderer.ts index 7103436a..e141b7b8 100644 --- a/src/main-api/Renderer.ts +++ b/src/main-api/Renderer.ts @@ -294,7 +294,10 @@ export interface RendererMainSettings { * Partial Renderer Main Settings for updating settings */ export type PartialRendererMainSettings = Partial< - Pick + Pick< + RendererMainSettings, + 'boundsMargin' | 'clearColor' | 'fpsUpdateInterval' + > >; /** @@ -725,16 +728,29 @@ export class RendererMain extends EventEmitter { this.stage.setClearColor(color); } + /** + * Set options for the renderer + * + * @param options + */ setOptions(options: Partial) { const allowedOptions: Partial = {}; const allowedKeys: (keyof PartialRendererMainSettings)[] = [ + 'boundsMargin', 'clearColor', 'fpsUpdateInterval', ]; // List of allowed settings for (const key of allowedKeys) { if (options[key] !== undefined) { - allowedOptions[key] = options[key]; + let value = options[key]; + if (key === 'boundsMargin') { + value = Array.isArray(options[key]) + ? options[key] + : [options[key], options[key], options[key], options[key]]; + } + // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment + allowedOptions[key] = value as any; } } From 4b26c853412df9eb378adfcfc3db011c587a7d37 Mon Sep 17 00:00:00 2001 From: Maikel Brons Date: Mon, 24 Feb 2025 10:39:11 +0100 Subject: [PATCH 03/13] Call Stage boundsmargin --- src/core/Stage.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/core/Stage.ts b/src/core/Stage.ts index a1c796cc..fb4f2f46 100644 --- a/src/core/Stage.ts +++ b/src/core/Stage.ts @@ -748,5 +748,9 @@ export class Stage { if (options.clearColor !== undefined) { this.setClearColor(options.clearColor); } + + if (options.boundsMargin !== undefined) { + this.setBoundsMargin(options.boundsMargin); + } } } From 274c27706dd1bea5a6aaf78d064ae6780ad41f03 Mon Sep 17 00:00:00 2001 From: Maikel Brons Date: Mon, 31 Mar 2025 09:04:43 +0200 Subject: [PATCH 04/13] Additional updatable options for renderer --- examples/tests/render-settings.ts | 371 ++++++++++++++++++++ src/core/Stage.ts | 46 ++- src/core/TextureMemoryManager.ts | 118 ++++--- src/core/lib/ContextSpy.ts | 1 + src/core/renderers/CoreRenderer.ts | 1 + src/core/renderers/canvas/CanvasRenderer.ts | 4 + src/core/renderers/webgl/WebGlRenderer.ts | 6 +- src/main-api/Inspector.ts | 55 ++- src/main-api/Renderer.ts | 187 ++++++++-- src/utils.ts | 4 +- 10 files changed, 693 insertions(+), 100 deletions(-) create mode 100644 examples/tests/render-settings.ts diff --git a/examples/tests/render-settings.ts b/examples/tests/render-settings.ts new file mode 100644 index 00000000..1396b3a8 --- /dev/null +++ b/examples/tests/render-settings.ts @@ -0,0 +1,371 @@ +/* + * If not stated otherwise in this file or this component's LICENSE file the + * following copyright and licenses apply: + * + * Copyright 2024 Comcast Cable Communications Management, LLC. + * + * Licensed under the Apache License, Version 2.0 (the License); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import type { ExampleSettings } from '../common/ExampleSettings.js'; +import { Inspector } from '@lightningjs/renderer/inspector'; +import robotImg from '../assets/robot/robot.png'; + +const TESTPAGES = 6; + +export async function automation(settings: ExampleSettings) { + const testPageArray: number[] = []; + for (let i = 1; i < TESTPAGES; i++) { + testPageArray.push(i); + } + + const page = await test(settings); + // i = 0 + await settings.snapshot(); + + let testIdx = 1; + const testPage = async () => { + console.log('Testing ', testIdx); + page(testIdx); + await settings.snapshot(); + + if (testIdx >= TESTPAGES) { + return true; + } + + testIdx++; + await testPage(); + }; + + // test first page + await testPage(); +} + +export default async function test({ renderer, testRoot }: ExampleSettings) { + const ppr = renderer.settings.devicePhysicalPixelRatio; + const lpr = renderer.settings.deviceLogicalPixelRatio; + + renderer.createTextNode({ + text: 'Left/Right Arrow keys to move, Up/Down Arrow keys to change page, enter to reset', + fontSize: 30, + x: 10, + y: 960, + fontFamily: 'Ubuntu-ssdf', + parent: testRoot, + }); + + const boundaryRect1 = renderer.createNode({ + x: 1920 / 2 - (1920 * 0.75) / 2, + y: 1080 / 2 - (1080 * 0.5) / 2, + width: 1000, + height: 410, + color: 0x000000ff, + parent: testRoot, + }); + const screen = renderer.createNode({ + x: 50, + y: 50, + width: boundaryRect1.width - 100, + height: boundaryRect1.height - 100, + parent: boundaryRect1, + color: 0x222222ff, + }); + const boundaryRect2 = renderer.createNode({ + x: 50, + y: 50, + width: 1000 - 100, + height: 410 - 250, + color: 0x222222ff, + parent: boundaryRect1, + }); + + const redText = renderer.createTextNode({ + x: 380, + y: 50, + alpha: 1, + width: 200, + height: 200, + color: 0xff0000ff, + pivot: 0, + text: 'red', + fontSize: 80, + fontFamily: 'Ubuntu-ssdf', + parent: boundaryRect2, + }); + + let yPos = 10; + const statusText = renderer.createTextNode({ + text: 'Status text: Inside viewport', + fontSize: 30, + x: 10, + y: yPos, + fontFamily: 'Ubuntu-ssdf', + parent: testRoot, + }); + yPos += 40; + + const redPosition = renderer.createTextNode({ + text: `Text X Position: ${redText.x}`, + fontSize: 30, + x: 10, + y: yPos, + fontFamily: 'Ubuntu-ssdf', + parent: testRoot, + }); + yPos += 40; + + const appSize = renderer.createTextNode({ + text: `Renderer Size: ${renderer.root.width}x${renderer.root.height}`, + fontSize: 30, + x: 10, + y: yPos, + fontFamily: 'Ubuntu-ssdf', + parent: testRoot, + }); + yPos += 40; + + const boundsMarginText = renderer.createTextNode({ + text: 'Text BoundsMargin: ', + fontSize: 30, + x: 10, + y: yPos, + fontFamily: 'Ubuntu-ssdf', + parent: testRoot, + }); + yPos += 40; + + const FPS = renderer.createTextNode({ + text: 'FPS Not running', + fontSize: 30, + x: 10, + y: yPos, + fontFamily: 'Ubuntu-ssdf', + parent: testRoot, + }); + yPos += 40; + + const testPage = renderer.createTextNode({ + text: `Test Page: 0`, + fontSize: 30, + x: 10, + y: yPos + 100, + fontFamily: 'Ubuntu-ssdf', + parent: testRoot, + }); + yPos += 40; + + redText.on('outOfBounds', () => { + statusText.text = `Status text: Out of bounds`; + statusText.color = 0xff0000ff; + boundsMarginText.text = `Text BoundsMargin: ${redText.boundsMargin}`; + }); + + redText.on('inViewport', () => { + statusText.text = `Status text: Inside viewport`; + statusText.color = 0x00ff00ff; + boundsMarginText.text = `Text BoundsMargin: ${redText.boundsMargin}`; + }); + + redText.on('inBounds', () => { + statusText.text = 'Status text: Inside renderbounds'; + statusText.color = 0xffff00ff; + boundsMarginText.text = `Text BoundsMargin: ${redText.boundsMargin}`; + }); + + // renderer.cleanup(); + + renderer.on('fpsUpdate', (_renderer, data) => { + // console.log('FPS Update', data.contextSpyData); + if (FPS.text === 'FPS Not running') FPS.text = `FPS running`; + }); + + let intervalID = 0 as unknown as ReturnType; + + const page = (i = 1) => { + console.log('Running test page', i); + testPage.text = `Test Page ${i}`; + switch (i) { + // Resize app to 550x1000 and set fpsUpdateInterval to 100 + // Red text should be out of bounds + case 1: + renderer.setOptions({ + appWidth: 550, + appHeight: 1000, + fpsUpdateInterval: 100, + enableContextSpy: true, + }); + break; + + // Apply a device logical pixel ratio of 2 and move text 60px to the right + // Red text should be in renderbounds + case 2: + renderer.setOptions({ + deviceLogicalPixelRatio: 2, + fpsUpdateInterval: 0, + }); + redText.x = 320; + FPS.text = 'FPS Not running'; + break; + + // Apply a device physical pixel ratio of 0.1 and boundsMargin of 50 + // Red text should be out of bounds + case 3: + renderer.setOptions({ + devicePhysicalPixelRatio: 0.15, + boundsMargin: 50, + enableContextSpy: false, + }); + break; + + // Restore app size, devicePhysicalPixelRatio and deviceLogicalPixelRatio to Defaults + // Red text should be in renderbounds + case 4: + renderer.setOptions({ + devicePhysicalPixelRatio: ppr, + appWidth: 1920, + appHeight: 1080, + clearColor: 0x00ff00ff, + }); + break; + + // first parent text in view + case 5: + renderer.setOptions({ + deviceLogicalPixelRatio: lpr, + }); + break; + + // Reset everything to defaults + case 6: + renderer.setOptions({ + appWidth: 1920, + appHeight: 1080, + boundsMargin: 100, + clearColor: 0x00000000, + deviceLogicalPixelRatio: lpr, + devicePhysicalPixelRatio: ppr, + enableContextSpy: false, + fpsUpdateInterval: 0, + textureProcessingTimeLimit: 10, + }); + + break; + + // Change TextureMemory settings and create a new texture every 100ms + case 7: + renderer.setOptions({ + textureMemory: { + criticalThreshold: 200 * 1024 ** 2, + targetThresholdLevel: 0.25, + debugLogging: true, + }, + }); + + intervalID = setInterval(() => { + screen.color = 0xffffffff; + screen.texture = renderer.createTexture('NoiseTexture', { + width: 500, + height: 500, + cacheId: Math.floor(Math.random() * 100000), + }); + screen.textureOptions.preload = true; + }, 100); + + break; + + // Restore textureMemory settings to defaults + case 8: + renderer.setOptions({ + textureMemory: { + criticalThreshold: 124e6, + targetThresholdLevel: 0.5, + }, + }); + clearInterval(intervalID); + screen.color = 0x222222ff; + screen.texture = null; + break; + + case 9: + renderer.setOptions({ + inspector: false, + }); + break; + + case 10: + renderer.setOptions({ + enableContextSpy: true, + fpsUpdateInterval: 1000, + }); + + // intervalID = setInterval(() => { + // screen.color = 0xffffffff; + // screen.texture = renderer.createTexture('NoiseTexture', { + // width: 500, + // height: 500, + // cacheId: Math.floor(Math.random() * 100000), + // }); + // screen.textureOptions.preload = true; + // }, 100); + break; + } + redPosition.text = `Text X Position: ${redText.x}`; + appSize.text = `Renderer Size: ${renderer.root.width}x${renderer.root.height}`; + }; + const moveModifier = 100; + const numKeys: string[] = []; + for (let i = 0; i < 10; i++) { + numKeys.push(i.toString()); + } + + let testPageIdx = 0; + window.onkeydown = (e) => { + if (numKeys.indexOf(e.key) !== -1) { + page(parseInt(e.key)); + } + + if (e.key === 'ArrowRight') { + redText.x += moveModifier; + redPosition.text = `Text X Position: ${redText.x}`; + } + + if (e.key === 'ArrowLeft') { + redText.x -= moveModifier; + redPosition.text = `Text X Position: ${redText.x}`; + } + + if (e.key === 'ArrowDown') { + if (testPageIdx <= 0) { + testPageIdx = TESTPAGES; + } else { + testPageIdx--; + } + page(testPageIdx); + } + + if (e.key === 'ArrowUp') { + if (testPageIdx >= TESTPAGES) { + testPageIdx = 0; + } else { + testPageIdx++; + } + page(testPageIdx); + } + + if (e.key === 'Enter') { + page(10); + } + }; + + return page; +} diff --git a/src/core/Stage.ts b/src/core/Stage.ts index 288d9c35..c7d165ed 100644 --- a/src/core/Stage.ts +++ b/src/core/Stage.ts @@ -105,11 +105,11 @@ export class Stage { public readonly root: CoreNode; public boundsMargin: [number, number, number, number]; public readonly defShaderNode: CoreShaderNode | null = null; - public readonly strictBound: Bound; - public readonly preloadBound: Bound; + public strictBound: Bound; + public preloadBound: Bound; public readonly strictBounds: boolean; public readonly defaultTexture: Texture | null = null; - public readonly pixelRatio: number; + public pixelRatio: number; public readonly bufferMemory: number = 2e6; /** * Renderer Event Bus for the Stage to emit events onto @@ -171,7 +171,9 @@ export class Stage { this.txMemManager = new TextureMemoryManager(this, textureMemory); this.animationManager = new AnimationManager(); - this.contextSpy = enableContextSpy ? new ContextSpy() : null; + this.contextSpy = new ContextSpy(); + this.contextSpy.enabled = enableContextSpy; + this.strictBounds = options.strictBounds; let bm = [0, 0, 0, 0] as [number, number, number, number]; @@ -644,6 +646,20 @@ export class Stage { this.root.setUpdateType(UpdateType.RenderBounds); } + /** + * Update the viewport bounds + */ + updateViewportBounds() { + const { appWidth, appHeight } = this.options; + this.strictBound = createBound(0, 0, appWidth, appHeight); + this.preloadBound = createPreloadBounds( + this.strictBound, + this.boundsMargin, + ); + this.root.setUpdateType(UpdateType.RenderBounds | UpdateType.Children); + this.root.childUpdateType |= UpdateType.RenderBounds; + } + /** * Resolves the default property values for a Node * @@ -738,26 +754,4 @@ export class Stage { get clearColor() { return this.clrColor; } - - /** - * Set the options for the Stage - * - * @param options - */ - setOptions(options: Partial) { - const updatedSettings = { - ...this.options, - ...options, - } as Readonly>; - (this as { options: Readonly> }).options = - updatedSettings; - - if (options.clearColor !== undefined) { - this.setClearColor(options.clearColor); - } - - if (options.boundsMargin !== undefined) { - this.setBoundsMargin(options.boundsMargin); - } - } } diff --git a/src/core/TextureMemoryManager.ts b/src/core/TextureMemoryManager.ts index d6c60d7d..499f2fcc 100644 --- a/src/core/TextureMemoryManager.ts +++ b/src/core/TextureMemoryManager.ts @@ -118,15 +118,21 @@ export class TextureMemoryManager { private memUsed = 0; private loadedTextures: Map = new Map(); private orphanedTextures: Texture[] = []; - private criticalThreshold: number; - private targetThreshold: number; - private cleanupInterval: number; - private debugLogging: boolean; + private criticalThreshold: number = 124e6; + private targetThreshold: number = 0.5; + private cleanupInterval: number = 5000; + private debugLogging: boolean = false; + private loggingID: ReturnType = + 0 as unknown as ReturnType; private lastCleanupTime = 0; - private baselineMemoryAllocation: number; + private baselineMemoryAllocation: number = 26e6; public criticalCleanupRequested = false; - public doNotExceedCriticalThreshold: boolean; + public doNotExceedCriticalThreshold: boolean = false; + private originalSetTextureMemUse: ( + texture: Texture, + byteSize: number, + ) => void; /** * The current frame time in milliseconds @@ -139,46 +145,9 @@ export class TextureMemoryManager { public frameTime = 0; constructor(private stage: Stage, settings: TextureMemoryManagerSettings) { - const { criticalThreshold, doNotExceedCriticalThreshold } = settings; - this.doNotExceedCriticalThreshold = doNotExceedCriticalThreshold || false; - this.criticalThreshold = Math.round(criticalThreshold); - const targetFraction = Math.max( - 0, - Math.min(1, settings.targetThresholdLevel), - ); - this.cleanupInterval = settings.cleanupInterval; - this.debugLogging = settings.debugLogging; - this.baselineMemoryAllocation = Math.round( - settings.baselineMemoryAllocation, - ); - this.targetThreshold = Math.max( - Math.round(criticalThreshold * targetFraction), - this.baselineMemoryAllocation, - ); - this.memUsed = Math.round(settings.baselineMemoryAllocation); - - if (settings.debugLogging) { - let lastMemUse = 0; - setInterval(() => { - if (lastMemUse !== this.memUsed) { - lastMemUse = this.memUsed; - console.log( - `[TextureMemoryManager] Memory used: ${bytesToMb( - this.memUsed, - )} mb / ${bytesToMb(this.criticalThreshold)} mb (${( - (this.memUsed / this.criticalThreshold) * - 100 - ).toFixed(1)}%)`, - ); - } - }, 1000); - } + this.originalSetTextureMemUse = this.setTextureMemUse; - // If the threshold is 0, we disable the memory manager by replacing the - // setTextureMemUse method with a no-op function. - if (criticalThreshold === 0) { - this.setTextureMemUse = () => {}; - } + this.updateSettings(settings); } /** @@ -392,4 +361,63 @@ export class TextureMemoryManager { baselineMemoryAllocation: this.baselineMemoryAllocation, }; } + + public updateSettings(settings: TextureMemoryManagerSettings): void { + const { criticalThreshold, doNotExceedCriticalThreshold } = settings; + + this.doNotExceedCriticalThreshold = doNotExceedCriticalThreshold || false; + this.criticalThreshold = Math.round(criticalThreshold); + + if (this.memUsed === 0) { + this.memUsed = Math.round(settings.baselineMemoryAllocation); + } else { + const memUsedExBaseline = this.memUsed - this.baselineMemoryAllocation; + this.memUsed = Math.round( + settings.baselineMemoryAllocation + memUsedExBaseline, + ); + } + this.baselineMemoryAllocation = Math.round( + settings.baselineMemoryAllocation, + ); + const targetFraction = Math.max( + 0, + Math.min(1, settings.targetThresholdLevel), + ); + this.targetThreshold = Math.max( + Math.round(criticalThreshold * targetFraction), + this.baselineMemoryAllocation, + ); + + this.cleanupInterval = settings.cleanupInterval; + this.debugLogging = settings.debugLogging; + + if (this.loggingID && !settings.debugLogging) { + clearInterval(this.loggingID); + this.loggingID = 0 as unknown as ReturnType; + } + if (settings.debugLogging && !this.loggingID) { + let lastMemUse = 0; + this.loggingID = setInterval(() => { + if (lastMemUse !== this.memUsed) { + lastMemUse = this.memUsed; + console.log( + `[TextureMemoryManager] Memory used: ${bytesToMb( + this.memUsed, + )} mb / ${bytesToMb(this.criticalThreshold)} mb (${( + (this.memUsed / this.criticalThreshold) * + 100 + ).toFixed(1)}%)`, + ); + } + }, 1000); + } + + // If the threshold is 0, we disable the memory manager by replacing the + // setTextureMemUse method with a no-op function. + if (criticalThreshold === 0) { + this.setTextureMemUse = () => {}; + } else { + this.setTextureMemUse = this.originalSetTextureMemUse; + } + } } diff --git a/src/core/lib/ContextSpy.ts b/src/core/lib/ContextSpy.ts index 03638fe3..79374542 100644 --- a/src/core/lib/ContextSpy.ts +++ b/src/core/lib/ContextSpy.ts @@ -23,6 +23,7 @@ */ export class ContextSpy { private data: Record = {}; + public enabled: boolean = false; reset() { this.data = {}; diff --git a/src/core/renderers/CoreRenderer.ts b/src/core/renderers/CoreRenderer.ts index 82e17bf8..0bf10d1c 100644 --- a/src/core/renderers/CoreRenderer.ts +++ b/src/core/renderers/CoreRenderer.ts @@ -104,4 +104,5 @@ export abstract class CoreRenderer { abstract getBufferInfo(): BufferInfo | null; abstract getQuadCount(): number | null; abstract updateClearColor(color: number): void; + abstract updateViewport(): void; } diff --git a/src/core/renderers/canvas/CanvasRenderer.ts b/src/core/renderers/canvas/CanvasRenderer.ts index 1db122cc..389a0a9f 100644 --- a/src/core/renderers/canvas/CanvasRenderer.ts +++ b/src/core/renderers/canvas/CanvasRenderer.ts @@ -293,6 +293,10 @@ export class CanvasRenderer extends CoreRenderer { this.clearColor = this.getParsedColor(color); } + override updateViewport(): void { + // noop + } + override getDefaultShaderNode() { return null; } diff --git a/src/core/renderers/webgl/WebGlRenderer.ts b/src/core/renderers/webgl/WebGlRenderer.ts index e1296d15..71e6e1e3 100644 --- a/src/core/renderers/webgl/WebGlRenderer.ts +++ b/src/core/renderers/webgl/WebGlRenderer.ts @@ -109,7 +109,7 @@ export class WebGlRenderer extends CoreRenderer { const gl = createWebGLContext( options.canvas, options.forceWebGL2, - options.contextSpy, + this.stage.contextSpy, ); const glw = (this.glw = new WebGlContextWrapper(gl)); glw.viewport(0, 0, options.canvas.width, options.canvas.height); @@ -662,6 +662,10 @@ export class WebGlRenderer extends CoreRenderer { this.renderToTextureActive = false; } + updateViewport(): void { + this.glw.viewport(0, 0, this.glw.canvas.width, this.glw.canvas.height); + } + removeRTTNode(node: CoreNode) { const index = this.rttNodes.indexOf(node); if (index === -1) { diff --git a/src/main-api/Inspector.ts b/src/main-api/Inspector.ts index 255890ab..fbba1aac 100644 --- a/src/main-api/Inspector.ts +++ b/src/main-api/Inspector.ts @@ -7,7 +7,7 @@ import { type RendererMainSettings } from './Renderer.js'; import type { AnimationSettings } from '../core/animations/CoreAnimation.js'; import type { IAnimationController } from '../common/IAnimationController.js'; import { isProductionEnvironment } from '../utils.js'; -import type { CoreTextNode, CoreTextNodeProps } from '../core/CoreTextNode.js'; +import { CoreTextNode, type CoreTextNodeProps } from '../core/CoreTextNode.js'; /** * Inspector @@ -166,6 +166,8 @@ const knownProperties = new Set([ export class Inspector { private root: HTMLElement | null = null; private canvas: HTMLCanvasElement | null = null; + private mutationObserver: MutationObserver = new MutationObserver(() => {}); + private resizeObserver: ResizeObserver = new ResizeObserver(() => {}); private height = 1080; private width = 1920; private scaleX = 1; @@ -196,18 +198,18 @@ export class Inspector { document.body.appendChild(this.root); //listen for changes on canvas - const mutationObserver = new MutationObserver( + this.mutationObserver = new MutationObserver( this.setRootPosition.bind(this), ); - mutationObserver.observe(canvas, { + this.mutationObserver.observe(canvas, { attributes: true, childList: false, subtree: false, }); // Create a ResizeObserver to watch for changes in the element's size - const resizeObserver = new ResizeObserver(this.setRootPosition.bind(this)); - resizeObserver.observe(canvas); + this.resizeObserver = new ResizeObserver(this.setRootPosition.bind(this)); + this.resizeObserver.observe(canvas); //listen for changes on window window.addEventListener('resize', this.setRootPosition.bind(this)); @@ -259,6 +261,24 @@ export class Inspector { return div; } + createNodes(node: CoreNode): boolean { + if (this.root === null) { + return false; + } + + const div = this.root.querySelector(`[id="${node.id}"]`); + if (div === null && node instanceof CoreTextNode) { + this.createTextNode(node); + } else if (div === null && node instanceof CoreNode) { + this.createNode(node); + } + + for (const child of node.children) { + this.createNodes(child); + } + return true; + } + createNode(node: CoreNode): CoreNode { const div = this.createDiv(node.id, node.props); (div as HTMLElement & { node: CoreNode }).node = node; @@ -348,6 +368,18 @@ export class Inspector { return node; } + public destroy() { + // Remove DOM observers + this.mutationObserver.disconnect(); + this.resizeObserver.disconnect(); + + // Remove resize listener + window.removeEventListener('resize', this.setRootPosition.bind(this)); + if (this.root && this.root.parentNode) { + this.root.remove(); + } + } + destroyNode(id: number) { const div = document.getElementById(id.toString()); div?.remove(); @@ -475,6 +507,19 @@ export class Inspector { } } + updateViewport( + width: number, + height: number, + deviceLogicalPixelRatio: number, + ) { + this.scaleX = deviceLogicalPixelRatio ?? 1; + this.scaleY = deviceLogicalPixelRatio ?? 1; + + this.width = width; + this.height = height; + this.setRootPosition(); + } + // simple animation handler animateNode( div: HTMLElement, diff --git a/src/main-api/Renderer.ts b/src/main-api/Renderer.ts index 7240d911..d2859785 100644 --- a/src/main-api/Renderer.ts +++ b/src/main-api/Renderer.ts @@ -280,7 +280,17 @@ export interface RendererMainSettings { export type PartialRendererMainSettings = Partial< Pick< RendererMainSettings, - 'boundsMargin' | 'clearColor' | 'fpsUpdateInterval' + | 'appWidth' + | 'appHeight' + | 'boundsMargin' + | 'clearColor' + | 'deviceLogicalPixelRatio' + | 'devicePhysicalPixelRatio' + | 'enableContextSpy' + | 'fpsUpdateInterval' + | 'inspector' + | 'textureMemory' + | 'textureProcessingTimeLimit' > >; @@ -337,7 +347,7 @@ export type PartialRendererMainSettings = Partial< export class RendererMain extends EventEmitter { readonly root: INode; readonly canvas: HTMLCanvasElement; - readonly settings: Readonly>; + protected settings: Required; readonly stage: Stage; private inspector: Inspector | null = null; @@ -351,16 +361,9 @@ export class RendererMain extends EventEmitter { constructor(settings: RendererMainSettings, target: string | HTMLElement) { super(); - const resolvedTxSettings: TextureMemoryManagerSettings = { - criticalThreshold: settings.textureMemory?.criticalThreshold || 124e6, - targetThresholdLevel: settings.textureMemory?.targetThresholdLevel || 0.5, - cleanupInterval: settings.textureMemory?.cleanupInterval || 5000, - debugLogging: settings.textureMemory?.debugLogging || false, - baselineMemoryAllocation: - settings.textureMemory?.baselineMemoryAllocation || 26e6, - doNotExceedCriticalThreshold: - settings.textureMemory?.doNotExceedCriticalThreshold || false, - }; + const resolvedTxSettings = this.resolveTxSettings( + settings.textureMemory || {}, + ); const resolvedSettings: Required = { appWidth: settings.appWidth || 1920, @@ -453,6 +456,43 @@ export class RendererMain extends EventEmitter { } } + /** + * Resolves the Texture Memory Manager values + * + * @param props + * @returns + */ + private resolveTxSettings( + textureMemory: Partial, + ): TextureMemoryManagerSettings { + const currentTxSettings = this.settings?.textureMemory || {}; + + return { + criticalThreshold: + textureMemory?.criticalThreshold ?? + currentTxSettings?.criticalThreshold ?? + 124e6, + targetThresholdLevel: + textureMemory?.targetThresholdLevel ?? + currentTxSettings?.targetThresholdLevel ?? + 0.5, + cleanupInterval: + textureMemory?.cleanupInterval ?? + currentTxSettings?.cleanupInterval ?? + 5000, + debugLogging: + textureMemory?.debugLogging ?? currentTxSettings?.debugLogging ?? false, + baselineMemoryAllocation: + textureMemory?.baselineMemoryAllocation ?? + currentTxSettings?.baselineMemoryAllocation ?? + 26e6, + doNotExceedCriticalThreshold: + textureMemory?.doNotExceedCriticalThreshold ?? + currentTxSettings?.doNotExceedCriticalThreshold ?? + false, + }; + } + /** * Create a new scene graph node * @@ -663,13 +703,29 @@ export class RendererMain extends EventEmitter { * @param options */ setOptions(options: Partial) { - const allowedOptions: Partial = {}; + const allowedOptions: Partial> = {}; const allowedKeys: (keyof PartialRendererMainSettings)[] = [ - 'boundsMargin', - 'clearColor', - 'fpsUpdateInterval', + 'appWidth', // done + 'appHeight', // done + 'boundsMargin', // done + 'clearColor', // done + 'deviceLogicalPixelRatio', // done + 'devicePhysicalPixelRatio', // done + 'enableContextSpy', // Callbacks too heavy? + 'inspector', // Rebuild Children of root they are added during creation + 'fpsUpdateInterval', // done + 'textureMemory', // done + 'textureProcessingTimeLimit', // done ]; // List of allowed settings + if (options.textureMemory !== undefined) { + const textureMemory = (options.textureMemory = this.resolveTxSettings( + options.textureMemory, + )); + this.stage.txMemManager.updateSettings(textureMemory); + this.stage.txMemManager.cleanup(); + } + for (const key of allowedKeys) { if (options[key] !== undefined) { let value = options[key]; @@ -678,18 +734,105 @@ export class RendererMain extends EventEmitter { ? options[key] : [options[key], options[key], options[key], options[key]]; } - // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-assignment - allowedOptions[key] = value as any; + + allowedOptions[key] = value; } } - const updatedSettings = { + this.settings = { ...this.settings, ...allowedOptions, + }; + + const updatedSettings = { + ...this.stage.options, + ...allowedOptions, + inspector: this.settings.inspector !== null, } as Readonly>; + ( + this.stage as { options: Readonly> } + ).options = updatedSettings; + + if (options.inspector !== undefined) { + if (!isProductionEnvironment()) { + if (options.inspector === false) { + this.inspector?.destroy(); + this.inspector = null; + } else if ( + this.inspector === null || + this.inspector.constructor !== options.inspector + ) { + this.inspector = new options.inspector(this.canvas, this.settings); + this.inspector?.createNodes(this.root as unknown as CoreNode); + } + } + } + + let needDimensionsUpdate = false; + + if ( + options.deviceLogicalPixelRatio || + options.devicePhysicalPixelRatio !== undefined + ) { + this.stage.pixelRatio = + this.settings.devicePhysicalPixelRatio * + this.settings.deviceLogicalPixelRatio; + this.inspector?.updateViewport( + this.settings.appWidth, + this.settings.appHeight, + this.settings.deviceLogicalPixelRatio, + ); + needDimensionsUpdate = true; + } + + if (options.appWidth !== undefined || options.appHeight !== undefined) { + this.inspector?.updateViewport( + this.settings.appWidth, + this.settings.appHeight, + this.settings.deviceLogicalPixelRatio, + ); + needDimensionsUpdate = true; + } + + if (options.boundsMargin !== undefined) { + this.stage.setBoundsMargin(options.boundsMargin); + } + + if (options.clearColor !== undefined) { + this.stage.setClearColor(options.clearColor); + } + + if (options.enableContextSpy !== undefined) { + if (this.stage.contextSpy) + this.stage.contextSpy.enabled = options.enableContextSpy; + } + + if (needDimensionsUpdate) { + this.updateAppDimensions(); + } + } + + private updateAppDimensions() { + const { + appWidth, + appHeight, + deviceLogicalPixelRatio, + devicePhysicalPixelRatio, + } = this.settings; + + const deviceLogicalWidth = appWidth * deviceLogicalPixelRatio; + const deviceLogicalHeight = appHeight * deviceLogicalPixelRatio; + + this.canvas.width = deviceLogicalWidth * devicePhysicalPixelRatio; + this.canvas.height = deviceLogicalHeight * devicePhysicalPixelRatio; + + this.canvas.style.width = `${deviceLogicalWidth}px`; + this.canvas.style.height = `${deviceLogicalHeight}px`; + + this.stage.renderer.updateViewport(); - (this as { settings: Readonly> }).settings = - updatedSettings; - this.stage.setOptions(allowedOptions); + this.root.width = appWidth; + this.root.height = appHeight; + this.stage.updateViewportBounds(); } } diff --git a/src/utils.ts b/src/utils.ts index c62e0d2e..055c31b9 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -53,7 +53,9 @@ export function createWebGLContext( get(target, prop) { const value = target[prop as never] as unknown; if (typeof value === 'function') { - contextSpy.increment(String(prop)); + if (contextSpy.enabled) { + contextSpy.increment(String(prop)); + } return value.bind(target); } return value; From 2900b1b4646f102b33f2d41f5e54b48f08b38aa8 Mon Sep 17 00:00:00 2001 From: Maikel Brons Date: Mon, 31 Mar 2025 09:21:51 +0200 Subject: [PATCH 05/13] Test --- examples/tests/render-settings.ts | 45 ++++++++++++++----------------- 1 file changed, 20 insertions(+), 25 deletions(-) diff --git a/examples/tests/render-settings.ts b/examples/tests/render-settings.ts index 1396b3a8..6ca00249 100644 --- a/examples/tests/render-settings.ts +++ b/examples/tests/render-settings.ts @@ -24,31 +24,26 @@ import robotImg from '../assets/robot/robot.png'; const TESTPAGES = 6; export async function automation(settings: ExampleSettings) { - const testPageArray: number[] = []; - for (let i = 1; i < TESTPAGES; i++) { - testPageArray.push(i); - } - - const page = await test(settings); - // i = 0 - await settings.snapshot(); - - let testIdx = 1; - const testPage = async () => { - console.log('Testing ', testIdx); - page(testIdx); - await settings.snapshot(); - - if (testIdx >= TESTPAGES) { - return true; - } - - testIdx++; - await testPage(); - }; - - // test first page - await testPage(); + // const testPageArray: number[] = []; + // for (let i = 1; i < TESTPAGES; i++) { + // testPageArray.push(i); + // } + // const page = await test(settings); + // // i = 0 + // await settings.snapshot(); + // let testIdx = 1; + // const testPage = async () => { + // console.log('Testing ', testIdx); + // page(testIdx); + // await settings.snapshot(); + // if (testIdx >= TESTPAGES) { + // return true; + // } + // testIdx++; + // await testPage(); + // }; + // // test first page + // await testPage(); } export default async function test({ renderer, testRoot }: ExampleSettings) { From d9a116a008da151dc200b0eb6d0ac0543f30d262 Mon Sep 17 00:00:00 2001 From: Maikel Brons Date: Mon, 31 Mar 2025 11:44:58 +0200 Subject: [PATCH 06/13] Remove enableContextSpy from setOptions --- examples/tests/render-settings.ts | 6 ++--- src/core/Stage.ts | 4 +--- src/core/lib/ContextSpy.ts | 1 - src/core/renderers/webgl/WebGlRenderer.ts | 2 +- src/main-api/Renderer.ts | 27 +++++++++-------------- src/utils.ts | 4 +--- 6 files changed, 16 insertions(+), 28 deletions(-) diff --git a/examples/tests/render-settings.ts b/examples/tests/render-settings.ts index 6ca00249..a00fa977 100644 --- a/examples/tests/render-settings.ts +++ b/examples/tests/render-settings.ts @@ -194,9 +194,9 @@ export default async function test({ renderer, testRoot }: ExampleSettings) { // Red text should be out of bounds case 1: renderer.setOptions({ - appWidth: 550, - appHeight: 1000, - fpsUpdateInterval: 100, + // appWidth: 550, + // appHeight: 1000, + // fpsUpdateInterval: 100, enableContextSpy: true, }); break; diff --git a/src/core/Stage.ts b/src/core/Stage.ts index c7d165ed..775cdd54 100644 --- a/src/core/Stage.ts +++ b/src/core/Stage.ts @@ -171,9 +171,7 @@ export class Stage { this.txMemManager = new TextureMemoryManager(this, textureMemory); this.animationManager = new AnimationManager(); - this.contextSpy = new ContextSpy(); - this.contextSpy.enabled = enableContextSpy; - + this.contextSpy = enableContextSpy ? new ContextSpy() : null; this.strictBounds = options.strictBounds; let bm = [0, 0, 0, 0] as [number, number, number, number]; diff --git a/src/core/lib/ContextSpy.ts b/src/core/lib/ContextSpy.ts index 79374542..03638fe3 100644 --- a/src/core/lib/ContextSpy.ts +++ b/src/core/lib/ContextSpy.ts @@ -23,7 +23,6 @@ */ export class ContextSpy { private data: Record = {}; - public enabled: boolean = false; reset() { this.data = {}; diff --git a/src/core/renderers/webgl/WebGlRenderer.ts b/src/core/renderers/webgl/WebGlRenderer.ts index 71e6e1e3..12b869fd 100644 --- a/src/core/renderers/webgl/WebGlRenderer.ts +++ b/src/core/renderers/webgl/WebGlRenderer.ts @@ -109,7 +109,7 @@ export class WebGlRenderer extends CoreRenderer { const gl = createWebGLContext( options.canvas, options.forceWebGL2, - this.stage.contextSpy, + options.contextSpy, ); const glw = (this.glw = new WebGlContextWrapper(gl)); glw.viewport(0, 0, options.canvas.width, options.canvas.height); diff --git a/src/main-api/Renderer.ts b/src/main-api/Renderer.ts index d2859785..222b5b56 100644 --- a/src/main-api/Renderer.ts +++ b/src/main-api/Renderer.ts @@ -286,7 +286,6 @@ export type PartialRendererMainSettings = Partial< | 'clearColor' | 'deviceLogicalPixelRatio' | 'devicePhysicalPixelRatio' - | 'enableContextSpy' | 'fpsUpdateInterval' | 'inspector' | 'textureMemory' @@ -705,17 +704,16 @@ export class RendererMain extends EventEmitter { setOptions(options: Partial) { const allowedOptions: Partial> = {}; const allowedKeys: (keyof PartialRendererMainSettings)[] = [ - 'appWidth', // done - 'appHeight', // done - 'boundsMargin', // done - 'clearColor', // done - 'deviceLogicalPixelRatio', // done - 'devicePhysicalPixelRatio', // done - 'enableContextSpy', // Callbacks too heavy? - 'inspector', // Rebuild Children of root they are added during creation - 'fpsUpdateInterval', // done - 'textureMemory', // done - 'textureProcessingTimeLimit', // done + 'appWidth', + 'appHeight', + 'boundsMargin', + 'clearColor', + 'deviceLogicalPixelRatio', + 'devicePhysicalPixelRatio', + 'inspector', + 'fpsUpdateInterval', + 'textureMemory', + 'textureProcessingTimeLimit', ]; // List of allowed settings if (options.textureMemory !== undefined) { @@ -802,11 +800,6 @@ export class RendererMain extends EventEmitter { this.stage.setClearColor(options.clearColor); } - if (options.enableContextSpy !== undefined) { - if (this.stage.contextSpy) - this.stage.contextSpy.enabled = options.enableContextSpy; - } - if (needDimensionsUpdate) { this.updateAppDimensions(); } diff --git a/src/utils.ts b/src/utils.ts index 055c31b9..c62e0d2e 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -53,9 +53,7 @@ export function createWebGLContext( get(target, prop) { const value = target[prop as never] as unknown; if (typeof value === 'function') { - if (contextSpy.enabled) { - contextSpy.increment(String(prop)); - } + contextSpy.increment(String(prop)); return value.bind(target); } return value; From 1c38809357a87064f5d9714b55a4510b99ce4507 Mon Sep 17 00:00:00 2001 From: Maikel Brons Date: Thu, 3 Apr 2025 12:08:45 +0200 Subject: [PATCH 07/13] Test files plus some fixes --- examples/tests/render-settings.ts | 280 ++++++++++-------- src/main-api/Inspector.ts | 2 + src/main-api/Renderer.ts | 22 +- .../chromium-ci/render-settings-1.png | Bin 0 -> 50873 bytes .../chromium-ci/render-settings-2.png | Bin 0 -> 55338 bytes .../chromium-ci/render-settings-3.png | Bin 0 -> 82515 bytes .../chromium-ci/render-settings-4.png | Bin 0 -> 79662 bytes .../chromium-ci/render-settings-5.png | Bin 0 -> 75829 bytes .../chromium-ci/render-settings-6.png | Bin 0 -> 70962 bytes 9 files changed, 168 insertions(+), 136 deletions(-) create mode 100644 visual-regression/certified-snapshots/chromium-ci/render-settings-1.png create mode 100644 visual-regression/certified-snapshots/chromium-ci/render-settings-2.png create mode 100644 visual-regression/certified-snapshots/chromium-ci/render-settings-3.png create mode 100644 visual-regression/certified-snapshots/chromium-ci/render-settings-4.png create mode 100644 visual-regression/certified-snapshots/chromium-ci/render-settings-5.png create mode 100644 visual-regression/certified-snapshots/chromium-ci/render-settings-6.png diff --git a/examples/tests/render-settings.ts b/examples/tests/render-settings.ts index a00fa977..ec9cd947 100644 --- a/examples/tests/render-settings.ts +++ b/examples/tests/render-settings.ts @@ -19,39 +19,45 @@ import type { ExampleSettings } from '../common/ExampleSettings.js'; import { Inspector } from '@lightningjs/renderer/inspector'; -import robotImg from '../assets/robot/robot.png'; const TESTPAGES = 6; export async function automation(settings: ExampleSettings) { - // const testPageArray: number[] = []; - // for (let i = 1; i < TESTPAGES; i++) { - // testPageArray.push(i); - // } - // const page = await test(settings); - // // i = 0 - // await settings.snapshot(); - // let testIdx = 1; - // const testPage = async () => { - // console.log('Testing ', testIdx); - // page(testIdx); - // await settings.snapshot(); - // if (testIdx >= TESTPAGES) { - // return true; - // } - // testIdx++; - // await testPage(); - // }; - // // test first page - // await testPage(); + const page = await test(settings); + await settings.snapshot(); + let testIdx = 1; + const testPage = async () => { + await page(testIdx); + await settings.snapshot(); + if (testIdx >= TESTPAGES - 1) { + //Reset to default settings to prevent other tests from failing + await page(0); + return true; + } + testIdx++; + await testPage(); + }; + // test first page + await testPage(); } export default async function test({ renderer, testRoot }: ExampleSettings) { - const ppr = renderer.settings.devicePhysicalPixelRatio; - const lpr = renderer.settings.deviceLogicalPixelRatio; + const ppr = renderer.stage.options.devicePhysicalPixelRatio; + const lpr = renderer.stage.options.deviceLogicalPixelRatio; + + const info = renderer.createTextNode({ + text: 'Initial default settings', + fontSize: 30, + fontFamily: 'Ubuntu-ssdf', + x: 10, + y: 810, + contain: 'width', + width: renderer.root.width - 20, + parent: testRoot, + }); renderer.createTextNode({ - text: 'Left/Right Arrow keys to move, Up/Down Arrow keys to change page, enter to reset', + text: 'Up/Down Arrow keys to change page, enter to reset', fontSize: 30, x: 10, y: 960, @@ -61,12 +67,13 @@ export default async function test({ renderer, testRoot }: ExampleSettings) { const boundaryRect1 = renderer.createNode({ x: 1920 / 2 - (1920 * 0.75) / 2, - y: 1080 / 2 - (1080 * 0.5) / 2, + y: 1080 / 2 - (1080 * 0.45) / 2, width: 1000, height: 410, color: 0x000000ff, parent: testRoot, }); + const screen = renderer.createNode({ x: 50, y: 50, @@ -75,6 +82,7 @@ export default async function test({ renderer, testRoot }: ExampleSettings) { parent: boundaryRect1, color: 0x222222ff, }); + const boundaryRect2 = renderer.createNode({ x: 50, y: 50, @@ -120,7 +128,17 @@ export default async function test({ renderer, testRoot }: ExampleSettings) { yPos += 40; const appSize = renderer.createTextNode({ - text: `Renderer Size: ${renderer.root.width}x${renderer.root.height}`, + text: `App Size: ${renderer.root.width}x${renderer.root.height}`, + fontSize: 30, + x: 10, + y: yPos, + fontFamily: 'Ubuntu-ssdf', + parent: testRoot, + }); + yPos += 40; + + const pixelSize = renderer.createTextNode({ + text: `Pixels: ${renderer.canvas.width}x${renderer.canvas.height}`, fontSize: 30, x: 10, y: yPos, @@ -139,13 +157,45 @@ export default async function test({ renderer, testRoot }: ExampleSettings) { }); yPos += 40; - const FPS = renderer.createTextNode({ - text: 'FPS Not running', + const fpsCheckBox = renderer.createNode({ + width: 30, + height: 30, + x: 10, + y: yPos, + color: 0xff0000ff, + parent: testRoot, + }); + + renderer.createTextNode({ + text: 'fpsUpdate enabled?', fontSize: 30, + x: 50, + y: yPos, + fontFamily: 'Ubuntu-ssdf', + parent: testRoot, + }); + yPos += 40; + + const inspectorCheckBox = renderer.createNode({ + width: 30, + height: 30, x: 10, y: yPos, + color: 0xff0000ff, + parent: testRoot, + }); + + renderer.createTextNode({ + x: 50, + y: yPos, + height: 100, + text: 'Inspector enabled?', fontFamily: 'Ubuntu-ssdf', + fontSize: 30, parent: testRoot, + data: { + id: 'inspectorNode', + }, }); yPos += 40; @@ -177,95 +227,110 @@ export default async function test({ renderer, testRoot }: ExampleSettings) { boundsMarginText.text = `Text BoundsMargin: ${redText.boundsMargin}`; }); - // renderer.cleanup(); - renderer.on('fpsUpdate', (_renderer, data) => { - // console.log('FPS Update', data.contextSpyData); - if (FPS.text === 'FPS Not running') FPS.text = `FPS running`; + if (fpsCheckBox.color === 0xff0000ff) { + fpsCheckBox.color = 0x00ff00ff; + } }); let intervalID = 0 as unknown as ReturnType; - const page = (i = 1) => { + const page = async (i = 1) => { console.log('Running test page', i); testPage.text = `Test Page ${i}`; switch (i) { - // Resize app to 550x1000 and set fpsUpdateInterval to 100 - // Red text should be out of bounds + case 0: + testPageIdx = 0; + // Reset to default settings + renderer.setOptions({ + appWidth: 1920, + appHeight: 1080, + boundsMargin: 100, + clearColor: 0x00000000, + deviceLogicalPixelRatio: lpr, + devicePhysicalPixelRatio: ppr, + inspector: false, + fpsUpdateInterval: 0, + textureMemory: { + criticalThreshold: 124e6, + targetThresholdLevel: 0.5, + debugLogging: false, + }, + textureProcessingTimeLimit: 10, + }); + clearInterval(intervalID); + screen.color = 0x222222ff; + screen.texture = null; + info.text = 'Initial default settings'; + break; + case 1: renderer.setOptions({ - // appWidth: 550, - // appHeight: 1000, - // fpsUpdateInterval: 100, - enableContextSpy: true, + deviceLogicalPixelRatio: 1, + inspector: Inspector, }); + info.text = + 'LogicalPixelRatio: 1. Pixels should be 1920x1080. Inspector enabled.'; break; - // Apply a device logical pixel ratio of 2 and move text 60px to the right - // Red text should be in renderbounds case 2: renderer.setOptions({ - deviceLogicalPixelRatio: 2, - fpsUpdateInterval: 0, + devicePhysicalPixelRatio: 0.5, + clearColor: 0xff6f00ff, + inspector: false, }); - redText.x = 320; - FPS.text = 'FPS Not running'; + info.width = renderer.root.width - 20; + info.text = + 'PhysicalPixelRatio: 0.5. Pixels should be 960x540. Inspector disabled. ClearColor changed to orange.'; break; - // Apply a device physical pixel ratio of 0.1 and boundsMargin of 50 - // Red text should be out of bounds case 3: renderer.setOptions({ - devicePhysicalPixelRatio: 0.15, - boundsMargin: 50, - enableContextSpy: false, + appWidth: 550, + appHeight: 1000, + deviceLogicalPixelRatio: lpr, + devicePhysicalPixelRatio: ppr, + clearColor: 0x00000000, }); + info.width = renderer.root.width - 20; + info.text = + 'Pixels should be 366x666. redText should be out of bounds. Default clearColor, LogicalPixelRatio and PhysicalPixelRatio'; break; - // Restore app size, devicePhysicalPixelRatio and deviceLogicalPixelRatio to Defaults - // Red text should be in renderbounds case 4: renderer.setOptions({ - devicePhysicalPixelRatio: ppr, - appWidth: 1920, - appHeight: 1080, - clearColor: 0x00ff00ff, + boundsMargin: 150, + fpsUpdateInterval: 100, }); + + info.text = + 'Changed boundsMargin should make redText be inside renderbounds. FPSupdate event should trigger'; + await delay(110); break; - // first parent text in view case 5: renderer.setOptions({ - deviceLogicalPixelRatio: lpr, + fpsUpdateInterval: 0, }); + redText.x = 230; + fpsCheckBox.color = 0xff0000ff; + info.text = + 'redText should be inside viewport. FPSupdate event should not trigger anymore.'; + await delay(110); break; - // Reset everything to defaults + // Serving as example not running in visual regression case 6: renderer.setOptions({ appWidth: 1920, appHeight: 1080, - boundsMargin: 100, - clearColor: 0x00000000, - deviceLogicalPixelRatio: lpr, - devicePhysicalPixelRatio: ppr, - enableContextSpy: false, - fpsUpdateInterval: 0, - textureProcessingTimeLimit: 10, - }); - - break; - - // Change TextureMemory settings and create a new texture every 100ms - case 7: - renderer.setOptions({ textureMemory: { criticalThreshold: 200 * 1024 ** 2, targetThresholdLevel: 0.25, debugLogging: true, }, + textureProcessingTimeLimit: 4, }); - intervalID = setInterval(() => { screen.color = 0xffffffff; screen.texture = renderer.createTexture('NoiseTexture', { @@ -275,70 +340,33 @@ export default async function test({ renderer, testRoot }: ExampleSettings) { }); screen.textureOptions.preload = true; }, 100); - break; + } - // Restore textureMemory settings to defaults - case 8: - renderer.setOptions({ - textureMemory: { - criticalThreshold: 124e6, - targetThresholdLevel: 0.5, - }, - }); - clearInterval(intervalID); - screen.color = 0x222222ff; - screen.texture = null; - break; - - case 9: - renderer.setOptions({ - inspector: false, - }); - break; - - case 10: - renderer.setOptions({ - enableContextSpy: true, - fpsUpdateInterval: 1000, - }); - - // intervalID = setInterval(() => { - // screen.color = 0xffffffff; - // screen.texture = renderer.createTexture('NoiseTexture', { - // width: 500, - // height: 500, - // cacheId: Math.floor(Math.random() * 100000), - // }); - // screen.textureOptions.preload = true; - // }, 100); - break; + if (document.querySelector('[data-id="inspectorNode"]')) { + inspectorCheckBox.color = 0x00ff00ff; + } else { + inspectorCheckBox.color = 0xff0000ff; } + redPosition.text = `Text X Position: ${redText.x}`; - appSize.text = `Renderer Size: ${renderer.root.width}x${renderer.root.height}`; + appSize.text = `App Size: ${renderer.root.width}x${renderer.root.height}`; + pixelSize.text = `Pixels: ${renderer.canvas.width * ppr}x${ + renderer.canvas.height * ppr + }`; }; - const moveModifier = 100; + const numKeys: string[] = []; for (let i = 0; i < 10; i++) { numKeys.push(i.toString()); } let testPageIdx = 0; - window.onkeydown = (e) => { + window.onkeydown = (e: KeyboardEvent) => { if (numKeys.indexOf(e.key) !== -1) { page(parseInt(e.key)); } - if (e.key === 'ArrowRight') { - redText.x += moveModifier; - redPosition.text = `Text X Position: ${redText.x}`; - } - - if (e.key === 'ArrowLeft') { - redText.x -= moveModifier; - redPosition.text = `Text X Position: ${redText.x}`; - } - if (e.key === 'ArrowDown') { if (testPageIdx <= 0) { testPageIdx = TESTPAGES; @@ -358,9 +386,13 @@ export default async function test({ renderer, testRoot }: ExampleSettings) { } if (e.key === 'Enter') { - page(10); + page(0); } }; return page; } + +function delay(ms: number) { + return new Promise((resolve) => setTimeout(resolve, ms)); +} diff --git a/src/main-api/Inspector.ts b/src/main-api/Inspector.ts index fbba1aac..11b9b8aa 100644 --- a/src/main-api/Inspector.ts +++ b/src/main-api/Inspector.ts @@ -343,6 +343,7 @@ export class Inspector { this.destroyNode(node.id); originalDestroy.call(node); }, + configurable: true, }); const originalAnimate = node.animate; @@ -363,6 +364,7 @@ export class Inspector { return animationController; }, + configurable: true, }); return node; diff --git a/src/main-api/Renderer.ts b/src/main-api/Renderer.ts index 222b5b56..18bcf1ec 100644 --- a/src/main-api/Renderer.ts +++ b/src/main-api/Renderer.ts @@ -751,18 +751,16 @@ export class RendererMain extends EventEmitter { this.stage as { options: Readonly> } ).options = updatedSettings; - if (options.inspector !== undefined) { - if (!isProductionEnvironment()) { - if (options.inspector === false) { - this.inspector?.destroy(); - this.inspector = null; - } else if ( - this.inspector === null || - this.inspector.constructor !== options.inspector - ) { - this.inspector = new options.inspector(this.canvas, this.settings); - this.inspector?.createNodes(this.root as unknown as CoreNode); - } + if (options.inspector !== undefined && !isProductionEnvironment()) { + if (options.inspector === false) { + this.inspector?.destroy(); + this.inspector = null; + } else if ( + this.inspector === null || + this.inspector.constructor !== options.inspector + ) { + this.inspector = new options.inspector(this.canvas, this.settings); + this.inspector?.createNodes(this.root as unknown as CoreNode); } } diff --git a/visual-regression/certified-snapshots/chromium-ci/render-settings-1.png b/visual-regression/certified-snapshots/chromium-ci/render-settings-1.png new file mode 100644 index 0000000000000000000000000000000000000000..9cd26946ab60fb0190d4c9c77064e7e1cec87d89 GIT binary patch literal 50873 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 literal 0 HcmV?d00001 diff --git a/visual-regression/certified-snapshots/chromium-ci/render-settings-2.png b/visual-regression/certified-snapshots/chromium-ci/render-settings-2.png new file mode 100644 index 0000000000000000000000000000000000000000..41be4f1efe53d6225e64bb4dcfc11326756c0075 GIT binary patch literal 55338 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 tU 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%0A0LQlD#}OArG@QlQ4>{hk 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 literal 0 HcmV?d00001 diff --git a/visual-regression/certified-snapshots/chromium-ci/render-settings-4.png b/visual-regression/certified-snapshots/chromium-ci/render-settings-4.png new file mode 100644 index 0000000000000000000000000000000000000000..d218d8de9c38c192029811e62d8c907ca3345dd2 GIT binary patch literal 79662 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 IwE6r00{e5JMgRZ+ literal 0 HcmV?d00001 diff --git a/visual-regression/certified-snapshots/chromium-ci/render-settings-5.png b/visual-regression/certified-snapshots/chromium-ci/render-settings-5.png new file mode 100644 index 0000000000000000000000000000000000000000..5db886220d80ff4c4765362b947038c562b8e770 GIT binary patch literal 75829 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%0A*8>1k<>J>6+9$L-9zM&`U#JH6=_KSWp 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 literal 0 HcmV?d00001 diff --git a/visual-regression/certified-snapshots/chromium-ci/render-settings-6.png b/visual-regression/certified-snapshots/chromium-ci/render-settings-6.png new file mode 100644 index 0000000000000000000000000000000000000000..0b3d11e44608a718cdbf690102ac354fd5b8b637 GIT binary patch literal 70962 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

UXi6l|v0kjJ6G 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�PJ#hU`W2 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 Date: Mon, 7 Apr 2025 13:36:58 +0200 Subject: [PATCH 08/13] Conflict fixes --- src/core/Stage.ts | 1 - src/core/renderers/CoreRenderer.ts | 2 +- src/core/renderers/canvas/CanvasRenderer.ts | 2 +- 3 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/core/Stage.ts b/src/core/Stage.ts index 775cdd54..8d4db3af 100644 --- a/src/core/Stage.ts +++ b/src/core/Stage.ts @@ -56,7 +56,6 @@ import type { CoreShaderNode } from './renderers/CoreShaderNode.js'; import { createBound, createPreloadBounds, type Bound } from './lib/utils.js'; import type { Texture } from './textures/Texture.js'; import { ColorTexture } from './textures/ColorTexture.js'; -import type { RendererMainSettings } from '../main-api/Renderer.js'; export interface StageOptions { appWidth: number; diff --git a/src/core/renderers/CoreRenderer.ts b/src/core/renderers/CoreRenderer.ts index 0bf10d1c..6440dadf 100644 --- a/src/core/renderers/CoreRenderer.ts +++ b/src/core/renderers/CoreRenderer.ts @@ -103,6 +103,6 @@ export abstract class CoreRenderer { abstract renderToTexture(node: CoreNode): void; abstract getBufferInfo(): BufferInfo | null; abstract getQuadCount(): number | null; - abstract updateClearColor(color: number): void; abstract updateViewport(): void; + abstract updateClearColor(color: number): void; } diff --git a/src/core/renderers/canvas/CanvasRenderer.ts b/src/core/renderers/canvas/CanvasRenderer.ts index 389a0a9f..64cd6552 100644 --- a/src/core/renderers/canvas/CanvasRenderer.ts +++ b/src/core/renderers/canvas/CanvasRenderer.ts @@ -297,7 +297,7 @@ export class CanvasRenderer extends CoreRenderer { // noop } - override getDefaultShaderNode() { + getDefaultShaderNode() { return null; } } From 62794bffa41156b6615cec8fd39e0ddbc1485073 Mon Sep 17 00:00:00 2001 From: Maikel Brons Date: Mon, 7 Apr 2025 13:46:13 +0200 Subject: [PATCH 09/13] Change isProductionEnvironment to refactor --- src/main-api/Renderer.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main-api/Renderer.ts b/src/main-api/Renderer.ts index 6970b851..0b17c05d 100644 --- a/src/main-api/Renderer.ts +++ b/src/main-api/Renderer.ts @@ -772,10 +772,12 @@ export class RendererMain extends EventEmitter { inspector: this.settings.inspector !== null, } as Readonly>; ( - this.stage as { options: Readonly> } + this.stage as unknown as { + options: Readonly>; + } ).options = updatedSettings; - if (options.inspector !== undefined && !isProductionEnvironment()) { + if (options.inspector !== undefined && !isProductionEnvironment) { if (options.inspector === false) { this.inspector?.destroy(); this.inspector = null; From 0088835b0ff65d740ea38a9b76ce2b555bb43f3a Mon Sep 17 00:00:00 2001 From: Maikel Brons Date: Mon, 7 Apr 2025 14:37:49 +0200 Subject: [PATCH 10/13] update visual regression image --- .../chromium-ci/render-settings-2.png | Bin 55338 -> 55340 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/visual-regression/certified-snapshots/chromium-ci/render-settings-2.png b/visual-regression/certified-snapshots/chromium-ci/render-settings-2.png index 41be4f1efe53d6225e64bb4dcfc11326756c0075..5a7fd000346a03181cb05e0c0652730717853922 100644 GIT binary patch delta 13721 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 YS}6IOvsKM3xCFa<%kXBAmhIpF2WioaS^xk5 delta 13730 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 z zFAf~Y-o8QX_y4;gPP*FiglzCfRoG@0xyUx;qbeA9Fxs@p3UzgKK&1TnFO40NZ?t

)Zy#s2qqw;De7l_(r0m;SYXTqu4mo^B@1B+36 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 Date: Thu, 1 May 2025 10:31:53 +0200 Subject: [PATCH 11/13] refactored stage options and renderer settings --- src/core/Stage.ts | 27 +---- src/main-api/Renderer.ts | 235 ++++++++++++++++----------------------- 2 files changed, 100 insertions(+), 162 deletions(-) diff --git a/src/core/Stage.ts b/src/core/Stage.ts index 66fdf6e2..218decb8 100644 --- a/src/core/Stage.ts +++ b/src/core/Stage.ts @@ -46,8 +46,6 @@ import { type TextureMemoryManagerSettings, } from './TextureMemoryManager.js'; import { CoreRenderer } from './renderers/CoreRenderer.js'; -import type { WebGlRenderer } from './renderers/webgl/WebGlRenderer.js'; -import type { CanvasRenderer } from './renderers/canvas/CanvasRenderer.js'; import { CoreTextNode, type CoreTextNodeProps } from './CoreTextNode.js'; import { santizeCustomDataMap } from '../main-api/utils.js'; import type { SdfTextRenderer } from './text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.js'; @@ -59,30 +57,15 @@ import type { Texture } from './textures/Texture.js'; import { ColorTexture } from './textures/ColorTexture.js'; import type { Platform } from './platforms/Platform.js'; import type { WebPlatform } from './platforms/web/WebPlatform.js'; +import type { RendererMainSettings } from '../main-api/Renderer.js'; -export interface StageOptions { - appWidth: number; - appHeight: number; +export type StageOptions = RendererMainSettings & { textureMemory: TextureMemoryManagerSettings; - boundsMargin: number | [number, number, number, number]; - deviceLogicalPixelRatio: number; - devicePhysicalPixelRatio: number; canvas: HTMLCanvasElement | OffscreenCanvas; - clearColor: number; fpsUpdateInterval: number; - enableContextSpy: boolean; - forceWebGL2: boolean; - numImageWorkers: number; - renderEngine: typeof WebGlRenderer | typeof CanvasRenderer; eventBus: EventEmitter; - quadBufferSize: number; - fontEngines: (typeof CanvasTextRenderer | typeof SdfTextRenderer)[]; - inspector: boolean; - strictBounds: boolean; - textureProcessingTimeLimit: number; - createImageBitmapSupport: 'auto' | 'basic' | 'options' | 'full'; platform: Platform | WebPlatform; -} +}; export type StageFpsUpdateHandler = ( stage: Stage, @@ -152,7 +135,7 @@ export class Stage { /** * Stage constructor */ - constructor(readonly options: StageOptions) { + constructor(public options: StageOptions) { const { canvas, clearColor, @@ -735,7 +718,7 @@ export class Stage { props.colorBr ?? props.colorBottom ?? props.colorRight ?? color; let data = {}; - if (this.options.inspector === true) { + if (this.options.inspector !== false) { data = santizeCustomDataMap(props.data ?? {}); } diff --git a/src/main-api/Renderer.ts b/src/main-api/Renderer.ts index d6b5be69..a41760e1 100644 --- a/src/main-api/Renderer.ts +++ b/src/main-api/Renderer.ts @@ -27,7 +27,7 @@ import type { INode, INodeProps, ITextNode, ITextNodeProps } from './INode.js'; import type { TextureMemoryManagerSettings } from '../core/TextureMemoryManager.js'; import type { CanvasTextRenderer } from '../core/text-rendering/renderers/CanvasTextRenderer.js'; import type { SdfTextRenderer } from '../core/text-rendering/renderers/SdfTextRenderer/SdfTextRenderer.js'; -import type { WebGlRenderer } from '../core/renderers/webgl/WebGlRenderer.js'; +import { WebGlRenderer } from '../core/renderers/webgl/WebGlRenderer.js'; import type { CanvasRenderer } from '../core/renderers/canvas/CanvasRenderer.js'; import type { Inspector } from './Inspector.js'; import type { CoreShaderNode } from '../core/renderers/CoreShaderNode.js'; @@ -40,32 +40,32 @@ import { WebPlatform } from '../core/platforms/web/WebPlatform.js'; import { Platform } from '../core/platforms/Platform.js'; /** - * Configuration settings for {@link RendererMain} + * Settings for the Renderer that can be updated during runtime. */ -export interface RendererMainSettings { +export interface RendererRuntimeSettings { /** * Authored logical pixel width of the application * * @defaultValue `1920` */ - appWidth?: number; + appWidth: number; /** * Authored logical pixel height of the application * * @defaultValue `1080` */ - appHeight?: number; + appHeight: number; /** * Texture Memory Manager Settings */ - textureMemory?: Partial; + textureMemory: Partial; /** * Bounds margin to extend the boundary in which a Node is added as Quad. */ - boundsMargin?: number | [number, number, number, number]; + boundsMargin: number | [number, number, number, number]; /** * Factor to convert app-authored logical coorindates to device logical coordinates @@ -82,7 +82,7 @@ export interface RendererMainSettings { * * @defaultValue `1` */ - deviceLogicalPixelRatio?: number; + deviceLogicalPixelRatio: number; /** * Factor to convert device logical coordinates to device physical coordinates @@ -99,14 +99,14 @@ export interface RendererMainSettings { * * @defaultValue `window.devicePixelRatio` */ - devicePhysicalPixelRatio?: number; + devicePhysicalPixelRatio: number; /** * RGBA encoded number of the background to use * * @defaultValue `0x00000000` */ - clearColor?: number; + clearColor: number; /** * Interval in milliseconds to receive FPS updates @@ -116,8 +116,35 @@ export interface RendererMainSettings { * * @defaultValue `0` (disabled) */ - fpsUpdateInterval?: number; + fpsUpdateInterval: number; + + /** + * DOM Inspector + * + * @remarks + * The inspector will replicate the state of the Nodes created + * in the renderer and allow inspection of the state of the nodes. + * + */ + inspector: typeof Inspector | false; + + /** + * Texture Processing Limit (in milliseconds) + * + * @remarks + * The maximum amount of time the renderer is allowed to process textures in a + * single frame. If the processing time exceeds this limit, the renderer will + * skip processing the remaining textures and continue rendering the frame. + * + * @defaultValue `10` + */ + textureProcessingTimeLimit: number; +} +/** + * Configuration settings for {@link RendererMain} + */ +export type RendererMainSettings = RendererRuntimeSettings & { /** * Include context call (i.e. WebGL) information in FPS updates * @@ -131,7 +158,7 @@ export interface RendererMainSettings { * * @defaultValue `false` (disabled) */ - enableContextSpy?: boolean; + enableContextSpy: boolean; /** * Number or Image Workers to use @@ -143,17 +170,7 @@ export interface RendererMainSettings { * * @defaultValue `2` */ - numImageWorkers?: number; - - /** - * DOM Inspector - * - * @remarks - * The inspector will replicate the state of the Nodes created - * in the renderer and allow inspection of the state of the nodes. - * - */ - inspector?: typeof Inspector | false; + numImageWorkers: number; /** * Renderer Engine @@ -175,7 +192,7 @@ export interface RendererMainSettings { * * @defaultValue 4 * 1024 * 1024 */ - quadBufferSize?: number; + quadBufferSize: number; /** * Font Engines @@ -216,7 +233,7 @@ export interface RendererMainSettings { * * @defaultValue `false` */ - forceWebGL2?: boolean; + forceWebGL2: boolean; /** * Enable strictBounds @@ -227,19 +244,7 @@ export interface RendererMainSettings { * * @defaultValue `true` */ - strictBounds?: boolean; - - /** - * Texture Processing Limit (in milliseconds) - * - * @remarks - * The maximum amount of time the renderer is allowed to process textures in a - * single frame. If the processing time exceeds this limit, the renderer will - * skip processing the remaining textures and continue rendering the frame. - * - * @defaultValue `10` - */ - textureProcessingTimeLimit?: number; + strictBounds: boolean; /** * Canvas object to use for rendering @@ -248,7 +253,7 @@ export interface RendererMainSettings { * This is used to render the scene graph. If not provided, a new canvas * element will be created and appended to the target element. */ - canvas?: HTMLCanvasElement; + canvas: HTMLCanvasElement; /** * createImageBitmap support for the runtime @@ -273,7 +278,7 @@ export interface RendererMainSettings { * * @defaultValue `full` */ - createImageBitmapSupport?: 'auto' | 'basic' | 'options' | 'full'; + createImageBitmapSupport: 'auto' | 'basic' | 'options' | 'full'; /** * Provide an alternative platform abstraction layer @@ -285,27 +290,8 @@ export interface RendererMainSettings { * * @defaultValue `null` */ - platform?: typeof Platform | null; -} - -/** - * Partial Renderer Main Settings for updating settings - */ -export type PartialRendererMainSettings = Partial< - Pick< - RendererMainSettings, - | 'appWidth' - | 'appHeight' - | 'boundsMargin' - | 'clearColor' - | 'deviceLogicalPixelRatio' - | 'devicePhysicalPixelRatio' - | 'fpsUpdateInterval' - | 'inspector' - | 'textureMemory' - | 'textureProcessingTimeLimit' - > ->; + platform: typeof Platform | null; +}; /** * The Renderer Main API @@ -360,7 +346,6 @@ export type PartialRendererMainSettings = Partial< export class RendererMain extends EventEmitter { readonly root: INode; readonly canvas: HTMLCanvasElement; - protected settings: Required; readonly stage: Stage; private inspector: Inspector | null = null; @@ -371,14 +356,17 @@ export class RendererMain extends EventEmitter { * @param target Element ID or HTMLElement to insert the canvas into * @param driver Core Driver to use */ - constructor(settings: RendererMainSettings, target: string | HTMLElement) { + constructor( + settings: Partial, + target: string | HTMLElement, + ) { super(); const resolvedTxSettings = this.resolveTxSettings( settings.textureMemory || {}, ); - const resolvedSettings: Required = { + settings = { appWidth: settings.appWidth || 1920, appHeight: settings.appHeight || 1080, textureMemory: resolvedTxSettings, @@ -393,16 +381,15 @@ export class RendererMain extends EventEmitter { enableContextSpy: settings.enableContextSpy ?? false, forceWebGL2: settings.forceWebGL2 ?? false, inspector: settings.inspector ?? false, - renderEngine: settings.renderEngine, + renderEngine: settings.renderEngine ?? WebGlRenderer, quadBufferSize: settings.quadBufferSize ?? 4 * 1024 * 1024, - fontEngines: settings.fontEngines, + fontEngines: settings.fontEngines ?? [], strictBounds: settings.strictBounds ?? true, textureProcessingTimeLimit: settings.textureProcessingTimeLimit || 10, canvas: settings.canvas || document.createElement('canvas'), createImageBitmapSupport: settings.createImageBitmapSupport || 'full', platform: settings.platform || null, }; - this.settings = resolvedSettings; const { appWidth, @@ -411,7 +398,7 @@ export class RendererMain extends EventEmitter { devicePhysicalPixelRatio, inspector, canvas, - } = resolvedSettings; + } = settings as RendererMainSettings; let platform; if ( @@ -437,26 +424,26 @@ export class RendererMain extends EventEmitter { // Initialize the stage this.stage = new Stage({ - appWidth: this.settings.appWidth, - appHeight: this.settings.appHeight, - boundsMargin: this.settings.boundsMargin, - clearColor: this.settings.clearColor, + appWidth, + appHeight, + boundsMargin: settings.boundsMargin!, + clearColor: settings.clearColor!, canvas: this.canvas, - deviceLogicalPixelRatio: this.settings.deviceLogicalPixelRatio, - devicePhysicalPixelRatio: this.settings.devicePhysicalPixelRatio, - enableContextSpy: this.settings.enableContextSpy, - forceWebGL2: this.settings.forceWebGL2, - fpsUpdateInterval: this.settings.fpsUpdateInterval, - numImageWorkers: this.settings.numImageWorkers, - renderEngine: this.settings.renderEngine, + deviceLogicalPixelRatio, + devicePhysicalPixelRatio, + enableContextSpy: settings.enableContextSpy!, + forceWebGL2: settings.forceWebGL2!, + fpsUpdateInterval: settings.fpsUpdateInterval!, + numImageWorkers: settings.numImageWorkers!, + renderEngine: settings.renderEngine!, textureMemory: resolvedTxSettings, eventBus: this, - quadBufferSize: this.settings.quadBufferSize, - fontEngines: this.settings.fontEngines, - inspector: this.settings.inspector !== false, - strictBounds: this.settings.strictBounds, - textureProcessingTimeLimit: this.settings.textureProcessingTimeLimit, - createImageBitmapSupport: this.settings.createImageBitmapSupport, + quadBufferSize: settings.quadBufferSize!, + fontEngines: settings.fontEngines!, + inspector: settings.inspector!, + strictBounds: settings.strictBounds!, + textureProcessingTimeLimit: settings.textureProcessingTimeLimit!, + createImageBitmapSupport: settings.createImageBitmapSupport!, platform, }); @@ -479,7 +466,7 @@ export class RendererMain extends EventEmitter { // Initialize inspector (if enabled) if (inspector && isProductionEnvironment === false) { - this.inspector = new inspector(canvas, resolvedSettings); + this.inspector = new inspector(canvas, settings as RendererMainSettings); } } @@ -492,7 +479,7 @@ export class RendererMain extends EventEmitter { private resolveTxSettings( textureMemory: Partial, ): TextureMemoryManagerSettings { - const currentTxSettings = this.settings?.textureMemory || {}; + const currentTxSettings = this.stage.options.textureMemory || {}; return { criticalThreshold: @@ -725,57 +712,25 @@ export class RendererMain extends EventEmitter { * * @param options */ - setOptions(options: Partial) { - const allowedOptions: Partial> = {}; - const allowedKeys: (keyof PartialRendererMainSettings)[] = [ - 'appWidth', - 'appHeight', - 'boundsMargin', - 'clearColor', - 'deviceLogicalPixelRatio', - 'devicePhysicalPixelRatio', - 'inspector', - 'fpsUpdateInterval', - 'textureMemory', - 'textureProcessingTimeLimit', - ]; // List of allowed settings - + setOptions(options: Partial) { + const stage = this.stage; if (options.textureMemory !== undefined) { const textureMemory = (options.textureMemory = this.resolveTxSettings( options.textureMemory, )); - this.stage.txMemManager.updateSettings(textureMemory); - this.stage.txMemManager.cleanup(); + stage.txMemManager.updateSettings(textureMemory); + stage.txMemManager.cleanup(); } - for (const key of allowedKeys) { - if (options[key] !== undefined) { - let value = options[key]; - if (key === 'boundsMargin') { - value = Array.isArray(options[key]) - ? options[key] - : [options[key], options[key], options[key], options[key]]; - } - - allowedOptions[key] = value; - } + if (options.boundsMargin !== undefined) { + let bm = options.boundsMargin!; + options.boundsMargin = Array.isArray(bm) ? bm : [bm, bm, bm, bm]; } - this.settings = { - ...this.settings, - ...allowedOptions, - }; - - const updatedSettings = { - ...this.stage.options, - ...allowedOptions, - inspector: this.settings.inspector !== null, - } as Readonly>; - ( - this.stage as unknown as { - options: Readonly>; - } - ).options = updatedSettings; + const stageOptions = stage.options; + for (let key in options) { + stageOptions[key] = options[key]!; + } if (options.inspector !== undefined && !isProductionEnvironment) { if (options.inspector === false) { @@ -785,7 +740,7 @@ export class RendererMain extends EventEmitter { this.inspector === null || this.inspector.constructor !== options.inspector ) { - this.inspector = new options.inspector(this.canvas, this.settings); + this.inspector = new options.inspector(this.canvas, stage.options); this.inspector?.createNodes(this.root as unknown as CoreNode); } } @@ -797,21 +752,21 @@ export class RendererMain extends EventEmitter { options.devicePhysicalPixelRatio !== undefined ) { this.stage.pixelRatio = - this.settings.devicePhysicalPixelRatio * - this.settings.deviceLogicalPixelRatio; + stageOptions.devicePhysicalPixelRatio * + stageOptions.deviceLogicalPixelRatio; this.inspector?.updateViewport( - this.settings.appWidth, - this.settings.appHeight, - this.settings.deviceLogicalPixelRatio, + stageOptions.appWidth, + stageOptions.appHeight, + stageOptions.deviceLogicalPixelRatio, ); needDimensionsUpdate = true; } if (options.appWidth !== undefined || options.appHeight !== undefined) { this.inspector?.updateViewport( - this.settings.appWidth, - this.settings.appHeight, - this.settings.deviceLogicalPixelRatio, + stageOptions.appWidth, + stageOptions.appHeight, + stageOptions.deviceLogicalPixelRatio, ); needDimensionsUpdate = true; } @@ -835,7 +790,7 @@ export class RendererMain extends EventEmitter { appHeight, deviceLogicalPixelRatio, devicePhysicalPixelRatio, - } = this.settings; + } = this.stage.options; const deviceLogicalWidth = appWidth * deviceLogicalPixelRatio; const deviceLogicalHeight = appHeight * deviceLogicalPixelRatio; From cdf998dde574476d861619f8a5fd5d4337b7c56e Mon Sep 17 00:00:00 2001 From: jfboeve Date: Thu, 1 May 2025 11:29:06 +0200 Subject: [PATCH 12/13] added settings getter renderer, fixed txResolver --- src/main-api/Renderer.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main-api/Renderer.ts b/src/main-api/Renderer.ts index a41760e1..42db8f4f 100644 --- a/src/main-api/Renderer.ts +++ b/src/main-api/Renderer.ts @@ -479,7 +479,8 @@ export class RendererMain extends EventEmitter { private resolveTxSettings( textureMemory: Partial, ): TextureMemoryManagerSettings { - const currentTxSettings = this.stage.options.textureMemory || {}; + const currentTxSettings = + (this.stage && this.stage.options.textureMemory) || {}; return { criticalThreshold: @@ -807,4 +808,8 @@ export class RendererMain extends EventEmitter { this.root.height = appHeight; this.stage.updateViewportBounds(); } + + get settings(): Readonly { + return this.stage.options; + } } From 70032193ee4f7d715f2f8436423cb43afa586a0f Mon Sep 17 00:00:00 2001 From: jfboeve Date: Thu, 1 May 2025 15:18:12 +0200 Subject: [PATCH 13/13] fix inspector issue --- src/core/Stage.ts | 10 +++++++--- src/main-api/Renderer.ts | 11 +++++++---- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/src/core/Stage.ts b/src/core/Stage.ts index 218decb8..f962e8bb 100644 --- a/src/core/Stage.ts +++ b/src/core/Stage.ts @@ -59,12 +59,16 @@ import type { Platform } from './platforms/Platform.js'; import type { WebPlatform } from './platforms/web/WebPlatform.js'; import type { RendererMainSettings } from '../main-api/Renderer.js'; -export type StageOptions = RendererMainSettings & { +export type StageOptions = Omit< + RendererMainSettings, + 'inspector' | 'platform' +> & { textureMemory: TextureMemoryManagerSettings; canvas: HTMLCanvasElement | OffscreenCanvas; fpsUpdateInterval: number; eventBus: EventEmitter; platform: Platform | WebPlatform; + inspector: boolean; }; export type StageFpsUpdateHandler = ( @@ -658,7 +662,7 @@ export class Stage { this.root.setUpdateType(UpdateType.RenderBounds | UpdateType.Children); this.root.childUpdateType |= UpdateType.RenderBounds; } - + /** Find all nodes at a given point * @param data */ @@ -718,7 +722,7 @@ export class Stage { props.colorBr ?? props.colorBottom ?? props.colorRight ?? color; let data = {}; - if (this.options.inspector !== false) { + if (this.options.inspector === true) { data = santizeCustomDataMap(props.data ?? {}); } diff --git a/src/main-api/Renderer.ts b/src/main-api/Renderer.ts index 42db8f4f..283479eb 100644 --- a/src/main-api/Renderer.ts +++ b/src/main-api/Renderer.ts @@ -20,7 +20,7 @@ import type { ExtractProps, TextureMap } from '../core/CoreTextureManager.js'; import { EventEmitter } from '../common/EventEmitter.js'; import { isProductionEnvironment } from '../utils.js'; -import { Stage } from '../core/Stage.js'; +import { Stage, type StageOptions } from '../core/Stage.js'; import { CoreNode, type CoreNodeProps } from '../core/CoreNode.js'; import { type CoreTextNodeProps } from '../core/CoreTextNode.js'; import type { INode, INodeProps, ITextNode, ITextNodeProps } from './INode.js'; @@ -440,7 +440,7 @@ export class RendererMain extends EventEmitter { eventBus: this, quadBufferSize: settings.quadBufferSize!, fontEngines: settings.fontEngines!, - inspector: settings.inspector!, + inspector: settings.inspector !== null, strictBounds: settings.strictBounds!, textureProcessingTimeLimit: settings.textureProcessingTimeLimit!, createImageBitmapSupport: settings.createImageBitmapSupport!, @@ -741,7 +741,10 @@ export class RendererMain extends EventEmitter { this.inspector === null || this.inspector.constructor !== options.inspector ) { - this.inspector = new options.inspector(this.canvas, stage.options); + this.inspector = new options.inspector( + this.canvas, + stage.options as unknown as RendererMainSettings, + ); this.inspector?.createNodes(this.root as unknown as CoreNode); } } @@ -809,7 +812,7 @@ export class RendererMain extends EventEmitter { this.stage.updateViewportBounds(); } - get settings(): Readonly { + get settings(): Readonly { return this.stage.options; } }