research weblog of william carter @
division of interactive media
University of Southern California

April 27, 2004

purposefully not writing a title

So I'm figuring out that I don't like trying to glue independently working code together into a uber-program. Essentially, there are 3 or 4 pieces of this puzzle, and I've solved all of them individually. Putting them all together is proving to be more difficult (unsurpisingly).

but it's getting done. I've got the compass talking to the map and the zones correctly, and interpolating between the angles so it's not totally abrupt to shift angles. So it's all synced up and integrating the GPS code should be relatively trivial -- I'd just rather be focusing on the less-tedious elements of this project right now, especially since I have to finish by this weekend sometime to test it out. I'm also still highly dubious that this entire process of integrating the compass data is going to help the experience at all. It's jumpy, which is solved a bit by the interpolation, but that process adds a pretty significant lag. Anyway, it'll get done, but I dread (wryly relish) the thought that I coded all this up for no (tangible) result.

Also this weekend: sound.

Came up with some pretty nice stuff, I think -- mostly based on simple DSP convolution, fourier transforms, and comb filters. I've found that simply piping through the recorded sounds 'as are' into the software creates a sort of auto-dynamics w/ the way I've set the filters up. Will master these tomorrow AM, and then that part should be good to go.

so no new images for now -- think audio.

Posted by will at 01:49 AM

April 13, 2004

compass

spiral.jpg

nodes.jpg

source code

Posted by will at 10:28 AM

April 06, 2004

swamped

last 2 weeks have been annenberg symposium heck. but now that's <> over and I can focus again on my work. First things first.

void process()
{

// week of 4/5
// pick eight zones on campus
// define a radius for each spot (tweakable)
// record eight 15-minute snd pieces at those locations
// test reliability of compass data
// continue writing processing software to run this thing
// ----this would entail rotating the buffer based on user direction
// ----and panning sounds accordingly

// week of 4/12
// write processor for sounds in msp.
// improvise w/ software & pick the best for use
// test memory requirements in java & adjust samples appropriately

// week of 4/17
// finish writing the software to run this thing
// start testing code w/ actual GPS data as opposed to the keyboard
// come up with a nicer interface, visual look
// build the casing (thinking maybe pine)

// week of 4/24
// test and tweak. repeat.
// film, edit

// week of 5/1
// present film
// interactive demo of the keyboard version

}

Posted by will at 12:13 AM

March 09, 2004

konstruktsiia

final.jpg

fyi: when debugging and trying to figure out why stuff is extremely slow, make sure to commment out the sound engine first, before it becomes 3:30 in the morning and you are still really confused.

Posted by will at 09:15 AM | Comments (1)

March 08, 2004

two steps forward...

one.jpg

screen grab of the current, probably final, look of the the game. rules have been modified a little bit, and the goal has been changed: rather than moving yourself somewhere, you have to move a block of a certain color somewhere. Depending on how the level shapes up, this could be really tough, or really easy, or somewhere in between. Most of all, I think it's just fun to watch the instability of the world.

still having minor issues with some what I believe are memory allocation issues in processing. wierd errors, etc. Overall, there are only 2 or 3 known bugs, which isn't all that bad. Should be able to sqish them tomorrow pretty easily as well.

also finally came up with a nice title: konstruktsiia

the term konstruktsiia comes from the russian constructivist architect/designer lakov Chernikhov, who used the word to refer to not only a principle of architectural composition, but also the construction of arguments through assembling sequences of ideas. this is a nice thought in the context of this game, I think -- you must assemble structures and mental maps simultaneously in order to be successful.

Posted by will at 01:11 AM

February 29, 2004

collision

eco2.jpg

hrm. yeah. spent most of today *perfecting* the collision algorithm. the algorithm does work perfectly (thanks to peter), although it's implementation within this project still has maybe 1 or 2 minor bugs. much better though. still working out all the rules and trying to design a few of the different stages, builing up, building down, etc., and trying to decide if I want to have any instructions or not...leaning towards not. the backgrounds work nicely, I think -- just some early russian constructivist stuff, but they definitely fit nicely into the overall look and idea behind this game/puzzle/toy.

Posted by will at 12:51 AM

February 23, 2004

eco-puzzle, another iteration

| | |
| | |
| | |
| | |

Continue reading "eco-puzzle, another iteration"
Posted by will at 07:38 PM

February 21, 2004

view from the top

ePuzzle.jpg

Posted by will at 10:28 AM

February 09, 2004

blocks move too fast. fix that.

enclosed is a midterm design spec for 542. hopefully, these rule sets are pretty clear, and will work well, although I anticipate a bit of tweaking once these are implmented in order to offer the most satisfying experience. also, any comments on how the best way to iterate these rules into different stages -- that is, how best to make each stage a little different, would be nice. some ideas: changing the rule set slightly each stage; decreasing the number of blocks each stage, appling more specific rules to specific colors, and then keep the same rule set each stage, but alter which rules are applied to each color.

Continue reading "blocks move too fast. fix that."
Posted by will at 06:11 PM

February 02, 2004

8 zones / 8 tones

8zones8tones_sketch.jpg


GPS guitar. 8 zones in the landscape mapped to 8 different tones. myraid ways to manipulate those tones. the idea is a GPS device attached to the guitar, which runs to a machine (like to get away w/ a tablet) that parses the GPS data. Once the data is parsed, each gps sample is checked against a set of 8 zones, each of which is mapped to a tone. then, using a bunch of different m1d1 controllers on the 'guitar,' the user can manipulate those tones.

Continue reading "8 zones / 8 tones"
Posted by will at 06:24 PM

more puzzling behavior

boxes2.jpg

oh, and puns!

another iteration. build block environments up: they will move and grow, allowing the player to reach greater heights. still really basic rule sets: if you collide with another block on the x plane, then jump on top of it; if you collide with another block on the y plane, then stay on top. apply gravity. use W to jump, A to move left, and D to move right. You can't use S. But you can use R to reset.

applet


Posted by will at 06:00 PM

January 31, 2004

emergent puzzle, world platform

boxes.jpg

platform for the emergent puzzle. the player-character has been replaced by the mouse in this example, but I will re-integrate it later. this is basically just a test -- I repeat -- just a test. you can use the mouse to move blocks around -- the blocks won't move past each other, and the environment is affected by gravity. next step: working out the rule set, and applying it. coming up with the rules and applying them to blocks will be easy. the hard part will be coming up with some kind of interesting puzzle from all this. (note: there are one or two bugs...small ones, though)

applet + source

Posted by will at 04:35 PM

January 27, 2004

i walk around w/ speakers on my back

so low tech perhaps is an ok way to go for this project.

the ability to perform space would be nice. it would make a good final project for 542/44.

the proposal would go something as follows:

step one: compose sounds

step two: embed sounds to locations around campus (maybe the zml instead). By embed, I mean give each sound 2 pieces of metadata -- an x-coordinate and a y-coordinate. When I enter within a radius of those zones, play one of the sounds.

step three - allow for more complex manipulation of the sounds. Can the sounds interact? Can I manipulate the sounds with gesture? Can running be a gesture? Rate of Speed? Lack of speed? If I just sit there, can the sound fade slowly out?

How can I let other people upload sounds & still access them easily, without too much of a wait. Probably streaming media. But this is not a great solution. Perhaps some type of software that recognizes the x,y metadata so that people can post a file on the internet, I can put the tagged sound in my system, and it will become an instrument. So that way, when you are interfacing with the system, it's more interesting to you as a performer, more interesting and unpredicatble to the audience, allows for a larger scale of interaction (from both parties, composer and audience), and allows the computer/performer to more wholly 'play' the space. So here's what people do: contribute info / sound files to a database. Anyone who wants to (who has the system I build) can download a series of "sound-location sets" which would be grouped somehow, like -- USC campus, or Robert Zemekis Center, or Soho, or Antartica. Etc. They can then insert those files into the system, and be on their merry way, creating sound with their own movement through the environment.

Note: it would be cool to do a performance where you were wearing big speakers, so everyone could hear you. It would be the mobile-geek answer to the ghetto-blaster.

Posted by will at 02:58 PM | Comments (4)

January 26, 2004

outlines / diagrams /timelines

action_outline_midterm.jpg

aye.
this is a brief outline of the type of simple agent-interactions I'd like to achieve. I want to get these down in the next 2-3 weeks, and then debug. After than, I'd like to try and up the complexity ante a little bit, try and evolve the gameplay a little bit.

also see: a quick demo of these possibilities.

Continue reading "outlines / diagrams /timelines"
Posted by will at 11:30 PM | Comments (1)

January 25, 2004

Emergent Puzzle, v.000001

hmm. efforts of first day of trying to build some sort of emergent puzzle. not real emergent behavior right now, but here's the idea: goal is an exit --> you build stuff up, learn the rules of the game to achieve each goal. When you are not moving, the building blocks you might use move and interact with each ohter, hopefully in an emergent way. Right now, the transparencies are awful. In terms of game play, you can float by using the 'w' key, move using 'a' or 's,' and create a new block by using the 'm' key. As it stands right now, you can't really build anything. Hitting a block will simply teleport you to another spot on the board -- when you make a block, it will immediately touch you, and therefore teleport you. Again, I emphasize...this is basically just a little development test, by no means anywhere near what I want to do with this.

Link

Posted by will at 08:55 PM

January 21, 2004

enviro-embedded album

eAlbum.jpg

early stages of the location-embedded album concept. using the W,A,S,D keys (use space or any non-W,A,S,D key to stop player movement), you can move to specific zones within the (test) environment, activating different zones and the resulting album tracks associated w/ that zone (in this case, the album is Chutus Too Narrow by The Shins). Unfortunately, unless you have the jSyn plugin, the audio won't work, so I disabled it for this web version (to limit download time). Up next: crossfade songs as you move throughout zones, so you can tell when you are "exiting" a song. This would be handy if you wanted to keep listening to a certain song -- you would hear a bit of something else creep in, and you would backtrack a little bit. So this album by the band ::tintin:: on my label (Sao Bento Music) is being released soon and I want to try and actually embed it in the environment, hopefully getting some people around campus to test it (and as a result, buy it).

applet

source [.PDE]

Posted by will at 12:10 AM | Comments (2)

January 14, 2004

projects in the works

linked below are the 3+ projects I'm currently thinking of persuing for 542/44. thank you.

Continue reading "projects in the works"
Posted by will at 09:59 PM