openxr-0.1: Bindings to the OpenXR API
Safe HaskellNone
LanguageHaskell2010

OpenXR.Extensions.XR_KHR_opengl_enable

Description

Name

XR_KHR_opengl_enable - instance extension

Specification

See XR_KHR_opengl_enable in the main specification for complete information.

Registered Extension Number

24

Revision

9

Extension and Version Dependencies

  • Requires OpenXR 1.0

See Also

GraphicsBindingOpenGLWaylandKHR, GraphicsBindingOpenGLWin32KHR, GraphicsBindingOpenGLXcbKHR, GraphicsBindingOpenGLXlibKHR, GraphicsRequirementsOpenGLKHR, SwapchainImageOpenGLKHR, getOpenGLGraphicsRequirementsKHR

Document Notes

For more information, see the OpenXR Specification

This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.

Synopsis

Documentation

getOpenGLGraphicsRequirementsKHR Source #

Arguments

:: forall io. MonadIO io 
=> Instance

instance is an Instance handle previously created with createInstance.

-> SystemId

systemId is an https://www.khronos.org/registry/OpenXR/specs/1.0/html/xrspec.html#XrSystemId handle for the system which will be used to create a session.

-> io GraphicsRequirementsOpenGLKHR 

xrGetOpenGLGraphicsRequirementsKHR - Retrieve the OpenGL version requirements for an instance and system

Parameter Descriptions

Description

The getOpenGLGraphicsRequirementsKHR function identifies to the application the minimum OpenGL version requirement and the highest known tested OpenGL version. The runtime must return ERROR_GRAPHICS_REQUIREMENTS_CALL_MISSING (ERROR_VALIDATION_FAILURE may be returned due to legacy behavior) on calls to createSession if getOpenGLGraphicsRequirementsKHR has not been called for the same instance and systemId.

Valid Usage (Implicit)

Return Codes

Success
Failure

See Also

GraphicsRequirementsOpenGLKHR, Instance, https://www.khronos.org/registry/OpenXR/specs/1.0/html/xrspec.html#XrSystemId

data GraphicsBindingOpenGLWin32KHR Source #

XrGraphicsBindingOpenGLWin32KHR - The graphics binding structure to be passed at session creation to use OpenGL on Windows

Member Descriptions

Description

When creating an OpenGL-backed Session on Microsoft Windows, the application will provide a pointer to an GraphicsBindingOpenGLWin32KHR in the next chain of the SessionCreateInfo. As no standardized way exists for OpenGL to create the graphics context on a specific GPU, the runtime must assume that the application uses the operating systems default GPU. If the GPU used by the runtime does not match the GPU on which the OpenGL context of the application got created, createSession must return ERROR_GRAPHICS_DEVICE_INVALID.

The required window system configuration define to expose this structure type is XR_USE_PLATFORM_WIN32.

Valid Usage (Implicit)

See Also

StructureType, createSession

Constructors

GraphicsBindingOpenGLWin32KHR 

Fields

  • hDC :: HDC

    hDC is a valid Windows HW device context handle.

  • hGLRC :: HGLRC

    hGLRC is a valid Windows OpenGL rendering context handle.

Instances

Instances details
Eq GraphicsBindingOpenGLWin32KHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Show GraphicsBindingOpenGLWin32KHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Storable GraphicsBindingOpenGLWin32KHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Zero GraphicsBindingOpenGLWin32KHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

ToCStruct GraphicsBindingOpenGLWin32KHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

FromCStruct GraphicsBindingOpenGLWin32KHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

data GraphicsBindingOpenGLXlibKHR Source #

XrGraphicsBindingOpenGLXlibKHR - The graphics binding structure to be passed at session creation to use OpenGL on X11 via Xlib

Member Descriptions

Description

When creating an OpenGL-backed Session on any Linux/Unix platform that utilizes X11 and GLX, via the Xlib library, the application will provide a pointer to an GraphicsBindingOpenGLXlibKHR in the next chain of the SessionCreateInfo.

The required window system configuration define to expose this structure type is XR_USE_PLATFORM_XLIB.

Valid Usage (Implicit)

See Also

StructureType, createSession

Constructors

GraphicsBindingOpenGLXlibKHR 

Fields

Instances

Instances details
Eq GraphicsBindingOpenGLXlibKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Show GraphicsBindingOpenGLXlibKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Storable GraphicsBindingOpenGLXlibKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Zero GraphicsBindingOpenGLXlibKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

ToCStruct GraphicsBindingOpenGLXlibKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

FromCStruct GraphicsBindingOpenGLXlibKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

data GraphicsBindingOpenGLXcbKHR Source #

XrGraphicsBindingOpenGLXcbKHR - The graphics binding structure to be passed at session creation to use OpenGL on X11 via XCB

Member Descriptions

Description

When creating an OpenGL-backed Session on any Linux/Unix platform that utilizes X11 and GLX, via the Xlib library, the application will provide a pointer to an GraphicsBindingOpenGLXcbKHR in the next chain of the SessionCreateInfo.

The required window system configuration define to expose this structure type is XR_USE_PLATFORM_XCB.

Valid Usage (Implicit)

  • type must be TYPE_GRAPHICS_BINDING_OPENGL_XCB_KHR
  • next must be NULL or a valid pointer to the next structure in a structure chain
  • connection must be a pointer to an xcb_connection_t value
  • fbconfigid must be a valid xcb_glx_fbconfig_t value
  • visualid must be a valid xcb_visualid_t value
  • glxDrawable must be a valid xcb_glx_drawable_t value
  • glxContext must be a valid xcb_glx_context_t value

See Also

StructureType, createSession

Constructors

GraphicsBindingOpenGLXcbKHR 

Fields

Instances

Instances details
Eq GraphicsBindingOpenGLXcbKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Show GraphicsBindingOpenGLXcbKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Storable GraphicsBindingOpenGLXcbKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Zero GraphicsBindingOpenGLXcbKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

ToCStruct GraphicsBindingOpenGLXcbKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

FromCStruct GraphicsBindingOpenGLXcbKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

data GraphicsBindingOpenGLWaylandKHR Source #

XrGraphicsBindingOpenGLWaylandKHR - The graphics binding structure to be passed at session creation to use OpenGL on Wayland

Member Descriptions

Description

When creating an OpenGL-backed Session on any Linux/Unix platform that utilizes the Wayland protocol with its compositor, the application will provide a pointer to an GraphicsBindingOpenGLWaylandKHR in the next chain of the SessionCreateInfo.

The required window system configuration define to expose this structure type is XR_USE_PLATFORM_WAYLAND.

Valid Usage (Implicit)

See Also

StructureType, createSession

Constructors

GraphicsBindingOpenGLWaylandKHR 

Fields

Instances

Instances details
Eq GraphicsBindingOpenGLWaylandKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Show GraphicsBindingOpenGLWaylandKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Storable GraphicsBindingOpenGLWaylandKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Zero GraphicsBindingOpenGLWaylandKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

ToCStruct GraphicsBindingOpenGLWaylandKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

FromCStruct GraphicsBindingOpenGLWaylandKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

data SwapchainImageOpenGLKHR Source #

XrSwapchainImageOpenGLKHR - OpenGL-specific swapchain image structure

Member Descriptions

Description

If a given session was created with a XrGraphicsBindingOpenGL*KHR, the following conditions must apply.

The OpenXR runtime must interpret the bottom-left corner of the swapchain image as the coordinate origin unless specified otherwise by extension functionality.

The OpenXR runtime must interpret the swapchain images in a clip space of positive Y pointing up, near Z plane at -1, and far Z plane at 1.

Valid Usage (Implicit)

See Also

StructureType, SwapchainImageBaseHeader

Constructors

SwapchainImageOpenGLKHR 

Fields

  • image :: Word32

    image is the OpenGL texture handle associated with this swapchain image.

Instances

Instances details
Eq SwapchainImageOpenGLKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Show SwapchainImageOpenGLKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Storable SwapchainImageOpenGLKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Zero SwapchainImageOpenGLKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

ToCStruct SwapchainImageOpenGLKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

FromCStruct SwapchainImageOpenGLKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

IsSwapchainImage SwapchainImageOpenGLKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

data GraphicsRequirementsOpenGLKHR Source #

XrGraphicsRequirementsOpenGLKHR - OpenGL API version requirements

Member Descriptions

Description

GraphicsRequirementsOpenGLKHR is populated by getOpenGLGraphicsRequirementsKHR with the runtime’s OpenGL API version requirements.

Valid Usage (Implicit)

See Also

StructureType, https://www.khronos.org/registry/OpenXR/specs/1.0/html/xrspec.html#XrVersion, getOpenGLGraphicsRequirementsKHR

Constructors

GraphicsRequirementsOpenGLKHR 

Fields

  • minApiVersionSupported :: Version

    minApiVersionSupported is the minimum version of OpenGL that the runtime supports. Uses MAKE_VERSION on major and minor API version, ignoring any patch version component.

  • maxApiVersionSupported :: Version

    maxApiVersionSupported is the maximum version of OpenGL that the runtime has been tested on and is known to support. Newer OpenGL versions might work if they are compatible. Uses MAKE_VERSION on major and minor API version, ignoring any patch version component.

Instances

Instances details
Eq GraphicsRequirementsOpenGLKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Show GraphicsRequirementsOpenGLKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Storable GraphicsRequirementsOpenGLKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

Zero GraphicsRequirementsOpenGLKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

ToCStruct GraphicsRequirementsOpenGLKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

FromCStruct GraphicsRequirementsOpenGLKHR Source # 
Instance details

Defined in OpenXR.Extensions.XR_KHR_opengl_enable

pattern KHR_opengl_enable_SPEC_VERSION :: forall a. Integral a => a Source #

type KHR_OPENGL_ENABLE_EXTENSION_NAME = "XR_KHR_opengl_enable" Source #

pattern KHR_OPENGL_ENABLE_EXTENSION_NAME :: forall a. (Eq a, IsString a) => a Source #

type HDC = Ptr () Source #

type HGLRC = Ptr () Source #

type Display = Ptr () Source #