212 MC Term1 2007 week2
From Interactivity
Contents |
Career Paths For Interactive Media
Henry David Thoreau: "It is something to be able to paint a particular picture, or to carve a statue, and so to make a few objects beautiful: but it is far more glorious to carve and paint the very atmosphere and medium through which we look, which morally we can do."
- video game developer
- artist (video, sound, performance)
- interaction designer / interactive designer
- Neiman Marcus - Jeff Han multitouch screen
- corporate events
- museum exhibit designer
- architect
- InteractiveArchitecture.org - resource for interactive architectural projects ]
- Proposal for Museum of Sexuality in London (Fabrica) - of particular note, the "Sillouettes" shadow-based interactive game has some interesting features and simple but effective interactivity
What is Interactivity?
Here we are heavily guided by Unit 1 of the game design textbook Rules of Play (by Salen and Zimmerman) (all non-attributed quotes here are from that Unit of the book)
Many things are interactive - almost everything is, because an action you take on it has some sort of reaction (this is also Newton's 3rd law!). However, not all things are interactive by design. That type of interactivity is called designed interactivity or explicit interactivity, and it is what we are interested in.
Of course, this does not mean that we should ignore "un-designed" or the natural interactivity of things - we should be aware of it with the aim of incorporating it into our work and making it explicit.
- Interactivity generally describes an active relationship between two things.
- Interactivity exists within an understandable system that is a representation of reality, but with its own rules (gravity, physics, people and personalities, history, time/space)
- "...something is interactive when there is a reciprocal relationship between two elements of a system."
- "...relationships between elements in a system are defined through interaction (similar to "the meaning of something is in its use" - Cage/Wittgenstein)
- "Playing a game means making choices within a game system designed to support actions and outcomes in meaningful ways."
- Cyclical - from the perspective of a game player, they take action and cause a reaction, for which they must again take action... and so on. When there are no more actions to take, the game is over. (Some games are never over!)
- "Ineractivity: a cyclical process in which two actors alternatively listen, think, speak." - Chris Crawford (2002), "Understanding Interactivity" pg. 6, San Francisco, No Starch Press
What different forms of Interactivity communicate
Level of User Control
- Passive:
- only loosely or indirectly controlled by the user
- catalyst for movement, complexity
- John Cage's "Purposeful Purposelessness"
- Bob Whitman's Sun
- Active:
- John Cage/ Wittgenstein: "The meaning of something is in its use."
- empower the user
- frustrate them
- Michael Naimark's Banff revisited
Simplicity of Interaction
Does the user understand what they are doing? Should they?
- Simple Interactions
- Simple rules can combine to create complexity over time
- simple rules can stay simple and expose some complex truth or minimalist principal
- John Cage:
- "Nonintention" (the acceptance of silence) leading to nature: renunciation of control: let sounds be sounds. Each activity is centered on itself, i.e. composition, performance, and listening are different activities. (Music is) instantaneous and unpredictable; nothing is accomplished by writing, hearing, or playing a piece of music; our ears are now in excellent condition. A need for poetry. Joyce: "Comedy is the greatest of arts because the joy of comedy is freest from desire or loathing." Affirmation of life. Purposeful purposelessness. -- John Cage, "Introduction to Themes and Variations," the Charles Norton Eliot Lectures, 1988-89: I-VI
- Pong
- ACCESS
- Banff Kinetoscope (Michael Naimark)
- Liquid Time (Camille Utterback)
- Fabrica (Daniel Hirshmann and others - see link for details)
- John Cage:
- Complex Interactions
- user needs to achieve skills; combinations of actions
- gesture-based controls
- object recognition
Basic Elements of Programming
Inspired by and adapted for MaxMSPJitter from the online textbook for programming, the [1] Structure and Interpretation of Programs]
MaxMSPJitter is a useful programming tool that can be broken down into 3 basic mechanisms:
- primitive expressions (ints, floats, symbols): the simplest, most basic entities which Max is concerned with
- means of combining those to make compound expressions (lists, messages)
- means of abstracting and manipulating compound elements
This hints at the most basic of things that Max (or any decent programming language) can deal with: data (stuff) and procedures (ways of dealing with stuff)
In Max, data, or stuff, or "primitive expressions" may be midi note numbers coming into the computer from an attached midi keyboard, like the one sitting in front of you in the lab.
A procedure, or way of dealing with this note data, might be to turn them into sound. In doing so, it may combine note data with velocity data (how hard the key was hit).
Abstraction comes in where we have a group of a few procedures that are each separately responsible for helping us generate the sound. One may select the proper instrument, based on the note data, then forward that instrument on to another which creates a representation of the sound using numbers, then forwards that on to a procedure that actually synthesizes the sound using your computer speakers. In Max, this is accomplished by an object, a patch, or a group of objects/patches/subpatches in a subpatch [p] object.
More About MaxMSPJitter
Types of data
(passed through patch cords)
See the patches for this week for examples!
- Bang! - means "Do it!" and usually triggers output.
- useful objects: trigger, bang (button), messagebox, loadbang, bangbang (b)
- Message
- Any group of integers, floats, and symbols separated by spaces (" ") - but NOT starting with a float or int
- Used to set parameters of an object, or tell it to do something. "set pudding" or "myname 1 2 3" are both messages.
- Useful object: zl, messagebox, pack, pak, unpack, iter, sprintf
- List
- Any group of integers, floats, and symbols separated by spaces (" ") - but STARTING with a float or int
- Useful object: zl, messagebox, pack, pak, unpack, iter, sprintf
- Integer
- A whole number.
- Useful object: int
- Float
- A floating point (decimal) number
- Useful object: float
- Symbol
- A group of letters that may or may not be a word
- Symbols are explicitly surrounded by " " if there are spaces included in
- Useful objects: sprintf, tosymbol, fromsymbol
Possible Pitfalls
Some objects use abbreviations for data types, like [trigger] ( or [t] ) and [route]. Be carefule, these abbreviations differ subtly, sometimes. For instance, you can abreviate and int as "i" in trigger, but you must write it out as "int" using route.
