#ifdef GL_ES
precision mediump float;
#endif
uniform vec2 u_resolution;
uniform vec2 u_mouse;
uniform float u_time;
void main() {
gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
}Testen!
Erzeugen Sie ein Schwarz-Weiß-Feld wie in der Abbildung dargestellt.
Hinweise:
5 Min
Erzeugen Sie ein einfaches Rechteck, das nur über den unteren linken Eckpunkt verändert werden kann.
Hinweis:
step-Funktionen kombinieren
5 Min
Erzeugen Sie ein nun ein vollwertiges Rechteck, bei dem alle Eckpunkte eingestellt werden können (siehe Abb).
Hinweis:
step-Funktion auf unterschiedliche Art und Weise nutzen
5 Min
Erweitern Sie Ihren Code dahingehend, dass mehrere (vollwertige) Rechtecke gezeichnet werden können. Legen Sie dafür bitte auch eine rectangle-Funktion an.
Hinweise:
5 Min
#ifdef GL_ES
precision mediump float;
#endif
uniform vec2 u_resolution;
uniform vec2 u_mouse;
uniform float u_time;
void main() {
vec2 uv = gl_FragCoord.xy / u_resolution - 0.5;
float d = length(uv);
float c = step(d, 0.2);
gl_FragColor = vec4(vec3(c), 0.800);
}Testen!
live
Erweitern Sie Ihren Code dahingehend, dass mehrere Kreise gezeichnet werden können. Legen Sie dafür bitte auch eine circle-Funktion an.
10 Min
sin-Funktion
cos-Funktion
#ifdef GL_ES
precision mediump float;
#endif
uniform vec2 u_resolution;
uniform vec2 u_mouse;
uniform float u_time;
void main() {
vec2 uv = gl_FragCoord.xy / u_resolution;
float y = sin(uv.x * 10.0 + u_time);
float c = step(uv.y, 0.5 + y * 0.1);
gl_FragColor = vec4(vec3(c), 1.0);
}Testen!