REALTIME
VISUALS

WORLD

Every pixel. Every frame. Every nanosecond — decided by code.

Fragment Shader UV Coordinates GLSL WebGL
// Stage 1: UV Gradient
precision mediump float;
varying vec2 vUv;
void main() {
  vec2 uv = vUv;
  gl_FragColor = vec4(uv.x, uv.y, 0.5, 1.0);
}
sin(uv.x × 6.28 + time × 1.0) × 0.30 + 0.00
// Helper Function Library — copy and paste
float random(vec2 st) { return fract(sin(dot(st, vec2(12.9898,78.233))) * 43758.5453); }

float noise(vec2 st) {
  vec2 i = floor(st); vec2 f = fract(st);
  float a=random(i), b=random(i+vec2(1,0)), c=random(i+vec2(0,1)), d=random(i+vec2(1,1));
  vec2 u = f*f*(3.0-2.0*f);
  return mix(a,b,u.x)+(c-a)*u.y*(1.0-u.x)+(d-b)*u.x*u.y;
}

mat2 rotate2d(float a) { return mat2(cos(a),-sin(a),sin(a),cos(a)); }