Saturday, February 28, 2015

GDC 2015 dance card

Hello. Here's some of my GDC plans. See you blog readers at some of them! Don't be afraid to say hey.
  • MONDAY: I fly-in and arrive in San Francisco.
  • TUESDAY: Level Design In a Day track. I'll be on-duty in the panel all day, then I'm presenting my talk at the very end of the track at 5 PM
  • WEDNESDAY: I'll be spending much of my time at #LostLevels, and then hanging out at the annual Wild Rumpus party. This is pretty much the only time at GDC where I dance; everywhere else, the music is undanceable or the nerds refuse to dance.
  • THURSDAY: I'll probably visit Alcatraz; there's an Ai Weiwei exhibition currently going on. I'm also looking forward to the Adventure Design minitalks later that night.
  • FRIDAY: I'll go to a talk or two maybe? Also might flee Moscone and just take a nice walk around Land's End / Sutro Baths. I guess I'll see what I feel like.

Wednesday, February 25, 2015

Hurt Me Plenty, patched to RC5 + now with Linux build

I've updated my spanking game Hurt Me Plenty to version RC5... by removing the Leap Motion support which seemed to be crashing for certain users. Thanks to all the people who e-mailed me to report the crash / sorry for any inconvenience.

If you want to play the game with a Leap Motion, download version RC4; if you don't have a Leap Motion or you were having problems playing before, then download version RC5.

I also updated the in-game graphics with an actual mouse graphic, so it should also be easier to play / figure out what you're supposed to do. Oh and I finally did a Linux build, it's x86 / x86_64 universal.

Game is available for "pay what you want" here:

Friday, February 20, 2015

Radiator University, Fall 2015 catalog (excerpts)

In this class, we will analyze a variety of escape narratives, from stage magicians to US slave narratives to feminist memoirs to prison break films to the modern war refugee story, to articulate a robust "aesthetic of escape." When is escape possible and honorable, and when is escape futile or cowardly? From this cultural survey, we will conceptualize and construct a real-life "escape room" puzzle installation that attempts to invoke and honor this long and complex tradition of escapism in its materials, environmental storytelling, construction process, and puzzle design. (2 credits, Sao Paulo campus.)
Prerequisites: ARCH 211 History of Prisons, CENG 200 Intro to Plumbing Electrical and HVAC.

Using a combination of 3D scanning, motion capture, and virtual reality technologies, we will literally attempt to recreate a scene from Hamlet on a "holodeck." In doing so, we will also critique the rhetoric of immersion that permeates popular fantasies about virtual reality and narrative, and align it with contemporary interpretations of Hamlet. For instance, in Shakespeare's time, the ghost-revenge plot was already a well-established trope -- thus, one could argue that Hamlet is essentially a self-aware character who knows he is in a cliched video game, and wonders whether he can transcend the military-entertainment complex's demand for graphic violence. (3 credits, Spring semester only.)
Prerequisites: ENGL 314 Elizabethan Literature, HTECH 100 Intro to Holographic Interfaces, at least 1 semester in any Melee Combatives lab.

The Stanford Prison Experiment was a notorious battery of mandated sadism that masqueraded as a scientific exploration of human nature. Using similar terms, we will attempt to build and perform a model "Stanford University" within our existing university, replete with its own facilities, students, faculty, and administrators. In the best case scenario, basic legal and ethical concerns for humane treatment of human test subjects will prevent us from running the experiment at all, thus implying that Stanford University itself is an oppressive institution barely distinguishable from a supposedly artificial and isolated prison. (no-credit pass-nopass only, Fall semester only.)
Prerequisites: CENG 395 Escaping a Room of One's Own

Previous semesters are available here: Fall 2014, Spring 2013

Esteemed alumni: have you recently thought about making a large donation to Radiator University? All donations to...

Wednesday, February 18, 2015

We are drugs; speculative dev tools and psychedelic hologram futures.

This post is adapted from a talk I gave at Indiecade East 2015, where the theater was way too small for the crowd, so not many people got to see the talk... sorry / oh well. Here's basically what I said:

Our story begins on October 8th, 2014, on a very special episode of the Late Show with David Letterman. He was ending that episode with a musical guest from Japan -- a holographic vocaloid named Hatsune Miku. Pay attention to Letterman's barely-veiled incredulity as he introduces her. He can't believe the words coming out of his mouth:

But what really makes this moment is the ending, after the performance. Letterman doesn't even know what to say, and he knows he doesn't know what to say. The experience was completely overwhelming, so Letterman has to somehow pivot back to interpret it for his audience (mostly moms and dads from Milwaukee) and all he can muster is a facile comparison to "being on Willie Nelson's bus." (Willie Nelson, if you're not familiar, is a celebrity notorious for his drug use, among other things.)

The meaning is both clear and agreeable: Hatsune Miku is drugs.

Friday, February 13, 2015

How to make stuff look at stuff / demystifying turns and rotations, and working with quaternions in Unity C#

Julia set fractal thing of a quaternion function... I actually don't really know what that means, but it's pretty.
This is kind of a blog post more for my Unity students, but I figure other people on the internet might find it useful -- let's demystify working with rotations in Unity, and explore some useful techniques for doing so.

There are 2.75 ways to store rotations in Unity: (1) quaternions and (2) euler angles (directional vectors are the 0.5, and some math functions secretly take radians instead of degrees, that's the 0.25)...

Euler angles are the typical 0-360 degree system taught in most junior high / high school geometry classes, while radians are in "units of pi" and represent the curvature of a circle. Then there's quaternions, which are scary 4 dimensional representations of a rotation that you may have never heard of / can barely spell! Fortunately, you don't need to know quaternion math in order to work with rotations, Unity will handle conversions for you.

Okay, so first let's explore a most common problem: how do you make stuff look at stuff in Unity?

Sunday, February 8, 2015

Upcoming talk: "Level Design Histories and Futures" at Level Design In A Day, GDC 2015

I'll be presenting a talk on "Level Design Histories and Futures" at the Level Design In A Day track at GDC 2015, alongside other stuff by Clint Hocking, Joel Burgess, Steve Gaynor, David Pittman, Forrest Dowling, Nels Anderson, Jake Rodkin, Kate Craig, Brendon Chung, and Liz England. It's a huge honor to be associated with these people.

My talk is about level editor histories, the level designer as an industry role, level design as modernist formalism, and what a postmodern sustainable level design practice might look like. I'm kind of serving as the theory-heavy talk this year, right at the end of Tuesday at 5 PM, so I'm going to try to synthesize a lot of the previous talks together and propose some frameworks to digest them... and um I hope I'll see some blog readers there / I hope you'll still be awake at that hour!

If you can't make it to GDC, I'll try to put up the slides afterward, and I'm sure it'll be streamed or recorded or something.

Wednesday, February 4, 2015

Teaching game development... in public!

I remember one time in design school when a guest critic called out my classmate's project, a website to facilitate bartering. The critic balked at the idea of imposing specific procedures on how people should conduct a trade, and he talked about how the parents of Park Slope, Brooklyn shift several million tons of used toys using a very active Yahoo Groups (the class gasped in horror)... sometimes all a user wants is a message board.

So I'm one of those \Blackboard / "enterprise-class courseware learning platform" skeptics. If you've had the good fortune of never having to use one, they look like the image above, usually some really bloated outdated web portal thing with 50 different "learning modules" that 90% of university classes never use unless they're forced by the department.

As an instructor, I don't want to "setup an assignment" by digging through three different layers of menu screens! Sometimes all a user wants is a message board.

This semester, I'm running my game development courses on GitHub, Steam Community, and Tumblr. All three provide some semblance of message board functionality, so they're all suitable for teaching. Here's how I'm doing it: