Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/intern
diff options
context:
space:
mode:
authorJulian Eisel <julian@blender.org>2020-06-12 12:59:12 +0300
committerJulian Eisel <julian@blender.org>2020-06-12 14:12:14 +0300
commitf12fe3c23eb42c1db190fcbed2dc222a5441a632 (patch)
tree96a339e2e218cfbb494bf587316d71137af14cb7 /intern
parent16595b9ea1c5c5b6f3d07a31d3aa6b4713426abc (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.cpp1
-rw-r--r--intern/ghost/intern/GHOST_XrContext.h1
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