work on basic VR
This commit is contained in:
37
public/ixr.h
37
public/ixr.h
@@ -3,12 +3,47 @@
|
||||
|
||||
#include "tier1/interface.h"
|
||||
#include "tier2/iappsystem.h"
|
||||
#include "materialsystem/imaterialsystem.h"
|
||||
#include "trig.h"
|
||||
|
||||
abstract_class IXrManager: public IAppSystem
|
||||
struct XRRenderSurface_t
|
||||
{
|
||||
uint32_t m_uWidth;
|
||||
uint32_t m_uHeight;
|
||||
Vector m_vPosition;
|
||||
Quat m_vRotation;
|
||||
float m_fFov;
|
||||
};
|
||||
|
||||
abstract_class IXRHeadset
|
||||
{
|
||||
public:
|
||||
virtual uint32_t GetSurfaceCount() = 0;
|
||||
virtual XRRenderSurface_t GetSurface( uint32_t i ) = 0;
|
||||
virtual void SetSurfaceImage( uint32_t i, IImage *pImage ) = 0;
|
||||
|
||||
};
|
||||
|
||||
abstract_class IXRController
|
||||
{
|
||||
public:
|
||||
|
||||
};
|
||||
|
||||
abstract_class IXRManager: public IAppSystem2
|
||||
{
|
||||
public:
|
||||
virtual void Frame() = 0;
|
||||
virtual void PreRender() = 0;
|
||||
virtual void PostRender() = 0;
|
||||
virtual void CopySwapchain() = 0;
|
||||
virtual uint32_t GetHeadsetCount() = 0;
|
||||
virtual IXRHeadset *GetHeadset( uint32_t i ) = 0;
|
||||
};
|
||||
|
||||
#define XR_INTERFACE_VERSION "XR001"
|
||||
#define OPEN_XR_INTERFACE_VERSION "Open" XR_INTERFACE_VERSION
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user