DisplayXR Runtime v2.4.0
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_waitpacing (#838) - Runtime-side
present_id/present_waitenablement onXR_KHR_vulkan_enable2— Vulkan apps get late-weave with zero app-side code;cube_handle_vk_winmigrated (#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_OPAQUEopaque flip present, default-off (#833, #836)
Fixes
Docs
DXR_D3D_FORCE_GPU/DXR_VK_FORCE_GPUdeclared a supported adapter-selection contract (#845)- Transparency-modes: canonical live/baked × shaped/unshaped vocabulary
Other
- chore(versions): bump runtime pin → v2.3.0