Subscribe to App Update Event

If you would like to execute code for every update loop, you can can subscribe to app update events. By providing a callback function, Kit will execute your callback on every update loop. The event payload has a dt key that represents the time since the last loop. (i.e. delta time)

Warning

This event fires very frequently. A callback with long-running code will block the UI and make the app unresponsive.

import carb.events
import omni.kit.app


update_stream = omni.kit.app.get_app().get_update_event_stream()

def on_update(e: carb.events.IEvent):
    print(f"Update: {e.payload['dt']}")

sub = update_stream.create_subscription_to_pop(on_update, name="My Subscription Name")