I am in need of a more experienced user's input on a particular issue of having to optimize an engine that's used for multiple platforms.
In all other cases but one, the internal havok code performs well (e.g. the hkpWorld::stepDeltaTime(..) takes around 1 ms ) while on the platform I work with it oscillates wildly between 5 ms and 80 ms. I used a profiler and it seems the problem is related to the collision system (i.e. the hkpContinuousSimulation::collideInternal method tends to occupy 90% of the whole world step). Since this engine has a gigantic code base and considering that on other platforms the Physics performance is pretty much decent, what are a few good place to start investigating for a bottleneck?
As an additional information pertaining to this issue: it can happen that collision queries involving phantoms are really eating up a lot of time. Is there any known/reported issue when such a scenario is likely to occur?