Merge p10-w1-renderer-swap into dev (Phase 10 Wave 1: WebGL2 fragment-shader Mix renderer at parity)

This commit is contained in:
daniel-c-harvey
2026-06-15 13:36:01 -04:00
2 changed files with 454 additions and 252 deletions
@@ -8,17 +8,16 @@
overflow: hidden;
}
/* The canvas fills the viewport. The glassy/frosted treatment is a CSS backdrop-blur on this layer
(the ribbon's luminous depth is drawn inside the canvas by the module); together they read as lit
glass moving behind the content rather than a hard chart. */
/* The canvas fills the viewport. All ribbon shading (luminous depth, soft edges) is drawn inside the
canvas by the WebGL2 fragment shader. NO CSS backdrop-filter: it was a confirmed per-frame perf killer
on the Canvas predecessor and is exactly the cost the GPU move exists to eliminate (spec §2, §5.2);
the glass treatment returns in-shader in Wave 3. */
.mix-waveform-canvas {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
display: block;
backdrop-filter: blur(2px);
-webkit-backdrop-filter: blur(2px);
}
/* Zoom slider — a small viewing control pinned to the top-right, clear of the player bar at