All Projects → KhronosGroup → OpenXR-Hpp

KhronosGroup / OpenXR-Hpp

Licence: Apache-2.0 license
Open-Source OpenXR C++ language projection

Programming Languages

C++
36643 projects - #6 most used programming language
python
139335 projects - #7 most used programming language
CMake
9771 projects
shell
77523 projects

Projects that are alternatives of or similar to OpenXR-Hpp

OpenXR-CTS
Conformance test suite for OpenXR
Stars: ✭ 38 (+52%)
Mutual labels:  vr, virtual-reality, openxr
Polymer
🎨 graphics + interaction engine
Stars: ✭ 243 (+872%)
Mutual labels:  vr, virtual-reality
HadesVR
The "DIY" SteamVR compatible VR setup made for tinkerers.
Stars: ✭ 88 (+252%)
Mutual labels:  vr, virtual-reality
V2R
Code for our IJCAI 2020 paper: "Keep It Real: a Window to Real Reality in Virtual Reality".
Stars: ✭ 20 (-20%)
Mutual labels:  vr, virtual-reality
Stereokit
An easy-to-use mixed reality library for building HoloLens and VR applications with C# and OpenXR!
Stars: ✭ 195 (+680%)
Mutual labels:  vr, virtual-reality
Safespaces
3D/VR Desktop built for Arcan
Stars: ✭ 225 (+800%)
Mutual labels:  vr, virtual-reality
hobo vr
SteamVR driver prototyping tool
Stars: ✭ 44 (+76%)
Mutual labels:  vr, virtual-reality
Vivegrip
Physics-based grabbing for SteamVR development in Unity.
Stars: ✭ 159 (+536%)
Mutual labels:  vr, virtual-reality
lvr
👓 Augmented Reality for everyone - Out of the world experiences
Stars: ✭ 92 (+268%)
Mutual labels:  vr, virtual-reality
UnityPlugin
Ultraleap SDK for Unity.
Stars: ✭ 447 (+1688%)
Mutual labels:  vr, virtual-reality
AnotherBadBeatSaberClone
This is a discontinued but perhaps helpful VR project created during my Master's degree at FH Wedel.
Stars: ✭ 22 (-12%)
Mutual labels:  vr, virtual-reality
Aframe
🅰️ web framework for building virtual reality experiences.
Stars: ✭ 13,428 (+53612%)
Mutual labels:  vr, virtual-reality
Guri Vr
https://gurivr.com
Stars: ✭ 177 (+608%)
Mutual labels:  vr, virtual-reality
Openxr Sdk Source
Sources for OpenXR loader, basic API layers, and example code.
Stars: ✭ 236 (+844%)
Mutual labels:  vr, virtual-reality
Patches
Patches is a visual programming editor for building WebVR and WebGL experiences.
Stars: ✭ 164 (+556%)
Mutual labels:  vr, virtual-reality
Webxr Polyfill
Use the WebXR Device API today, providing fallbacks to native WebVR 1.1 and Cardboard
Stars: ✭ 251 (+904%)
Mutual labels:  vr, virtual-reality
LifeBrush
A toolkit for painting agent-based mesoscale molecular simulations and illustrations.
Stars: ✭ 38 (+52%)
Mutual labels:  vr, virtual-reality
Remixvr
RemixVR is a tool for collaboratively building customisable VR experiences.
Stars: ✭ 129 (+416%)
Mutual labels:  vr, virtual-reality
Kerbal Vr
An add-on for Kerbal Space Program (KSP) to enable virtual reality.
Stars: ✭ 142 (+468%)
Mutual labels:  vr, virtual-reality
a-blast
💥 Save the World From the Cutest Creatures in the Universe!
Stars: ✭ 116 (+364%)
Mutual labels:  vr, virtual-reality

OpenXR-Hpp project

This repository contains build scripts and test files for the openxr*.hpp headers, providing a C++-friendly projection of the OpenXR API.

The authoritative public repository is located at https://github.com/KhronosGroup/OpenXR-HPP/. It hosts the public Issue tracker, and accepts patches (Pull Requests) from the general public.

If you want to simply write an application using OpenXR (the headers and loader), with minimum dependencies, see https://github.com/KhronosGroup/OpenXR-SDK/. That project will likely contain the openxr*.hpp artifact when it is ready for widespread production usage.

To build this project, you must have OpenXR-SDK-Source cloned in a peer directory of this one.

Directory Structure

  • README.md - This file
  • COPYING.md - Copyright and licensing information
  • CODE_OF_CONDUCT.md - Code of Conduct
  • OPENXR-HPP.md - Some basic introductory documentation
  • include/ - Build system to generate the openxr*.hpp files
  • scripts/ - Python source code and Jinja2 templates for generating the headers.
  • tests/ - some simple files that ensures the header is always compilable.

Building

If you just want to generate the headers, run ./generate-openxr-hpp.sh or ./generate-openxr-hpp.ps1. If your OpenXR-SDK-Source (or internal gitlab) repo isn't in a directory named that parallel to this one, you can set OPENXR_REPO environment variable before running. Requires clang-format, preferably 6.0.

If you'd like to build the tests (making sure the headers can compile), use CMake to generate a build system, like:

mkdir build
cd build
cmake ..
make

Development

To improve/maintain consistent code style and code quality, we strongly recommend setting up the pre-commit hooks, which check/correct:

  • large file additions
  • byte-order marker
  • case conflicts
  • unresolved merge conflicts
  • broken symlinks
  • file endings
  • line endings
  • trailing whitespace
  • autopep8
  • cmake-format

Using these hooks involves the following steps:

Install pre-commit - available thru pip or your preferred package manager.

python3 -m pip install --user pre-commit

Setup the git hook scripts by running this script. This will configure the current git repo working directory to run the hooks, as well as cloning and building (if required) the various tools used by the hooks.

pre-commit install

Optionally, you can run the hooks over all files manually, before a commit:

pre-commit run --all-files
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].