노이즈 플로
천천히 흐르는 연기 · 성운. 에너지가 대비를 올린다.
GLSL 소스
// Domain-warped fbm smoke · nebula. The time offset circles once every 16 beats (seamless). Energy raises the contrast.
vec2 prim(vec2 uv) {
vec2 p = asp(uv) * uParams.x;
float t = uBeat * TAU / 16.0;
vec2 o = vec2(cos(t), sin(t)) * 0.8;
vec2 q = vec2(fbm(p + o), fbm(p + o.yx + 5.2));
float n = fbm(p + 1.7 * q + vec2(1.3, 9.2) + o * 0.5);
float l = smoothstep(0.25, 0.85 - 0.25 * uEnergy, n);
return vec2(l, l * uParams.y);
}
공통 유니폼 계약(uBeat · uBass · uKick …)을 받는 vec2 prim(vec2 uv) 하나입니다. 출력은 luma 와 alpha 뿐입니다.