OpenXR extension headers for 3D-display runtimes. Auto-published from displayxr-runtime.
The headers fall into three groups: what the runtime tells apps about the display, how an app gives the runtime its native window, and the surface a swappable workspace controller uses to drive multi-app composition.
| Header | Extension | Description |
|---|---|---|
XR_EXT_display_info.h |
XR_EXT_display_info |
Display dimensions, eye-tracking modes, and the data needed for asymmetric (Kooima) projection |
| Header | Extension | Description |
|---|---|---|
XR_EXT_win32_window_binding.h |
XR_EXT_win32_window_binding |
App-provided HWND, shared texture, canvas sub-rect |
XR_EXT_cocoa_window_binding.h |
XR_EXT_cocoa_window_binding |
App-provided NSView, IOSurface sharing |
XR_EXT_macos_gl_binding.h |
XR_EXT_macos_gl_binding |
macOS OpenGL graphics binding |
The contract that lets a workspace controller — the DisplayXR Shell, or any third-party / OEM / vertical / AI-agent equivalent — drive the spatial-desktop layer on top of the runtime. Activation is gated by orchestrator-PID match; the runtime trusts whatever binary it was configured to spawn.
| Header | Extension | Description |
|---|---|---|
XR_EXT_spatial_workspace.h |
XR_EXT_spatial_workspace |
Multi-app composition: window pose, hit-test, capture, overlay, modal input grab |
Copy the headers into your project's OpenXR include path, or add this repo as a submodule:
git submodule add https://github.com/DisplayXR/displayxr-extensions.git external/displayxr-extensions
# Then add external/displayxr-extensions/include to your include path- Extension Specs — formal specifications with examples
- Getting Started — build and integrate with DisplayXR
- displayxr-runtime — the OpenXR runtime
These headers are automatically synced from displayxr-runtime/src/external/openxr_includes/openxr/XR_EXT_*.h on every push to main. Do not edit directly — changes will be overwritten.