mirror of
https://github.com/glfw/glfw.git
synced 2024-11-22 10:05:10 +00:00
82 lines
2.0 KiB
Plaintext
82 lines
2.0 KiB
Plaintext
/*!
|
|
|
|
@page rift Oculus Rift guide
|
|
|
|
@tableofcontents
|
|
|
|
GLFW has no explicit support for the Oculus Rift, but
|
|
|
|
This guide requires you to use the [native API](@ref native) and assumes
|
|
a certain level of proficiency with system level APIs and the compiler
|
|
toolchain.
|
|
|
|
|
|
@section rift_init Initializing libOVR and GLFW
|
|
|
|
libOVR needs to be initialized before GLFW. This means calling
|
|
`ovr_Initialize`, `ovrHmd_Create` and `ovrHmd_ConfigureTracking` before @ref
|
|
glfwInit. Similarly, libOVR must be shut down after GLFW. This means calling
|
|
`ovrHmd_Destroy` and `ovr_Shutdown` after @ref glfwTerminate.
|
|
|
|
|
|
@section rift_extend Extend Desktop mode
|
|
|
|
@subsection rift_extend_detect Detecting a Rift with GLFW
|
|
|
|
If you have an actual Rift connected to your machine you can deduce which GLFW
|
|
monitor it corresponds to. Doing this requires you to use the
|
|
[native API](@ref native).
|
|
|
|
|
|
@subsubsection rift_extend_detect_win32 Detecting a Rift on Windows
|
|
|
|
The native display device name of a GLFW monitor, as returned by @ref
|
|
glfwGetWin32Monitor, corresponds to the display device name of the detected Rift
|
|
as stored, in the `DisplayDeviceName` member of `ovrHmdDesc`.
|
|
|
|
@code
|
|
int i, count;
|
|
GLFWmonitor** monitors = glfwGetMonitors(&count);
|
|
|
|
for (i = 0; i < count; i++)
|
|
{
|
|
if (strcmp(glfwGetWin32Monitor(monitors[i]), hmd->DisplayDeviceName) == 0)
|
|
return monitors[i];
|
|
}
|
|
@endcode
|
|
|
|
|
|
@subsubsection rift_extend_detect_osx Detecting a Rift on OS X
|
|
|
|
The native display ID of a GLFW monitor, as returned by @ref
|
|
glfwGetCocoaMonitor, corresponds to the display ID of the detected Rift, as
|
|
stored in the `DisplayId` member of `ovrHmdDesc`.
|
|
|
|
@code
|
|
int i, count;
|
|
GLFWmonitor** monitors = glfwGetMonitors(&count);
|
|
|
|
for (i = 0; i < count; i++)
|
|
{
|
|
if (glfwGetCocoaMonitor(monitors[i]) == hmd->DisplayId)
|
|
return monitors[i];
|
|
}
|
|
@endcode
|
|
|
|
|
|
@subsubsection rift_extend_detect_x11 Detecting a Rift on X11
|
|
|
|
At the time of writing, the 0.4 Rift SDK does not yet support X11.
|
|
|
|
|
|
@subsection rift_extend_create Creating a window and context
|
|
|
|
LOL create.
|
|
|
|
|
|
@section rift_direct Direct HMD mode
|
|
|
|
LOL direct.
|
|
|
|
*/
|