I’m working on a research project right now that involves deforming polygonal faces and bodies in real time. It’s strictly low-polygon stuff. I’ve had an itch to work on this sort of thing for years. The idea is to have a few basic controls that allows the user to radically change the appearance of the starting mesh. If you’ve played with the face builder in Oblivion then you have the basic idea, although the models I’m working with have a tiny fraction of the polygons to work with. (A wild guess tells me the Oblivion meshes are 5 to 10 times denser.)
What has shocked me is how easy it turned out to be. I thought I was going to need a lot of logic to manipulate points on a face. This is complex business, and I assumed it would need complex code. It doesn’t. The only real trick is identifying the right points on the mesh. Once you know which points make up the tip of the nose, you can pull them around in different ways to make different noses. It’s so simple it’s stupid. In fact, the surest way to make it work badly is to make the logic too complex. I keep trying to come up with more “intelligent” code that will do more with a face based on calculations, but the results are rarely as realistic as simply moving groups of points along an axis. For example, if you want higher or lower cheekbones, then identifying the “cheekbones” points yanking them down is much more effective than trying to analyze the shape of the cheekbones and re-create that shape using points in the desired location.
In the midst of this project, my wife has sent me this video:
Not realtime, but very, very interesting. I remember an episode of Star Trek: TNG where the ship’s computer reconstructed someone’s face based on a small portion available in a photograph. It seemed far-fetched at the time, but here we have the ability to turn flat photos into moveable 3d shapes, which is half the battle right there. Amazing.
Even allegedly smart people can make life-changing blunders that seem very, very obvious in retrospect.
Best. Plot Twist. Ever.
Few people remember BioWare's Jade Empire, but it had a unique setting and a really well-executed plot twist.
Good Robot Dev Blog
An ongoing series where I work on making a 2D action game from scratch.
Marvel's Civil War
Team Cap or Team Iron Man? More importantly, what basis would you use for making that decision?
id Software Coding Style
When the source code for Doom 3 was released, we got a look at some of the style conventions used by the developers. Here I analyze this style and explain what it all means.