Spielplatz
Links GLSL schreiben, rechts zusehen. Es übersetzt beim Tippen, und Fehler zeigen auf die Zeile, die du vor dir hast. Nichts zu installieren, nichts anzumelden — der Link in der Adresszeile hält immer das, was im Feld steht.
Zum ersten Mal hier? Fang bei Lektion 1 an und arbeite dich durch. Jede ist kurz, ändert einen Gedanken und endet mit etwas zum Ausprobieren. Du musst die ganze Datei nicht verstehen, um eine Zahl zu ändern.
Immer da
vec2 u_res— Breite und Höhe in Pixelnfloat u_time— Sekunden seit dem Startvec2 u_mouse— 0..1 über der Fläche, geglättetvec4 color— was du herausschreibst
1 · Space
vec2 uvCentered()vec2 uv01()vec2 mouseCentered()
2 · Soft edges
float pixel(float d)float softEdge(float d, float radius)float circle(vec2 p, float radius)float band(float d, float halfWidth)float smin(float a, float b, float k)
3 · Colour
vec3 palette(float t, vec3 a, vec3 b, vec3 c, vec3 d)vec3 palette(float t)vec3 paletteNTR(float t)
4 · Frequency
float harmonic(float x, int octaves)
5 · Noise
float hash21(vec2 p)float noise(vec2 p)float fbm(vec2 p, int octaves)float fbm(vec2 p)vec2 warp(vec2 p, float amount, float scale)
6 · Symmetry
vec2 rot(vec2 p, float angle)vec2 tile(vec2 p, float count)vec2 mirror(vec2 p)vec2 polar(vec2 p)vec2 kaleido(vec2 p, float n)
7 · Light
float vignette(vec2 p, float radius, float softness)float vignetteFrame(float strength)float occlusion(float density, float strength)vec3 fog(vec3 c, vec3 far, float distance, float density)
Alles davon steht in shader/lib.glsl und wird jedem Shader dieser Seite vorangestellt.