Skip to main content

pyopenxr

Unofficial Python bindings for the OpenXR SDK to access VR and AR devices

pyopenxr is a Python developer SDK for device tracking and rapid virtual reality prototyping using the headset-agnostic OpenXR API. It provides a clean, Pythonic interface to the OpenXR runtime, enabling cross-platform AR/VR development with minimal boilerplate.

Build Status Pages Doc Status Documentation License

hello_xr1


🚀 Installation

pip install pyopenxr

🧪 Quick Start

import xr

# Query the available VR/AR extensions
available = xr.enumerate_instance_extension_properties()

# Replace with whatever extensions are required for your application...
required = [xr.KHR_OPENGL_ENABLE_EXTENSION_NAME]
for prop in required:
    assert prop in available

Explore the complete working example hello_xr.py for a hands-on introduction.

Pythonic naming conventions

symbol Python example C example
function xr.create_instance(...) xrCreateInstance(...)
constant xr.MAX_SYSTEM_NAME_SIZE XR_MAX_SYSTEM_NAME_SIZE
struct name xr.ExtensionProperties XrExtensionProperties
type alias xr.Version XrVersion
enum type xr.FormFactor xrFormFactor
enum value xr.FormFactor.HEAD_MOUNTED_DISPLAY XR_FORM_FACTOR_HEAD_MOUNTED_DISPLAY
handle xr.Instance XrInstance

📚 Documentation

Full API reference and guides are available

📦 License

This project is licensed under the Apache License 2.0.

Copyright © 2021 Christopher Bruns.

Release files for pyopenxr 1.1.6301

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pyopenxr 1.1.6301
File Size Uploaded
pyopenxr-1.1.6301.tar.gz 14.9 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for pyopenxr 1.1.6301
File Interpreter ABI Platform
pyopenxr-1.1.6301-py3-none-any.whl Python 3 none any Details

Total release size: 50.1 MB

Release files / pyopenxr-1.1.6301.tar.gz

Download URL pyopenxr-1.1.6301.tar.gz
Size 14.9 MB
Tags Source
SHA-256 checksum
How to use checksums
d5f212a088ecef783eb2fbaee606d70e043c461fd5df45ff4c9ba59b0cc59266
BLAKE2b-256 checksum
How to use checksums
99e942671c70c5c711006aa8c86b09902a38ebde9691cfc5ddba28c114c8f801
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.13

Release files / pyopenxr-1.1.6301-py3-none-any.whl

Download URL pyopenxr-1.1.6301-py3-none-any.whl
Size 35.2 MB
Tags Python 3
SHA-256 checksum
How to use checksums
f98e0ab00a4b03c72ee38bf7333f29f81a49c3bebefecc9b8838be7258bc6fb7
BLAKE2b-256 checksum
How to use checksums
5c6137cf077f9fba2da2340f3fc6ade882271b589dae1effcf63b1f244d4b955
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.13
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page