diff options
author | Julian Eisel <julian@blender.org> | 2020-06-12 12:59:12 +0300 |
---|---|---|
committer | Julian Eisel <julian@blender.org> | 2020-06-12 14:12:14 +0300 |
commit | f12fe3c23eb42c1db190fcbed2dc222a5441a632 (patch) | |
tree | 96a339e2e218cfbb494bf587316d71137af14cb7 /intern | |
parent | 16595b9ea1c5c5b6f3d07a31d3aa6b4713426abc (diff) |
VR: SteamVR is now a supported OpenXR runtime! (Windows only)
Steam just released a SteamVR update with OpenXR Developer Preview
support:
https://steamcommunity.com/games/250820/announcements/detail/2396425843528787270.
Once SteamVR is set up for OpenXR (see link above), it works with
Blender "out of the box", thanks to OpenXR!
We have to apply the sRGB transform workaround for SteamVR though,
otherwise it renders way too dark. Done in the next commit.
Note that AMD users may still only see a pink screen, because the
OpenGL-DirectX compatibility fails. I will check on a fix again.
For SteamVR on Linux we may have to wait for until it supports OpenGL
rendering for OpenXR. Alternatively, we *could* add initial Vulkan
support at Ghost level and use Vulkan<->OpenGL interoperability
extensions, Monado uses these as well.
Diffstat (limited to 'intern')
-rw-r--r-- | intern/ghost/intern/GHOST_XrContext.cpp | 1 | ||||
-rw-r--r-- | intern/ghost/intern/GHOST_XrContext.h | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/intern/ghost/intern/GHOST_XrContext.cpp b/intern/ghost/intern/GHOST_XrContext.cpp index 3aab420a9b6..16687c34679 100644 --- a/intern/ghost/intern/GHOST_XrContext.cpp +++ b/intern/ghost/intern/GHOST_XrContext.cpp @@ -126,6 +126,7 @@ void GHOST_XrContext::storeInstanceProperties() const std::map<std::string, GHOST_TXrOpenXRRuntimeID> runtime_map = { {"Monado(XRT) by Collabora et al", OPENXR_RUNTIME_MONADO}, {"Oculus", OPENXR_RUNTIME_OCULUS}, + {"SteamVR/OpenXR", OPENXR_RUNTIME_STEAMVR}, {"Windows Mixed Reality Runtime", OPENXR_RUNTIME_WMR}}; decltype(runtime_map)::const_iterator runtime_map_iter; diff --git a/intern/ghost/intern/GHOST_XrContext.h b/intern/ghost/intern/GHOST_XrContext.h index 7dbd0a0d011..9be57cd90cc 100644 --- a/intern/ghost/intern/GHOST_XrContext.h +++ b/intern/ghost/intern/GHOST_XrContext.h @@ -49,6 +49,7 @@ struct GHOST_XrCustomFuncs { enum GHOST_TXrOpenXRRuntimeID { OPENXR_RUNTIME_MONADO, OPENXR_RUNTIME_OCULUS, + OPENXR_RUNTIME_STEAMVR, OPENXR_RUNTIME_WMR, /* Windows Mixed Reality */ OPENXR_RUNTIME_UNKNOWN |