Creative Coding for Interactive Art
Lecture notes and [resources] for the courses I teach
at the ITPMA M.A. @UNATC.
Permanent work-in-progress. See my [musings] on what it’s all about.
Fundamentals
Building up a set of skills and tools to start your creative coding practice.
Processing & p5js | Bitsy & PICO-8 | Extensions | Python | |||||||
---|---|---|---|---|---|---|---|---|---|---|
Intro to CC for IA | slides | Intro to Game Dev | slides | Visualization | Practical Python | slides | ||||
Basics | slides | Bitsy and variables | slides | Sound | More Python | slides | ||||
Finite State Machines | slides | PICO-8 and FSMs | slides | Physical computing | slides | [TouchDesigner and Python] | ||||
Loops | slides | Functions | slides | Feeds, APIs, Node.js | slides | |||||
Arrays | slides | Loops | slides | Advanced OOP | slides | |||||
Functions | slides | Arrays / Tables | slides | |||||||
Objects | slides | Objects / Metatables | slides |
Real-time systems
Prototyping interactive systems with dataflow languages and game engines. The focus is on nimble, experimental iteration.
Visual programming | Game engines | |||
---|---|---|---|---|
[Intro to real-time systems] | slides | Debugging and version control | slides | |
[Data and signal flow] | slides | [From Processing to Unity] | slides | |
[Control] | slides | [OSC in Unity] | ||
OSC and Node in Max | slides | Procedural audio in Unity | slides | |
Signal analysis | slides | |||
Generative processes | slides |
Machine learning
Creating rich mappings and outputs using interactive and deep machine learning.
Wekinator | Code | Deep learning | ||||||
---|---|---|---|---|---|---|---|---|
Intro to ML for IA | slides | ml5.js: transfer learning | slides | VAEs | ||||
Classification. kNNs | slides | Python: numpy, scikit.learn | colab | GANs: datasets & training | slides | |||
Regression. Neural nets | slides | PyTorch and fast.ai | ipynb | [GANs: interactive inference] | slides | |||
Temporal modelling | slides | PyTorch: training and editing networks | RNN&co: text | slides | ||||
Unsupervised learning | slides | RNN&co: music | slides |
Interactive music systems
Tools and techniques dealing with sounds and events in time.
Max for Live | Live coding | Reactive programming | ||||||
---|---|---|---|---|---|---|---|---|
Intro to IMS | slides | SuperCollider | slides | Live electronics | ||||
Interactive devices | slides | Sonic Pi | Antescofo basics | slides | ||||
The M4L API | slides | TidalCycles | Advanced Antescofo | slides | ||||
Interactive spatialisation | slides | Real-time RNN music |