void DoTimeStep()
{
#if PROFILE
start = Stopwatch.GetTimestamp();
#endif
SpaceObjectBuffer.Update();
EntityStateWriteBuffer.Update();
DeactivationManager.Update();
ForceUpdater.Update();
DuringForcesUpdateables.Update();
BoundingBoxUpdater.Update();
BroadPhase.Update();
BeforeNarrowPhaseUpdateables.Update();
NarrowPhase.Update();
BeforeSolverUpdateables.Update();
Solver.Update();
BeforePositionUpdateUpdateables.Update();
PositionUpdater.Update();
BufferedStates.ReadBuffers.Update();
DeferredEventDispatcher.Update();
EndOfTimeStepUpdateables.Update();
#if PROFILE
end = Stopwatch.GetTimestamp();
#endif
}