Starting deactivated (already sleeping)

Hello. How do you make an object to start deactivated, as in already sleeping until collision?

Right now I’m doing it by adding to each object an “Edit Object” actuator that suspends dynamics when the Engine starts, and another one that restores it at collision time (see .blend file).
I suppose I could simplify it further by deactivating all objects in a single script, but… isn’t there an even simpler way?



starting_deactivated.blend (247 KB)

Unfortunately I haven’t found any better way. Blender doesn’t give python much access to the physics engine (and logic bricks get even less access).

If you make sure ‘no sleeping’ is off the objects will just go to sleep automatically. To reduce physics drain on the FPS you’d have objects in non visible regions have dynamics disabled and restore the dynamics when the player’s about to enter the area.

@Cyborg Dragon
That’s an excellent tip for performance, tho it doesn’t address my question.

@Captain Oblivion
I went through all the Python methods but can’t find anything better than suspendDynamics() vs restoreDynamics(). I suppose it’s all we have for now…