Thursday started all light and fluffy, after my steak and eggs at Mel’s and my Asteroids fix. I’m still irked that Prof. Fleming bested my score on Asteroids. I have to correct that. The first session of the day was a postmortem, Class Game Postmortem – X-COM: UFO Defense, by Julian Gollop, now of Gollop Games, but originally with his brother, Nick, at Mythos Games. Postmortems are usually rather dry, but Julian did a good job not only of describing what went well and what went poorly with the development and design process, but he also gave a great summary of the history of the title, it’s evolution over time, and its present state. Very neat. It seems that the Game Development industry is beginning to realize that it needs to embrace and preserve its history before it starts to slip away from them. Space science found itself in this same situation not too long ago, except we waited way too long and nearly lost the Pioneer data to the mists of time, and other datasets were lost. Thankfully, there appears to be a pretty strong movement with in GameDev to preserve its history, its stories, it’s vintage hardware, and its classic games and software. Good game play never gets old, which is quite evident by the line that always forms around the Asteroids and Mortal Combat games.
The big new take-away for me for the week, outside of the mathematics and physics insights mentioned in previous posts, is the growing utility of HTML5 as a gaming platform. There are an increasing number of utilities to assist game development for HTML5 including the wonderful little 2D physics engine Box2D. Those of you in the GameDev program at JCCC will be happy to know that Unity and GameMaker have HTML5 exporters! There are a number of games already on the next using this tech, including the Mars Curiosity games and interactives I mentioned in yesterday’s post.
In between sessions, I did manage to cruise through the Expo Hall again. The crowds on the floor this year are insane! I still didn’t find anything super awesome, but there are a number of interesting tidbits. LED flashlights seem to be the thing this year, so I got a small red LED light for the observatory and a few white light ones. There were more decks of playing cards being offered. How can I refuse playing cards? I can’t, nor can I refuse poker chips of which there were several styles as well. I’ll continue to look for more today.
I did manage to squeeze in another physics-related session in the afternoon, and yes, there was more talk about collision detection and resolution, optimizing AABB broad-phase checks, and ways to mitigate tunneling and other undesirable effects resulting from high angular velocities. The solution was staggeringly simple, clamp the angular velocity to a maximum value. Of course, this grates on my sensibilities with my background in computational physics since it results in a non-physical limitation to the simulation, but it’s a great solution for game physics. The talk, GPU Rigid Body Simulation, by Erwin Coumans of Bullet Physics (yes, it’s free), also gave me more insight to the usefulness of quaterions. Not only are quaterions useful for affecting rotations, but it’s also useful for representing rotational position in a far more compact way. I feel a major rewrite of the PHYS 191 course coming.
The day ended with a great meal with some great folk. A few of the folks I’ve met through IndyCar and Twitter live here in San Francisco, so we got together last night to share great food and great conversation. Two members of our quartet had spent a couple weeks down in Florida to see the 12 Hours of Sebring, an Atlas V rocket launch, and the IZOD IndyCar Series season-opener at St. Petersburg, so they had plenty of stories to share. It was a wonderful evening of rocket ships and race cars. Seriously, does it get any better?? No. No it doesn’t.