Blender Git Commit Log

Git Commits -> Revision eb0424c

June 10, 2019, 19:59 (GMT)
Proper management of OpenXR graphics bindings for session setup

OpenXR needs to interface with some graphics library (OpenGL, Vulkan,
DirectX, etc.). This is done through graphics binding extensions. The
OpenXR specification requires these to be properly set up before a
session is created.

Adds the following:
* Support priority list of multiple graphics binding extensions (e.g.
check OpenGL extension availability first, DirectX on Windows second,
etc.)
* Barebones for passing graphics library data to OpenXR session
creation. This is highly system dependent, e.g. it requires GLX data
for OpenGL on X11 systems (XrGraphicsBindingOpenGLXlibKHR). More work,
including additions to GHOST, will be needed once I get to the more
graphics related stuff.
* Create an own graphics context for the VR session. It's not doing
anything useful yet. This is just to fool the Monado OpenXR runtime
so that it actually attempts to create the OpenXR session.
* Had to add two CMake modules for platform dependent #define's required
by the OpenXR specification.

Commit Details:

Full Hash: eb0424c946f4121bfd6f51a4fbbed4c4af0289a1
Parent Commit: 5d6da57
Lines Changed: +366, -40

2 Added Paths:

/build_files/cmake/Modules/presentation.cmake (+101, -0) (View)
/build_files/cmake/Modules/xr_platform_defines.cmake (+39, -0) (View)

6 Modified Paths:

/source/blender/makesdna/DNA_windowmanager_types.h (+2, -0) (Diff)
/source/blender/windowmanager/CMakeLists.txt (+2, -0) (Diff)
/source/blender/windowmanager/intern/wm.c (+11, -1) (Diff)
/source/blender/windowmanager/intern/wm_operators.c (+40, -2) (Diff)
/source/blender/windowmanager/intern/wm_xr.c (+139, -35) (Diff)
/source/blender/windowmanager/wm.h (+32, -2) (Diff)
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021