Commit 0c50c00
committed
fix(transition): dissolve travelling backgrounds instead of butting them together
`background: travel` slid each background locked to its foreground, at the same
distance. The two are opaque full-frame images that tile exactly, so they met
on a line — and a line between two different ambiences is a scene boundary,
which is the one thing this transition exists to avoid. It was clearly visible
whenever consecutive beats had different palettes.
Three changes, each needed for the others to work:
Backgrounds now drift at a fraction of the foreground's distance. That is how
parallax behaves — what is far away moves less — and it makes them overlap
across nearly the whole frame rather than sharing an edge.
They are drawn overscaled by the largest drift either can take. Translating an
opaque image uncovers a strip on the opposite side, and that strip reads as a
hard edge exactly as a join would; the overscale means neither ever exposes one.
The outgoing background stays opaque and the incoming one dissolves over it.
Fading both leaves the frame under-covered wherever only one of them reaches,
which trades the seam for a dark band — measurably worse than the seam it
replaced.
Largest adjacent-column luminance step across the background of
examples/dark-premium.json: 7.74 before, 5.48 after, and what remains sits mid
-frame on a gradient rather than on a layer edge.1 parent 295bf7a commit 0c50c00
1 file changed
Lines changed: 34 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
427 | 427 | | |
428 | 428 | | |
429 | 429 | | |
430 | | - | |
431 | | - | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
432 | 438 | | |
433 | | - | |
434 | | - | |
| 439 | + | |
| 440 | + | |
| 441 | + | |
| 442 | + | |
| 443 | + | |
| 444 | + | |
| 445 | + | |
| 446 | + | |
| 447 | + | |
| 448 | + | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
| 463 | + | |
| 464 | + | |
435 | 465 | | |
436 | 466 | | |
437 | 467 | | |
| |||
0 commit comments