diff options
author | Joe Ludwig <joe@valvesoftware.com> | 2020-07-17 22:31:14 +0300 |
---|---|---|
committer | Joe Ludwig <joe@valvesoftware.com> | 2020-07-17 22:31:14 +0300 |
commit | 6192a30d2dee3d43731da0831e8639fbf9b90943 (patch) | |
tree | b7a518127b030e1689c016e7883ff7e12a694310 | |
parent | 3a010f0f668d8de59fcba75b14e08a6a08ec68a0 (diff) |
SteamVR SDK 1.13.10
Chaperone:
* Added VREvent_StandingZeroPoseReset, which is sent when a user triggers the new reset standing zero pose button in the SteamVR dashboard.
* Moved ResetSeatedZeroPose from IVRSystem to IVRChaperone
[git-p4: depot-paths = "//vr/steamvr/sdk_release/": change = 6001169]
-rwxr-xr-x | bin/linux32/libopenvr_api.so | bin | 322065 -> 322065 bytes | |||
-rwxr-xr-x | bin/linux32/libopenvr_api.so.dbg | bin | 2240456 -> 2246588 bytes | |||
-rwxr-xr-x | bin/linux64/libopenvr_api.so | bin | 325364 -> 322960 bytes | |||
-rwxr-xr-x | bin/linux64/libopenvr_api.so.dbg | bin | 2805043 -> 2800424 bytes | |||
-rw-r--r-- | bin/win32/openvr_api.dll | bin | 621520 -> 621520 bytes | |||
-rw-r--r-- | bin/win32/openvr_api.dll.sig | bin | 1450 -> 1450 bytes | |||
-rw-r--r-- | bin/win32/openvr_api.pdb | bin | 10989568 -> 10989568 bytes | |||
-rw-r--r-- | bin/win64/openvr_api.dll | bin | 819664 -> 819664 bytes | |||
-rw-r--r-- | bin/win64/openvr_api.dll.sig | bin | 1450 -> 1450 bytes | |||
-rw-r--r-- | bin/win64/openvr_api.pdb | bin | 10866688 -> 10866688 bytes | |||
-rw-r--r-- | headers/openvr.h | 40 | ||||
-rw-r--r-- | headers/openvr_api.cs | 50 | ||||
-rw-r--r-- | headers/openvr_api.json | 28 | ||||
-rw-r--r-- | headers/openvr_capi.h | 27 | ||||
-rw-r--r-- | headers/openvr_driver.h | 28 | ||||
-rwxr-xr-x | lib/linux32/libopenvr_api.so | bin | 2240456 -> 2246588 bytes | |||
-rwxr-xr-x | lib/linux64/libopenvr_api.so | bin | 2805043 -> 2800424 bytes | |||
-rw-r--r-- | samples/bin/linux32/libopenvr_api.so | bin | 322065 -> 322065 bytes | |||
-rw-r--r-- | samples/bin/linux64/libopenvr_api.so | bin | 325364 -> 322960 bytes | |||
-rw-r--r-- | samples/bin/win32/openvr_api.dll | bin | 621520 -> 621520 bytes | |||
-rw-r--r-- | samples/bin/win64/openvr_api.dll | bin | 819664 -> 819664 bytes | |||
-rw-r--r-- | src/vrcommon/strtools_public.cpp | 6 |
22 files changed, 114 insertions, 65 deletions
diff --git a/bin/linux32/libopenvr_api.so b/bin/linux32/libopenvr_api.so Binary files differindex a7883e8..33ed9c4 100755 --- a/bin/linux32/libopenvr_api.so +++ b/bin/linux32/libopenvr_api.so diff --git a/bin/linux32/libopenvr_api.so.dbg b/bin/linux32/libopenvr_api.so.dbg Binary files differindex 87a40d7..4a4ed69 100755 --- a/bin/linux32/libopenvr_api.so.dbg +++ b/bin/linux32/libopenvr_api.so.dbg diff --git a/bin/linux64/libopenvr_api.so b/bin/linux64/libopenvr_api.so Binary files differindex 1e9a1eb..8daaeb3 100755 --- a/bin/linux64/libopenvr_api.so +++ b/bin/linux64/libopenvr_api.so diff --git a/bin/linux64/libopenvr_api.so.dbg b/bin/linux64/libopenvr_api.so.dbg Binary files differindex b3267e1..76929bc 100755 --- a/bin/linux64/libopenvr_api.so.dbg +++ b/bin/linux64/libopenvr_api.so.dbg diff --git a/bin/win32/openvr_api.dll b/bin/win32/openvr_api.dll Binary files differindex 5d33527..8f1a376 100644 --- a/bin/win32/openvr_api.dll +++ b/bin/win32/openvr_api.dll diff --git a/bin/win32/openvr_api.dll.sig b/bin/win32/openvr_api.dll.sig Binary files differindex 8668ce4..ff810fb 100644 --- a/bin/win32/openvr_api.dll.sig +++ b/bin/win32/openvr_api.dll.sig diff --git a/bin/win32/openvr_api.pdb b/bin/win32/openvr_api.pdb Binary files differindex 6014a38..95ecc70 100644 --- a/bin/win32/openvr_api.pdb +++ b/bin/win32/openvr_api.pdb diff --git a/bin/win64/openvr_api.dll b/bin/win64/openvr_api.dll Binary files differindex 6b0c8fe..ef336cb 100644 --- a/bin/win64/openvr_api.dll +++ b/bin/win64/openvr_api.dll diff --git a/bin/win64/openvr_api.dll.sig b/bin/win64/openvr_api.dll.sig Binary files differindex 58c40fb..0c514e6 100644 --- a/bin/win64/openvr_api.dll.sig +++ b/bin/win64/openvr_api.dll.sig diff --git a/bin/win64/openvr_api.pdb b/bin/win64/openvr_api.pdb Binary files differindex d82ded0..9bf3e4d 100644 --- a/bin/win64/openvr_api.pdb +++ b/bin/win64/openvr_api.pdb diff --git a/headers/openvr.h b/headers/openvr.h index e3f7c16..15c3822 100644 --- a/headers/openvr.h +++ b/headers/openvr.h @@ -15,8 +15,8 @@ namespace vr { static const uint32_t k_nSteamVRVersionMajor = 1; - static const uint32_t k_nSteamVRVersionMinor = 12; - static const uint32_t k_nSteamVRVersionBuild = 5; + static const uint32_t k_nSteamVRVersionMinor = 13; + static const uint32_t k_nSteamVRVersionBuild = 10; } // namespace vr // vrtypes.h @@ -441,7 +441,7 @@ enum ETrackedDeviceProperty Prop_DriverProvidedChaperoneVisibility_Bool = 2076, Prop_HmdColumnCorrectionSettingPrefix_String = 2077, Prop_CameraSupportsCompatibilityModes_Bool = 2078, - + Prop_SupportsRoomViewDepthProjection_Bool = 2079, Prop_DisplayAvailableFrameRates_Float_Array = 2080, // populated by compositor from actual EDID list when available from GPU driver Prop_DisplaySupportsMultipleFramerates_Bool = 2081, // if this is true but Prop_DisplayAvailableFrameRates_Float_Array is empty, explain to user Prop_DisplayColorMultLeft_Vector3 = 2082, @@ -805,6 +805,7 @@ enum EVREventType VREvent_ChaperoneFlushCache = 805, // Sent when the process needs to reload any cached data it retrieved from VRChaperone() VREvent_ChaperoneRoomSetupStarting = 806, // Triggered by CVRChaperoneClient::RoomSetupStarting VREvent_ChaperoneRoomSetupFinished = 807, // Triggered by CVRChaperoneClient::CommitWorkingCopy + VREvent_StandingZeroPoseReset = 808, VREvent_AudioSettingsHaveChanged = 820, @@ -1460,6 +1461,7 @@ enum EVRApplicationType VRApplication_SteamWatchdog = 6,// Reserved for Steam VRApplication_Bootstrapper = 7, // reserved for vrstartup VRApplication_WebHelper = 8, // reserved for vrwebhelper + VRApplication_OpenXR = 9, // reserved for openxr VRApplication_Max }; @@ -2109,17 +2111,6 @@ public: */ virtual void GetDeviceToAbsoluteTrackingPose( ETrackingUniverseOrigin eOrigin, float fPredictedSecondsToPhotonsFromNow, VR_ARRAY_COUNT(unTrackedDevicePoseArrayCount) TrackedDevicePose_t *pTrackedDevicePoseArray, uint32_t unTrackedDevicePoseArrayCount ) = 0; - /** Sets the zero pose for the seated tracker coordinate system to the current position and yaw of the HMD. After - * ResetSeatedZeroPose all GetDeviceToAbsoluteTrackingPose calls that pass TrackingUniverseSeated as the origin - * will be relative to this new zero pose. The new zero coordinate system will not change the fact that the Y axis - * is up in the real world, so the next pose returned from GetDeviceToAbsoluteTrackingPose after a call to - * ResetSeatedZeroPose may not be exactly an identity matrix. - * - * NOTE: This function overrides the user's previously saved seated zero pose and should only be called as the result of a user action. - * Users are also able to set their seated zero pose via the OpenVR Dashboard. - **/ - virtual void ResetSeatedZeroPose() = 0; - /** Returns the transform from the seated zero pose to the standing absolute tracking system. This allows * applications to represent the seated origin to used or transform object positions from one coordinate * system to the other. @@ -2307,7 +2298,7 @@ public: }; -static const char * const IVRSystem_Version = "IVRSystem_021"; +static const char * const IVRSystem_Version = "IVRSystem_022"; } @@ -2809,15 +2800,15 @@ namespace vr // camera keys static const char * const k_pch_Camera_Section = "camera"; static const char * const k_pch_Camera_EnableCamera_Bool = "enableCamera"; - static const char * const k_pch_Camera_EnableCameraInDashboard_Bool = "enableCameraInDashboard"; + static const char * const k_pch_Camera_ShowOnController_Bool = "showOnController"; static const char * const k_pch_Camera_EnableCameraForCollisionBounds_Bool = "enableCameraForCollisionBounds"; - static const char * const k_pch_Camera_EnableCameraForRoomView_Bool = "enableCameraForRoomView"; + static const char * const k_pch_Camera_RoomView_Int32 = "roomView"; static const char * const k_pch_Camera_BoundsColorGammaR_Int32 = "cameraBoundsColorGammaR"; static const char * const k_pch_Camera_BoundsColorGammaG_Int32 = "cameraBoundsColorGammaG"; static const char * const k_pch_Camera_BoundsColorGammaB_Int32 = "cameraBoundsColorGammaB"; static const char * const k_pch_Camera_BoundsColorGammaA_Int32 = "cameraBoundsColorGammaA"; static const char * const k_pch_Camera_BoundsStrength_Int32 = "cameraBoundsStrength"; - static const char * const k_pch_Camera_RoomViewMode_Int32 = "cameraRoomViewMode"; + static const char * const k_pch_Camera_RoomViewStyle_Int32 = "roomViewStyle"; //----------------------------------------------------------------------------- // audio keys @@ -2988,9 +2979,20 @@ public: /** Force the bounds to show, mostly for utilities **/ virtual void ForceBoundsVisible( bool bForce ) = 0; + + /** Sets the zero pose for the given tracker coordinate system to the current position and yaw of the HMD. After + * ResetZeroPose all GetDeviceToAbsoluteTrackingPose calls as the origin will be relative to this new zero pose. + * The new zero coordinate system will not change the fact that the Y axis is up in the real world, so the next + * pose returned from GetDeviceToAbsoluteTrackingPose after a call to ResetZeroPose may not be exactly an + * identity matrix. + * + * NOTE: This function overrides the user's previously saved zero pose and should only be called as the result of a user action. + * Users are also able to set their zero pose via the OpenVR Dashboard. + **/ + virtual void ResetZeroPose( ETrackingUniverseOrigin eTrackingUniverseOrigin ) = 0; }; -static const char * const IVRChaperone_Version = "IVRChaperone_003"; +static const char * const IVRChaperone_Version = "IVRChaperone_004"; #pragma pack( pop ) diff --git a/headers/openvr_api.cs b/headers/openvr_api.cs index ef55a5f..dbe789a 100644 --- a/headers/openvr_api.cs +++ b/headers/openvr_api.cs @@ -4,6 +4,7 @@ // This file is auto-generated, do not edit it. // //============================================================================= +#if !OPENVR_XR_API using System; using System.Runtime.InteropServices; @@ -80,11 +81,6 @@ public struct IVRSystem internal _GetDeviceToAbsoluteTrackingPose GetDeviceToAbsoluteTrackingPose; [UnmanagedFunctionPointer(CallingConvention.StdCall)] - internal delegate void _ResetSeatedZeroPose(); - [MarshalAs(UnmanagedType.FunctionPtr)] - internal _ResetSeatedZeroPose ResetSeatedZeroPose; - - [UnmanagedFunctionPointer(CallingConvention.StdCall)] internal delegate HmdMatrix34_t _GetSeatedZeroPoseToStandingAbsoluteTrackingPose(); [MarshalAs(UnmanagedType.FunctionPtr)] internal _GetSeatedZeroPoseToStandingAbsoluteTrackingPose GetSeatedZeroPoseToStandingAbsoluteTrackingPose; @@ -549,6 +545,11 @@ public struct IVRChaperone [MarshalAs(UnmanagedType.FunctionPtr)] internal _ForceBoundsVisible ForceBoundsVisible; + [UnmanagedFunctionPointer(CallingConvention.StdCall)] + internal delegate void _ResetZeroPose(ETrackingUniverseOrigin eTrackingUniverseOrigin); + [MarshalAs(UnmanagedType.FunctionPtr)] + internal _ResetZeroPose ResetZeroPose; + } [StructLayout(LayoutKind.Sequential)] @@ -1996,6 +1997,11 @@ public class Utils { public static IntPtr ToUtf8(string managedString) { + if (managedString == null) + { + return IntPtr.Zero; + } + int size = System.Text.Encoding.UTF8.GetByteCount(managedString) + 1; if (buffer.Length < size) buffer = new byte[size]; int written = System.Text.Encoding.UTF8.GetBytes(managedString, 0, managedString.Length, buffer, 0); @@ -2079,10 +2085,6 @@ public class CVRSystem { FnTable.GetDeviceToAbsoluteTrackingPose(eOrigin,fPredictedSecondsToPhotonsFromNow,pTrackedDevicePoseArray,(uint) pTrackedDevicePoseArray.Length); } - public void ResetSeatedZeroPose() - { - FnTable.ResetSeatedZeroPose(); - } public HmdMatrix34_t GetSeatedZeroPoseToStandingAbsoluteTrackingPose() { HmdMatrix34_t result = FnTable.GetSeatedZeroPoseToStandingAbsoluteTrackingPose(); @@ -2707,6 +2709,10 @@ public class CVRChaperone { FnTable.ForceBoundsVisible(bForce); } + public void ResetZeroPose(ETrackingUniverseOrigin eTrackingUniverseOrigin) + { + FnTable.ResetZeroPose(eTrackingUniverseOrigin); + } } @@ -4689,6 +4695,7 @@ public enum ETrackedDeviceProperty Prop_DriverProvidedChaperoneVisibility_Bool = 2076, Prop_HmdColumnCorrectionSettingPrefix_String = 2077, Prop_CameraSupportsCompatibilityModes_Bool = 2078, + Prop_SupportsRoomViewDepthProjection_Bool = 2079, Prop_DisplayAvailableFrameRates_Float_Array = 2080, Prop_DisplaySupportsMultipleFramerates_Bool = 2081, Prop_DisplayColorMultLeft_Vector3 = 2082, @@ -4895,6 +4902,7 @@ public enum EVREventType VREvent_ChaperoneFlushCache = 805, VREvent_ChaperoneRoomSetupStarting = 806, VREvent_ChaperoneRoomSetupFinished = 807, + VREvent_StandingZeroPoseReset = 808, VREvent_AudioSettingsHaveChanged = 820, VREvent_BackgroundSettingHasChanged = 850, VREvent_CameraSettingsHaveChanged = 851, @@ -5142,7 +5150,8 @@ public enum EVRApplicationType VRApplication_SteamWatchdog = 6, VRApplication_Bootstrapper = 7, VRApplication_WebHelper = 8, - VRApplication_Max = 9, + VRApplication_OpenXR = 9, + VRApplication_Max = 10, } public enum EVRFirmwareError { @@ -5972,6 +5981,9 @@ public enum EBlockQueueReadType } [StructLayout(LayoutKind.Sequential)] public struct VRTextureWithPose_t { + public IntPtr handle; // void * + public ETextureType eType; + public EColorSpace eColorSpace; public HmdMatrix34_t mDeviceToAbsoluteTracking; } [StructLayout(LayoutKind.Sequential)] public struct VRTextureDepthInfo_t @@ -5982,10 +5994,17 @@ public enum EBlockQueueReadType } [StructLayout(LayoutKind.Sequential)] public struct VRTextureWithDepth_t { + public IntPtr handle; // void * + public ETextureType eType; + public EColorSpace eColorSpace; public VRTextureDepthInfo_t depth; } [StructLayout(LayoutKind.Sequential)] public struct VRTextureWithPoseAndDepth_t { + public IntPtr handle; // void * + public ETextureType eType; + public EColorSpace eColorSpace; + public HmdMatrix34_t mDeviceToAbsoluteTracking; public VRTextureDepthInfo_t depth; } [StructLayout(LayoutKind.Sequential)] public struct VRVulkanTextureData_t @@ -7488,14 +7507,14 @@ public class OpenVR public const ulong k_ulOverlayHandleInvalid = 0; public const uint k_unMaxDistortionFunctionParameters = 8; public const uint k_unScreenshotHandleInvalid = 0; - public const string IVRSystem_Version = "IVRSystem_021"; + public const string IVRSystem_Version = "IVRSystem_022"; public const string IVRExtendedDisplay_Version = "IVRExtendedDisplay_001"; public const string IVRTrackedCamera_Version = "IVRTrackedCamera_006"; public const uint k_unMaxApplicationKeyLength = 128; public const string k_pch_MimeType_HomeApp = "vr/home"; public const string k_pch_MimeType_GameTheater = "vr/game_theater"; public const string IVRApplications_Version = "IVRApplications_007"; - public const string IVRChaperone_Version = "IVRChaperone_003"; + public const string IVRChaperone_Version = "IVRChaperone_004"; public const string IVRChaperoneSetup_Version = "IVRChaperoneSetup_006"; public const string IVRCompositor_Version = "IVRCompositor_026"; public const uint k_unVROverlayMaxKeyLength = 128; @@ -7654,15 +7673,15 @@ public class OpenVR public const string k_pch_CollisionBounds_EnableDriverImport = "enableDriverBoundsImport"; public const string k_pch_Camera_Section = "camera"; public const string k_pch_Camera_EnableCamera_Bool = "enableCamera"; - public const string k_pch_Camera_EnableCameraInDashboard_Bool = "enableCameraInDashboard"; + public const string k_pch_Camera_ShowOnController_Bool = "showOnController"; public const string k_pch_Camera_EnableCameraForCollisionBounds_Bool = "enableCameraForCollisionBounds"; - public const string k_pch_Camera_EnableCameraForRoomView_Bool = "enableCameraForRoomView"; + public const string k_pch_Camera_RoomView_Int32 = "roomView"; public const string k_pch_Camera_BoundsColorGammaR_Int32 = "cameraBoundsColorGammaR"; public const string k_pch_Camera_BoundsColorGammaG_Int32 = "cameraBoundsColorGammaG"; public const string k_pch_Camera_BoundsColorGammaB_Int32 = "cameraBoundsColorGammaB"; public const string k_pch_Camera_BoundsColorGammaA_Int32 = "cameraBoundsColorGammaA"; public const string k_pch_Camera_BoundsStrength_Int32 = "cameraBoundsStrength"; - public const string k_pch_Camera_RoomViewMode_Int32 = "cameraRoomViewMode"; + public const string k_pch_Camera_RoomViewStyle_Int32 = "roomViewStyle"; public const string k_pch_audio_Section = "audio"; public const string k_pch_audio_SetOsDefaultPlaybackDevice_Bool = "setOsDefaultPlaybackDevice"; public const string k_pch_audio_EnablePlaybackDeviceOverride_Bool = "enablePlaybackDeviceOverride"; @@ -8144,4 +8163,5 @@ public class OpenVR } +#endif diff --git a/headers/openvr_api.json b/headers/openvr_api.json index 3cc3ef4..179c4c3 100644 --- a/headers/openvr_api.json +++ b/headers/openvr_api.json @@ -228,6 +228,7 @@ ,{"name": "Prop_DriverProvidedChaperoneVisibility_Bool","value": "2076"} ,{"name": "Prop_HmdColumnCorrectionSettingPrefix_String","value": "2077"} ,{"name": "Prop_CameraSupportsCompatibilityModes_Bool","value": "2078"} + ,{"name": "Prop_SupportsRoomViewDepthProjection_Bool","value": "2079"} ,{"name": "Prop_DisplayAvailableFrameRates_Float_Array","value": "2080"} ,{"name": "Prop_DisplaySupportsMultipleFramerates_Bool","value": "2081"} ,{"name": "Prop_DisplayColorMultLeft_Vector3","value": "2082"} @@ -429,6 +430,7 @@ ,{"name": "VREvent_ChaperoneFlushCache","value": "805"} ,{"name": "VREvent_ChaperoneRoomSetupStarting","value": "806"} ,{"name": "VREvent_ChaperoneRoomSetupFinished","value": "807"} + ,{"name": "VREvent_StandingZeroPoseReset","value": "808"} ,{"name": "VREvent_AudioSettingsHaveChanged","value": "820"} ,{"name": "VREvent_BackgroundSettingHasChanged","value": "850"} ,{"name": "VREvent_CameraSettingsHaveChanged","value": "851"} @@ -662,7 +664,8 @@ ,{"name": "VRApplication_SteamWatchdog","value": "6"} ,{"name": "VRApplication_Bootstrapper","value": "7"} ,{"name": "VRApplication_WebHelper","value": "8"} - ,{"name": "VRApplication_Max","value": "9"} + ,{"name": "VRApplication_OpenXR","value": "9"} + ,{"name": "VRApplication_Max","value": "10"} ]} , {"enumname": "vr::EVRFirmwareError","values": [ {"name": "VRFirmwareError_None","value": "0"} @@ -1312,7 +1315,7 @@ ,{ "constname": "k_unScreenshotHandleInvalid","consttype": "const uint32_t", "constval": "0"} ,{ - "constname": "IVRSystem_Version","consttype": "const char *const", "constval": "IVRSystem_021"} + "constname": "IVRSystem_Version","consttype": "const char *const", "constval": "IVRSystem_022"} ,{ "constname": "IVRExtendedDisplay_Version","consttype": "const char *const", "constval": "IVRExtendedDisplay_001"} ,{ @@ -1326,7 +1329,7 @@ ,{ "constname": "IVRApplications_Version","consttype": "const char *const", "constval": "IVRApplications_007"} ,{ - "constname": "IVRChaperone_Version","consttype": "const char *const", "constval": "IVRChaperone_003"} + "constname": "IVRChaperone_Version","consttype": "const char *const", "constval": "IVRChaperone_004"} ,{ "constname": "IVRChaperoneSetup_Version","consttype": "const char *const", "constval": "IVRChaperoneSetup_006"} ,{ @@ -1644,11 +1647,11 @@ ,{ "constname": "k_pch_Camera_EnableCamera_Bool","consttype": "const char *const", "constval": "enableCamera"} ,{ - "constname": "k_pch_Camera_EnableCameraInDashboard_Bool","consttype": "const char *const", "constval": "enableCameraInDashboard"} + "constname": "k_pch_Camera_ShowOnController_Bool","consttype": "const char *const", "constval": "showOnController"} ,{ "constname": "k_pch_Camera_EnableCameraForCollisionBounds_Bool","consttype": "const char *const", "constval": "enableCameraForCollisionBounds"} ,{ - "constname": "k_pch_Camera_EnableCameraForRoomView_Bool","consttype": "const char *const", "constval": "enableCameraForRoomView"} + "constname": "k_pch_Camera_RoomView_Int32","consttype": "const char *const", "constval": "roomView"} ,{ "constname": "k_pch_Camera_BoundsColorGammaR_Int32","consttype": "const char *const", "constval": "cameraBoundsColorGammaR"} ,{ @@ -1660,7 +1663,7 @@ ,{ "constname": "k_pch_Camera_BoundsStrength_Int32","consttype": "const char *const", "constval": "cameraBoundsStrength"} ,{ - "constname": "k_pch_Camera_RoomViewMode_Int32","consttype": "const char *const", "constval": "cameraRoomViewMode"} + "constname": "k_pch_Camera_RoomViewStyle_Int32","consttype": "const char *const", "constval": "roomViewStyle"} ,{ "constname": "k_pch_audio_Section","consttype": "const char *const", "constval": "audio"} ,{ @@ -2474,11 +2477,6 @@ } ,{ "classname": "vr::IVRSystem", - "methodname": "ResetSeatedZeroPose", - "returntype": "void" -} -,{ - "classname": "vr::IVRSystem", "methodname": "GetSeatedZeroPoseToStandingAbsoluteTrackingPose", "returntype": "struct vr::HmdMatrix34_t" } @@ -3260,6 +3258,14 @@ ] } ,{ + "classname": "vr::IVRChaperone", + "methodname": "ResetZeroPose", + "returntype": "void", + "params": [ +{ "paramname": "eTrackingUniverseOrigin" ,"paramtype": "vr::ETrackingUniverseOrigin"} + ] +} +,{ "classname": "vr::IVRChaperoneSetup", "methodname": "CommitWorkingCopy", "returntype": "bool", diff --git a/headers/openvr_capi.h b/headers/openvr_capi.h index 050db74..7a7319e 100644 --- a/headers/openvr_capi.h +++ b/headers/openvr_capi.h @@ -106,14 +106,14 @@ static const unsigned long k_unControllerStateAxisCount = 5; static const unsigned long long k_ulOverlayHandleInvalid = 0; static const unsigned long k_unMaxDistortionFunctionParameters = 8; static const unsigned long k_unScreenshotHandleInvalid = 0; -static const char * IVRSystem_Version = "IVRSystem_021"; +static const char * IVRSystem_Version = "IVRSystem_022"; static const char * IVRExtendedDisplay_Version = "IVRExtendedDisplay_001"; static const char * IVRTrackedCamera_Version = "IVRTrackedCamera_006"; static const unsigned long k_unMaxApplicationKeyLength = 128; static const char * k_pch_MimeType_HomeApp = "vr/home"; static const char * k_pch_MimeType_GameTheater = "vr/game_theater"; static const char * IVRApplications_Version = "IVRApplications_007"; -static const char * IVRChaperone_Version = "IVRChaperone_003"; +static const char * IVRChaperone_Version = "IVRChaperone_004"; static const char * IVRChaperoneSetup_Version = "IVRChaperoneSetup_006"; static const char * IVRCompositor_Version = "IVRCompositor_026"; static const unsigned long k_unVROverlayMaxKeyLength = 128; @@ -272,15 +272,15 @@ static const char * k_pch_CollisionBounds_ColorGammaA_Int32 = "CollisionBoundsCo static const char * k_pch_CollisionBounds_EnableDriverImport = "enableDriverBoundsImport"; static const char * k_pch_Camera_Section = "camera"; static const char * k_pch_Camera_EnableCamera_Bool = "enableCamera"; -static const char * k_pch_Camera_EnableCameraInDashboard_Bool = "enableCameraInDashboard"; +static const char * k_pch_Camera_ShowOnController_Bool = "showOnController"; static const char * k_pch_Camera_EnableCameraForCollisionBounds_Bool = "enableCameraForCollisionBounds"; -static const char * k_pch_Camera_EnableCameraForRoomView_Bool = "enableCameraForRoomView"; +static const char * k_pch_Camera_RoomView_Int32 = "roomView"; static const char * k_pch_Camera_BoundsColorGammaR_Int32 = "cameraBoundsColorGammaR"; static const char * k_pch_Camera_BoundsColorGammaG_Int32 = "cameraBoundsColorGammaG"; static const char * k_pch_Camera_BoundsColorGammaB_Int32 = "cameraBoundsColorGammaB"; static const char * k_pch_Camera_BoundsColorGammaA_Int32 = "cameraBoundsColorGammaA"; static const char * k_pch_Camera_BoundsStrength_Int32 = "cameraBoundsStrength"; -static const char * k_pch_Camera_RoomViewMode_Int32 = "cameraRoomViewMode"; +static const char * k_pch_Camera_RoomViewStyle_Int32 = "roomViewStyle"; static const char * k_pch_audio_Section = "audio"; static const char * k_pch_audio_SetOsDefaultPlaybackDevice_Bool = "setOsDefaultPlaybackDevice"; static const char * k_pch_audio_EnablePlaybackDeviceOverride_Bool = "enablePlaybackDeviceOverride"; @@ -603,6 +603,7 @@ typedef enum ETrackedDeviceProperty ETrackedDeviceProperty_Prop_DriverProvidedChaperoneVisibility_Bool = 2076, ETrackedDeviceProperty_Prop_HmdColumnCorrectionSettingPrefix_String = 2077, ETrackedDeviceProperty_Prop_CameraSupportsCompatibilityModes_Bool = 2078, + ETrackedDeviceProperty_Prop_SupportsRoomViewDepthProjection_Bool = 2079, ETrackedDeviceProperty_Prop_DisplayAvailableFrameRates_Float_Array = 2080, ETrackedDeviceProperty_Prop_DisplaySupportsMultipleFramerates_Bool = 2081, ETrackedDeviceProperty_Prop_DisplayColorMultLeft_Vector3 = 2082, @@ -814,6 +815,7 @@ typedef enum EVREventType EVREventType_VREvent_ChaperoneFlushCache = 805, EVREventType_VREvent_ChaperoneRoomSetupStarting = 806, EVREventType_VREvent_ChaperoneRoomSetupFinished = 807, + EVREventType_VREvent_StandingZeroPoseReset = 808, EVREventType_VREvent_AudioSettingsHaveChanged = 820, EVREventType_VREvent_BackgroundSettingHasChanged = 850, EVREventType_VREvent_CameraSettingsHaveChanged = 851, @@ -1075,7 +1077,8 @@ typedef enum EVRApplicationType EVRApplicationType_VRApplication_SteamWatchdog = 6, EVRApplicationType_VRApplication_Bootstrapper = 7, EVRApplicationType_VRApplication_WebHelper = 8, - EVRApplicationType_VRApplication_Max = 9, + EVRApplicationType_VRApplication_OpenXR = 9, + EVRApplicationType_VRApplication_Max = 10, } EVRApplicationType; typedef enum EVRFirmwareError @@ -1895,6 +1898,9 @@ typedef struct VRTextureBounds_t typedef struct VRTextureWithPose_t { + void * handle; // void * + enum ETextureType eType; + enum EColorSpace eColorSpace; struct HmdMatrix34_t mDeviceToAbsoluteTracking; } VRTextureWithPose_t; @@ -1907,11 +1913,18 @@ typedef struct VRTextureDepthInfo_t typedef struct VRTextureWithDepth_t { + void * handle; // void * + enum ETextureType eType; + enum EColorSpace eColorSpace; struct VRTextureDepthInfo_t depth; } VRTextureWithDepth_t; typedef struct VRTextureWithPoseAndDepth_t { + void * handle; // void * + enum ETextureType eType; + enum EColorSpace eColorSpace; + struct HmdMatrix34_t mDeviceToAbsoluteTracking; struct VRTextureDepthInfo_t depth; } VRTextureWithPoseAndDepth_t; @@ -2592,7 +2605,6 @@ struct VR_IVRSystem_FnTable bool (OPENVR_FNTABLE_CALLTYPE *IsDisplayOnDesktop)(); bool (OPENVR_FNTABLE_CALLTYPE *SetDisplayVisibility)(bool bIsVisibleOnDesktop); void (OPENVR_FNTABLE_CALLTYPE *GetDeviceToAbsoluteTrackingPose)(ETrackingUniverseOrigin eOrigin, float fPredictedSecondsToPhotonsFromNow, struct TrackedDevicePose_t * pTrackedDevicePoseArray, uint32_t unTrackedDevicePoseArrayCount); - void (OPENVR_FNTABLE_CALLTYPE *ResetSeatedZeroPose)(); struct HmdMatrix34_t (OPENVR_FNTABLE_CALLTYPE *GetSeatedZeroPoseToStandingAbsoluteTrackingPose)(); struct HmdMatrix34_t (OPENVR_FNTABLE_CALLTYPE *GetRawZeroPoseToStandingAbsoluteTrackingPose)(); uint32_t (OPENVR_FNTABLE_CALLTYPE *GetSortedTrackedDeviceIndicesOfClass)(ETrackedDeviceClass eTrackedDeviceClass, TrackedDeviceIndex_t * punTrackedDeviceIndexArray, uint32_t unTrackedDeviceIndexArrayCount, TrackedDeviceIndex_t unRelativeToTrackedDeviceIndex); @@ -2698,6 +2710,7 @@ struct VR_IVRChaperone_FnTable void (OPENVR_FNTABLE_CALLTYPE *GetBoundsColor)(struct HmdColor_t * pOutputColorArray, int nNumOutputColors, float flCollisionBoundsFadeDistance, struct HmdColor_t * pOutputCameraColor); bool (OPENVR_FNTABLE_CALLTYPE *AreBoundsVisible)(); void (OPENVR_FNTABLE_CALLTYPE *ForceBoundsVisible)(bool bForce); + void (OPENVR_FNTABLE_CALLTYPE *ResetZeroPose)(ETrackingUniverseOrigin eTrackingUniverseOrigin); }; struct VR_IVRChaperoneSetup_FnTable diff --git a/headers/openvr_driver.h b/headers/openvr_driver.h index 00d1346..7402f7f 100644 --- a/headers/openvr_driver.h +++ b/headers/openvr_driver.h @@ -15,8 +15,8 @@ namespace vr { static const uint32_t k_nSteamVRVersionMajor = 1; - static const uint32_t k_nSteamVRVersionMinor = 12; - static const uint32_t k_nSteamVRVersionBuild = 5; + static const uint32_t k_nSteamVRVersionMinor = 13; + static const uint32_t k_nSteamVRVersionBuild = 10; } // namespace vr // vrtypes.h @@ -441,7 +441,7 @@ enum ETrackedDeviceProperty Prop_DriverProvidedChaperoneVisibility_Bool = 2076, Prop_HmdColumnCorrectionSettingPrefix_String = 2077, Prop_CameraSupportsCompatibilityModes_Bool = 2078, - + Prop_SupportsRoomViewDepthProjection_Bool = 2079, Prop_DisplayAvailableFrameRates_Float_Array = 2080, // populated by compositor from actual EDID list when available from GPU driver Prop_DisplaySupportsMultipleFramerates_Bool = 2081, // if this is true but Prop_DisplayAvailableFrameRates_Float_Array is empty, explain to user Prop_DisplayColorMultLeft_Vector3 = 2082, @@ -805,6 +805,7 @@ enum EVREventType VREvent_ChaperoneFlushCache = 805, // Sent when the process needs to reload any cached data it retrieved from VRChaperone() VREvent_ChaperoneRoomSetupStarting = 806, // Triggered by CVRChaperoneClient::RoomSetupStarting VREvent_ChaperoneRoomSetupFinished = 807, // Triggered by CVRChaperoneClient::CommitWorkingCopy + VREvent_StandingZeroPoseReset = 808, VREvent_AudioSettingsHaveChanged = 820, @@ -1460,6 +1461,7 @@ enum EVRApplicationType VRApplication_SteamWatchdog = 6,// Reserved for Steam VRApplication_Bootstrapper = 7, // reserved for vrstartup VRApplication_WebHelper = 8, // reserved for vrwebhelper + VRApplication_OpenXR = 9, // reserved for openxr VRApplication_Max }; @@ -2041,14 +2043,14 @@ enum ECameraCompatibilityMode MAX_CAMERA_COMPAT_MODES }; -enum ETrackedCameraRoomViewMode +enum ECameraRoomViewStyle { - TRACKED_CAMERA_ROOMVIEW_MODE_DEFAULT = 0, - TRACKED_CAMERA_ROOMVIEW_MODE_EDGE_A = 1, - TRACKED_CAMERA_ROOMVIEW_MODE_EDGE_B = 2, - TRACKED_CAMERA_ROOMVIEW_MODE_VIDEO_TRANSLUSCENT = 3, - TRACKED_CAMERA_ROOMVIEW_MODE_VIDEO_OPAQUE = 4, - TRACKED_CAMERA_ROOMVIEW_MODE_COUNT = 5, + CAMERA_ROOMVIEW_STYLE_DEFAULT = 0, + CAMERA_ROOMVIEW_STYLE_EDGE_A = 1, + CAMERA_ROOMVIEW_STYLE_EDGE_B = 2, + CAMERA_ROOMVIEW_STYLE_VIDEO_TRANSLUSCENT = 3, + CAMERA_ROOMVIEW_STYLE_VIDEO_OPAQUE = 4, + CAMERA_ROOMVIEW_STYLE_COUNT = 5, }; #ifdef _MSC_VER @@ -2391,15 +2393,15 @@ namespace vr // camera keys static const char * const k_pch_Camera_Section = "camera"; static const char * const k_pch_Camera_EnableCamera_Bool = "enableCamera"; - static const char * const k_pch_Camera_EnableCameraInDashboard_Bool = "enableCameraInDashboard"; + static const char * const k_pch_Camera_ShowOnController_Bool = "showOnController"; static const char * const k_pch_Camera_EnableCameraForCollisionBounds_Bool = "enableCameraForCollisionBounds"; - static const char * const k_pch_Camera_EnableCameraForRoomView_Bool = "enableCameraForRoomView"; + static const char * const k_pch_Camera_RoomView_Int32 = "roomView"; static const char * const k_pch_Camera_BoundsColorGammaR_Int32 = "cameraBoundsColorGammaR"; static const char * const k_pch_Camera_BoundsColorGammaG_Int32 = "cameraBoundsColorGammaG"; static const char * const k_pch_Camera_BoundsColorGammaB_Int32 = "cameraBoundsColorGammaB"; static const char * const k_pch_Camera_BoundsColorGammaA_Int32 = "cameraBoundsColorGammaA"; static const char * const k_pch_Camera_BoundsStrength_Int32 = "cameraBoundsStrength"; - static const char * const k_pch_Camera_RoomViewMode_Int32 = "cameraRoomViewMode"; + static const char * const k_pch_Camera_RoomViewStyle_Int32 = "roomViewStyle"; //----------------------------------------------------------------------------- // audio keys diff --git a/lib/linux32/libopenvr_api.so b/lib/linux32/libopenvr_api.so Binary files differindex 0a7a9ec..5be5a63 100755 --- a/lib/linux32/libopenvr_api.so +++ b/lib/linux32/libopenvr_api.so diff --git a/lib/linux64/libopenvr_api.so b/lib/linux64/libopenvr_api.so Binary files differindex 77b3b73..76929bc 100755 --- a/lib/linux64/libopenvr_api.so +++ b/lib/linux64/libopenvr_api.so diff --git a/samples/bin/linux32/libopenvr_api.so b/samples/bin/linux32/libopenvr_api.so Binary files differindex a7883e8..33ed9c4 100644 --- a/samples/bin/linux32/libopenvr_api.so +++ b/samples/bin/linux32/libopenvr_api.so diff --git a/samples/bin/linux64/libopenvr_api.so b/samples/bin/linux64/libopenvr_api.so Binary files differindex 1e9a1eb..8daaeb3 100644 --- a/samples/bin/linux64/libopenvr_api.so +++ b/samples/bin/linux64/libopenvr_api.so diff --git a/samples/bin/win32/openvr_api.dll b/samples/bin/win32/openvr_api.dll Binary files differindex 5d33527..8f1a376 100644 --- a/samples/bin/win32/openvr_api.dll +++ b/samples/bin/win32/openvr_api.dll diff --git a/samples/bin/win64/openvr_api.dll b/samples/bin/win64/openvr_api.dll Binary files differindex 6b0c8fe..ef336cb 100644 --- a/samples/bin/win64/openvr_api.dll +++ b/samples/bin/win64/openvr_api.dll diff --git a/src/vrcommon/strtools_public.cpp b/src/vrcommon/strtools_public.cpp index f9ce0fd..218a555 100644 --- a/src/vrcommon/strtools_public.cpp +++ b/src/vrcommon/strtools_public.cpp @@ -448,6 +448,12 @@ std::vector<std::string> TokenizeString( const std::string & sString, char cToke { vecStrings.push_back( s ); } + + if ( !sString.empty() && sString.back() == cToken ) + { + vecStrings.push_back( "" ); + } + return vecStrings; } |