[isaacsim.core.simulation_manager] Isaac Sim Core Simulation Manager#

Version: 1.2.2

The Core Simulation Manager extension provides a set of APIs to control and query the simulation’s state and the different callbacks available.

Enable Extension#

The extension can be enabled (if not already) in one of the following ways:

Define the next entry as an application argument from a terminal.

APP_SCRIPT.(sh|bat) --enable isaacsim.core.simulation_manager

Define the next entry under [dependencies] in an experience (.kit) file or an extension configuration (extension.toml) file.

[dependencies]
"isaacsim.core.simulation_manager" = {}

Open the Window > Extensions menu in a running application instance and search for isaacsim.core.simulation_manager. Then, toggle the enable control button if it is not already active.

API#

Python API#

SimulationManager

This class provide functions that take care of many time-related events such as warm starting simulation in order for the physics data to be retrievable.

IsaacEvents


class SimulationManager#

Bases: object

This class provide functions that take care of many time-related events such as warm starting simulation in order for the physics data to be retrievable. Adding/ removing callback functions that gets triggered with certain events such as a physics step, on post reset, on physics ready..etc.

classmethod assets_loading() bool#

Checks if textures are loaded.

Returns:

True if textures are loading and not done yet, otherwise False.

Return type:

bool

classmethod deregister_callback(callback_id)#
classmethod enable_ccd(
flag: bool,
physics_scene: str = None,
) None#

Enables Continuous Collision Detection (CCD).

Parameters:
  • flag (bool) – enables or disables CCD on the PhysicsScene.

  • physics_scene (str, optional) – physics scene prim path.

Raises:

Exception – If the prim path registered in context doesn’t correspond to a valid prim path currently.

classmethod enable_fabric(enable)#
classmethod enable_fabric_usd_notice_handler(stage_id, flag)#
classmethod enable_gpu_dynamics(
flag: bool,
physics_scene: str = None,
) None#

Enables gpu dynamics pipeline, required for deformables for instance.

Parameters:
  • flag (bool) – enables or disables gpu dynamics on the PhysicsScene. If flag is true, CCD is disabled.

  • physics_scene (str, optional) – physics scene prim path.

Raises:

Exception – If the prim path registered in context doesn’t correspond to a valid prim path currently.

classmethod enable_stablization(
flag: bool,
physics_scene: str = None,
) None#

Enables additional stabilization pass in the solver.

Parameters:
  • flag (bool) – enables or disables stabilization on the PhysicsScene

  • physics_scene (str, optional) – physics scene prim path.

Raises:

Exception – If the prim path registered in context doesn’t correspond to a valid prim path currently.

classmethod enable_usd_notice_handler(flag)#
classmethod get_backend() str#
classmethod get_broadphase_type(
physics_scene: str = None,
) str#

Gets current broadcast phase algorithm type.

Parameters:

physics_scene (str, optional) – physics scene prim path.

Raises:

Exception – If the prim path registered in context doesn’t correspond to a valid prim path currently.

Returns:

Broadcast phase algorithm used.

Return type:

str

classmethod get_default_physics_scene() str#
classmethod get_num_physics_steps()#
classmethod get_physics_dt(physics_scene: str = None) str#

Returns the current physics dt.

Parameters:

physics_scene (str, optional) – physics scene prim path.

Raises:

Exception – If the prim path registered in context doesn’t correspond to a valid prim path currently.

Returns:

physics dt.

Return type:

float

classmethod get_physics_sim_device() str#
classmethod get_physics_sim_view()#
classmethod get_simulation_time()#
classmethod get_solver_type(physics_scene: str = None) str#

Gets current solver type.

Parameters:

physics_scene (str, optional) – physics scene prim path.

Raises:

Exception – If the prim path registered in context doesn’t correspond to a valid prim path currently.

Returns:

solver used for simulation.

Return type:

str

classmethod initialize_physics() None#
classmethod is_ccd_enabled(physics_scene: str = None) bool#

Checks if Continuous Collision Detection (CCD) is enabled.

Parameters:

physics_scene (str, optional) – physics scene prim path.

Raises:

Exception – If the prim path registered in context doesn’t correspond to a valid prim path currently.

Returns:

True if CCD is enabled, otherwise False.

Return type:

bool

classmethod is_fabric_enabled(enable)#
classmethod is_fabric_usd_notice_handler_enabled(stage_id)#
classmethod is_gpu_dynamics_enabled(
physics_scene: str = None,
) bool#

Checks if Gpu Dynamics is enabled.

Parameters:

physics_scene (str, optional) – physics scene prim path.

Raises:

Exception – If the prim path registered in context doesn’t correspond to a valid prim path currently.

Returns:

True if Gpu Dynamics is enabled, otherwise False.

Return type:

bool

classmethod is_paused()#
classmethod is_simulating()#
classmethod is_stablization_enabled(
physics_scene: str = None,
) bool#

Checks if stabilization is enabled.

Parameters:

physics_scene (str, optional) – physics scene prim path.

Raises:

Exception – If the prim path registered in context doesn’t correspond to a valid prim path currently.

Returns:

True if stabilization is enabled, otherwise False.

Return type:

bool

classmethod register_callback(
callback: callable,
event,
order: int = 0,
name: str = None,
)#
classmethod set_backend(val: str) None#
classmethod set_broadphase_type(
val: str,
physics_scene: str = None,
) None#

Broadcast phase algorithm used in simulation.

Parameters:
  • val (str) – type of broadcasting to be used, can be “MBP”.

  • physics_scene (str, optional) – physics scene prim path.

Raises:

Exception – If the prim path registered in context doesn’t correspond to a valid prim path currently.

classmethod set_default_physics_scene(
physics_scene_prim_path: str,
)#
set_physics_dt(
dt: float = 0.016666666666666666,
physics_scene: str = None,
) None#

Sets the physics dt on the physics scene provided.

Parameters:
  • dt (float, optional) – physics dt. Defaults to 1.0/60.0.

  • physics_scene (str, optional) – physics scene prim path. Defaults to first physics scene found in the stage.

Raises:
  • Exception – If the prim path registered in context doesn’t correspond to a valid prim path currently.

  • ValueError – Physics dt must be a >= 0.

  • ValueError – Physics dt must be a <= 1.0.

classmethod set_physics_sim_device(val) None#
classmethod set_solver_type(
solver_type: str,
physics_scene: str = None,
) None#

solver used for simulation.

Parameters:
  • solver_type (str) – can be “TGS” or “PGS”.

  • physics_scene (str, optional) – physics scene prim path.

Raises:

Exception – If the prim path registered in context doesn’t correspond to a valid prim path currently.

classmethod step(render: bool = False)#
class IsaacEvents(
value,
names=None,
*,
module=None,
qualname=None,
type=None,
start=1,
boundary=None,
)#

Bases: Enum

PHYSICS_READY = 'isaac.physics_ready'#
PHYSICS_WARMUP = 'isaac.physics_warmup'#
POST_PHYSICS_STEP = 'isaac.post_physics_step'#
POST_RESET = 'isaac.post_reset'#
PRE_PHYSICS_STEP = 'isaac.pre_physics_step'#
PRIM_DELETION = 'isaac.prim_deletion'#
SIMULATION_VIEW_CREATED = 'isaac.simulation_view_created'#
TIMELINE_STOP = 'isaac.timeline_stop'#