[ODE] Slow performence in a given scene - optimizable, or "just how it is"?

Megan Fox shalinor at gmail.com
Fri Nov 4 15:15:34 MST 2005


Hrm... surprising results - I'd always though the total number of
calls was larger than the number that actually go through.

Profiling says that, yes, in the "bad" collision case, the total
number of calls to my collision callback more than double.  However,
that's still only, in this case, 246 calls, as compared to 145 in the
"better" case.  These numbers seem a lot smaller than what I thought
it would take to bring the system down.


Does this seem right?  Is 246 collision callback calls, with a
stepsize of 0.016 and 5 quickstep iters, in a world with very, very
few actual dynamics objects (9 physical bodies total) enough to bring
the system down like this?  Or am I seeing a problem elsewhere?

(this is on an Athlon 64 2800+ - and the bad case is enough to bring
me down to unplayably jumpy FPS)

On 11/3/05, Jon Watte (ODE) <hplus-ode at mindcontrol.org> wrote:
>
> My first instinct would be to bake the collision of all static things
> into a single static mesh (or a few, block-sized, static meshes).
>
> Another thing you can do is to add profiling code to count how many
> near-callbacks you get, and store information about what attempts to
> collide with what, and plot that. That should show you some spikes.
>
> Characters and other complex systems should probably be in their own
> spaces (spaces can be hierarchical), so that they can be quickly culled
> when not colliding with other entities.
>
> Last, I would absolutely use a profiler to figure out where the most of
> the time is being spent. That would also guide me into making whatever
> optimizations necessary.
>
> Cheers,
>
>                        / h+
>
>
> Megan Fox wrote:
> > Alright, I'm coming up against a performence problem in a semi-dense
> > scene.  Semi-dense because, while there are a lot of objects in the
> > world, it really isn't all that "dense"... it's just a desert with
> > rocks and a single building.  I'm trying to determine if this is
> > expected/normal, or if I can bail myself out in some fashion.
>
>


--
-Megan Fox
Lead Developer, Elium Project
http://www.elium.tk




More information about the ODE mailing list