is there a benefit to reusing bones in game development?


#1

Is it common practice in game development to use a set of default bones throught as many characters as possible, or is each character rigged with it’s own unique bones, and does reusing bones save on memory, much like reusing textures? Thanks in advance.


#2

Forgive me for speaking hypothetically.

There’s little to gain for reusing bones because you’re just going to have multiple instances of them anyways. Even if you were to load it into memory, then just make copies of it for each instance it is used it, with today’s gaming hardware the difference is neglible.

However it is a big time saver on the content creation side of things though. Only if you have multiple models that are similar in size/shape. Furthermore, bones are more useful if you have a physics engine that does animation calcs on the fly. That alone will burden the CPU.


#3

Hey Vertizor, thanks for your response. So you are saying that it is more useful on the content creation side, as opposed to the technical side of it. Ok, just out of curiosity, and learning purposes of coarse. If you had a human skeleton rig of bones, would you take that exact same rig and just scale, and rotate to fit a dog rig, or would you just create a new rig all together? Thanks again!


#4

The skeleton itself can be reused as you said, scaled and adjusted to different body size/shapes. But the “rig” also consists of constraints and possibly vertex weights, “skinning” in other words. That would vary from model to model if they differ greatly. But since you might not have all that many vertices to show muscle deformations it might not matter too much. So basically yes, you could just resize the skeleton to fit the mesh and skin them together.

If you’re just starting out, you could look up info on game model formats such as MD2 (used in Quak2) and MD3 (Quake3). MD2 doesn’t support bones, it uses morphing to do animations, morphs vertices from one frame (pose) to the next. MD3 I think does support bones. You’d still use bones in your 3D app to make the poses and animations, but the bone data is not exported. There are plug-ins in various 3D modelers to export into MD# formats.

The benefit of morphing rather than bones is it’s great for less physics driven animations. Bones could be calculated in real time and then used to deform the mesh. But morphing stores all the vertex positions throughout each frame and just plays them back. A little less CPU intesive for real-time animation. Pick whichever one fits your particular needs at the time. They both can be equally easy/hard to work with.


#5

Thanks Vertizor, i appreciate you sharing your knowledge. I will definetly look into those options. Thanks again!


#6

Good posts.

From a content-creation standpoint, game studios usually have a standard human bone rig that is used again and again for all the humans in a particular game. This saves time for several reasons… no need to re-invent the wheel each time, you can tweak the rig ahead of production time to get out all the kinks, animations can easily be loaded onto multiple characters, since the rig is well-known the limitations of the rig are well-understood, riggers don’t need to spend time fixing problems that arise on multiple different rigs, etc.

It’s best not to alter the rig during production, as it may cut off access to the previous animation assets. But often this does indeed happen because the rig suddenly needs to perform some new trick it wasn’t designed for. So either the animations are re-created for the new rig, or the old assets simply use the old rig, or a tool is developed to copy the animation from the old to the new.

In my experience, creating a quadruped rig usually involves creating a new bone rig from scratch, because the needs are quite different from a biped.

Some more bones info can be found in a search of the Games WIPsection.


#7

Unless you were trying to animate a biped crawling on all fours :smiley:


#8

Hhahaa, I guess you’re right. Although then you’d want the legs to be anchored by the knees… yuck.


#9

This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.