XII Release 0.1.0
Loading...
Searching...
No Matches
xiiXRInterface Class Referenceabstract

XR singleton interface. Needs to be initialized to be used for VR or AR purposes. More...

#include <XRInterface.h>

Inheritance diagram for xiiXRInterface:
[legend]

Public Member Functions

virtual bool IsHmdPresent () const =0
 Returns whether an HMD is available. Can be used to decide whether it makes sense to call Initialize at all.
 
Setup
virtual xiiResult Initialize ()=0
 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 ()=0
 Shuts down the XR system again.
 
virtual bool IsInitialized () const =0
 Returns whether the XR system is initialized.
 
Devices
virtual const xiiHMDInfoGetHmdInfo () const =0
 Returns general HMD information.
 
virtual xiiXRInputDeviceGetXRInput () const =0
 Returns the XR input device.
 
View
virtual bool SupportsCompanionView ()=0
 Returns true if a companion window can be passed into CreateActor.
 
virtual xiiUniquePtr< xiiActorCreateActor (xiiView *pView, xiiEnum< xiiGALMSAASampleCount > msaaCount=xiiGALMSAASampleCount::OneSample, xiiUniquePtr< xiiWindowBase > pCompanionWindow=nullptr, xiiUniquePtr< xiiWindowOutputTargetGAL > pCompanionWindowOutput=nullptr)=0
 Creates a XR actor by trying to startup an XR session.
 
Internal
virtual xiiSharedPtr< xiiGALTextureGetCurrentTexture ()=0
 Called by xiiWindowOutputTargetXR::RenderCompanionView Returns the color texture to be used by the companion view if enabled, otherwise an invalid handle.
 
virtual void OnActorDestroyed ()=0
 Called when the actor created by 'CreateActor' is destroyed.
 

Detailed Description

XR singleton interface. Needs to be initialized to be used for VR or AR purposes.

To be used in a project the project needs to have an enabled xiiXRConfig with a set render pipeline in the platform profile. To then use the interface, Initialize must be called first and on success CreateActor. Everything else is optional. Aquire interface via xiiSingletonRegistry::GetSingletonInstance<xiiXRInterface>().

Member Function Documentation

◆ CreateActor()

virtual xiiUniquePtr< xiiActor > xiiXRInterface::CreateActor ( xiiView * pView,
xiiEnum< xiiGALMSAASampleCount > msaaCount = xiiGALMSAASampleCount::OneSample,
xiiUniquePtr< xiiWindowBase > pCompanionWindow = nullptr,
xiiUniquePtr< xiiWindowOutputTargetGAL > pCompanionWindowOutput = nullptr )
pure virtual

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.

Implemented in xiiDummyXR.

◆ Deinitialize()

virtual void xiiXRInterface::Deinitialize ( )
pure virtual

Shuts down the XR system again.

Implemented in xiiDummyXR.

◆ GetCurrentTexture()

virtual xiiSharedPtr< xiiGALTexture > xiiXRInterface::GetCurrentTexture ( )
pure virtual

Called by xiiWindowOutputTargetXR::RenderCompanionView Returns the color texture to be used by the companion view if enabled, otherwise an invalid handle.

Implemented in xiiDummyXR.

◆ GetHmdInfo()

virtual const xiiHMDInfo & xiiXRInterface::GetHmdInfo ( ) const
pure virtual

Returns general HMD information.

Implemented in xiiDummyXR.

◆ GetXRInput()

virtual xiiXRInputDevice & xiiXRInterface::GetXRInput ( ) const
pure virtual

Returns the XR input device.

Implemented in xiiDummyXR.

◆ Initialize()

virtual xiiResult xiiXRInterface::Initialize ( )
pure virtual

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.

Implemented in xiiDummyXR.

◆ IsHmdPresent()

virtual bool xiiXRInterface::IsHmdPresent ( ) const
pure virtual

Returns whether an HMD is available. Can be used to decide whether it makes sense to call Initialize at all.

Implemented in xiiDummyXR.

◆ IsInitialized()

virtual bool xiiXRInterface::IsInitialized ( ) const
pure virtual

Returns whether the XR system is initialized.

Implemented in xiiDummyXR.

◆ OnActorDestroyed()

virtual void xiiXRInterface::OnActorDestroyed ( )
pure virtual

Called when the actor created by 'CreateActor' is destroyed.

Implemented in xiiDummyXR.

◆ SupportsCompanionView()

virtual bool xiiXRInterface::SupportsCompanionView ( )
pure virtual

Returns true if a companion window can be passed into CreateActor.

Implemented in xiiDummyXR.


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