Those designing games for Microsoft's Kinect would do well to befriend Ryan Challinor of Harmonix. More than just an engineer, Challinor describes himself as a "designy coder," and has been knee-deep in Kinect games since 2010's Dance Central, a launch title for the peripheral.
Challinor set the standard for user interface in a Kinect game with that debut effort, with a smooth and natural way of interacting with gestures that scored higher than Microsoft's own games in user tests of the time. In addition to shipping commercial games for the platform, Challinor is also a bedroom Kinect hobbyist, and often conducts experiments of his own away from the office.
We caught Challinor briefly at E3, where he was helping to promote the upcoming Dance Central 3, the third commercial Kinect game he's worked on. Given that we're still seeing Kinect games out there that don't feel entirely refined and tailored to the platform, nearly two years later, we thought we'd mine Challinor's brain for what works, what doesn't work, and where Kinect games might go in the future.
Hide Latency Through Design
Let's face it, latency on the Kinect is unavoidable. Despite what early pie-in-the-sky concept videos may have promised, you'll never achieve true one-to-one interaction in a Kinect game. There's always going to be that inevitable 100 millisecond delay.
Challinor spends a lot of time hiding this delay more through design than brute-force tech. For example, in one mode in Dance Central 3, he's able to trick the player into not noticing the latency so much through a unique method: pulsing imagery over the player's on-screen projection in time to the beat.
"We're showing you large live feeds of yourself while you're dancing, we pulse the image to the beat. That helps reinforce the beat a bit and hide the latency. So that's been successful for us," he says.
One mistake Kinect games still make is not giving the player an immediate on-screen reaction to their gestures, leaving them feeling disconnected with the game. Fortunately just partial feedback -- such as Dance Central's simple swipe effect, can prevent this.
"We learned that it really helped to show an animation start to go, like pulling the ribbon across [in Dance Central's menus]," he says.
Don't Simulate Button Presses
When asked what mistakes he's seeing in Kinect games, Challinor says the biggest offender is those games that simulate button presses: that is, those that look for a gesture to immediately affect what's on screen.
"It's like once you've done the thing, you don't get the immediate feedback that you're connected with what's happening," he says. "It's like if you had to punch and then your character punched, versus if you could see your fists being controlled by your actual fists. That's a really important thing to do."
That's an example of something that doesn't work, but what has Challinor seen that does?
"The things I see games doing that I like is where they'll have you not directly one-to-one map, but have you motion-controlling an animated character, and then once you have that confirmation then it goes into a canned animation," he says.
"That's a tough balance. I think that's a successful approach, though."
The Power of Music
In many ways, Harmonix lucked into the perfect combo with Dance Central, a game the studio was actually prototyping for another camera-based system before the Kinect came along. The dancing mechanic does not require immediate feedback on screen, which does a lot to hide the Kinect's shortcomings, and music itself has a side effect that could be explored by others, he suggests.
"Music is something that happens to the beat, so in that way you have a sort of predictive element to it," he says.
"So that allows you to assume you know what the player's going to do and react to it. And that's a great way to overcome latency, when you have a target in mind versus having no idea what the player's about to do.
"Known unknowns, rather than, um, unknown unknowns," he laughs.
How might developers apply this theory?
"Child of Eden worked really well. Something like that but even more musical, I think that would be an awesome application," he says.
"If you wanted to have shooting, you can't really pull a trigger with Kinect. Those kind of discreet actions, you have that latency there. But like if when your hand is held up, every beat it fires, then that is something that makes a lot of sense. So music buys you a lot there."
Something we've heard more than once from Kinect developers is that you simply can not design a Kinect game like you would a traditional button game.
"You have to break from your mold. You can't really take a game and then put Kinect onto it. You need to start from the simplest interaction, and then build a game on top of this interaction that works. Sort of bottom-up design," he says.
"This is like a totally new world, to make these gesture games. We need to go back to basics. Games are so huge now, but it's like this established thing that we can't really attack with this."