Render through a desynchronized WebGL context by default
Measured click-to-paint was 72-77 ms, of which the editor itself spends under 4 ms; the rest is the finished frame waiting in the compositor queue. A desynchronized context bypasses it (16-18 ms in the same probe). Pixi has no option for it, so main.ts builds the WebGL2 context itself. The mode may tear on some drivers; ?vsync falls back to Pixi's own context. __gm.lowLatency() reports the attributes the browser actually granted, and a graph-step check pins that the mode stays on. Also adds the todo note graph-node-collapse-width. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
13852fe4b2
commit
0dcb3b4432
5 files changed
+30
-2
No files matched your search
@@ -253,6 +253,10 @@ export async function graph(t) {
|
||||
// Graph while playing shows the live highlight: hold ArrowRight → the exec edge is hot.
|
||||
const fpsEdit = await evaluate('__gm.fps()');
|
||||
check('fps readout is measured in edit mode', typeof fpsEdit === 'number' && fpsEdit > 0, `fps=${fpsEdit}`);
|
||||
check(
|
||||
'the canvas bypasses the compositor queue by default',
|
||||
(await evaluate('__gm.lowLatency()')) === true,
|
||||
);
|
||||
// Single evaluate: the readout refreshes twice a second, so read value and label together.
|
||||
check(
|
||||
'fps label is visible in the toolbar',
|
||||
|
||||
Reference in new issue
Block a user