Phase 10 W1: de-noise Mix visualizer, clip to live player-bar height, redraw lava-lamp icon
This commit is contained in:
@@ -855,9 +855,13 @@ void main() {
|
||||
// most effective "this is glass" cue (spec §4f.4).
|
||||
float fresnel = pow(1.0 - max(dot(N, V), 0.0), GLASS_FRESNEL_POWER);
|
||||
|
||||
// Frosted translucency: a subtle noise modulation of alpha so edges read soft/lit
|
||||
// rather than hard — the "frosted glass" cue done in-shader (no CSS blur, §4f.3).
|
||||
float frost = 0.85 + 0.15 * valueNoise(vec2(screenX * 0.05, screenYTop * 0.05));
|
||||
// REMOVED (Phase 10 W1 de-noise, spec §3): the screen-space "frost" alpha noise —
|
||||
// frost = 0.85 + 0.15 * valueNoise(vec2(screenX*0.05, screenYTop*0.05)). It was a
|
||||
// static value-noise keyed to SCREEN coordinates (not the moving fluid), so it sat as
|
||||
// a fixed grainy/dirty film over the whole ribbon — exactly the "static-looking texture
|
||||
// that makes the screen look dirty" Daniel rejected. Alpha is now the clean backdrop
|
||||
// opacity with no grain. (Fluid-tied noise — the bubble swell and the colour-field drift,
|
||||
// both keyed to mix-time — is retained: it moves with the audio and does not read as dirt.)
|
||||
|
||||
// Compose the lit glass colour: field base + warped refraction, lifted by sheen and
|
||||
// a Fresnel rim toward the VIVID moss accent, plus a white-hot specular dot. Using the
|
||||
@@ -867,9 +871,10 @@ void main() {
|
||||
lit = mix(lit, vividAccent * 1.3, fresnel * 0.7); // rim glows vivid moss
|
||||
lit += spec * vec3(1.0); // specular is white light
|
||||
|
||||
// Alpha: the backdrop opacity, lifted at the rim (Fresnel) so edges catch light, and
|
||||
// softened by the frost. Pre-multiplied output for the ONE/ONE_MINUS_SRC_ALPHA blend.
|
||||
float alpha = inside * RIBBON_OPACITY * frost;
|
||||
// Alpha: the backdrop opacity, lifted at the rim (Fresnel) so edges catch light.
|
||||
// (Frost removed — see the de-noise note above.) Pre-multiplied output for the
|
||||
// ONE/ONE_MINUS_SRC_ALPHA blend.
|
||||
float alpha = inside * RIBBON_OPACITY;
|
||||
alpha = clamp(alpha + inside * fresnel * RIBBON_OPACITY * 0.8, 0.0, 1.0);
|
||||
|
||||
fragColor = vec4(lit * alpha, alpha);
|
||||
|
||||
Reference in New Issue
Block a user