Bloom

Hello all,

It's certainly been a busy autumn. I've been doing a lot of lecturing at GameMaker in Arvika, which has been lots of fun, and help me sort out my thoughts concerning my book. I also managed to meet up with Trygve Reenskaug in Oslo to discuss various aspects of Immediate Mode programming, which was great fun.

I have managed to release a new game called Bloom, with much assistance from my girlfriend Madeleine. You can of course play it on hUb.

I wrote in an earlier blog post that I wanted to a 3d-game as my next project. Bloom is not 3d, but I'm still interested in making the move into the new dimension. Some of things that however are deterring my are the added complexity for the user (handling more axes of movement, etc) as well as the complexity of doing anything resembling character animation.

While working at Jungle Peak Studios in 2007, hObbE helped us to develop a really nice animation system called Skeletor, based on a Maya 2007 toolchain. This system was never used for any commercial release, and since them Maya has moved on to newer versions and the exporter hasn't been updated.

It is really frustrating to see how complex something like this can be, both from a content creation point of view (you need to build things in a special way) and from a code point of view (the exporter wasn't trivial to write). It seems to me that to be able to have any large amount of character animation, you need to use some kind of skinning solution (i.e. you have a skeleton of bones that animates the mesh of the character).

Alternatives include skeletal systems with rigid meshes attached to the bones, but this tends to look very mechanical. Also, Quake 3 Arena (as well as Ground Control) used frame-based characters, in which the vertex positions for each frame were stored in the animation. This works, and is simpler than skinning, but tends to cost lots of memory. I know that Quake 3 Arena compressed the floating point coordinates for each vertex into shorts (2 bytes per axis) in order to save RAM.

The animation thing has really been getting me down, because I think that compelling characters / avatars that are animated well are an important part of any game. On the other hand, all characters in Bloom use 2 frames of animation, and that seems to work... Smiling

If anyone has any insight on 3d animation, or is interested in more details on what I've been up to with my business lately, check out http://www.johno.se.

Now go and play Bloom! Smiling
/johno

users avatar

I guess updating the

I guess updating the exporter to 2008 would not be a big thing if it's needed. I think the biggest hassle is that an "open" tool like Maya is used. In these kinds of tools you can animate and create stuff in many many ways and they are actually more geared towards making rendered animations than for games.

This makes the use for games a bit messy creation wise since you have to create the animations in a certain way and code wise relying on specific animation layouts and maybe using strings as mappings. This is all very fragile and easily broken :S

I've been pondering if it would not be more efficient (at least in the long run) to have the animation tools integrated in the game itself. Just like we do with any other editor. It will be a bitch implementing some form of useful editor but with the power of imgui and such it can definitely be done... given time and an inspiring project Sticking out tongue

Proper bones and skinning is also the way to go imho Smiling

users avatar