   Skeletal Animation LOD
  For a character animation system LOD can be used for 1. mesh (skin) 2. skeletonBut with a different skeleton, the keyframe animations need to be exported for each level.The animation data can be huge, so if it can be reused it could be great.What techniques are available that allow using the same animation data on different skeleton LOD's ?I came across this useful writeup:http://www.cbloom.com/3d/techdocs/skeleton_lod.txt It talks about reordering the bones in the hierarchy. But wouldn't this cause problems when interpolating the key frames (parent space)?   
  You should probably use the same skeleton, and just update it less frequently and less accurately when the character is in low LOD. You'll already have to remap all the vertices for each geomery LOD which i'm not sure you really want to do on a character, maybe two lod's.You could probably also arrange your bones in memory in a clever way so that using an increasing number of the bones in the array increases the level of detail. For instance the first bones are the spine bones, then 4 base limb bones, then 4 lower limb bones, then head, then 4 limb extremeties, then digits. Somehow in shader you'd have to compute what bone to fallback on to if your mapped bone is not present. I'm just thinking out loud.edit: oh snap, if i would have read your whole post, or the article, i would have seen that idea was already suggested.   ;Quote:Original post by bzroomYou should probably use the same skeleton, and just update it less frequently and less accurately when the character is in low LOD. You'll already have to remap all the vertices for each geomery LOD which i'm not sure you really want to do on a character, maybe two lod's.Yes I understand that the skinning has to be redone for each mesh LOD. I'm assuming this is not a big issue with few levels (2 or 3).Also, as you pointed out, Animation LOD (reduced update rates) is also a nice way to reduce processing load.Quote:Original post by bzroomYou could probably also arrange your bones in memory in a clever way so that using an increasing number of the bones in the array increases the level of detail. For instance the first bones are the spine bones, then 4 base limb bones, then 4 lower limb bones, then head, then 4 limb extremeties, then digits. Somehow in shader you'd have to compute what bone to fallback on to if your mapped bone is not present. I'm just thinking out loud.The article I linked mentions shuffling the bones in the hierarchy (if I understood it properly), such that a bone that was lower down the hierarchy could be moved up possibly inverting parent-child relationship.If the animation keys are in object space, then this shuffling will not have any adverse effect.Probably also for keys defined in parent bone space, the shuffling is O.K.But if we are going to do key frame interpolation (this doesn't apply for object space keys as they cant be interpolated without tearing the skeleton apart), the shuffling will definitely mess up the result.