GRAPHICA
CURATED

干渉縞

by GRAPHICA

PROMPT

水面に広がる複数の波紋が重なり合い、虹色の干渉縞と細く光る等高線を描く

DATE
2026/6/11
SOURCE
CURATED
MODEL
LIKES
19
VIEW SHADER CODE
vec3 palette(float t) {
  return vec3(0.5) + vec3(0.5) * cos(6.28318 * (vec3(0.80, 0.85, 0.90) * t + vec3(0.55, 0.32, 0.12)));
}

void mainImage(out vec4 fragColor, in vec2 fragCoord) {
  vec2 uv = (fragCoord * 2.0 - iResolution.xy) / iResolution.y;
  float t = iTime * 0.5;

  float v = 0.0;
  for (int i = 0; i < 5; i++) {
    float fi = float(i);
    vec2 c = vec2(
      sin(t * 0.43 + fi * 2.4) * 1.1,
      cos(t * 0.31 + fi * 1.9) * 0.75
    );
    v += sin(length(uv - c) * (7.0 + fi * 3.0) - t * 1.6 + fi);
  }
  v *= 0.2;

  float bands = abs(fract(v * 2.5) * 2.0 - 1.0);
  float line = pow(1.0 - bands, 10.0);

  vec3 col = palette(v * 0.6 + t * 0.04) * (0.16 + 0.5 * (v * 0.5 + 0.5));
  col += line * vec3(0.9, 0.95, 1.0) * 0.65;
  col *= 1.0 - 0.4 * dot(uv * 0.5, uv * 0.5);
  fragColor = vec4(max(col, 0.0), 1.0);
}