Bio
Resume
Blog
DMA
Works
Solo projects
Group projects
Science projects
Coding projects
Links
del.icio.us
sixpli
|
Human Pong
This is a little interactive game inspired in the classic game of Pong from the early 70s.
The idea here is to control the raquets with the spatial position of
the human players. Each raquet is controlled by two players, in such a
way that the game has a collaborative component: each player controls
one of the endpoints of the raquet. If the two players go too far away
from each other, then the raquet becames "transparent" and the ball
cannot bounce on it.
This work was done at the cheLA (the Centro
Hipermediático Experimental LatinoAmericano), using the the MLD
system available at CheLA for position tracking.
Thanks to Juan Pablo Ferlat, Paulino Estela and Vanesa Quiroz.
Video (click to
download/play)
Implementation
The game was implemented using Processing,
and involved a server and a client components. The machine running the
MLD hardware would send the (x,y) tracking data over the serial port.
This serial output was read by another machine that converted it into
TCP packets that were then retransmitted over the local network. This
conversion was handled by the MLDServerTCP program. The client
application listened for the packets with the tracking information, and
use them to control de raquets and generate the graphics of the game.
Click on the links below to download the source code of all these
programs:
MLDServerTCP
MLDPong1 (first working
version of the game client)
MLDPong2 (much improved
version the game client, but wasn't tested)
One complication came from the fact that the image was projected from a
side wall, not from the ceiling, so there was a significant distortion.
This distortion was corrected by a glsl shader that compensated the
perspective deformation of the projection.
|