Creative Coding

btk

Till Nagel

Creative Coding 1 – Sommersemester 2007

Kursinhalt

Dieser Kurs ist eine Einführung in die Programmierung innerhalb eines graphischen Kontextes. Durch Vorlesung, Diskussion und Übungen werden Programmierkenntnisse vermittelt und ein tieferes Verständnis der Möglichkeiten von digitalen und interaktiven Medien gefördert. Zudem wird ein kreativer Umgang mit Software als Material und Werkzeug angeregt.
Als primäre Entwicklungssprache und -umgebung wird Processing verwendet. Der Kurs richtet sich an Studenten ohne Programmiererfahrung, ist aber auch für Studenten mit Vorkenntnissen geeignet.

Achtung: Ersatztermin!

Aufgrund der Präsentationsvorträge fällt dieser Kurs an den nächsten beiden Freitagen aus. Ersatztermin ist am:
Montag, 16.07., 14:15-17:30
Vorlesung: OP, 3.OG
Übungen: C1, EG

Wann & Wo

Freitag, 10:30-13:45
Vorlesung: OP, 3.OG
Übungen: C1, EG

Inhalt

Einführung

Woche 1 – 13.04.
  • Motivation
  • Kursüberblick
  • Einführung Programmierung
  • Algorithmen
  • Sprache & Umgebung
  • Formen 1: Punkte, Linien, Rechtecke, Ellipsen
  • Farben 1: stroke, strokeWidth, fill, noFill
Aufgaben und Zusammenfassung

Variablen & Interaktion

Woche 2 – 20.04.
  • Dynamik 1: setup() und draw()
  • Interaktion 1: mouseX, mouseY
  • Processing-Variablen: width, height, mousePressed
  • Variablen 1: Einführung und primitive Datentypen
  • Ausdrücke: Berechnungen mit Operatoren
Aufgaben und Zusammenfassung

Bedingungen

Woche 3 – 27.04.
  • Bedingungen 1: if, else, boolean
  • Variablen 2: Scope
  • Farbmodelle (RGB, HSB, CYMK)
  • Farben 2: color, Transparenz, colorMode
  • Übungen veröffentlichen
Aufgaben und Zusammenfassung

Schleifen & Dynamik

Woche 4 – 04.05.
  • Schleifen: while
  • Mathe 1: random()
  • Fehleranalyse in Processing
  • Dynamische Formen
  • Prozess: Trial & Error im Entwurf
Aufgaben und Zusammenfassung

Bewegungen 1

Woche 5 – 11.05.
  • Bewegung & Transformation
  • Funktionen 1: Parameter und Rückgabewerte
  • Zufallszahlen, Gleichverteilung, Abweichung
  • Mathe 1: max(), min(), constrain()
  • Style-Guide für Code
Aufgaben und Zusammenfassung

Bewegungen 2

Woche 6 – 25.05.
  • Bewegungen & Kollision
  • Logische Operatoren
  • Interaktion 2: mouseButton, keyPressed, key
  • Processing: Tools & Tipps
  • Organische und mechanische Bewegungen
Aufgaben und Zusammenfassung

Modularität

Woche 7 – 01.06.
  • Modularität & Wiederverwendbarkeit
  • Funktionen 2: Definition
  • Formen 2: triangle(), quad(), arc(), etc.
  • mousePressed(), keyPressed()
  • Farbsymbolik
  • Projekt 1: Besprechung
Aufgaben und Zusammenfassung

Bildbearbeitung

Woche 8 – 08.06.
  • Einführung Bildbearbeitung
  • Image 1: Bilder laden und speichern
  • Farbverläufe
Aufgaben und Zusammenfassung

Bildbearbeitung 2

Woche 9 – 15.06.
  • for-Schleifen
  • Vertiefung Bildbearbeitung
  • Pixelmanipulation
  • Farbmanipulation
  • Pipette und Stempel
Aufgaben und Zusammenfassung

Generatives Design

Woche 10 – 22.06.
  • Wiederholung & Übung
  • Generatives Design
  • Links zu Processing-Projekten
Aufgaben und Zusammenfassung

Arrays

(fällt aus, nicht klausurrelevant)
  • Multiple Werte
  • Arrays 1: Deklaration & Initialiserung
  • Arrays 2: Zugriff und Verwendung mit Schleifen
Aufgaben und Zusammenfassung

Texte und Typographie

Woche 12 – 13.07.
  • Typographie in digitalen Medien
  • Strings: Verwendung und Manipulation
  • Font 1: Schrift laden, Text anzeigen
  • Besprechung: Konzept Abschlussprojekt
Aufgaben und Zusammenfassung

Klausurvorbereitung

Woche 13 – Montag, 16.07.
  • Probeklausur
  • Weiterarbeit am Abschlussprojekt

Abschlussprojekte

Woche 14 – 20.07.
  • Präsentation Abschlussprojekt
Creative Commons Lizenz: Namensnennung-NichtKommerziell-Weitergabe unter gleichen Bedingungen 2.0 (Deutschland)

© 2007 Till Nagel, All rights reserved – Alle Rechte vorbehalten.