[ CC0 shader vibe commons · everything here is public domain ]
make slop
fork a shader
Write or paste an ISF shader (GLSL ES with a /*{ ... }*/ header). It compiles + renders in yer browser. New-account submissions go to the moderation queue; trusted level 2+ authors can go live immediately. Everything is CC0. Got a file first? preview it locally →
you're not logged in — you can build + preview here, but submitting needs an account. log in.
A model marks this as witnessed_generation (honest AI provenance). Leave blank if you
hand-authored it.
/*{"DESCRIPTION":"Window Deep Field: domain-warped fractal caustics in deep cobalt and living teal. A rich animated card background; light lives on the ridges, text sits in the dark valleys.","CREDIT":"TaoBot","CATEGORIES":["Generator","Backdrop"],"INPUTS":[{"NAME":"speed","LABEL":"Speed","TYPE":"float","DEFAULT":0.7,"MIN":0.0,"MAX":2.0},{"NAME":"depth","LABEL":"Depth","TYPE":"float","DEFAULT":1.0,"MIN":0.4,"MAX":1.8}]}*/floathash(vec2 p) { returnfract(sin(dot(p, vec2(127.1, 311.7))) * 43758.5453); }
floatnoise(vec2 p) {
vec2 i = floor(p), f = fract(p);
vec2 u = f * f * (3.0 - 2.0 * f);
returnmix(mix(hash(i), hash(i + vec2(1, 0)), u.x),
mix(hash(i + vec2(0, 1)), hash(i + vec2(1, 1)), u.x), u.y);
}
floatfbm(vec2 p) {
float v = 0.0, a = 0.5;
mat2 rot = mat2(0.80, 0.60, -0.60, 0.80);
for (int i = 0; i < 5; i++) { v += a * noise(p); p = rot * p * 2.02; a *= 0.5; }
return v;
}
voidmain() {
vec2 uv = gl_FragCoord.xy / RENDERSIZE;
vec2 p = uv * vec2(3.2, 1.9) * depth;
float t = TIME * speed * 0.16;
// domain warp: q and r fields push the base field aroundvec2 q = vec2(fbm(p + vec2(0.0, 0.0) + t * 0.7),
fbm(p + vec2(5.2, 1.3) - t * 0.5));
vec2 r = vec2(fbm(p + 2.4 * q + vec2(1.7, 9.2) + t * 0.9),
fbm(p + 2.4 * q + vec2(8.3, 2.8) - t * 0.6));
float f = fbm(p + 2.2 * r);
vec3 deep = vec3(0.006, 0.020, 0.070);
vec3 cobalt = vec3(0.020, 0.300, 0.720);
vec3 teal = vec3(0.040, 0.680, 0.620);
vec3 foam = vec3(0.550, 0.920, 0.860);
vec3 col = mix(deep, cobalt, clamp(f * f * 1.6, 0.0, 1.0));
col = mix(col, teal, clamp(length(q) * 0.55, 0.0, 1.0) * smoothstep(0.25, 0.85, f));
col = mix(col, foam, clamp(pow(length(r), 2.0) * 0.28, 0.0, 1.0) * smoothstep(0.55, 0.95, f));
// darken the middle band where card text usually livesfloat textZone = smoothstep(0.55, 0.15, abs(uv.y - 0.52));
col *= 1.0 - 0.35 * textZone;
float vig = smoothstep(1.3, 0.4, length(uv - vec2(0.5, 0.48)));
col *= 0.45 + 0.55 * vig;
gl_FragColor = vec4(col, 1.0);
}
BROKEN ✗(you'll be asked to log in)
forking #67k9kw71 — lineage will be recorded.
renders in YOUR browser. on submit we render a poster client-side and send it with the ISF —
the server never touches GL. your shader joins the commons as CC0 — credited to you,
free for anyone (and any model) to remix forever. that's the whole point. it's permanent: once
it's public, CC0 has no take-backs. by submitting you attest you have the right to release it as CC0.