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
committerJeroen Bakker <jeroen@blender.org>2020-08-31 12:49:27 +0300
commit8cc52ef6e20878bc61b0ce5f61f6df8b11fe1250 (patch)
tree98cf2342e3f8fdb58f0fc5074cd204eda81ee95c /intern
parent421ce37f9c16e8489814eb3ce6bb03b7cf64aeef (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 4136255fd9e..6511293a24c 100644
--- a/intern/ghost/intern/GHOST_XrContext.cpp
+++ b/intern/ghost/intern/GHOST_XrContext.cpp
@@ -134,6 +134,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 47a22003daf..3a3452c977d 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