scheme works in prefix naming values with define naming procedures with define comments display hello cube idea of a current state colour transform stacks hello spheres recursion procedure which calls itself has to be able to stop row tree audio input textures build-* touch on scenegraph grab/ungrab physics cubes pdata - deform.scm deforming texture coords vertex colours particles making user pdata - velocity magic using the turtle for deforming polygons nurbs blobbies pixelprim parenting interaction firstperson-nonshooter hair project ideas 2.5D texture layering/parallax restrict to b/w (no grey) wireframe/lines/points etc (asteroids) magic spells - puffs/wisps particles formed by voice (harry potter) doodle with (blur 0.001) or (clear-frame 0) z fighting glitches no.space Marloes de Valk - super wide lines - ludicrous perspective settings (clip) pushing and not popping etc camoflage - disguise objects with colour/alpha read osc from pd use the dance mat animate lights rather than objects use scribble/painted textures for a different look (hint-unlit) project animation dvd/vhs during workshop dvd player vhs player? jack music app (and some music) microphone(s) jack+audio input on all machines get usb key Is it possible that software is not like anything else, that it is meant to be discarded: that the whole point is to always see it as a soap bubble? Alan J. Perlis mememe intro... realtime animation abstract animation history cinema/music/painting/sculpture what is realtime animation? I made it up vjing/music visualisation? games? abstract animation controlled by diverse input devices expression, body, muscles, breath (games which do this) why should I write code? visual programming languages not particually "high tech": people who make their own machines/language (artistic sense) artistic programmers/programming artists livecoding toplap manefesto fluxus straight into cubes livecoding running fluxus - load/save scripts about scheme 1958 (lisp) Scheme invented 1975 MIT Artificial Intelligence Laboratory into the repl all about brackets expressions (+ 1 1) (+ 1 (* 2 3)) naming variables (define size 2) abstraction - hiding concepts in named boxes programming is about thinking, not machines: "Programs must be written for people to read, and only incidentally for machines to execute." - Abelson & Sussman, SICP procedures/(functions) (define (square x) (* x x)) hello world (display "hello")(newline) projects dancing cube tree recursion (define (loop n) (display n)(newline) (if (equal? n 0) 0 (loop (- n 1)))) texture coordinates breath controlled particle system mouse game of some sort? simple physics