ezEngine Release 26.3
Loading...
Searching...
No Matches
ezOpenXRGraphicsBinding Class Referenceabstract

Abstract interface for graphics API binding in OpenXR. More...

#include <OpenXRGraphicsBinding.h>

Public Member Functions

virtual const char * GetName () const =0
 Returns the name of the graphics API (e.g., "D3D11", "Vulkan")
 
virtual XrResult SelectExtension (ezDynamicArray< const char * > &extensions, const ezDynamicArray< XrExtensionProperties > &extensionProperties)=0
 Adds the required graphics API extension to the list of extensions to enable.
 
virtual void LoadFunctionPointers (XrInstance instance)=0
 Loads the graphics API specific OpenXR function pointers.
 
virtual XrResult Initialize (XrInstance instance, XrSystemId systemId, ezGALDevice *pDevice)=0
 Initializes the graphics binding using the current GAL device.
 
virtual void Deinitialize ()=0
 Deinitializes the graphics binding.
 
virtual const void * GetGraphicsBinding () const =0
 Returns the graphics binding structure to be passed to xrCreateSession.
 
virtual XrResult SelectSwapchainFormats (XrSession session, bool bDepthComposition, int64_t &out_colorFormat, int64_t &out_depthFormat)=0
 Selects appropriate swapchain formats for color and depth buffers.
 
virtual XrResult CreateSwapchainImages (XrSwapchain swapchainHandle, int64_t format, ezUInt32 imageCount, ezSizeU32 size, ezGALMSAASampleCount::Enum msaaCount, bool bIsDepth, ezGALDevice *pDevice, ezDynamicArray< ezGALTextureHandle > &out_textures)=0
 Creates texture handles from swapchain images.
 
virtual void CleanupSwapchainImages ()=0
 Cleans up any internal swapchain image storage.
 

Static Public Member Functions

static ezUniquePtr< ezOpenXRGraphicsBindingCreate (class ezOpenXR *pOpenXR, ezGALDevice *pDevice)
 Creates the appropriate graphics binding for the current platform and GAL device.
 

Detailed Description

Abstract interface for graphics API binding in OpenXR.

This interface abstracts away the graphics API specific code required for OpenXR integration.


The documentation for this class was generated from the following files: