[isaacsim.simulation_app] Isaac Sim Kit Helpers#
Version: 2.4.2
This Extension that provides a way to launch a python app
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.simulation_app
Define the next entry under [dependencies]
in an experience (.kit
) file or an extension configuration (extension.toml
) file.
[dependencies]
"isaacsim.simulation_app" = {}
Open the Window > Extensions menu in a running application instance and search for isaacsim.simulation_app
.
Then, toggle the enable control button if it is not already active.
API#
Python API#
Helper class to launch Omniverse Toolkit. |
|
Minimal omniverse application that launches without any application config |
- class SimulationApp(launch_config: dict | None = None, experience: str = '')#
Bases:
object
Helper class to launch Omniverse Toolkit.
Omniverse loads various plugins at runtime which cannot be imported unless the Toolkit is already running. Thus, it is necessary to launch the Toolkit first from your python application and then import everything else.
Usage:
# At top of your application from isaacsim.simulation_app import SimulationApp config = { width: "1280", height: "720", headless: False, } simulation_app = SimulationApp(config) # Rest of the code follows ... simulation_app.close()
Note
The settings in
DEFAULT_LAUNCHER_CONFIG
are overwritten by those inconfig
.- Parameters:
config (dict) – A dictionary containing the configuration for the app. (default: None)
experience (str) – Path to the application config loaded by the launcher (default: “”, will load apps/isaacsim.kit if left blank)
- DEFAULT_LAUNCHER_CONFIG = {'active_gpu': None, 'anti_aliasing': 3, 'create_new_stage': True, 'denoiser': True, 'display_options': 3094, 'extra_args': [], 'fast_shutdown': True, 'headless': True, 'height': 720, 'hide_ui': None, 'max_bounces': 4, 'max_gpu_count': None, 'max_specular_transmission_bounces': 6, 'max_volume_bounces': 4, 'multi_gpu': True, 'open_usd': None, 'physics_gpu': 0, 'profiler_backend': [], 'renderer': 'RaytracedLighting', 'samples_per_pixel_per_frame': 64, 'subdiv_refinement_level': 0, 'sync_loads': True, 'width': 1280, 'window_height': 900, 'window_width': 1440}#
The config variable is a dictionary containing the following entries
- Parameters:
headless (bool) – Disable window creation and UI when running. Defaults to True
hide_ui (bool) – Hide UI when running to improve performance, when headless is set to true, the UI is hidden, set to false to override this behavior when live streaming. Defaults to None
active_gpu (int) – Specify the GPU to use when running, set to None to use default value which is usually the first gpu, default is None
physics_gpu (int) – Specify the GPU to use when running physics simulation. Defaults to 0 (first GPU).
multi_gpu (bool) – Set to true to enable Multi GPU support, Defaults to true
max_gpu_count (int) – Maximum number of GPUs to use, Defaults to None which will use all available
sync_loads (bool) – When enabled, will pause rendering until all assets are loaded. Defaults to True
width (int) – Width of the viewport and generated images. Defaults to 1280
height (int) – Height of the viewport and generated images. Defaults to 720
window_width (int) – Width of the application window, independent of viewport, defaults to 1440,
window_height (int) – Height of the application window, independent of viewport, defaults to 900,
display_options (int) – used to specify whats visible in the stage by default. Defaults to 3094 so extra objects do not appear in synthetic data. 3286 is another good default, used for the regular isaac-sim editor experience
subdiv_refinement_level (int) – Number of subdivisons to perform on supported geometry. Defaults to 0
renderer (str) – Rendering mode, can be RaytracedLighting or PathTracing. Defaults to PathTracing
anti_aliasing (int) – Antialiasing mode, 0: Disabled, 1: TAA, 2: FXAA, 3: DLSS, 4:RTXAA
samples_per_pixel_per_frame (int) – The number of samples to render per frame, increase for improved quality, used for PathTracing only. Defaults to 64
denoiser (bool) – Enable this to use AI denoising to improve image quality, used for PathTracing only. Defaults to True
max_bounces (int) – Maximum number of bounces, used for PathTracing only. Defaults to 4
max_specular_transmission_bounces (int) – Maximum number of bounces for specular or transmission, used for PathTracing only. Defaults to 6
max_volume_bounces (int) – Maximum number of bounces for volumetric materials, used for PathTracing only. Defaults to 4
open_usd (str) – This is the name of the usd to open when the app starts. It will not be saved over. Default is None and an empty stage is created on startup.
fast_shutdown (bool) – True to exit process immediately, false to shutdown each extension. If running in a jupyter notebook this is forced to false.
profiler_backend (list) – List of profiler backends to enable currently only supports the following backends: [“tracy”, “nvtx”]
create_new_stage (bool) – Set False to not create a new stage on application startup. Defaults to True
extra_args – (list): List of extra command line arguments to pass down to the kit process
- update() None #
Convenience function to step the application forward one frame
- set_setting(setting: str, value) None #
Set a carbonite setting
- Parameters:
setting (str) – carb setting path
value – value to set the setting to, type is used to properly set the setting.
- reset_render_settings()#
Reset render settings to those in config.
Note
This should be used in case a new stage is opened and the desired config needs to be re-applied.
- close(wait_for_replicator=True) None #
Close the running Omniverse Toolkit.
- is_running() bool #
bool: convenience function to see if app is running. True if running, False otherwise
- is_exiting() bool #
bool: True if close() was called previously, False otherwise
- property app: omni.kit.app.IApp#
omniverse kit application object
- Type:
omni.kit.app.IApp
- property context: omni.usd.UsdContext#
the current USD context
- Type:
omni.usd.UsdContext
- class AppFramework(name: str = 'kit', argv=[])#
Bases:
object
Minimal omniverse application that launches without any application config
- update() None #
Convenience function to step the application forward one frame
- close()#
Close the running Omniverse Toolkit.
- property app: omni.kit.app.IApp#
omniverse kit application object
- Type:
omni.kit.app.IApp
- property framework: Any#
omniverse kit application object
- Type:
omni.kit.app.IApp