Interactivity (DMA 28), Fall 2009, UCLA
This course is a ten week introduction to the concepts and principles of interactivity. We will discuss what constitutes interactive work and how aesthetic and conceptual concerns can impact interactive design while developing computer programming skills required for creating interactivity.
classroom created by
includes sketches by
Write a program that tells a non-linear story about your robot. The program should show some introductory material to create a background for the story, and require the user to type, click, or somehow interact to control how the story unfolds. Your story should have at least three points asking for, and responding to, user input. You may write your own story, or create an interpretation of a pre-existing one.
Create a new concept that involves ten or more instances of your robot class. Use arrays to organize your code.
Change the structure of your code. Convert your monster to a class and then make two objects from the class. Give each object a different appearance and behavior through parameterization. Have them react and respond to each other, as well as the mouse and/or keyboard.
This exercise has two components: 1) restructure your code to draw your robot by writing your own functions 2) use the mouseX and mouseY variables within your functions to change the way your robot looks as the mouse moves left to right and top to bottom. The goals are to 1) simplify your code to make it easier to read and update and 2) to make the visual and kinetic qualities of your robot smoothly change as the mouse moves to different coordinates of the screen.
Choreograph a new layer of motion into the existing interaction with the mouse and/or keyboard. Think carefully about the quality of the motion. What kinds of motion are appropriate for your robot? Smooth, erratic, dynamic, sluggish, etc.
Give your robot from the last exercise two new carefully designed skins, one that loads and uses images and one that uses shapes in place of the original geometry.
Design interactions for your robot and then realize them with code. Enhance your robot's personality by giving it behaviors. Choreograph the response to input from the mouse and/or keyboard.
Design a robot and then draw it with code.