Ein kompaktes Tutorial für den Einstieg in die kreative Programmierung
Basierend auf dem Tutorial von Layla Quiñones und Jaleesa Trapp
In diesem Tutorial lernst du die Grundlagen von p5.js kennen und erstellst deine erste interaktive Grafik. Du wirst lernen:
Wie du ein Canvas erstellst und seine Größe anpasst
Wie du Formen zeichnest und mit Farben arbeitest
Wie du Text und Emojis hinzufügst
Wie du deine Grafik mit der Maus interaktiv machst
Voraussetzungen: Du solltest bereits den p5.js Web Editor nutzen können oder p5.js in VS Code eingerichtet haben.
Öffne den p5.js Web Editor und gib deinem Projekt einen Namen. Klicke dazu auf "My Sketch" oben links und gib einen aussagekräftigen Namen ein, zum Beispiel "Meine erste Grafik".
Speichere deine Arbeit regelmäßig! Im Web Editor wird automatisch gespeichert, aber es ist trotzdem gut, dir anzugewöhnen, Projekte zu benennen und zu organisieren.
Das Canvas ist die Zeichenfläche, auf der deine Grafik erscheint. Standardmäßig ist es 400×400 Pixel groß. Lass uns die Größe auf 600×400 Pixel ändern:
function setup() {
createCanvas(600, 400);
}
function draw() {
background(220);
}
Zur Erklärung:
Alles was in der setup()-"Funktion" steht, wird nur beim Start des Programms ausgeführt.
Alles was in der draw()-"Funktion", wird 60 Mal pro Sekunde ausgeführt.
Kommentare helfen dir und anderen, deinen Code zu verstehen. Sie werden vom Computer ignoriert und sind nur für Menschen lesbar. In JavaScript nutzt du // für einzeilige Kommentare:
function setup() {
// Eine 600 Pixel breite und 400 Pixel hohe Zeichenfläche erstellen
createCanvas(600, 400);
}
function draw() {
background(220); // Der Hintergrund soll den Farbwert 220 (Grau) haben
}
Mit den Farbangaben werden wir uns gleich beschäftigen.
Nutze Kommentare, um zu erklären warum du etwas tust, nicht nur was du tust. Gute Kommentare machen deinen Code übersichtlicher!
Die background()-Funktion setzt die Hintergrundfarbe. Du kannst Farben auf verschiedene Arten angeben:
RGB-Farben
Bei RGB-Farben wird die resultierende Farbe aus den drei Farben Rot (R), Grün (G) und Blau (B) gemischt. Der Anteil jeder dieser drei Farben wird durch einen Zahlenwert zwischen 0 und 255 angegeben:
Die Farbe (0, 0, 0) ist schwarz - von allen drei Farben keine Anteile
Die Farbe (255, 255, 255) ist weiß - von allen drei Farben jeweils alle, also 255 Anteile.
Himmelblau (135, 206, 235) ist eine Mischung aus Rot, Grün und Blau.
function setup() {
// Erstelle eine 600 Pixel breite und 400 Pixel hohe Zeichenfläche
createCanvas(600, 400);
}
function draw() {
// Der Hintergrund soll himmelblau sein
background(135, 206, 235);
}
Hinweis: Bei Grautönen sind alle drei Farbenwerte gleich, beispielsweise (220, 220, 220) für Hellgrau. Anstatt background(220, 220, 220) kannst du dann auch background(220) schreiben.
background('skyblue'); // Himmelblau
background('red'); // Rot
background('green'); // Grün
background('tomato'); // Tomatenrot
Die Farbnamen kann man zum Beispiel auf W3Schools finden!
Variiere die Farbwerte in der background()-Funktion und beobachte die Veränderung.
Mit welchen Farbwerten kann man Gelb erzeugen?
Finde ausgefallene Farbnamen und setze sie in der background()-Funktion.
Lass uns einen Kreis zeichnen! Die circle()-Funktion benötigt drei Werte: x-Position, y-Position und Durchmesser.
function setup() {
createCanvas(600, 400);
}
function draw() {
background(135, 206, 235);
// Zeichne einen Kreis bei (300, 200) mit 100 Pixel Durchmesser
circle(300, 200, 100);
}
Das Koordinatensystem
Jeden der Punkte (Pixel) auf der Zeichenfläche (Canvas) kann man durch zwei Koordinaten beschreiben: x und y. x gibt die waagerechte Position an (rechts/links), y die vertikale Position (hoch/tief).
Achtung: Entgegen dem Mathematikunterricht wächst die y-Koordinate hier nach unten.
Weitere nützliche Form-Funktionen:
rect(x, y, breite, höhe) - Rechteck
triangle(x1,y1,x2,y2,x3,y3) - Dreieck mit den Eckpunkten
ellipse(x, y, breite, höhe) - Ellipse
line(x1, y1, x2, y2) - Linie
point(x, y) - Punkt
Zeichne ein Rechteck mit der rect(x,y,breite,höhe)-Funktion, variiere die Position und die Größe.
Zeichne ein Dreieck mit der triangle(x1,y1,x2,y2,x3,y3)-Funktion, variiere die Position und die Größe.
Zeichne eine Ellipse mit der ellipse(x,y,breite,höhe)-Funktion, variiere die Position und die Größe.
Zeichne eine Linie mit der line(x1,y1,x2,y2)-Funktion, variiere die Position und die Größe.
Mit fill(farbe) kannst du die Füllfarbe einer Form ändern, mit stroke(farbe) die Randfarbe und mit strokeWeight(dicke) die Randdicke: