Skip to content

DisplayXR Runtime v2.4.0

Choose a tag to compare

@github-actions github-actions released this 03 Aug 17:42
· 46 commits to main since this release

Highlights

Default-on late-weave presentation pacing cuts weave-time eye-position latency to ~1 display refresh on every present path (measured 62→17 ms D3D12, 96→17 ms Vulkan, 29→17 ms workspace), backed by a new closed-loop measured-latency feed to the vendor eye predictor (new DP frame-timing ABI slot, append-only) and XR_KHR_vulkan_enable2 support so Vulkan apps get it with zero app-side code. Also in this release: the transparency-modes work — DXR_PRESENT_OPAQUE decoupled presentation and VK frame-stage timing.

Features

  • Late-weave presentation pacing on every in-process path, default-on (opt out with DXR_LATE_WEAVE=0) (#840)
  • Weave-latency harness + late-weave phase 1 (env-gated groundwork) (#834)
  • VK native weave-latency harness + late-weave via present_wait pacing (#838)
  • Runtime-side present_id/present_wait enablement on XR_KHR_vulkan_enable2 — Vulkan apps get late-weave with zero app-side code; cube_handle_vk_win migrated (#841)
  • DP frame-timing slot: measured weave→scanout latency fed back to the vendor eye predictor (append-only ABI slot) (#843)
  • Decoupled presentation: DXR_PRESENT_OPAQUE opaque flip present, default-off (#833, #836)

Fixes

  • perf: frame-stage timing diagnostic + fence-scoped per-frame wait on Vulkan (#837, #844)

Docs

  • DXR_D3D_FORCE_GPU / DXR_VK_FORCE_GPU declared a supported adapter-selection contract (#845)
  • Transparency-modes: canonical live/baked × shaped/unshaped vocabulary

Other

  • chore(versions): bump runtime pin → v2.3.0