Skin Bone & Blitz

Blitz3D Forums/Blitz3D Programming/Skin Bone & Blitz

Decius(Posted 2004) [#1]
I've heard that the framerate in a game made with Blitz can really drop if you use models that use bones. I want to use a model with around 50 bones that was made using Max CS Biped/Skin and converted using the B3D Pipeline. I want to have many models in the same area at the same time. Is this true, will the framerate really be seriously affected, and what other options are open to me?


Hujiklo(Posted 2004) [#2]
Yes and no - depends how you optimize your code to work.
I'm working on something now that will change the animation 'Step' so that distant bone object skip 'ticks' whilst close ones update smoothly....admittedly only in my head at the mo because I'm doing a lot of textures and building right now but in theory I'm sure it will solve any problems that I may encounter with regards speed and bones.
Halo has written a lot about bones and animations and is just finishing his own engine - so check out some of his older posts for more tips and info....


Ross C(Posted 2004) [#3]
Yeah, the framerate is really affected because the bones transformations are done in software i believe. I've found even loading a boned 3d model and not animated still drops the frame rate, opposed to loading the exact same model without bones. Quite odd i think. But animating it produces another drop in frame rate.


Decius(Posted 2004) [#4]
Well, I thought I could reduce the number of bones significantly, but the bone count is still at 36. With the equipment/attachment bones the count is 47. That's not a huge reduction as someone told me I needed around 20ish.
I can try to reduce more bones, but then you may be sacrificing some realism.

For example, if I take the toes out the characters will run flat footed with no bend in their toes. Also, their toes will probably go through the ground. If I take one spine bone out they will not flex well in the spine. If I
take two finger joints out on each side they will not be able to curl their fingers. Even if I do all of this it will only reduce the count by seven.

I'm open to any suggestions as to how I can rig a character better for a multiplayer game with Blitz!


Gabriel(Posted 2004) [#5]
How close is the camera going to be to the character's toes? Are you really going to be watching the toes in relation to the ground? Sometimes you have to sacrifice realism for playability. Ever played Splinter Cell? In one of the early missions when you're on the streets, avoiding cops, there's a set of steps where your entire foot embeds in each step, but it wasn't enough to stop it getting rave reviews and selling millions.

And I highly recommend coding some sort of system to minimize animation. I'm currently coding an occlusion system which I will combine with an animation system so that any characters which are not rendered are not actually animated, instead just having their animation "emulated" so that they don't exhibit any animation problems if you look away and look back again quickly.


Ruz(Posted 2004) [#6]
just count the toes as one group and use one bone to bend them, you don't need to bend individual toes. same with fingers. Bend them as a group, because generally you are only going to be grasping a weapon of some sort.