![]() |
ezEngine Release 26.3
|
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< ezOpenXRGraphicsBinding > | Create (class ezOpenXR *pOpenXR, ezGALDevice *pDevice) |
| Creates the appropriate graphics binding for the current platform and GAL device. | |
Abstract interface for graphics API binding in OpenXR.
This interface abstracts away the graphics API specific code required for OpenXR integration.