Games - Work & Education - Films & Stories - Misc. Programming
About Me - Résumé - Code Samples - Blog - Contact


Sandcastle is a virtual performance piece about a boy and a girl at a beach, each trying to build his and her own sandcastle, only to be thwarted again and again by a large wave. Each of the two performers are wearing head-mounted displays and are holding special devices that track the positions of their hands. Using the head-mounted displays and trackers, the actors' live performances are inserted into the virtual beach.

The piece was created in three weeks as part of the Building Virtual Worlds class. It was very well-received by the class instructors, and was lauded for its simplicity, charm, great interactivity between the performers, and flawless network programming of two head-mounted displays.

Although our final work is very simple and charming, our creative process that brought us there was far from easy. Our original story concept was of a girl on a beach building a magnificent sandcastle and of a boy who comes along, buys the sandcastle from her, and then destroys it. Although the original concept had some interesting subtleties in written form, we found it impossible to convey using our virtual medium. So we threw out our original story and came up with a new story that we could tell using the art assets and programming that had already been done. Because of our limited time remaining, the new story was necessarily very simple, but this proved to be fortuitous because its simplicity is considered to be one of the story's greatest strengths.

As Sandcastle's programmer, the biggest challenge was networking each performer's head-mounted display and tracker system so that the end result looked flawless. Although networking between the two systems had been done a couple times before, it had, according to the instructors, never been done as well as in Sandcastle. The particular moment that really impressed people was at the very end when the two characters exchange a high-five.

Credits: myself (programming, original story concept), Jan Stec (Boy, sound design, music), Xiaoxi "Cici" Liu (Girl, texture art), Craig Yoho (models & animation)