Simulation Islands |
This section explains the concept of simulation islands.
Note |
---|
This information is only relevant for advanced users. In general, it is not needed to deal with simulation islands directly and users can safely ignore this simulation detail. |
In each frame the simulation creates different batches of bodies and constraints that can be simulated independently. Such a batch is called SimulationIsland. Every time rigid bodies can influence each other via constraints (contacts or joints), they belong to the same island.
Islands can only sleep as a whole. It is not possible that some bodies in an island are sleeping and others are awake. If one object is awake, all objects are awake because the movement of the active body can propagate to the other bodies. In unfortunate configurations a jittering body can keep a whole island awake.
Static or kinematic rigid bodies are not managed in islands. They are not part of another island and they are not in their own island. Islands only contain dynamic rigid bodies. (But constraints between dynamic and non-dynamic bodies are managed in the islands.)
Simulation islands can be accessed via the IslandManager property of the Simulation.