Defined in omni/kit/KitUpdateOrder.h

enum omni::kit::update::UpdateOrdering

Ordering of events within a omni::kit::RunLoop::update event loop.


enumerator eCheckForHydraRenderComplete

Checks for HydraEngine::render completion on GPU.

  1. Pushes StageRenderingEvent::NewFrame

  2. Triggers renderingEventStream::pump

enumerator eUsdTimelineStateRefresh

Applies pending Timeline state changes.

enumerator ePythonAsyncFutureBeginUpdate

asyncio.Future blocked awaiting (update loop begin)

  1. IApp.next_pre_update_async

  2. UsdContext.next_frame_async / next_usd_async

enumerator ePythonExecBeginUpdate

Enables execution of all python blocked by ePythonAsyncFutureBeginUpdate.

Enable python execution blocked awaiting UsdContext::RenderingEventStream::Pump()

enumerator eOmniClientUpdate

Run OmniClient after python but before main simulation.

enumerator eUsdTimelineUpdate

ITimeline wants to execute before eUsdContextUpdate.

enumerator eUsdContextUpdate

Core UsdUpdate execution.

  1. Update liveModeUpdate listeners

  2. triggers stageEventStream::pump

  3. MaterialWatcher::update

  4. IHydraEngine::setTime

  5. triggers IUsdStageUpdate::pump (see IUsdStageEventOrdering below)

  6. AudioManager::update

enumerator eUnspecifiedUpdateOrder

Default update order value.


extras::SettingWrapper is hardcoded to carb::events::kDefaultOrder which means this is when during the main update cycle, event listeners for settings changes events will fire. There are a minimum of 60+ unique setting subscription listeners in a default kit session.

enumerator eUIRendering

Trigger UI/ImGui Drawing.

enumerator eFabricFlush

Fabric Flush after eUsdContextUpdate.

enumerator eHydraRendering

Triggers HydraEngine::render.

enumerator ePythonAsyncFutureEndUpdate

asyncio.Future blocked awaiting (update loop end)

  1. IApp.next_update_async (legacy)

enumerator ePythonExecEndUpdate

Enables execution of all python blocked by ePythonAsyncFutureEndUpdate and awaiting UsdContext::StageEventStream::Pump.