All Projects → microsoft → Microsoft-OpenXR-Unreal

microsoft / Microsoft-OpenXR-Unreal

Licence: MIT License
An Unreal Engine game plugin providing additional features available on Microsoft's Mixed Reality devices like the HoloLens 2 when using OpenXR.

Programming Languages

C++
36643 projects - #6 most used programming language
C#
18002 projects

Projects that are alternatives of or similar to Microsoft-OpenXR-Unreal

UT GameEventSystem
A flexible event system in Unreal Engine 4
Stars: ✭ 33 (-69.16%)
Mutual labels:  unreal
flak m
UT Weapons mod for GZDoom
Stars: ✭ 16 (-85.05%)
Mutual labels:  unreal
Pavilion
Unreal-based Gazebo Alternative
Stars: ✭ 30 (-71.96%)
Mutual labels:  unreal
Discord-UE4
Plugin for integrating Discord Rich Presence.
Stars: ✭ 66 (-38.32%)
Mutual labels:  unreal
TwitchAuth
Unreal Engine 4 Plugin for In-Game Twitch Authentication.
Stars: ✭ 21 (-80.37%)
Mutual labels:  unreal
OpenXR-CTS
Conformance test suite for OpenXR
Stars: ✭ 38 (-64.49%)
Mutual labels:  openxr
RyansUE4Helpers
Extremely helpful helper functions for developing Blueprint and C++ projects in Unreal Engine.
Stars: ✭ 55 (-48.6%)
Mutual labels:  unreal
ml-remote-server
Server component of https://github.com/getnamo/machine-learning-remote-ue4
Stars: ✭ 17 (-84.11%)
Mutual labels:  unreal
BlueprintWebSocket
Documentation for BlueprintWebSocket available on the Unreal Engine Marketplace.
Stars: ✭ 13 (-87.85%)
Mutual labels:  unreal
ProceduralDungeon
This is an Unreal Engine 4/5 plugin to generate procedural dungeon.
Stars: ✭ 95 (-11.21%)
Mutual labels:  unreal
LocalSimulation
This plugin allows you to essentially create PxScene or Physic Scenes by placing an Actor, and adding other Static Mesh Components and soon Skeletal Mesh components within this space. Adding Constraints, and Forces will work as expected, but now with the additional layer of abstraction so that simulation can be anchored to a transform.
Stars: ✭ 42 (-60.75%)
Mutual labels:  unreal
RPGDemo
The Unreal Demo source code for https://docs.improbable.io/reference/11.1/workers/unreal/setup-unreal-project
Stars: ✭ 30 (-71.96%)
Mutual labels:  unreal
OpenXRHandTracking
OpenXR API layer enabling XR_EXT_hand_tracking support using Ultraleap tracking
Stars: ✭ 38 (-64.49%)
Mutual labels:  openxr
antz
ANTz immersive 3D data visualization engine
Stars: ✭ 25 (-76.64%)
Mutual labels:  openxr
gamedevguide
Game Development & Unreal Engine Programming Guide
Stars: ✭ 314 (+193.46%)
Mutual labels:  unreal
ARK
ARK is a lightweight, agile, elastic, distributed plugin framework written in C++,make it easier and faster to create your own application service.
Stars: ✭ 411 (+284.11%)
Mutual labels:  unreal
UnrealEngine
UnrealEngine 1998
Stars: ✭ 65 (-39.25%)
Mutual labels:  unreal
HoloLensWithDlibFaceLandmarkDetectorExample
HoloLens With DlibFaceLandmarkDetector Example
Stars: ✭ 19 (-82.24%)
Mutual labels:  mixed-reality
immersal-sdk-samples
Immersal SDK Unity Samples
Stars: ✭ 77 (-28.04%)
Mutual labels:  mixed-reality
UE4-BUIValidator
UE4 UI Texture Validator Plugin
Stars: ✭ 48 (-55.14%)
Mutual labels:  unreal

Microsoft OpenXR for Unreal Engine

What is the Microsoft OpenXR plugin?

The Microsoft OpenXR plugin is an Unreal Engine game plugin which provides additional features available on Microsoft's Mixed Reality devices like the HoloLens 2 when using OpenXR. OpenXR is an open royalty-free API standard from Khronos that provides engines with native access to a wide range of devices from vendors across the mixed reality spectrum. While Unreal Engine supports OpenXR natively, some additional functionality specific to Microsoft's Mixed Reality platforms is only available through this plugin.

NOTE: The Microsoft OpenXR plugin requires Unreal 4.26.0+.

Feature Summary

Unreal Engine 4.26 with OpenXR provides the following built-in functionality:

  • Eye tracking
  • Hand joint tracking
  • Hand and controller input action mapping

The Microsoft OpenXR plugin provides the following additional functionality:

  • Keyboard input routing
  • Dynamic hand mesh rendering
  • Spatial anchoring
  • Holographic Remoting from the PC
  • Photo/Video (PV) camera access
  • QR code tracking
  • Spatial mapping providing a mesh of the physical world
  • Voice input
  • Azure Spatial Anchors
  • Secondary View Configuration (requires 4.26.2+)

If you're new to Mixed Reality development in Unreal, visit the Unreal development journey in the Microsoft Docs. The Unreal development journey is specifically tailored to walk new developers through the installation, core concepts, and usage of the Microsoft OpenXR plugin.

Using the Microsoft OpenXR plugin

Use the plugin from GitHub source

  1. If you have the MicrosoftOpenXR plugin installed from the Unreal Engine Marketplace, first uninstall that plugin so it will not collide with the source version.

  2. Copy MsftOpenXRGame/Plugins/MicrosoftOpenXR to your game's Plugins directory. Skip this step if using the example MsftOpenXRGame project.

  3. This plugin maintains compatibility with older engine versions, so using the source directly may not work as expected in the latest engine release.
    If you see this message prompt, you must retarget the plugin to match your engine version: The 'MicrosoftOpenXR' plugin was designed for build 4.26.0. Attempt to load it anyway?

    Modify the "EngineVersion" string in Plugins/MicrosoftOpenXR/MicrosoftOpenXR.uplugin to match the engine version you are using. For example, if you are using UE 4.27, change the line to: "EngineVersion": "4.27.0"

  4. Reopen the project and the plugin will load correctly.

Install the plugin from the Unreal Marketplace

  1. Install the Microsoft OpenXR plugin from the Unreal Engine Marketplace to your engine.
  2. Open Unreal Engine, go to Project Settings > Plugins and search for "Microsoft OpenXR". Verify that the plugin has been enabled. You may need to restart the engine for changes to take effect.

    ⚠️ The "Microsoft Windows Mixed Reality" plugin must be disabled in your project for OpenXR to work.

Try the example project

If you want to see how each of the features available in OpenXR can be used, check out the example project (/MsftOpenXRGame) contained in this repository. This project has examples of how to use each of the features listed above, as well as a copy of the Microsoft OpenXR plugin in the MsftOpenXRGame/Plugins directory.

⚠️ This example project embeds the source code for the Microsoft OpenXR plugin which conflicts with the Microsoft OpenXR plugin installed from the Unreal Marketplace. The Microsoft OpenXR plugin from the Unreal Marketplace must be uninstalled before opening the example project. This can be done by clicking the "Installed Plugins" link below the engine in your library.

  1. Clone this repository.
  2. Navigate to the MsftOpenXRGame folder and double-click MsftOpenXRGame.uproject to open the project in Unreal Engine.
  3. See the documention for instructions on how to stream or package and deploy to device

Feedback and contributions

If you have a feature request or run into issues using the plugin, please file an issue.

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

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].