ezEngine  Release 25.03
ezOpenXR Class Reference
Inheritance diagram for ezOpenXR:

Public Member Functions

XrInstance GetInstance () const
 
uint64_t GetSystemId () const
 
XrSession GetSession () const
 
XrViewConfigurationType GetViewType () const
 
bool GetDepthComposition () const
 
virtual bool IsHmdPresent () const override
 Returns whether an HMD is available. Can be used to decide whether it makes sense to call Initialize at all.
 
virtual ezResult Initialize () override
 Initializes the XR system. This can be quite time consuming as it will generally start supporting applications needed to run and start up the HMD if it went to sleep.
 
virtual void Deinitialize () override
 Shuts down the XR system again.
 
virtual bool IsInitialized () const override
 Returns whether the XR system is initialized.
 
virtual const ezHMDInfoGetHmdInfo () const override
 Returns general HMD information.
 
virtual ezXRInputDeviceGetXRInput () const override
 Returns the XR input device.
 
virtual ezGALTextureHandle GetCurrentTexture () override
 Called by ezWindowOutputTargetXR::RenderCompanionView Returns the color texture to be used by the companion view if enabled, otherwise an invalid handle.
 
void DelayPresent ()
 
void Present ()
 
void EndFrame ()
 
virtual ezUniquePtr< ezActorCreateActor (ezView *pView, ezGALMSAASampleCount::Enum msaaCount=ezGALMSAASampleCount::None, ezUniquePtr< ezWindowBase > pCompanionWindow=nullptr, ezUniquePtr< ezWindowOutputTargetGAL > pCompanionWindowOutput=nullptr) override
 Creates a XR actor by trying to startup an XR session. More...
 
virtual void OnActorDestroyed () override
 Called when the actor created by 'CreateActor' is destroyed.
 
virtual bool SupportsCompanionView () override
 Returns true if a companion window can be passed into CreateActor.
 
XrSpace GetBaseSpace () const
 
Setup
Devices
View
Internal

Static Public Member Functions

static XrPosef ConvertTransform (const ezTransform &tr)
 
static XrQuaternionf ConvertOrientation (const ezQuat &q)
 
static XrVector3f ConvertPosition (const ezVec3 &vPos)
 
static ezQuat ConvertOrientation (const XrQuaternionf &q)
 
static ezVec3 ConvertPosition (const XrVector3f &pos)
 
static ezMat4 ConvertPoseToMatrix (const XrPosef &pose)
 
static ezGALResourceFormat::Enum ConvertTextureFormat (int64_t format)
 

Friends

class ezOpenXRInputDevice
 
class ezOpenXRSpatialAnchors
 
class ezOpenXRHandTracking
 
class ezOpenXRRemoting
 
class ezGALOpenXRSwapChain
 

Member Function Documentation

◆ CreateActor()

ezUniquePtr< ezActor > ezOpenXR::CreateActor ( ezView pView,
ezGALMSAASampleCount::Enum  msaaCount = ezGALMSAASampleCount::None,
ezUniquePtr< ezWindowBase pCompanionWindow = nullptr,
ezUniquePtr< ezWindowOutputTargetGAL pCompanionWindowOutput = nullptr 
)
overridevirtual

Creates a XR actor by trying to startup an XR session.

If SupportsCompanionView is true (VR only), a normal window and window output can be passed in. The window will be used to blit the VR output into the window.

Implements ezXRInterface.

◆ EndFrame()

void ezOpenXR::EndFrame ( )

NOTE: (Only Applies When Tracy is Enabled.)Tracy Seems to declare Timers in the same scope, so dual profile macros can throw: '__tracy_scoped_zone' : redefinition; multitple initalization, so we must scope the two events.


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