Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ValveSoftware/openvr.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbin/linux32/libopenvr_api.sobin1327304 -> 1337614 bytes
-rwxr-xr-xbin/linux32/libopenvr_api.so.dbgbin5791326 -> 5938700 bytes
-rwxr-xr-xbin/linux64/libopenvr_api.sobin346120 -> 1328032 bytes
-rwxr-xr-xbin/linux64/libopenvr_api.so.dbgbin3336016 -> 7038714 bytes
-rw-r--r--bin/linuxarm64/libopenvr_api.sobin313232 -> 338760 bytes
-rw-r--r--bin/linuxarm64/libopenvr_api.so.dbgbin4437760 -> 5515600 bytes
-rw-r--r--bin/linuxarm64/libopenvr_api_unity.sobin479592 -> 400424 bytes
-rw-r--r--bin/linuxarm64/libopenvr_api_unity.so.dbgbin7704992 -> 6302224 bytes
-rw-r--r--bin/win32/openvr_api.dllbin620760 -> 627528 bytes
-rw-r--r--bin/win32/openvr_api.dll.sigbin1450 -> 1450 bytes
-rw-r--r--bin/win32/openvr_api.pdbbin11030528 -> 11046912 bytes
-rw-r--r--bin/win64/openvr_api.dllbin818904 -> 825672 bytes
-rw-r--r--bin/win64/openvr_api.dll.sigbin1450 -> 1450 bytes
-rw-r--r--bin/win64/openvr_api.pdbbin10891264 -> 10932224 bytes
-rw-r--r--headers/openvr.h85
-rw-r--r--headers/openvr_api.cs93
-rw-r--r--headers/openvr_api.json90
-rw-r--r--headers/openvr_capi.h60
-rw-r--r--headers/openvr_driver.h75
-rwxr-xr-xlib/linux32/libopenvr_api.sobin5790732 -> 5877704 bytes
-rwxr-xr-xlib/linux64/libopenvr_api.sobin3335136 -> 6963816 bytes
-rw-r--r--lib/linuxarm64/libopenvr_api.sobin4437760 -> 5445264 bytes
-rw-r--r--lib/linuxarm64/libopenvr_api_unity.sobin7704992 -> 6302224 bytes
-rw-r--r--samples/bin/linux32/libopenvr_api.sobin1327304 -> 1337614 bytes
-rw-r--r--samples/bin/linux64/libopenvr_api.sobin346120 -> 1328032 bytes
-rw-r--r--samples/bin/linuxarm64/libopenvr_api.sobin313232 -> 338760 bytes
-rw-r--r--samples/bin/win32/openvr_api.dllbin620760 -> 627528 bytes
-rw-r--r--samples/bin/win64/openvr_api.dllbin818904 -> 825672 bytes
28 files changed, 362 insertions, 41 deletions
diff --git a/bin/linux32/libopenvr_api.so b/bin/linux32/libopenvr_api.so
index d87f274..01e1339 100755
--- a/bin/linux32/libopenvr_api.so
+++ b/bin/linux32/libopenvr_api.so
Binary files differ
diff --git a/bin/linux32/libopenvr_api.so.dbg b/bin/linux32/libopenvr_api.so.dbg
index a8d7547..f7a7aac 100755
--- a/bin/linux32/libopenvr_api.so.dbg
+++ b/bin/linux32/libopenvr_api.so.dbg
Binary files differ
diff --git a/bin/linux64/libopenvr_api.so b/bin/linux64/libopenvr_api.so
index 906f06d..75bc5f1 100755
--- a/bin/linux64/libopenvr_api.so
+++ b/bin/linux64/libopenvr_api.so
Binary files differ
diff --git a/bin/linux64/libopenvr_api.so.dbg b/bin/linux64/libopenvr_api.so.dbg
index 753f794..f6ccc7f 100755
--- a/bin/linux64/libopenvr_api.so.dbg
+++ b/bin/linux64/libopenvr_api.so.dbg
Binary files differ
diff --git a/bin/linuxarm64/libopenvr_api.so b/bin/linuxarm64/libopenvr_api.so
index d291c97..55e15b6 100644
--- a/bin/linuxarm64/libopenvr_api.so
+++ b/bin/linuxarm64/libopenvr_api.so
Binary files differ
diff --git a/bin/linuxarm64/libopenvr_api.so.dbg b/bin/linuxarm64/libopenvr_api.so.dbg
index cf5d534..f02b6f5 100644
--- a/bin/linuxarm64/libopenvr_api.so.dbg
+++ b/bin/linuxarm64/libopenvr_api.so.dbg
Binary files differ
diff --git a/bin/linuxarm64/libopenvr_api_unity.so b/bin/linuxarm64/libopenvr_api_unity.so
index 058260a..66ce7b3 100644
--- a/bin/linuxarm64/libopenvr_api_unity.so
+++ b/bin/linuxarm64/libopenvr_api_unity.so
Binary files differ
diff --git a/bin/linuxarm64/libopenvr_api_unity.so.dbg b/bin/linuxarm64/libopenvr_api_unity.so.dbg
index 875cdb3..1d08d17 100644
--- a/bin/linuxarm64/libopenvr_api_unity.so.dbg
+++ b/bin/linuxarm64/libopenvr_api_unity.so.dbg
Binary files differ
diff --git a/bin/win32/openvr_api.dll b/bin/win32/openvr_api.dll
index 6e423e6..2c61e24 100644
--- a/bin/win32/openvr_api.dll
+++ b/bin/win32/openvr_api.dll
Binary files differ
diff --git a/bin/win32/openvr_api.dll.sig b/bin/win32/openvr_api.dll.sig
index 3e308fc..a7b3cb3 100644
--- a/bin/win32/openvr_api.dll.sig
+++ b/bin/win32/openvr_api.dll.sig
Binary files differ
diff --git a/bin/win32/openvr_api.pdb b/bin/win32/openvr_api.pdb
index ff635ec..a1fda1f 100644
--- a/bin/win32/openvr_api.pdb
+++ b/bin/win32/openvr_api.pdb
Binary files differ
diff --git a/bin/win64/openvr_api.dll b/bin/win64/openvr_api.dll
index a4ad764..2df5818 100644
--- a/bin/win64/openvr_api.dll
+++ b/bin/win64/openvr_api.dll
Binary files differ
diff --git a/bin/win64/openvr_api.dll.sig b/bin/win64/openvr_api.dll.sig
index eb635ee..58281ae 100644
--- a/bin/win64/openvr_api.dll.sig
+++ b/bin/win64/openvr_api.dll.sig
Binary files differ
diff --git a/bin/win64/openvr_api.pdb b/bin/win64/openvr_api.pdb
index 4a4b91d..aae8511 100644
--- a/bin/win64/openvr_api.pdb
+++ b/bin/win64/openvr_api.pdb
Binary files differ
diff --git a/headers/openvr.h b/headers/openvr.h
index ff6d1fe..df73184 100644
--- a/headers/openvr.h
+++ b/headers/openvr.h
@@ -16,8 +16,8 @@
namespace vr
{
static const uint32_t k_nSteamVRVersionMajor = 1;
- static const uint32_t k_nSteamVRVersionMinor = 16;
- static const uint32_t k_nSteamVRVersionBuild = 8;
+ static const uint32_t k_nSteamVRVersionMinor = 23;
+ static const uint32_t k_nSteamVRVersionBuild = 7;
} // namespace vr
// public_vrtypes.h
@@ -29,6 +29,8 @@ namespace vr
{
#pragma pack( push, 8 )
+typedef uint32_t PropertyTypeTag_t;
+
// right-handed system
// +y is up
// +x is to the right
@@ -387,6 +389,8 @@ enum ETrackedDeviceProperty
Prop_ManufacturerSerialNumber_String = 1049,
Prop_ComputedSerialNumber_String = 1050,
Prop_EstimatedDeviceFirstUseTime_Int32 = 1051,
+ Prop_DevicePowerUsage_Float = 1052,
+ Prop_IgnoreMotionForStandby_Bool = 1053,
// Properties that are unique to TrackedDeviceClass_HMD
Prop_ReportsTimeSinceVSync_Bool = 2000,
@@ -479,10 +483,15 @@ enum ETrackedDeviceProperty
Prop_CameraGlobalGain_Float = 2089,
// Prop_DashboardLayoutPathName_String = 2090, // DELETED
Prop_DashboardScale_Float = 2091,
+ Prop_PeerButtonInfo_String = 2092,
+
Prop_IpdUIRangeMinMeters_Float = 2100,
Prop_IpdUIRangeMaxMeters_Float = 2101,
Prop_Hmd_SupportsHDCP14LegacyCompat_Bool = 2102,
Prop_Hmd_SupportsMicMonitoring_Bool = 2103,
+ Prop_Hmd_SupportsDisplayPortTrainingMode_Bool = 2104,
+ Prop_SupportsRoomViewDirect_Bool = 2105,
+ Prop_SupportsAppThrottling_Bool = 2106,
// Driver requested mura correction properties
Prop_DriverRequestedMuraCorrectionMode_Int32 = 2200,
@@ -671,8 +680,8 @@ enum EVRSubmitFlags
Submit_GlArrayTexture = 0x80,
// Do not use
- Submit_Reserved2 = 0x8000,
-
+ Submit_Reserved2 = 0x08000,
+ Submit_Reserved3 = 0x10000,
};
@@ -824,6 +833,11 @@ enum EVREventType
VREvent_DesktopViewUpdating = 530,
VREvent_DesktopViewReady = 531,
+ VREvent_StartDashboard = 532,
+ VREvent_ElevatePrism = 533,
+
+ VREvent_OverlayClosed = 534,
+
VREvent_Notification_Shown = 600,
VREvent_Notification_Hidden = 601,
VREvent_Notification_BeginInteraction = 602,
@@ -835,6 +849,7 @@ enum EVREventType
VREvent_QuitAcknowledged = 703, // data is process
VREvent_DriverRequestedQuit = 704, // The driver has requested that SteamVR shut down
VREvent_RestartRequested = 705, // A driver or other component wants the user to restart SteamVR
+ VREvent_InvalidateSwapTextureSets = 706,
VREvent_ChaperoneDataHasChanged = 800, // this will never happen with the new chaperone system
VREvent_ChaperoneUniverseHasChanged = 801,
@@ -905,6 +920,7 @@ enum EVREventType
VREvent_Compositor_OutOfVideoMemory = 1417,
VREvent_Compositor_DisplayModeNotSupported = 1418, // k_pch_SteamVR_PreferredRefreshRate
VREvent_Compositor_StageOverrideReady = 1419,
+ VREvent_Compositor_RequestDisconnectReconnect = 1420,
VREvent_TrackedCamera_StartVideoStream = 1500,
VREvent_TrackedCamera_StopVideoStream = 1501,
@@ -1484,6 +1500,7 @@ enum EVROverlayError
VROverlayError_TextureAlreadyLocked = 31,
VROverlayError_TextureLockCapacityReached = 32,
VROverlayError_TextureNotLocked = 33,
+ VROverlayError_TimedOut = 34,
};
/** enum values to pass in to VR_Init to identify whether the application will
@@ -1505,6 +1522,7 @@ enum EVRApplicationType
VRApplication_OpenXRScene = 10, // reserved for openxr (started session)
VRApplication_OpenXROverlay = 11, // reserved for openxr (started overlay session)
VRApplication_Prism = 12, // reserved for the vrprismhost process
+ VRApplication_RoomView = 13, // reserved for the RoomView process
VRApplication_Max
};
@@ -1520,6 +1538,15 @@ inline bool IsOpenXRAppType( EVRApplicationType eType )
}
+/** returns true if the specified application type submits eye buffers */
+inline bool BAppTypeSubmitsEyeBuffers( EVRApplicationType eType )
+{
+ return eType == VRApplication_Scene
+ || eType == VRApplication_OpenXRScene
+ || eType == VRApplication_RoomView;
+}
+
+
/** error codes for firmware */
enum EVRFirmwareError
{
@@ -1641,8 +1668,20 @@ enum EVRInitError
VRInitError_Init_PrismNeedsNewDrivers = 151,
VRInitError_Init_PrismStartupTimedOut = 152,
VRInitError_Init_CouldNotStartPrism = 153,
- VRInitError_Init_CreateDriverDirectDeviceFailed = 154,
- VRInitError_Init_PrismExitedUnexpectedly = 155,
+ VRInitError_Init_PrismClientInitFailed = 154,
+ VRInitError_Init_PrismClientStartFailed = 155,
+ VRInitError_Init_PrismExitedUnexpectedly = 156,
+ VRInitError_Init_BadLuid = 157,
+ VRInitError_Init_NoServerForAppContainer = 158,
+ VRInitError_Init_DuplicateBootstrapper = 159,
+ VRInitError_Init_VRDashboardServicePending = 160,
+ VRInitError_Init_VRDashboardServiceTimeout = 161,
+ VRInitError_Init_VRDashboardServiceStopped = 162,
+ VRInitError_Init_VRDashboardAlreadyStarted = 163,
+ VRInitError_Init_VRDashboardCopyFailed = 164,
+ VRInitError_Init_VRDashboardTokenFailure = 165,
+ VRInitError_Init_VRDashboardEnvironmentFailure = 166,
+ VRInitError_Init_VRDashboardPathFailure = 167,
VRInitError_Driver_Failed = 200,
VRInitError_Driver_Unknown = 201,
@@ -1658,6 +1697,9 @@ enum EVRInitError
VRInitError_Driver_HmdDriverIdOutOfBounds = 211,
VRInitError_Driver_HmdDisplayMirrored = 212,
VRInitError_Driver_HmdDisplayNotFoundLaptop = 213,
+ VRInitError_Driver_PeerDriverNotInstalled = 214,
+ VRInitError_Driver_WirelessHmdNotConnected = 215,
+
// Never make error 259 because we return it from main and it would conflict with STILL_ACTIVE
VRInitError_IPC_ServerInitFailed = 300,
@@ -1766,9 +1808,12 @@ enum EVRInitError
VRInitError_Compositor_WindowInterfaceIsNull = 491,
VRInitError_Compositor_SystemLayerCreateInstance = 492,
VRInitError_Compositor_SystemLayerCreateSession = 493,
+ VRInitError_Compositor_CreateInverseDistortUVs = 494,
+ VRInitError_Compositor_CreateBackbufferDepth = 495,
VRInitError_VendorSpecific_UnableToConnectToOculusRuntime = 1000,
VRInitError_VendorSpecific_WindowsNotInDevMode = 1001,
+ VRInitError_VendorSpecific_OculusLinkNotEnabled = 1002,
VRInitError_VendorSpecific_HmdFound_CantOpenDevice = 1101,
VRInitError_VendorSpecific_HmdFound_UnableToRequestConfigStart = 1102,
@@ -1784,6 +1829,7 @@ enum EVRInitError
VRInitError_VendorSpecific_HmdFound_UserDataError = 1112,
VRInitError_VendorSpecific_HmdFound_ConfigFailedSanityCheck = 1113,
VRInitError_VendorSpecific_OculusRuntimeBadInstall = 1114,
+ VRInitError_VendorSpecific_HmdFound_UnexpectedConfiguration_1 = 1115,
VRInitError_Steam_SteamInstallationNotFound = 2000,
@@ -2727,6 +2773,8 @@ namespace vr
static const char * const k_pch_SteamVR_MotionSmoothingOverride_Int32 = "motionSmoothingOverride";
static const char * const k_pch_SteamVR_FramesToThrottle_Int32 = "framesToThrottle";
static const char * const k_pch_SteamVR_AdditionalFramesToPredict_Int32 = "additionalFramesToPredict";
+ static const char * const k_pch_SteamVR_WorldScale_Float = "worldScale";
+ static const char * const k_pch_SteamVR_FovScale_Int32 = "fovScale";
static const char * const k_pch_SteamVR_DisableAsyncReprojection_Bool = "disableAsync";
static const char * const k_pch_SteamVR_ForceFadeOnBadTracking_Bool = "forceFadeOnBadTracking";
static const char * const k_pch_SteamVR_DefaultMirrorView_Int32 = "mirrorView";
@@ -2770,6 +2818,7 @@ namespace vr
static const char * const k_pch_SteamVR_BlockOculusSDKOnOpenVRLaunchOption_Bool = "blockOculusSDKOnOpenVRLaunchOption";
static const char * const k_pch_SteamVR_BlockOculusSDKOnAllLaunches_Bool = "blockOculusSDKOnAllLaunches";
static const char * const k_pch_SteamVR_HDCPLegacyCompatibility_Bool = "hdcp14legacyCompatibility";
+ static const char * const k_pch_SteamVR_DisplayPortTrainingMode_Int = "displayPortTrainingMode";
static const char * const k_pch_SteamVR_UsePrism_Bool = "usePrism";
//-----------------------------------------------------------------------------
@@ -2917,6 +2966,7 @@ namespace vr
static const char * const k_pch_Dashboard_DesktopScale = "desktopScale";
static const char * const k_pch_Dashboard_DashboardScale = "dashboardScale";
static const char * const k_pch_Dashboard_UseStandaloneSystemLayer = "standaloneSystemLayer";
+ static const char * const k_pch_Dashboard_StickyDashboard = "stickyDashboard";
//-----------------------------------------------------------------------------
// model skin keys
@@ -3635,8 +3685,7 @@ typedef uint32_t VRNotificationId;
#pragma pack( pop )
-/** Allows notification sources to interact with the VR system
- This current interface is not yet implemented. Do not use yet. */
+/** Allows notification sources to interact with the VR system. */
class IVRNotifications
{
public:
@@ -3753,6 +3802,9 @@ namespace vr
// If this is set, alpha composition assumes the texture is pre-multiplied
VROverlayFlags_IsPremultiplied = 1 << 21,
+
+ // If this is set, the alpha values of the overlay texture will be ignored
+ VROverlayFlags_IgnoreTextureAlpha = 1 << 22,
};
enum VRMessageOverlayResponse
@@ -3948,6 +4000,12 @@ namespace vr
/** Returns the curvature of the overlay as a percentage from (0..1] where 1 is a fully closed cylinder. */
virtual EVROverlayError GetOverlayCurvature( VROverlayHandle_t ulOverlayHandle, float *pfCurvature ) = 0;
+ /** Sets the pitch angle (in radians) of the overlay before curvature is applied -- to form a fan or disk. */
+ virtual EVROverlayError SetOverlayPreCurvePitch( VROverlayHandle_t ulOverlayHandle, float fRadians ) = 0;
+
+ /** Returns the overlay's set pre-curve pitch angle (in radians). */
+ virtual EVROverlayError GetOverlayPreCurvePitch( VROverlayHandle_t ulOverlayHandle, float *pfRadians ) = 0;
+
/** Sets the colorspace the overlay texture's data is in. Defaults to 'auto'.
* If the texture needs to be resolved, you should call SetOverlayTexture with the appropriate colorspace instead. */
virtual EVROverlayError SetOverlayTextureColorSpace( VROverlayHandle_t ulOverlayHandle, EColorSpace eTextureColorSpace ) = 0;
@@ -4013,6 +4071,11 @@ namespace vr
/** Get the transform in 3d space associated with a specific 2d point in the overlay's coordinate space (where 0,0 is the lower left). -Z points out of the overlay */
virtual EVROverlayError GetTransformForOverlayCoordinates( VROverlayHandle_t ulOverlayHandle, ETrackingUniverseOrigin eTrackingOrigin, HmdVector2_t coordinatesInOverlay, HmdMatrix34_t *pmatTransform ) = 0;
+ /** This function will block until the top of each frame, and can therefore be used to synchronize with the runtime's update rate.
+ * Note: In non-async mode, some signals may be dropped due to scene app performance, so passing a timeout of 1000/refresh rate
+ * may be useful depending on the overlay app's desired behavior. */
+ virtual EVROverlayError WaitFrameSync( uint32_t nTimeoutMs ) = 0;
+
// ---------------------------------------------
// Overlay input methods
// ---------------------------------------------
@@ -4165,7 +4228,7 @@ namespace vr
virtual void CloseMessageOverlay() = 0;
};
- static const char * const IVROverlay_Version = "IVROverlay_025";
+ static const char * const IVROverlay_Version = "IVROverlay_026";
} // namespace vr
@@ -4285,7 +4348,8 @@ enum EVRRenderModelTextureFormat
VRRenderModelTextureFormat_BC2,
VRRenderModelTextureFormat_BC4,
VRRenderModelTextureFormat_BC7,
- VRRenderModelTextureFormat_BC7_SRGB
+ VRRenderModelTextureFormat_BC7_SRGB,
+ VRRenderModelTextureFormat_RGBA16_FLOAT,
};
/** A single vertex in a render model */
@@ -4308,6 +4372,7 @@ struct RenderModel_TextureMap_t
uint16_t unWidth, unHeight; // width and height of the texture map in pixels
const uint8_t *rubTextureMapData; // Map texture data.
EVRRenderModelTextureFormat format; // Refer to EVRRenderModelTextureFormat
+ uint16_t unMipLevels;
};
#if defined(__linux__) || defined(__APPLE__)
#pragma pack( pop )
diff --git a/headers/openvr_api.cs b/headers/openvr_api.cs
index 4732b62..1d73c1c 100644
--- a/headers/openvr_api.cs
+++ b/headers/openvr_api.cs
@@ -1046,6 +1046,16 @@ public struct IVROverlay
internal _GetOverlayCurvature GetOverlayCurvature;
[UnmanagedFunctionPointer(CallingConvention.StdCall)]
+ internal delegate EVROverlayError _SetOverlayPreCurvePitch(ulong ulOverlayHandle, float fRadians);
+ [MarshalAs(UnmanagedType.FunctionPtr)]
+ internal _SetOverlayPreCurvePitch SetOverlayPreCurvePitch;
+
+ [UnmanagedFunctionPointer(CallingConvention.StdCall)]
+ internal delegate EVROverlayError _GetOverlayPreCurvePitch(ulong ulOverlayHandle, ref float pfRadians);
+ [MarshalAs(UnmanagedType.FunctionPtr)]
+ internal _GetOverlayPreCurvePitch GetOverlayPreCurvePitch;
+
+ [UnmanagedFunctionPointer(CallingConvention.StdCall)]
internal delegate EVROverlayError _SetOverlayTextureColorSpace(ulong ulOverlayHandle, EColorSpace eTextureColorSpace);
[MarshalAs(UnmanagedType.FunctionPtr)]
internal _SetOverlayTextureColorSpace SetOverlayTextureColorSpace;
@@ -1146,6 +1156,11 @@ public struct IVROverlay
internal _GetTransformForOverlayCoordinates GetTransformForOverlayCoordinates;
[UnmanagedFunctionPointer(CallingConvention.StdCall)]
+ internal delegate EVROverlayError _WaitFrameSync(uint nTimeoutMs);
+ [MarshalAs(UnmanagedType.FunctionPtr)]
+ internal _WaitFrameSync WaitFrameSync;
+
+ [UnmanagedFunctionPointer(CallingConvention.StdCall)]
internal delegate bool _PollNextOverlayEvent(ulong ulOverlayHandle, ref VREvent_t pEvent, uint uncbVREvent);
[MarshalAs(UnmanagedType.FunctionPtr)]
internal _PollNextOverlayEvent PollNextOverlayEvent;
@@ -1951,7 +1966,7 @@ public struct IVRPaths
public struct IVRBlockQueue
{
[UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EBlockQueueError _Create(ref ulong pulQueueHandle, IntPtr pchPath, uint unBlockDataSize, uint unBlockHeaderSize, uint unBlockCount);
+ internal delegate EBlockQueueError _Create(ref ulong pulQueueHandle, IntPtr pchPath, uint unBlockDataSize, uint unBlockHeaderSize, uint unBlockCount, uint unFlags);
[MarshalAs(UnmanagedType.FunctionPtr)]
internal _Create Create;
@@ -3235,6 +3250,17 @@ public class CVROverlay
EVROverlayError result = FnTable.GetOverlayCurvature(ulOverlayHandle,ref pfCurvature);
return result;
}
+ public EVROverlayError SetOverlayPreCurvePitch(ulong ulOverlayHandle,float fRadians)
+ {
+ EVROverlayError result = FnTable.SetOverlayPreCurvePitch(ulOverlayHandle,fRadians);
+ return result;
+ }
+ public EVROverlayError GetOverlayPreCurvePitch(ulong ulOverlayHandle,ref float pfRadians)
+ {
+ pfRadians = 0;
+ EVROverlayError result = FnTable.GetOverlayPreCurvePitch(ulOverlayHandle,ref pfRadians);
+ return result;
+ }
public EVROverlayError SetOverlayTextureColorSpace(ulong ulOverlayHandle,EColorSpace eTextureColorSpace)
{
EVROverlayError result = FnTable.SetOverlayTextureColorSpace(ulOverlayHandle,eTextureColorSpace);
@@ -3340,6 +3366,11 @@ public class CVROverlay
EVROverlayError result = FnTable.GetTransformForOverlayCoordinates(ulOverlayHandle,eTrackingOrigin,coordinatesInOverlay,ref pmatTransform);
return result;
}
+ public EVROverlayError WaitFrameSync(uint nTimeoutMs)
+ {
+ EVROverlayError result = FnTable.WaitFrameSync(nTimeoutMs);
+ return result;
+ }
// This is a terrible hack to workaround the fact that VRControllerState_t and VREvent_t were
// originally mis-compiled with the wrong packing for Linux and OSX.
[UnmanagedFunctionPointer(CallingConvention.StdCall)]
@@ -4425,11 +4456,11 @@ public class CVRBlockQueue
{
FnTable = (IVRBlockQueue)Marshal.PtrToStructure(pInterface, typeof(IVRBlockQueue));
}
- public EBlockQueueError Create(ref ulong pulQueueHandle,string pchPath,uint unBlockDataSize,uint unBlockHeaderSize,uint unBlockCount)
+ public EBlockQueueError Create(ref ulong pulQueueHandle,string pchPath,uint unBlockDataSize,uint unBlockHeaderSize,uint unBlockCount,uint unFlags)
{
pulQueueHandle = 0;
IntPtr pchPathUtf8 = Utils.ToUtf8(pchPath);
- EBlockQueueError result = FnTable.Create(ref pulQueueHandle,pchPathUtf8,unBlockDataSize,unBlockHeaderSize,unBlockCount);
+ EBlockQueueError result = FnTable.Create(ref pulQueueHandle,pchPathUtf8,unBlockDataSize,unBlockHeaderSize,unBlockCount,unFlags);
Marshal.FreeHGlobal(pchPathUtf8);
return result;
}
@@ -4629,6 +4660,8 @@ public enum ETrackedDeviceProperty
Prop_ManufacturerSerialNumber_String = 1049,
Prop_ComputedSerialNumber_String = 1050,
Prop_EstimatedDeviceFirstUseTime_Int32 = 1051,
+ Prop_DevicePowerUsage_Float = 1052,
+ Prop_IgnoreMotionForStandby_Bool = 1053,
Prop_ReportsTimeSinceVSync_Bool = 2000,
Prop_SecondsFromVsyncToPhotons_Float = 2001,
Prop_DisplayFrequency_Float = 2002,
@@ -4717,10 +4750,14 @@ public enum ETrackedDeviceProperty
Prop_CameraExposureTime_Float = 2088,
Prop_CameraGlobalGain_Float = 2089,
Prop_DashboardScale_Float = 2091,
+ Prop_PeerButtonInfo_String = 2092,
Prop_IpdUIRangeMinMeters_Float = 2100,
Prop_IpdUIRangeMaxMeters_Float = 2101,
Prop_Hmd_SupportsHDCP14LegacyCompat_Bool = 2102,
Prop_Hmd_SupportsMicMonitoring_Bool = 2103,
+ Prop_Hmd_SupportsDisplayPortTrainingMode_Bool = 2104,
+ Prop_SupportsRoomViewDirect_Bool = 2105,
+ Prop_SupportsAppThrottling_Bool = 2106,
Prop_DriverRequestedMuraCorrectionMode_Int32 = 2200,
Prop_DriverRequestedMuraFeather_InnerLeft_Int32 = 2201,
Prop_DriverRequestedMuraFeather_InnerRight_Int32 = 2202,
@@ -4817,6 +4854,7 @@ public enum EVRSubmitFlags
Submit_VulkanTextureWithArrayData = 64,
Submit_GlArrayTexture = 128,
Submit_Reserved2 = 32768,
+ Submit_Reserved3 = 65536,
}
public enum EVRState
{
@@ -4904,6 +4942,9 @@ public enum EVREventType
VREvent_ShowDevTools = 529,
VREvent_DesktopViewUpdating = 530,
VREvent_DesktopViewReady = 531,
+ VREvent_StartDashboard = 532,
+ VREvent_ElevatePrism = 533,
+ VREvent_OverlayClosed = 534,
VREvent_Notification_Shown = 600,
VREvent_Notification_Hidden = 601,
VREvent_Notification_BeginInteraction = 602,
@@ -4913,6 +4954,7 @@ public enum EVREventType
VREvent_QuitAcknowledged = 703,
VREvent_DriverRequestedQuit = 704,
VREvent_RestartRequested = 705,
+ VREvent_InvalidateSwapTextureSets = 706,
VREvent_ChaperoneDataHasChanged = 800,
VREvent_ChaperoneUniverseHasChanged = 801,
VREvent_ChaperoneTempDataHasChanged = 802,
@@ -4967,6 +5009,7 @@ public enum EVREventType
VREvent_Compositor_OutOfVideoMemory = 1417,
VREvent_Compositor_DisplayModeNotSupported = 1418,
VREvent_Compositor_StageOverrideReady = 1419,
+ VREvent_Compositor_RequestDisconnectReconnect = 1420,
VREvent_TrackedCamera_StartVideoStream = 1500,
VREvent_TrackedCamera_StopVideoStream = 1501,
VREvent_TrackedCamera_PauseVideoStream = 1502,
@@ -5157,6 +5200,7 @@ public enum EVROverlayError
TextureAlreadyLocked = 31,
TextureLockCapacityReached = 32,
TextureNotLocked = 33,
+ TimedOut = 34,
}
public enum EVRApplicationType
{
@@ -5173,7 +5217,8 @@ public enum EVRApplicationType
VRApplication_OpenXRScene = 10,
VRApplication_OpenXROverlay = 11,
VRApplication_Prism = 12,
- VRApplication_Max = 13,
+ VRApplication_RoomView = 13,
+ VRApplication_Max = 14,
}
public enum EVRFirmwareError
{
@@ -5260,8 +5305,20 @@ public enum EVRInitError
Init_PrismNeedsNewDrivers = 151,
Init_PrismStartupTimedOut = 152,
Init_CouldNotStartPrism = 153,
- Init_CreateDriverDirectDeviceFailed = 154,
- Init_PrismExitedUnexpectedly = 155,
+ Init_PrismClientInitFailed = 154,
+ Init_PrismClientStartFailed = 155,
+ Init_PrismExitedUnexpectedly = 156,
+ Init_BadLuid = 157,
+ Init_NoServerForAppContainer = 158,
+ Init_DuplicateBootstrapper = 159,
+ Init_VRDashboardServicePending = 160,
+ Init_VRDashboardServiceTimeout = 161,
+ Init_VRDashboardServiceStopped = 162,
+ Init_VRDashboardAlreadyStarted = 163,
+ Init_VRDashboardCopyFailed = 164,
+ Init_VRDashboardTokenFailure = 165,
+ Init_VRDashboardEnvironmentFailure = 166,
+ Init_VRDashboardPathFailure = 167,
Driver_Failed = 200,
Driver_Unknown = 201,
Driver_HmdUnknown = 202,
@@ -5275,6 +5332,8 @@ public enum EVRInitError
Driver_HmdDriverIdOutOfBounds = 211,
Driver_HmdDisplayMirrored = 212,
Driver_HmdDisplayNotFoundLaptop = 213,
+ Driver_PeerDriverNotInstalled = 214,
+ Driver_WirelessHmdNotConnected = 215,
IPC_ServerInitFailed = 300,
IPC_ConnectFailed = 301,
IPC_SharedStateInitFailed = 302,
@@ -5380,8 +5439,11 @@ public enum EVRInitError
Compositor_WindowInterfaceIsNull = 491,
Compositor_SystemLayerCreateInstance = 492,
Compositor_SystemLayerCreateSession = 493,
+ Compositor_CreateInverseDistortUVs = 494,
+ Compositor_CreateBackbufferDepth = 495,
VendorSpecific_UnableToConnectToOculusRuntime = 1000,
VendorSpecific_WindowsNotInDevMode = 1001,
+ VendorSpecific_OculusLinkNotEnabled = 1002,
VendorSpecific_HmdFound_CantOpenDevice = 1101,
VendorSpecific_HmdFound_UnableToRequestConfigStart = 1102,
VendorSpecific_HmdFound_NoStoredConfig = 1103,
@@ -5396,6 +5458,7 @@ public enum EVRInitError
VendorSpecific_HmdFound_UserDataError = 1112,
VendorSpecific_HmdFound_ConfigFailedSanityCheck = 1113,
VendorSpecific_OculusRuntimeBadInstall = 1114,
+ VendorSpecific_HmdFound_UnexpectedConfiguration_1 = 1115,
Steam_SteamInstallationNotFound = 2000,
LastError = 2001,
}
@@ -5609,6 +5672,7 @@ public enum VROverlayFlags
HideLaserIntersection = 524288,
WantsModalBehavior = 1048576,
IsPremultiplied = 2097152,
+ IgnoreTextureAlpha = 4194304,
}
public enum VRMessageOverlayResponse
{
@@ -5676,6 +5740,7 @@ public enum EVRRenderModelTextureFormat
BC4 = 2,
BC7 = 3,
BC7_SRGB = 4,
+ RGBA16_FLOAT = 5,
}
public enum EVRNotificationType
{
@@ -5802,6 +5867,10 @@ public enum EBlockQueueReadType
BlockQueueRead_New = 1,
BlockQueueRead_Next = 2,
}
+public enum EBlockQueueCreationFlag
+{
+ BlockQueueFlag_OwnerIsReader = 1,
+}
[StructLayout(LayoutKind.Explicit)] public struct VREvent_Data_t
{
@@ -6506,6 +6575,7 @@ public enum EBlockQueueReadType
public ushort unHeight;
public IntPtr rubTextureMapData; // const uint8_t *
public EVRRenderModelTextureFormat format;
+ public ushort unMipLevels;
}
// This structure is for backwards binary compatibility on Linux and OSX only
[StructLayout(LayoutKind.Sequential, Pack = 4)] public struct RenderModel_TextureMap_t_Packed
@@ -6514,12 +6584,14 @@ public enum EBlockQueueReadType
public ushort unHeight;
public IntPtr rubTextureMapData; // const uint8_t *
public EVRRenderModelTextureFormat format;
+ public ushort unMipLevels;
public RenderModel_TextureMap_t_Packed(RenderModel_TextureMap_t unpacked)
{
this.unWidth = unpacked.unWidth;
this.unHeight = unpacked.unHeight;
this.rubTextureMapData = unpacked.rubTextureMapData;
this.format = unpacked.format;
+ this.unMipLevels = unpacked.unMipLevels;
}
public void Unpack(ref RenderModel_TextureMap_t unpacked)
{
@@ -6527,6 +6599,7 @@ public enum EBlockQueueReadType
unpacked.unHeight = this.unHeight;
unpacked.rubTextureMapData = this.rubTextureMapData;
unpacked.format = this.format;
+ unpacked.unMipLevels = this.unMipLevels;
}
}
[StructLayout(LayoutKind.Sequential)] public struct RenderModel_t
@@ -7565,7 +7638,7 @@ public class OpenVR
public const uint k_unVROverlayMaxNameLength = 128;
public const uint k_unMaxOverlayCount = 128;
public const uint k_unMaxOverlayIntersectionMaskPrimitivesCount = 32;
- public const string IVROverlay_Version = "IVROverlay_025";
+ public const string IVROverlay_Version = "IVROverlay_026";
public const string IVROverlayView_Version = "IVROverlayView_003";
public const uint k_unHeadsetViewMaxWidth = 3840;
public const uint k_unHeadsetViewMaxHeight = 2160;
@@ -7613,6 +7686,8 @@ public class OpenVR
public const string k_pch_SteamVR_MotionSmoothingOverride_Int32 = "motionSmoothingOverride";
public const string k_pch_SteamVR_FramesToThrottle_Int32 = "framesToThrottle";
public const string k_pch_SteamVR_AdditionalFramesToPredict_Int32 = "additionalFramesToPredict";
+ public const string k_pch_SteamVR_WorldScale_Float = "worldScale";
+ public const string k_pch_SteamVR_FovScale_Int32 = "fovScale";
public const string k_pch_SteamVR_DisableAsyncReprojection_Bool = "disableAsync";
public const string k_pch_SteamVR_ForceFadeOnBadTracking_Bool = "forceFadeOnBadTracking";
public const string k_pch_SteamVR_DefaultMirrorView_Int32 = "mirrorView";
@@ -7656,6 +7731,7 @@ public class OpenVR
public const string k_pch_SteamVR_BlockOculusSDKOnOpenVRLaunchOption_Bool = "blockOculusSDKOnOpenVRLaunchOption";
public const string k_pch_SteamVR_BlockOculusSDKOnAllLaunches_Bool = "blockOculusSDKOnAllLaunches";
public const string k_pch_SteamVR_HDCPLegacyCompatibility_Bool = "hdcp14legacyCompatibility";
+ public const string k_pch_SteamVR_DisplayPortTrainingMode_Int = "displayPortTrainingMode";
public const string k_pch_SteamVR_UsePrism_Bool = "usePrism";
public const string k_pch_DirectMode_Section = "direct_mode";
public const string k_pch_DirectMode_Enable_Bool = "enable";
@@ -7764,6 +7840,7 @@ public class OpenVR
public const string k_pch_Dashboard_DesktopScale = "desktopScale";
public const string k_pch_Dashboard_DashboardScale = "dashboardScale";
public const string k_pch_Dashboard_UseStandaloneSystemLayer = "standaloneSystemLayer";
+ public const string k_pch_Dashboard_StickyDashboard = "stickyDashboard";
public const string k_pch_modelskin_Section = "modelskins";
public const string k_pch_Driver_Enable_Bool = "enable";
public const string k_pch_Driver_BlockedBySafemode_Bool = "blocked_by_safe_mode";
@@ -7850,7 +7927,7 @@ public class OpenVR
public const string k_pchPathClientAppKey = "/client_info/app_key";
public const ulong k_ulInvalidPathHandle = 0;
public const string IVRPaths_Version = "IVRPaths_001";
- public const string IVRBlockQueue_Version = "IVRBlockQueue_004";
+ public const string IVRBlockQueue_Version = "IVRBlockQueue_005";
static uint VRToken { get; set; }
diff --git a/headers/openvr_api.json b/headers/openvr_api.json
index 463243b..88af945 100644
--- a/headers/openvr_api.json
+++ b/headers/openvr_api.json
@@ -1,4 +1,5 @@
-{"typedefs":[{"typedef": "vr::SpatialAnchorHandle_t","type": "uint32_t"}
+{"typedefs":[{"typedef": "vr::PropertyTypeTag_t","type": "uint32_t"}
+,{"typedef": "vr::SpatialAnchorHandle_t","type": "uint32_t"}
,{"typedef": "vr::glSharedTextureHandle_t","type": "void *"}
,{"typedef": "vr::glInt_t","type": "int32_t"}
,{"typedef": "vr::glUInt_t","type": "uint32_t"}
@@ -152,6 +153,8 @@
,{"name": "Prop_ManufacturerSerialNumber_String","value": "1049"}
,{"name": "Prop_ComputedSerialNumber_String","value": "1050"}
,{"name": "Prop_EstimatedDeviceFirstUseTime_Int32","value": "1051"}
+ ,{"name": "Prop_DevicePowerUsage_Float","value": "1052"}
+ ,{"name": "Prop_IgnoreMotionForStandby_Bool","value": "1053"}
,{"name": "Prop_ReportsTimeSinceVSync_Bool","value": "2000"}
,{"name": "Prop_SecondsFromVsyncToPhotons_Float","value": "2001"}
,{"name": "Prop_DisplayFrequency_Float","value": "2002"}
@@ -240,10 +243,14 @@
,{"name": "Prop_CameraExposureTime_Float","value": "2088"}
,{"name": "Prop_CameraGlobalGain_Float","value": "2089"}
,{"name": "Prop_DashboardScale_Float","value": "2091"}
+ ,{"name": "Prop_PeerButtonInfo_String","value": "2092"}
,{"name": "Prop_IpdUIRangeMinMeters_Float","value": "2100"}
,{"name": "Prop_IpdUIRangeMaxMeters_Float","value": "2101"}
,{"name": "Prop_Hmd_SupportsHDCP14LegacyCompat_Bool","value": "2102"}
,{"name": "Prop_Hmd_SupportsMicMonitoring_Bool","value": "2103"}
+ ,{"name": "Prop_Hmd_SupportsDisplayPortTrainingMode_Bool","value": "2104"}
+ ,{"name": "Prop_SupportsRoomViewDirect_Bool","value": "2105"}
+ ,{"name": "Prop_SupportsAppThrottling_Bool","value": "2106"}
,{"name": "Prop_DriverRequestedMuraCorrectionMode_Int32","value": "2200"}
,{"name": "Prop_DriverRequestedMuraFeather_InnerLeft_Int32","value": "2201"}
,{"name": "Prop_DriverRequestedMuraFeather_InnerRight_Int32","value": "2202"}
@@ -337,6 +344,7 @@
,{"name": "Submit_VulkanTextureWithArrayData","value": "64"}
,{"name": "Submit_GlArrayTexture","value": "128"}
,{"name": "Submit_Reserved2","value": "32768"}
+ ,{"name": "Submit_Reserved3","value": "65536"}
]}
, {"enumname": "vr::EVRState","values": [
{"name": "VRState_Undefined","value": "-1"}
@@ -422,6 +430,9 @@
,{"name": "VREvent_ShowDevTools","value": "529"}
,{"name": "VREvent_DesktopViewUpdating","value": "530"}
,{"name": "VREvent_DesktopViewReady","value": "531"}
+ ,{"name": "VREvent_StartDashboard","value": "532"}
+ ,{"name": "VREvent_ElevatePrism","value": "533"}
+ ,{"name": "VREvent_OverlayClosed","value": "534"}
,{"name": "VREvent_Notification_Shown","value": "600"}
,{"name": "VREvent_Notification_Hidden","value": "601"}
,{"name": "VREvent_Notification_BeginInteraction","value": "602"}
@@ -431,6 +442,7 @@
,{"name": "VREvent_QuitAcknowledged","value": "703"}
,{"name": "VREvent_DriverRequestedQuit","value": "704"}
,{"name": "VREvent_RestartRequested","value": "705"}
+ ,{"name": "VREvent_InvalidateSwapTextureSets","value": "706"}
,{"name": "VREvent_ChaperoneDataHasChanged","value": "800"}
,{"name": "VREvent_ChaperoneUniverseHasChanged","value": "801"}
,{"name": "VREvent_ChaperoneTempDataHasChanged","value": "802"}
@@ -485,6 +497,7 @@
,{"name": "VREvent_Compositor_OutOfVideoMemory","value": "1417"}
,{"name": "VREvent_Compositor_DisplayModeNotSupported","value": "1418"}
,{"name": "VREvent_Compositor_StageOverrideReady","value": "1419"}
+ ,{"name": "VREvent_Compositor_RequestDisconnectReconnect","value": "1420"}
,{"name": "VREvent_TrackedCamera_StartVideoStream","value": "1500"}
,{"name": "VREvent_TrackedCamera_StopVideoStream","value": "1501"}
,{"name": "VREvent_TrackedCamera_PauseVideoStream","value": "1502"}
@@ -662,6 +675,7 @@
,{"name": "VROverlayError_TextureAlreadyLocked","value": "31"}
,{"name": "VROverlayError_TextureLockCapacityReached","value": "32"}
,{"name": "VROverlayError_TextureNotLocked","value": "33"}
+ ,{"name": "VROverlayError_TimedOut","value": "34"}
]}
, {"enumname": "vr::EVRApplicationType","values": [
{"name": "VRApplication_Other","value": "0"}
@@ -677,7 +691,8 @@
,{"name": "VRApplication_OpenXRScene","value": "10"}
,{"name": "VRApplication_OpenXROverlay","value": "11"}
,{"name": "VRApplication_Prism","value": "12"}
- ,{"name": "VRApplication_Max","value": "13"}
+ ,{"name": "VRApplication_RoomView","value": "13"}
+ ,{"name": "VRApplication_Max","value": "14"}
]}
, {"enumname": "vr::EVRFirmwareError","values": [
{"name": "VRFirmwareError_None","value": "0"}
@@ -759,8 +774,20 @@
,{"name": "VRInitError_Init_PrismNeedsNewDrivers","value": "151"}
,{"name": "VRInitError_Init_PrismStartupTimedOut","value": "152"}
,{"name": "VRInitError_Init_CouldNotStartPrism","value": "153"}
- ,{"name": "VRInitError_Init_CreateDriverDirectDeviceFailed","value": "154"}
- ,{"name": "VRInitError_Init_PrismExitedUnexpectedly","value": "155"}
+ ,{"name": "VRInitError_Init_PrismClientInitFailed","value": "154"}
+ ,{"name": "VRInitError_Init_PrismClientStartFailed","value": "155"}
+ ,{"name": "VRInitError_Init_PrismExitedUnexpectedly","value": "156"}
+ ,{"name": "VRInitError_Init_BadLuid","value": "157"}
+ ,{"name": "VRInitError_Init_NoServerForAppContainer","value": "158"}
+ ,{"name": "VRInitError_Init_DuplicateBootstrapper","value": "159"}
+ ,{"name": "VRInitError_Init_VRDashboardServicePending","value": "160"}
+ ,{"name": "VRInitError_Init_VRDashboardServiceTimeout","value": "161"}
+ ,{"name": "VRInitError_Init_VRDashboardServiceStopped","value": "162"}
+ ,{"name": "VRInitError_Init_VRDashboardAlreadyStarted","value": "163"}
+ ,{"name": "VRInitError_Init_VRDashboardCopyFailed","value": "164"}
+ ,{"name": "VRInitError_Init_VRDashboardTokenFailure","value": "165"}
+ ,{"name": "VRInitError_Init_VRDashboardEnvironmentFailure","value": "166"}
+ ,{"name": "VRInitError_Init_VRDashboardPathFailure","value": "167"}
,{"name": "VRInitError_Driver_Failed","value": "200"}
,{"name": "VRInitError_Driver_Unknown","value": "201"}
,{"name": "VRInitError_Driver_HmdUnknown","value": "202"}
@@ -774,6 +801,8 @@
,{"name": "VRInitError_Driver_HmdDriverIdOutOfBounds","value": "211"}
,{"name": "VRInitError_Driver_HmdDisplayMirrored","value": "212"}
,{"name": "VRInitError_Driver_HmdDisplayNotFoundLaptop","value": "213"}
+ ,{"name": "VRInitError_Driver_PeerDriverNotInstalled","value": "214"}
+ ,{"name": "VRInitError_Driver_WirelessHmdNotConnected","value": "215"}
,{"name": "VRInitError_IPC_ServerInitFailed","value": "300"}
,{"name": "VRInitError_IPC_ConnectFailed","value": "301"}
,{"name": "VRInitError_IPC_SharedStateInitFailed","value": "302"}
@@ -879,8 +908,11 @@
,{"name": "VRInitError_Compositor_WindowInterfaceIsNull","value": "491"}
,{"name": "VRInitError_Compositor_SystemLayerCreateInstance","value": "492"}
,{"name": "VRInitError_Compositor_SystemLayerCreateSession","value": "493"}
+ ,{"name": "VRInitError_Compositor_CreateInverseDistortUVs","value": "494"}
+ ,{"name": "VRInitError_Compositor_CreateBackbufferDepth","value": "495"}
,{"name": "VRInitError_VendorSpecific_UnableToConnectToOculusRuntime","value": "1000"}
,{"name": "VRInitError_VendorSpecific_WindowsNotInDevMode","value": "1001"}
+ ,{"name": "VRInitError_VendorSpecific_OculusLinkNotEnabled","value": "1002"}
,{"name": "VRInitError_VendorSpecific_HmdFound_CantOpenDevice","value": "1101"}
,{"name": "VRInitError_VendorSpecific_HmdFound_UnableToRequestConfigStart","value": "1102"}
,{"name": "VRInitError_VendorSpecific_HmdFound_NoStoredConfig","value": "1103"}
@@ -895,6 +927,7 @@
,{"name": "VRInitError_VendorSpecific_HmdFound_UserDataError","value": "1112"}
,{"name": "VRInitError_VendorSpecific_HmdFound_ConfigFailedSanityCheck","value": "1113"}
,{"name": "VRInitError_VendorSpecific_OculusRuntimeBadInstall","value": "1114"}
+ ,{"name": "VRInitError_VendorSpecific_HmdFound_UnexpectedConfiguration_1","value": "1115"}
,{"name": "VRInitError_Steam_SteamInstallationNotFound","value": "2000"}
,{"name": "VRInitError_LastError","value": "2001"}
]}
@@ -1088,6 +1121,7 @@
,{"name": "VROverlayFlags_HideLaserIntersection","value": "524288"}
,{"name": "VROverlayFlags_WantsModalBehavior","value": "1048576"}
,{"name": "VROverlayFlags_IsPremultiplied","value": "2097152"}
+ ,{"name": "VROverlayFlags_IgnoreTextureAlpha","value": "4194304"}
]}
, {"enumname": "vr::VRMessageOverlayResponse","values": [
{"name": "VRMessageOverlayResponse_ButtonPress_0","value": "0"}
@@ -1146,6 +1180,7 @@
,{"name": "VRRenderModelTextureFormat_BC4","value": "2"}
,{"name": "VRRenderModelTextureFormat_BC7","value": "3"}
,{"name": "VRRenderModelTextureFormat_BC7_SRGB","value": "4"}
+ ,{"name": "VRRenderModelTextureFormat_RGBA16_FLOAT","value": "5"}
]}
, {"enumname": "vr::EVRNotificationType","values": [
{"name": "EVRNotificationType_Transient","value": "0"}
@@ -1255,6 +1290,9 @@
,{"name": "BlockQueueRead_New","value": "1"}
,{"name": "BlockQueueRead_Next","value": "2"}
]}
+, {"enumname": "vr::EBlockQueueCreationFlag","values": [
+ {"name": "BlockQueueFlag_OwnerIsReader","value": "1"}
+]}
],
"consts":[{
"constname": "k_nDriverNone","consttype": "const uint32_t", "constval": "4294967295"}
@@ -1369,7 +1407,7 @@
,{
"constname": "k_unMaxOverlayIntersectionMaskPrimitivesCount","consttype": "const uint32_t", "constval": "32"}
,{
- "constname": "IVROverlay_Version","consttype": "const char *const", "constval": "IVROverlay_025"}
+ "constname": "IVROverlay_Version","consttype": "const char *const", "constval": "IVROverlay_026"}
,{
"constname": "IVROverlayView_Version","consttype": "const char *const", "constval": "IVROverlayView_003"}
,{
@@ -1465,6 +1503,10 @@
,{
"constname": "k_pch_SteamVR_AdditionalFramesToPredict_Int32","consttype": "const char *const", "constval": "additionalFramesToPredict"}
,{
+ "constname": "k_pch_SteamVR_WorldScale_Float","consttype": "const char *const", "constval": "worldScale"}
+,{
+ "constname": "k_pch_SteamVR_FovScale_Int32","consttype": "const char *const", "constval": "fovScale"}
+,{
"constname": "k_pch_SteamVR_DisableAsyncReprojection_Bool","consttype": "const char *const", "constval": "disableAsync"}
,{
"constname": "k_pch_SteamVR_ForceFadeOnBadTracking_Bool","consttype": "const char *const", "constval": "forceFadeOnBadTracking"}
@@ -1551,6 +1593,8 @@
,{
"constname": "k_pch_SteamVR_HDCPLegacyCompatibility_Bool","consttype": "const char *const", "constval": "hdcp14legacyCompatibility"}
,{
+ "constname": "k_pch_SteamVR_DisplayPortTrainingMode_Int","consttype": "const char *const", "constval": "displayPortTrainingMode"}
+,{
"constname": "k_pch_SteamVR_UsePrism_Bool","consttype": "const char *const", "constval": "usePrism"}
,{
"constname": "k_pch_DirectMode_Section","consttype": "const char *const", "constval": "direct_mode"}
@@ -1767,6 +1811,8 @@
,{
"constname": "k_pch_Dashboard_UseStandaloneSystemLayer","consttype": "const char *const", "constval": "standaloneSystemLayer"}
,{
+ "constname": "k_pch_Dashboard_StickyDashboard","consttype": "const char *const", "constval": "stickyDashboard"}
+,{
"constname": "k_pch_modelskin_Section","consttype": "const char *const", "constval": "modelskins"}
,{
"constname": "k_pch_Driver_Enable_Bool","consttype": "const char *const", "constval": "enable"}
@@ -1939,7 +1985,7 @@
,{
"constname": "IVRPaths_Version","consttype": "const char *const", "constval": "IVRPaths_001"}
,{
- "constname": "IVRBlockQueue_Version","consttype": "const char *", "constval": "IVRBlockQueue_004"}
+ "constname": "IVRBlockQueue_Version","consttype": "const char *", "constval": "IVRBlockQueue_005"}
],
"structs":[{"struct": "vr::HmdMatrix34_t","fields": [
{ "fieldname": "m", "fieldtype": "float [3][4]"}]}
@@ -2303,7 +2349,8 @@
{ "fieldname": "unWidth", "fieldtype": "uint16_t"},
{ "fieldname": "unHeight", "fieldtype": "uint16_t"},
{ "fieldname": "rubTextureMapData", "fieldtype": "const uint8_t *"},
-{ "fieldname": "format", "fieldtype": "enum vr::EVRRenderModelTextureFormat"}]}
+{ "fieldname": "format", "fieldtype": "enum vr::EVRRenderModelTextureFormat"},
+{ "fieldname": "unMipLevels", "fieldtype": "uint16_t"}]}
,{"struct": "vr::RenderModel_t","fields": [
{ "fieldname": "rVertexData", "fieldtype": "const struct vr::RenderModel_Vertex_t *"},
{ "fieldname": "unVertexCount", "fieldtype": "uint32_t"},
@@ -4081,6 +4128,24 @@
}
,{
"classname": "vr::IVROverlay",
+ "methodname": "SetOverlayPreCurvePitch",
+ "returntype": "vr::EVROverlayError",
+ "params": [
+{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
+{ "paramname": "fRadians" ,"paramtype": "float"}
+ ]
+}
+,{
+ "classname": "vr::IVROverlay",
+ "methodname": "GetOverlayPreCurvePitch",
+ "returntype": "vr::EVROverlayError",
+ "params": [
+{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
+{ "paramname": "pfRadians" ,"paramtype": "float *"}
+ ]
+}
+,{
+ "classname": "vr::IVROverlay",
"methodname": "SetOverlayTextureColorSpace",
"returntype": "vr::EVROverlayError",
"params": [
@@ -4272,6 +4337,14 @@
}
,{
"classname": "vr::IVROverlay",
+ "methodname": "WaitFrameSync",
+ "returntype": "vr::EVROverlayError",
+ "params": [
+{ "paramname": "nTimeoutMs" ,"paramtype": "uint32_t"}
+ ]
+}
+,{
+ "classname": "vr::IVROverlay",
"methodname": "PollNextOverlayEvent",
"returntype": "bool",
"params": [
@@ -5677,7 +5750,8 @@
{ "paramname": "pchPath" ,"paramtype": "const char *"},
{ "paramname": "unBlockDataSize" ,"paramtype": "uint32_t"},
{ "paramname": "unBlockHeaderSize" ,"paramtype": "uint32_t"},
-{ "paramname": "unBlockCount" ,"paramtype": "uint32_t"}
+{ "paramname": "unBlockCount" ,"paramtype": "uint32_t"},
+{ "paramname": "unFlags" ,"paramtype": "uint32_t"}
]
}
,{
diff --git a/headers/openvr_capi.h b/headers/openvr_capi.h
index 13c71fc..da13418 100644
--- a/headers/openvr_capi.h
+++ b/headers/openvr_capi.h
@@ -120,7 +120,7 @@ static const unsigned long k_unVROverlayMaxKeyLength = 128;
static const unsigned long k_unVROverlayMaxNameLength = 128;
static const unsigned long k_unMaxOverlayCount = 128;
static const unsigned long k_unMaxOverlayIntersectionMaskPrimitivesCount = 32;
-static const char * IVROverlay_Version = "IVROverlay_025";
+static const char * IVROverlay_Version = "IVROverlay_026";
static const char * IVROverlayView_Version = "IVROverlayView_003";
static const unsigned long k_unHeadsetViewMaxWidth = 3840;
static const unsigned long k_unHeadsetViewMaxHeight = 2160;
@@ -168,6 +168,8 @@ static const char * k_pch_SteamVR_MotionSmoothing_Bool = "motionSmoothing";
static const char * k_pch_SteamVR_MotionSmoothingOverride_Int32 = "motionSmoothingOverride";
static const char * k_pch_SteamVR_FramesToThrottle_Int32 = "framesToThrottle";
static const char * k_pch_SteamVR_AdditionalFramesToPredict_Int32 = "additionalFramesToPredict";
+static const char * k_pch_SteamVR_WorldScale_Float = "worldScale";
+static const char * k_pch_SteamVR_FovScale_Int32 = "fovScale";
static const char * k_pch_SteamVR_DisableAsyncReprojection_Bool = "disableAsync";
static const char * k_pch_SteamVR_ForceFadeOnBadTracking_Bool = "forceFadeOnBadTracking";
static const char * k_pch_SteamVR_DefaultMirrorView_Int32 = "mirrorView";
@@ -211,6 +213,7 @@ static const char * k_pch_SteamVR_OverlayRenderQuality = "overlayRenderQuality_2
static const char * k_pch_SteamVR_BlockOculusSDKOnOpenVRLaunchOption_Bool = "blockOculusSDKOnOpenVRLaunchOption";
static const char * k_pch_SteamVR_BlockOculusSDKOnAllLaunches_Bool = "blockOculusSDKOnAllLaunches";
static const char * k_pch_SteamVR_HDCPLegacyCompatibility_Bool = "hdcp14legacyCompatibility";
+static const char * k_pch_SteamVR_DisplayPortTrainingMode_Int = "displayPortTrainingMode";
static const char * k_pch_SteamVR_UsePrism_Bool = "usePrism";
static const char * k_pch_DirectMode_Section = "direct_mode";
static const char * k_pch_DirectMode_Enable_Bool = "enable";
@@ -319,6 +322,7 @@ static const char * k_pch_Dashboard_Position = "position";
static const char * k_pch_Dashboard_DesktopScale = "desktopScale";
static const char * k_pch_Dashboard_DashboardScale = "dashboardScale";
static const char * k_pch_Dashboard_UseStandaloneSystemLayer = "standaloneSystemLayer";
+static const char * k_pch_Dashboard_StickyDashboard = "stickyDashboard";
static const char * k_pch_modelskin_Section = "modelskins";
static const char * k_pch_Driver_Enable_Bool = "enable";
static const char * k_pch_Driver_BlockedBySafemode_Bool = "blocked_by_safe_mode";
@@ -405,7 +409,7 @@ static const char * k_pchPathUserKeyboard = "/user/keyboard";
static const char * k_pchPathClientAppKey = "/client_info/app_key";
static const unsigned long long k_ulInvalidPathHandle = 0;
static const char * IVRPaths_Version = "IVRPaths_001";
-static const char * IVRBlockQueue_Version = "IVRBlockQueue_004";
+static const char * IVRBlockQueue_Version = "IVRBlockQueue_005";
// OpenVR Enums
@@ -536,6 +540,8 @@ typedef enum ETrackedDeviceProperty
ETrackedDeviceProperty_Prop_ManufacturerSerialNumber_String = 1049,
ETrackedDeviceProperty_Prop_ComputedSerialNumber_String = 1050,
ETrackedDeviceProperty_Prop_EstimatedDeviceFirstUseTime_Int32 = 1051,
+ ETrackedDeviceProperty_Prop_DevicePowerUsage_Float = 1052,
+ ETrackedDeviceProperty_Prop_IgnoreMotionForStandby_Bool = 1053,
ETrackedDeviceProperty_Prop_ReportsTimeSinceVSync_Bool = 2000,
ETrackedDeviceProperty_Prop_SecondsFromVsyncToPhotons_Float = 2001,
ETrackedDeviceProperty_Prop_DisplayFrequency_Float = 2002,
@@ -624,10 +630,14 @@ typedef enum ETrackedDeviceProperty
ETrackedDeviceProperty_Prop_CameraExposureTime_Float = 2088,
ETrackedDeviceProperty_Prop_CameraGlobalGain_Float = 2089,
ETrackedDeviceProperty_Prop_DashboardScale_Float = 2091,
+ ETrackedDeviceProperty_Prop_PeerButtonInfo_String = 2092,
ETrackedDeviceProperty_Prop_IpdUIRangeMinMeters_Float = 2100,
ETrackedDeviceProperty_Prop_IpdUIRangeMaxMeters_Float = 2101,
ETrackedDeviceProperty_Prop_Hmd_SupportsHDCP14LegacyCompat_Bool = 2102,
ETrackedDeviceProperty_Prop_Hmd_SupportsMicMonitoring_Bool = 2103,
+ ETrackedDeviceProperty_Prop_Hmd_SupportsDisplayPortTrainingMode_Bool = 2104,
+ ETrackedDeviceProperty_Prop_SupportsRoomViewDirect_Bool = 2105,
+ ETrackedDeviceProperty_Prop_SupportsAppThrottling_Bool = 2106,
ETrackedDeviceProperty_Prop_DriverRequestedMuraCorrectionMode_Int32 = 2200,
ETrackedDeviceProperty_Prop_DriverRequestedMuraFeather_InnerLeft_Int32 = 2201,
ETrackedDeviceProperty_Prop_DriverRequestedMuraFeather_InnerRight_Int32 = 2202,
@@ -727,6 +737,7 @@ typedef enum EVRSubmitFlags
EVRSubmitFlags_Submit_VulkanTextureWithArrayData = 64,
EVRSubmitFlags_Submit_GlArrayTexture = 128,
EVRSubmitFlags_Submit_Reserved2 = 32768,
+ EVRSubmitFlags_Submit_Reserved3 = 65536,
} EVRSubmitFlags;
typedef enum EVRState
@@ -816,6 +827,9 @@ typedef enum EVREventType
EVREventType_VREvent_ShowDevTools = 529,
EVREventType_VREvent_DesktopViewUpdating = 530,
EVREventType_VREvent_DesktopViewReady = 531,
+ EVREventType_VREvent_StartDashboard = 532,
+ EVREventType_VREvent_ElevatePrism = 533,
+ EVREventType_VREvent_OverlayClosed = 534,
EVREventType_VREvent_Notification_Shown = 600,
EVREventType_VREvent_Notification_Hidden = 601,
EVREventType_VREvent_Notification_BeginInteraction = 602,
@@ -825,6 +839,7 @@ typedef enum EVREventType
EVREventType_VREvent_QuitAcknowledged = 703,
EVREventType_VREvent_DriverRequestedQuit = 704,
EVREventType_VREvent_RestartRequested = 705,
+ EVREventType_VREvent_InvalidateSwapTextureSets = 706,
EVREventType_VREvent_ChaperoneDataHasChanged = 800,
EVREventType_VREvent_ChaperoneUniverseHasChanged = 801,
EVREventType_VREvent_ChaperoneTempDataHasChanged = 802,
@@ -879,6 +894,7 @@ typedef enum EVREventType
EVREventType_VREvent_Compositor_OutOfVideoMemory = 1417,
EVREventType_VREvent_Compositor_DisplayModeNotSupported = 1418,
EVREventType_VREvent_Compositor_StageOverrideReady = 1419,
+ EVREventType_VREvent_Compositor_RequestDisconnectReconnect = 1420,
EVREventType_VREvent_TrackedCamera_StartVideoStream = 1500,
EVREventType_VREvent_TrackedCamera_StopVideoStream = 1501,
EVREventType_VREvent_TrackedCamera_PauseVideoStream = 1502,
@@ -1082,6 +1098,7 @@ typedef enum EVROverlayError
EVROverlayError_VROverlayError_TextureAlreadyLocked = 31,
EVROverlayError_VROverlayError_TextureLockCapacityReached = 32,
EVROverlayError_VROverlayError_TextureNotLocked = 33,
+ EVROverlayError_VROverlayError_TimedOut = 34,
} EVROverlayError;
typedef enum EVRApplicationType
@@ -1099,7 +1116,8 @@ typedef enum EVRApplicationType
EVRApplicationType_VRApplication_OpenXRScene = 10,
EVRApplicationType_VRApplication_OpenXROverlay = 11,
EVRApplicationType_VRApplication_Prism = 12,
- EVRApplicationType_VRApplication_Max = 13,
+ EVRApplicationType_VRApplication_RoomView = 13,
+ EVRApplicationType_VRApplication_Max = 14,
} EVRApplicationType;
typedef enum EVRFirmwareError
@@ -1191,8 +1209,20 @@ typedef enum EVRInitError
EVRInitError_VRInitError_Init_PrismNeedsNewDrivers = 151,
EVRInitError_VRInitError_Init_PrismStartupTimedOut = 152,
EVRInitError_VRInitError_Init_CouldNotStartPrism = 153,
- EVRInitError_VRInitError_Init_CreateDriverDirectDeviceFailed = 154,
- EVRInitError_VRInitError_Init_PrismExitedUnexpectedly = 155,
+ EVRInitError_VRInitError_Init_PrismClientInitFailed = 154,
+ EVRInitError_VRInitError_Init_PrismClientStartFailed = 155,
+ EVRInitError_VRInitError_Init_PrismExitedUnexpectedly = 156,
+ EVRInitError_VRInitError_Init_BadLuid = 157,
+ EVRInitError_VRInitError_Init_NoServerForAppContainer = 158,
+ EVRInitError_VRInitError_Init_DuplicateBootstrapper = 159,
+ EVRInitError_VRInitError_Init_VRDashboardServicePending = 160,
+ EVRInitError_VRInitError_Init_VRDashboardServiceTimeout = 161,
+ EVRInitError_VRInitError_Init_VRDashboardServiceStopped = 162,
+ EVRInitError_VRInitError_Init_VRDashboardAlreadyStarted = 163,
+ EVRInitError_VRInitError_Init_VRDashboardCopyFailed = 164,
+ EVRInitError_VRInitError_Init_VRDashboardTokenFailure = 165,
+ EVRInitError_VRInitError_Init_VRDashboardEnvironmentFailure = 166,
+ EVRInitError_VRInitError_Init_VRDashboardPathFailure = 167,
EVRInitError_VRInitError_Driver_Failed = 200,
EVRInitError_VRInitError_Driver_Unknown = 201,
EVRInitError_VRInitError_Driver_HmdUnknown = 202,
@@ -1206,6 +1236,8 @@ typedef enum EVRInitError
EVRInitError_VRInitError_Driver_HmdDriverIdOutOfBounds = 211,
EVRInitError_VRInitError_Driver_HmdDisplayMirrored = 212,
EVRInitError_VRInitError_Driver_HmdDisplayNotFoundLaptop = 213,
+ EVRInitError_VRInitError_Driver_PeerDriverNotInstalled = 214,
+ EVRInitError_VRInitError_Driver_WirelessHmdNotConnected = 215,
EVRInitError_VRInitError_IPC_ServerInitFailed = 300,
EVRInitError_VRInitError_IPC_ConnectFailed = 301,
EVRInitError_VRInitError_IPC_SharedStateInitFailed = 302,
@@ -1311,8 +1343,11 @@ typedef enum EVRInitError
EVRInitError_VRInitError_Compositor_WindowInterfaceIsNull = 491,
EVRInitError_VRInitError_Compositor_SystemLayerCreateInstance = 492,
EVRInitError_VRInitError_Compositor_SystemLayerCreateSession = 493,
+ EVRInitError_VRInitError_Compositor_CreateInverseDistortUVs = 494,
+ EVRInitError_VRInitError_Compositor_CreateBackbufferDepth = 495,
EVRInitError_VRInitError_VendorSpecific_UnableToConnectToOculusRuntime = 1000,
EVRInitError_VRInitError_VendorSpecific_WindowsNotInDevMode = 1001,
+ EVRInitError_VRInitError_VendorSpecific_OculusLinkNotEnabled = 1002,
EVRInitError_VRInitError_VendorSpecific_HmdFound_CantOpenDevice = 1101,
EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToRequestConfigStart = 1102,
EVRInitError_VRInitError_VendorSpecific_HmdFound_NoStoredConfig = 1103,
@@ -1327,6 +1362,7 @@ typedef enum EVRInitError
EVRInitError_VRInitError_VendorSpecific_HmdFound_UserDataError = 1112,
EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigFailedSanityCheck = 1113,
EVRInitError_VRInitError_VendorSpecific_OculusRuntimeBadInstall = 1114,
+ EVRInitError_VRInitError_VendorSpecific_HmdFound_UnexpectedConfiguration_1 = 1115,
EVRInitError_VRInitError_Steam_SteamInstallationNotFound = 2000,
EVRInitError_VRInitError_LastError = 2001,
} EVRInitError;
@@ -1560,6 +1596,7 @@ typedef enum VROverlayFlags
VROverlayFlags_HideLaserIntersection = 524288,
VROverlayFlags_WantsModalBehavior = 1048576,
VROverlayFlags_IsPremultiplied = 2097152,
+ VROverlayFlags_IgnoreTextureAlpha = 4194304,
} VROverlayFlags;
typedef enum VRMessageOverlayResponse
@@ -1636,6 +1673,7 @@ typedef enum EVRRenderModelTextureFormat
EVRRenderModelTextureFormat_VRRenderModelTextureFormat_BC4 = 2,
EVRRenderModelTextureFormat_VRRenderModelTextureFormat_BC7 = 3,
EVRRenderModelTextureFormat_VRRenderModelTextureFormat_BC7_SRGB = 4,
+ EVRRenderModelTextureFormat_VRRenderModelTextureFormat_RGBA16_FLOAT = 5,
} EVRRenderModelTextureFormat;
typedef enum EVRNotificationType
@@ -1780,6 +1818,11 @@ typedef enum EBlockQueueReadType
EBlockQueueReadType_BlockQueueRead_Next = 2,
} EBlockQueueReadType;
+typedef enum EBlockQueueCreationFlag
+{
+ EBlockQueueCreationFlag_BlockQueueFlag_OwnerIsReader = 1,
+} EBlockQueueCreationFlag;
+
// OpenVR typedefs
@@ -1787,6 +1830,7 @@ typedef uint32_t TrackedDeviceIndex_t;
typedef uint32_t VRNotificationId;
typedef uint64_t VROverlayHandle_t;
+typedef uint32_t PropertyTypeTag_t;
typedef uint32_t SpatialAnchorHandle_t;
typedef void * glSharedTextureHandle_t;
typedef int32_t glInt_t;
@@ -2387,6 +2431,7 @@ typedef struct RenderModel_TextureMap_t
uint16_t unHeight;
uint8_t * rubTextureMapData; // const uint8_t *
enum EVRRenderModelTextureFormat format;
+ uint16_t unMipLevels;
} RenderModel_TextureMap_t;
#if defined(__linux__) || defined(__APPLE__)
@@ -2863,6 +2908,8 @@ struct VR_IVROverlay_FnTable
EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayWidthInMeters)(VROverlayHandle_t ulOverlayHandle, float * pfWidthInMeters);
EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayCurvature)(VROverlayHandle_t ulOverlayHandle, float fCurvature);
EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayCurvature)(VROverlayHandle_t ulOverlayHandle, float * pfCurvature);
+ EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayPreCurvePitch)(VROverlayHandle_t ulOverlayHandle, float fRadians);
+ EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayPreCurvePitch)(VROverlayHandle_t ulOverlayHandle, float * pfRadians);
EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTextureColorSpace)(VROverlayHandle_t ulOverlayHandle, EColorSpace eTextureColorSpace);
EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTextureColorSpace)(VROverlayHandle_t ulOverlayHandle, EColorSpace * peTextureColorSpace);
EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTextureBounds)(VROverlayHandle_t ulOverlayHandle, struct VRTextureBounds_t * pOverlayTextureBounds);
@@ -2883,6 +2930,7 @@ struct VR_IVROverlay_FnTable
EVROverlayError (OPENVR_FNTABLE_CALLTYPE *HideOverlay)(VROverlayHandle_t ulOverlayHandle);
bool (OPENVR_FNTABLE_CALLTYPE *IsOverlayVisible)(VROverlayHandle_t ulOverlayHandle);
EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetTransformForOverlayCoordinates)(VROverlayHandle_t ulOverlayHandle, ETrackingUniverseOrigin eTrackingOrigin, struct HmdVector2_t coordinatesInOverlay, struct HmdMatrix34_t * pmatTransform);
+ EVROverlayError (OPENVR_FNTABLE_CALLTYPE *WaitFrameSync)(uint32_t nTimeoutMs);
bool (OPENVR_FNTABLE_CALLTYPE *PollNextOverlayEvent)(VROverlayHandle_t ulOverlayHandle, struct VREvent_t * pEvent, uint32_t uncbVREvent);
EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayInputMethod)(VROverlayHandle_t ulOverlayHandle, VROverlayInputMethod * peInputMethod);
EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayInputMethod)(VROverlayHandle_t ulOverlayHandle, VROverlayInputMethod eInputMethod);
@@ -3089,7 +3137,7 @@ struct VR_IVRPaths_FnTable
struct VR_IVRBlockQueue_FnTable
{
- EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *Create)(PropertyContainerHandle_t * pulQueueHandle, char * pchPath, uint32_t unBlockDataSize, uint32_t unBlockHeaderSize, uint32_t unBlockCount);
+ EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *Create)(PropertyContainerHandle_t * pulQueueHandle, char * pchPath, uint32_t unBlockDataSize, uint32_t unBlockHeaderSize, uint32_t unBlockCount, uint32_t unFlags);
EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *Connect)(PropertyContainerHandle_t * pulQueueHandle, char * pchPath);
EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *Destroy)(PropertyContainerHandle_t ulQueueHandle);
EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *AcquireWriteOnlyBlock)(PropertyContainerHandle_t ulQueueHandle, PropertyContainerHandle_t * pulBlockHandle, void ** ppvBuffer);
diff --git a/headers/openvr_driver.h b/headers/openvr_driver.h
index 34b7053..4059d79 100644
--- a/headers/openvr_driver.h
+++ b/headers/openvr_driver.h
@@ -16,8 +16,8 @@
namespace vr
{
static const uint32_t k_nSteamVRVersionMajor = 1;
- static const uint32_t k_nSteamVRVersionMinor = 16;
- static const uint32_t k_nSteamVRVersionBuild = 8;
+ static const uint32_t k_nSteamVRVersionMinor = 23;
+ static const uint32_t k_nSteamVRVersionBuild = 7;
} // namespace vr
// public_vrtypes.h
@@ -29,6 +29,8 @@ namespace vr
{
#pragma pack( push, 8 )
+typedef uint32_t PropertyTypeTag_t;
+
// right-handed system
// +y is up
// +x is to the right
@@ -387,6 +389,8 @@ enum ETrackedDeviceProperty
Prop_ManufacturerSerialNumber_String = 1049,
Prop_ComputedSerialNumber_String = 1050,
Prop_EstimatedDeviceFirstUseTime_Int32 = 1051,
+ Prop_DevicePowerUsage_Float = 1052,
+ Prop_IgnoreMotionForStandby_Bool = 1053,
// Properties that are unique to TrackedDeviceClass_HMD
Prop_ReportsTimeSinceVSync_Bool = 2000,
@@ -479,10 +483,15 @@ enum ETrackedDeviceProperty
Prop_CameraGlobalGain_Float = 2089,
// Prop_DashboardLayoutPathName_String = 2090, // DELETED
Prop_DashboardScale_Float = 2091,
+ Prop_PeerButtonInfo_String = 2092,
+
Prop_IpdUIRangeMinMeters_Float = 2100,
Prop_IpdUIRangeMaxMeters_Float = 2101,
Prop_Hmd_SupportsHDCP14LegacyCompat_Bool = 2102,
Prop_Hmd_SupportsMicMonitoring_Bool = 2103,
+ Prop_Hmd_SupportsDisplayPortTrainingMode_Bool = 2104,
+ Prop_SupportsRoomViewDirect_Bool = 2105,
+ Prop_SupportsAppThrottling_Bool = 2106,
// Driver requested mura correction properties
Prop_DriverRequestedMuraCorrectionMode_Int32 = 2200,
@@ -671,8 +680,8 @@ enum EVRSubmitFlags
Submit_GlArrayTexture = 0x80,
// Do not use
- Submit_Reserved2 = 0x8000,
-
+ Submit_Reserved2 = 0x08000,
+ Submit_Reserved3 = 0x10000,
};
@@ -824,6 +833,11 @@ enum EVREventType
VREvent_DesktopViewUpdating = 530,
VREvent_DesktopViewReady = 531,
+ VREvent_StartDashboard = 532,
+ VREvent_ElevatePrism = 533,
+
+ VREvent_OverlayClosed = 534,
+
VREvent_Notification_Shown = 600,
VREvent_Notification_Hidden = 601,
VREvent_Notification_BeginInteraction = 602,
@@ -835,6 +849,7 @@ enum EVREventType
VREvent_QuitAcknowledged = 703, // data is process
VREvent_DriverRequestedQuit = 704, // The driver has requested that SteamVR shut down
VREvent_RestartRequested = 705, // A driver or other component wants the user to restart SteamVR
+ VREvent_InvalidateSwapTextureSets = 706,
VREvent_ChaperoneDataHasChanged = 800, // this will never happen with the new chaperone system
VREvent_ChaperoneUniverseHasChanged = 801,
@@ -905,6 +920,7 @@ enum EVREventType
VREvent_Compositor_OutOfVideoMemory = 1417,
VREvent_Compositor_DisplayModeNotSupported = 1418, // k_pch_SteamVR_PreferredRefreshRate
VREvent_Compositor_StageOverrideReady = 1419,
+ VREvent_Compositor_RequestDisconnectReconnect = 1420,
VREvent_TrackedCamera_StartVideoStream = 1500,
VREvent_TrackedCamera_StopVideoStream = 1501,
@@ -1484,6 +1500,7 @@ enum EVROverlayError
VROverlayError_TextureAlreadyLocked = 31,
VROverlayError_TextureLockCapacityReached = 32,
VROverlayError_TextureNotLocked = 33,
+ VROverlayError_TimedOut = 34,
};
/** enum values to pass in to VR_Init to identify whether the application will
@@ -1505,6 +1522,7 @@ enum EVRApplicationType
VRApplication_OpenXRScene = 10, // reserved for openxr (started session)
VRApplication_OpenXROverlay = 11, // reserved for openxr (started overlay session)
VRApplication_Prism = 12, // reserved for the vrprismhost process
+ VRApplication_RoomView = 13, // reserved for the RoomView process
VRApplication_Max
};
@@ -1520,6 +1538,15 @@ inline bool IsOpenXRAppType( EVRApplicationType eType )
}
+/** returns true if the specified application type submits eye buffers */
+inline bool BAppTypeSubmitsEyeBuffers( EVRApplicationType eType )
+{
+ return eType == VRApplication_Scene
+ || eType == VRApplication_OpenXRScene
+ || eType == VRApplication_RoomView;
+}
+
+
/** error codes for firmware */
enum EVRFirmwareError
{
@@ -1641,8 +1668,20 @@ enum EVRInitError
VRInitError_Init_PrismNeedsNewDrivers = 151,
VRInitError_Init_PrismStartupTimedOut = 152,
VRInitError_Init_CouldNotStartPrism = 153,
- VRInitError_Init_CreateDriverDirectDeviceFailed = 154,
- VRInitError_Init_PrismExitedUnexpectedly = 155,
+ VRInitError_Init_PrismClientInitFailed = 154,
+ VRInitError_Init_PrismClientStartFailed = 155,
+ VRInitError_Init_PrismExitedUnexpectedly = 156,
+ VRInitError_Init_BadLuid = 157,
+ VRInitError_Init_NoServerForAppContainer = 158,
+ VRInitError_Init_DuplicateBootstrapper = 159,
+ VRInitError_Init_VRDashboardServicePending = 160,
+ VRInitError_Init_VRDashboardServiceTimeout = 161,
+ VRInitError_Init_VRDashboardServiceStopped = 162,
+ VRInitError_Init_VRDashboardAlreadyStarted = 163,
+ VRInitError_Init_VRDashboardCopyFailed = 164,
+ VRInitError_Init_VRDashboardTokenFailure = 165,
+ VRInitError_Init_VRDashboardEnvironmentFailure = 166,
+ VRInitError_Init_VRDashboardPathFailure = 167,
VRInitError_Driver_Failed = 200,
VRInitError_Driver_Unknown = 201,
@@ -1658,6 +1697,9 @@ enum EVRInitError
VRInitError_Driver_HmdDriverIdOutOfBounds = 211,
VRInitError_Driver_HmdDisplayMirrored = 212,
VRInitError_Driver_HmdDisplayNotFoundLaptop = 213,
+ VRInitError_Driver_PeerDriverNotInstalled = 214,
+ VRInitError_Driver_WirelessHmdNotConnected = 215,
+
// Never make error 259 because we return it from main and it would conflict with STILL_ACTIVE
VRInitError_IPC_ServerInitFailed = 300,
@@ -1766,9 +1808,12 @@ enum EVRInitError
VRInitError_Compositor_WindowInterfaceIsNull = 491,
VRInitError_Compositor_SystemLayerCreateInstance = 492,
VRInitError_Compositor_SystemLayerCreateSession = 493,
+ VRInitError_Compositor_CreateInverseDistortUVs = 494,
+ VRInitError_Compositor_CreateBackbufferDepth = 495,
VRInitError_VendorSpecific_UnableToConnectToOculusRuntime = 1000,
VRInitError_VendorSpecific_WindowsNotInDevMode = 1001,
+ VRInitError_VendorSpecific_OculusLinkNotEnabled = 1002,
VRInitError_VendorSpecific_HmdFound_CantOpenDevice = 1101,
VRInitError_VendorSpecific_HmdFound_UnableToRequestConfigStart = 1102,
@@ -1784,6 +1829,7 @@ enum EVRInitError
VRInitError_VendorSpecific_HmdFound_UserDataError = 1112,
VRInitError_VendorSpecific_HmdFound_ConfigFailedSanityCheck = 1113,
VRInitError_VendorSpecific_OculusRuntimeBadInstall = 1114,
+ VRInitError_VendorSpecific_HmdFound_UnexpectedConfiguration_1 = 1115,
VRInitError_Steam_SteamInstallationNotFound = 2000,
@@ -2078,6 +2124,7 @@ enum ECameraVideoStreamFormat
CVS_FORMAT_YUYV16 = 5, // 16 bits per pixel
CVS_FORMAT_BAYER16BG = 6, // 16 bits per pixel, 10-bit BG-format Bayer, see https://docs.opencv.org/3.1.0/de/d25/imgproc_color_conversions.html
CVS_FORMAT_MJPEG = 7, // variable-sized MJPEG Open DML format, see https://www.loc.gov/preservation/digital/formats/fdd/fdd000063.shtml
+ CVS_FORMAT_RGBX32 = 8, // Full-sized pixels, 4BPP, LSB = RED
CVS_MAX_FORMATS
};
@@ -2318,6 +2365,8 @@ namespace vr
static const char * const k_pch_SteamVR_MotionSmoothingOverride_Int32 = "motionSmoothingOverride";
static const char * const k_pch_SteamVR_FramesToThrottle_Int32 = "framesToThrottle";
static const char * const k_pch_SteamVR_AdditionalFramesToPredict_Int32 = "additionalFramesToPredict";
+ static const char * const k_pch_SteamVR_WorldScale_Float = "worldScale";
+ static const char * const k_pch_SteamVR_FovScale_Int32 = "fovScale";
static const char * const k_pch_SteamVR_DisableAsyncReprojection_Bool = "disableAsync";
static const char * const k_pch_SteamVR_ForceFadeOnBadTracking_Bool = "forceFadeOnBadTracking";
static const char * const k_pch_SteamVR_DefaultMirrorView_Int32 = "mirrorView";
@@ -2361,6 +2410,7 @@ namespace vr
static const char * const k_pch_SteamVR_BlockOculusSDKOnOpenVRLaunchOption_Bool = "blockOculusSDKOnOpenVRLaunchOption";
static const char * const k_pch_SteamVR_BlockOculusSDKOnAllLaunches_Bool = "blockOculusSDKOnAllLaunches";
static const char * const k_pch_SteamVR_HDCPLegacyCompatibility_Bool = "hdcp14legacyCompatibility";
+ static const char * const k_pch_SteamVR_DisplayPortTrainingMode_Int = "displayPortTrainingMode";
static const char * const k_pch_SteamVR_UsePrism_Bool = "usePrism";
//-----------------------------------------------------------------------------
@@ -2508,6 +2558,7 @@ namespace vr
static const char * const k_pch_Dashboard_DesktopScale = "desktopScale";
static const char * const k_pch_Dashboard_DashboardScale = "dashboardScale";
static const char * const k_pch_Dashboard_UseStandaloneSystemLayer = "standaloneSystemLayer";
+ static const char * const k_pch_Dashboard_StickyDashboard = "stickyDashboard";
//-----------------------------------------------------------------------------
// model skin keys
@@ -2815,14 +2866,20 @@ namespace vr
/** Submits queued layers for display. */
virtual void Present( vr::SharedTextureHandle_t syncTexture ) {}
- /** Called after Present to allow driver to take more time until vsync after they've successfully acquired the sync texture in Present.*/
- virtual void PostPresent() {}
+ /** Called after Present to allow driver to take more time until vsync after they've successfully acquired the sync texture in Present.
+ * Set Prop_SupportsAppThrottling_Bool to enable throttling / prediction UI in per-app video settings. */
+ struct Throttling_t
+ {
+ uint32_t nFramesToThrottle;
+ uint32_t nAdditionalFramesToPredict;
+ };
+ virtual void PostPresent( const Throttling_t *pThrottling ) {}
/** Called to get additional frame timing stats from driver. Check m_nSize for versioning (new members will be added to end only). */
virtual void GetFrameTiming( DriverDirectMode_FrameTiming *pFrameTiming ) {}
};
- static const char *IVRDriverDirectModeComponent_Version = "IVRDriverDirectModeComponent_007";
+ static const char *IVRDriverDirectModeComponent_Version = "IVRDriverDirectModeComponent_008";
}
diff --git a/lib/linux32/libopenvr_api.so b/lib/linux32/libopenvr_api.so
index e8c6144..ae8fa25 100755
--- a/lib/linux32/libopenvr_api.so
+++ b/lib/linux32/libopenvr_api.so
Binary files differ
diff --git a/lib/linux64/libopenvr_api.so b/lib/linux64/libopenvr_api.so
index 4bff11f..dff2dfa 100755
--- a/lib/linux64/libopenvr_api.so
+++ b/lib/linux64/libopenvr_api.so
Binary files differ
diff --git a/lib/linuxarm64/libopenvr_api.so b/lib/linuxarm64/libopenvr_api.so
index cf5d534..b5b00cf 100644
--- a/lib/linuxarm64/libopenvr_api.so
+++ b/lib/linuxarm64/libopenvr_api.so
Binary files differ
diff --git a/lib/linuxarm64/libopenvr_api_unity.so b/lib/linuxarm64/libopenvr_api_unity.so
index 875cdb3..1d08d17 100644
--- a/lib/linuxarm64/libopenvr_api_unity.so
+++ b/lib/linuxarm64/libopenvr_api_unity.so
Binary files differ
diff --git a/samples/bin/linux32/libopenvr_api.so b/samples/bin/linux32/libopenvr_api.so
index d87f274..01e1339 100644
--- a/samples/bin/linux32/libopenvr_api.so
+++ b/samples/bin/linux32/libopenvr_api.so
Binary files differ
diff --git a/samples/bin/linux64/libopenvr_api.so b/samples/bin/linux64/libopenvr_api.so
index 906f06d..75bc5f1 100644
--- a/samples/bin/linux64/libopenvr_api.so
+++ b/samples/bin/linux64/libopenvr_api.so
Binary files differ
diff --git a/samples/bin/linuxarm64/libopenvr_api.so b/samples/bin/linuxarm64/libopenvr_api.so
index d291c97..55e15b6 100644
--- a/samples/bin/linuxarm64/libopenvr_api.so
+++ b/samples/bin/linuxarm64/libopenvr_api.so
Binary files differ
diff --git a/samples/bin/win32/openvr_api.dll b/samples/bin/win32/openvr_api.dll
index 6e423e6..2c61e24 100644
--- a/samples/bin/win32/openvr_api.dll
+++ b/samples/bin/win32/openvr_api.dll
Binary files differ
diff --git a/samples/bin/win64/openvr_api.dll b/samples/bin/win64/openvr_api.dll
index a4ad764..2df5818 100644
--- a/samples/bin/win64/openvr_api.dll
+++ b/samples/bin/win64/openvr_api.dll
Binary files differ