I am looking for concepts on how to manage characters in a 3D game. I am using GLScene and they have a large set of importers which is awesome. Currently I am just using MilkShapes' MS3D format as it supports animation and skeletons. I am not hard presed on any format. I would like it to support skeletal rigging or keyframe animation.

My current Idea is that I can have a list of items and attach them to the bones in the ms3d file (not sure if this is possible as I am at work and haven't had a chance to test it yet)

So for what I am planning on testing tonight is:
I will have my base character which will actually just be torser, legs, and arms.
base_male_human.ms3d

I will then have different heads that I can attach to the bone in base character "bone_head"
male_human_head1.ms3d
male_human_head2.ms3d
male_human_head3.ms3d

I will attach a head to the base on the Bone "bone_head", I assume that it will follow the skeletons animations. I am not even sure if this will work as it is theory at the moment. I plan on testing it when I get home.

If I am missing something, or there is a better way to go about this please reply. Also if there is a better format let me know. I am even thinking about writing my own format that handles multi body peices and animations more easily but I don't want to if there is one that already does.

Thanks,