broadphase world stops detecting after 500 units

broadphase world stops detecting after 500 units

Hi

I tried to initialize my broadphase aabb size to 10,000 units:

hkpWorldCinfo info;
info.m_broadPhaseWorldAabb.m_min.set( -10000.0f, -10000.0f, -10000.0f );
info.m_broadPhaseWorldAabb.m_max.setNeg4( info.m_broadPhaseWorldAabb.m_min );

But then havok just stops processing its rigid bodies at 500 units aways from the origin.

Not sure what else to set, also tried setBroadPhaseWorldSize(...) but didn't help.

Thanks in advance.

2 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

Hi mickeyren,

Are you doing this in the demo framework or in your own application? It sounds like the broadphase is getting set to its default size. The broadphase can definitely be larger that 1000 meters (500 in each direction). I did a quick test and this seemed to work fine. Is it possible the info you are creating is not getting set into the hkpWorld that you are using?

I wouldn't necessarily recommend having a broadphase that large. The values in the broadphase are quantized so the farther you go away from the origin the worse performance you are going to get. The large quantized broadphase reduces the accuracy of overlap checks. Plus you definitely would not want to fill that much space with rigid bodies.

Thanks,
Sean

Developer Support Engineer
Havok
www.havok.com

Leave a Comment

Please sign in to add a comment. Not a member? Join today