This project is read-only.

Low number of animated models

Aug 29, 2008 at 9:16 AM
Edited Aug 29, 2008 at 2:45 PM
I`m using your library and I`m very excited about it. It`s the best animation library so far.
I have a question.
I`ve tried displaying a large number of animated models on a simple plane map, and i cannot display more then 300 of them before i loose performance.
My animated model is a human made out of 1200 vertices and about 20 bones.
If a want to display static models, i get a number of 3000-4000 models before i loose performance, and my computer is quite good. :)
My question is: is this a problem of the way the animation and models are stored or is a mather or algorithms? I mean my algorithms for displaying that many units..
The way i do it is like this: create a class for the animated model(derived from DrawableGameComponent), then create a list of model class instances. On each update and draw from the main game i call the update and draw for every item in the list. The model class has it`s own update and draw methods.

I followed your exampled and used your code there as a start.
I found out that if i don`t start the animation clip, i can render as many models as 2000.

this is your line of code:
// Start the first animation stored in the AnimationClips dictionary
Perhaps it has something to do with this..

Hope i`m not beeing too troll..
Somebody suggested that i should use hardware instancing in order to avoid calling the draw function too many times. Is this possible when using this library?

Sep 2, 2008 at 9:06 AM
Sooo... Nobody tried to render more animated models?
I couldn`t render more then 300-400 simple models. From what i`ve noticed it doesn`t matter how complex the model is, if it`s animated, then after 400 we lose performance. I like this library, and i`m curious to see if it is possible to render a large number of models with it.
I refered to hardware instancing at the advice of the people from xna creators club.