mirror of
https://github.com/ValveSoftware/Proton.git
synced 2025-04-23 14:53:37 +03:00
vrclient: Add definitions for types which can be dereferenced in IVRCompositor::Submit()
This commit is contained in:
parent
f126716098
commit
2caa4964d2
@ -4,7 +4,6 @@ typedef char bool; /* 1 byte on modern visual studio c++ */
|
|||||||
/* enums */
|
/* enums */
|
||||||
typedef int
|
typedef int
|
||||||
EVREye,
|
EVREye,
|
||||||
ETextureType,
|
|
||||||
ETrackingUniverseOrigin,
|
ETrackingUniverseOrigin,
|
||||||
ETrackedDeviceClass,
|
ETrackedDeviceClass,
|
||||||
EDeviceActivityLevel,
|
EDeviceActivityLevel,
|
||||||
@ -15,13 +14,11 @@ typedef int
|
|||||||
EVREventType,
|
EVREventType,
|
||||||
EVRControllerAxisType,
|
EVRControllerAxisType,
|
||||||
EVRFirmwareError,
|
EVRFirmwareError,
|
||||||
EGraphicsAPIConvention,
|
|
||||||
EVRInitError,
|
EVRInitError,
|
||||||
EVRApplicationType,
|
EVRApplicationType,
|
||||||
EVRButtonId,
|
EVRButtonId,
|
||||||
EVRRenderModelError,
|
EVRRenderModelError,
|
||||||
EVRCompositorError,
|
EVRCompositorError,
|
||||||
EVRSubmitFlags,
|
|
||||||
EVRCompositorTimingMode,
|
EVRCompositorTimingMode,
|
||||||
EVRApplicationError,
|
EVRApplicationError,
|
||||||
EVRApplicationProperty,
|
EVRApplicationProperty,
|
||||||
@ -48,7 +45,6 @@ typedef int
|
|||||||
EVRScreenshotPropertyFilenames,
|
EVRScreenshotPropertyFilenames,
|
||||||
EVRScreenshotType,
|
EVRScreenshotType,
|
||||||
Hmd_Eye,
|
Hmd_Eye,
|
||||||
GraphicsAPIConvention,
|
|
||||||
TrackingUniverseOrigin,
|
TrackingUniverseOrigin,
|
||||||
TrackedDeviceClass,
|
TrackedDeviceClass,
|
||||||
TrackedDeviceProperty,
|
TrackedDeviceProperty,
|
||||||
@ -78,8 +74,6 @@ typedef uint32_t PropertyTypeTag_t;
|
|||||||
/* never dereferenced */
|
/* never dereferenced */
|
||||||
typedef struct VROverlayIntersectionParams_t VROverlayIntersectionParams_t;
|
typedef struct VROverlayIntersectionParams_t VROverlayIntersectionParams_t;
|
||||||
typedef struct VROverlayIntersectionResults_t VROverlayIntersectionResults_t;
|
typedef struct VROverlayIntersectionResults_t VROverlayIntersectionResults_t;
|
||||||
typedef struct VRTextureBounds_t VRTextureBounds_t;
|
|
||||||
typedef struct Texture_t Texture_t;
|
|
||||||
typedef struct RenderModel_ComponentState_t RenderModel_ComponentState_t;
|
typedef struct RenderModel_ComponentState_t RenderModel_ComponentState_t;
|
||||||
typedef struct RenderModel_ControllerMode_State_t RenderModel_ControllerMode_State_t;
|
typedef struct RenderModel_ControllerMode_State_t RenderModel_ControllerMode_State_t;
|
||||||
typedef struct RenderModel_t RenderModel_t;
|
typedef struct RenderModel_t RenderModel_t;
|
||||||
@ -95,7 +89,6 @@ typedef struct CameraVideoStreamFrameHeader_t CameraVideoStreamFrameHeader_t;
|
|||||||
typedef struct Compositor_OverlaySettings Compositor_OverlaySettings;
|
typedef struct Compositor_OverlaySettings Compositor_OverlaySettings;
|
||||||
typedef struct ChaperoneSoftBoundsInfo_t ChaperoneSoftBoundsInfo_t;
|
typedef struct ChaperoneSoftBoundsInfo_t ChaperoneSoftBoundsInfo_t;
|
||||||
typedef struct ChaperoneSeatedBoundsInfo_t ChaperoneSeatedBoundsInfo_t;
|
typedef struct ChaperoneSeatedBoundsInfo_t ChaperoneSeatedBoundsInfo_t;
|
||||||
typedef struct Compositor_TextureBounds Compositor_TextureBounds;
|
|
||||||
typedef struct NotificationBitmap NotificationBitmap;
|
typedef struct NotificationBitmap NotificationBitmap;
|
||||||
typedef struct ComponentState_t ComponentState_t;
|
typedef struct ComponentState_t ComponentState_t;
|
||||||
typedef struct CameraVideoStreamFrame_t CameraVideoStreamFrame_t;
|
typedef struct CameraVideoStreamFrame_t CameraVideoStreamFrame_t;
|
||||||
@ -171,4 +164,64 @@ typedef struct HiddenAreaMesh_t
|
|||||||
uint32_t unTriangleCount;
|
uint32_t unTriangleCount;
|
||||||
} HiddenAreaMesh_t;
|
} HiddenAreaMesh_t;
|
||||||
|
|
||||||
|
typedef enum EGraphicsAPIConvention
|
||||||
|
{
|
||||||
|
API_DirectX = 0,
|
||||||
|
API_OpenGL = 1,
|
||||||
|
} EGraphicsAPIConvention;
|
||||||
|
|
||||||
|
typedef EGraphicsAPIConvention GraphicsAPIConvention;
|
||||||
|
|
||||||
|
typedef struct VRTextureBounds_t
|
||||||
|
{
|
||||||
|
float uMin, vMin;
|
||||||
|
float uMax, vMax;
|
||||||
|
} VRTextureBounds_t;
|
||||||
|
|
||||||
|
typedef VRTextureBounds_t Compositor_TextureBounds;
|
||||||
|
|
||||||
|
typedef enum ETextureType
|
||||||
|
{
|
||||||
|
TextureType_DirectX = 0, // Handle is an ID3D11Texture
|
||||||
|
TextureType_OpenGL = 1, // Handle is an OpenGL texture name or an OpenGL render buffer name, depending on submit flags
|
||||||
|
TextureType_Vulkan = 2, // Handle is a pointer to a VRVulkanTextureData_t structure
|
||||||
|
TextureType_IOSurface = 3, // Handle is a macOS cross-process-sharable IOSurfaceRef
|
||||||
|
TextureType_DirectX12 = 4, // Handle is a pointer to a D3D12TextureData_t structure
|
||||||
|
} ETextureType;
|
||||||
|
|
||||||
|
typedef struct Texture_t
|
||||||
|
{
|
||||||
|
void *handle;
|
||||||
|
ETextureType eType;
|
||||||
|
EColorSpace eColorSpace;
|
||||||
|
} Texture_t;
|
||||||
|
|
||||||
|
typedef enum EVRSubmitFlags
|
||||||
|
{
|
||||||
|
// Simple render path. App submits rendered left and right eye images with no lens distortion correction applied.
|
||||||
|
Submit_Default = 0x00,
|
||||||
|
|
||||||
|
// App submits final left and right eye images with lens distortion already applied (lens distortion makes the images appear
|
||||||
|
// barrel distorted with chromatic aberration correction applied). The app would have used the data returned by
|
||||||
|
// vr::IVRSystem::ComputeDistortion() to apply the correct distortion to the rendered images before calling Submit().
|
||||||
|
Submit_LensDistortionAlreadyApplied = 0x01,
|
||||||
|
|
||||||
|
// If the texture pointer passed in is actually a renderbuffer (e.g. for MSAA in OpenGL) then set this flag.
|
||||||
|
Submit_GlRenderBuffer = 0x02,
|
||||||
|
|
||||||
|
// Do not use
|
||||||
|
Submit_Reserved = 0x04,
|
||||||
|
|
||||||
|
Submit_Screenshot = 0x04,
|
||||||
|
Submit_VulkanTexture = 0x04,
|
||||||
|
|
||||||
|
// Set to indicate that pTexture is a pointer to a VRTextureWithPose_t.
|
||||||
|
// This flag can be combined with Submit_TextureWithDepth to pass a VRTextureWithPoseAndDepth_t.
|
||||||
|
Submit_TextureWithPose = 0x08,
|
||||||
|
|
||||||
|
// Set to indicate that pTexture is a pointer to a VRTextureWithDepth_t.
|
||||||
|
// This flag can be combined with Submit_TextureWithPose to pass a VRTextureWithPoseAndDepth_t.
|
||||||
|
Submit_TextureWithDepth = 0x10,
|
||||||
|
} EVRSubmitFlags;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user