Skip to content

Commit d35c04c

Browse files
committed
**OpenVR SDK 1.0.13**
General * Added VREvent_RoomViewShown and VREvent_RoomViewHidden. Indicates that the "room view" pass-through camera mode has been started or stopped by the user. An application or driver can use this to enable or disable other functionality. IVROverlay * Added TextureType_DXGISharedHandle. This is used to submit a shared texture handle directly and avoid an extra copy on the resource. This texture type is current only supported for overlays on Windows. Driver Interface * Added TrackedControllerRole_OptOut. Set a controller to this if you want that controller to be ignored for the purposes of right/left hand selection. * Added Prop_NeverTracked_Bool. Set that property to true on a device if you want to inform the system that the device is never going to have a valid pose. For instance, you might use this for an untracked gamepad. * Prop_DistortionMeshResolution_Int32. Set this property on an HMD device if you want the system to generate a distortion mesh with a different resolution than the default, which is an approximately 50x50 grid across the full texture which is then trimmed to the area within the hidden area mesh. * Added Prop_MinimumIpdStepMeters_Float. Set this to the minimum IPD change in meters that should cause the IPD UI to be shown. * IVRDriverDirectModeComponent.CreateSwapTextureSet added the ability to specify sample count. * IVRDriverDirectModeComponent.SubmitLayer [git-p4: depot-paths = "//vr/steamvr/sdk_release/": change = 4366099]
1 parent 53c417b commit d35c04c

28 files changed

+188
-81
lines changed

bin/linux32/libopenvr_api.so

-3.99 KB
Binary file not shown.

bin/linux32/libopenvr_api.so.dbg

-3.16 KB
Binary file not shown.

bin/linux64/libopenvr_api.so

-3.92 KB
Binary file not shown.

bin/linux64/libopenvr_api.so.dbg

-4.28 KB
Binary file not shown.

bin/osx32/libopenvr_api.dylib

3.9 KB
Binary file not shown.
Binary file not shown.

bin/win32/openvr_api.dll

0 Bytes
Binary file not shown.

bin/win32/openvr_api.pdb

48 KB
Binary file not shown.

bin/win64/openvr_api.dll

0 Bytes
Binary file not shown.

bin/win64/openvr_api.pdb

48 KB
Binary file not shown.

headers/openvr.h

+30-2
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,8 @@ enum ETextureType
112112
TextureType_Vulkan = 2, // Handle is a pointer to a VRVulkanTextureData_t structure
113113
TextureType_IOSurface = 3, // Handle is a macOS cross-process-sharable IOSurfaceRef
114114
TextureType_DirectX12 = 4, // Handle is a pointer to a D3D12TextureData_t structure
115+
TextureType_DXGISharedHandle = 5, // Handle is a HANDLE DXGI share handle, only supported for Overlay render targets.
116+
// this texture is used directly by our renderer, so only perform atomic (copyresource or resolve) on it
115117
};
116118

117119
enum EColorSpace
@@ -173,6 +175,7 @@ enum ETrackedControllerRole
173175
TrackedControllerRole_Invalid = 0, // Invalid value for controller type
174176
TrackedControllerRole_LeftHand = 1, // Tracked device associated with the left hand
175177
TrackedControllerRole_RightHand = 2, // Tracked device associated with the right hand
178+
TrackedControllerRole_OptOut = 3, // Tracked device is opting out of left/right hand selection
176179
};
177180

178181

@@ -206,6 +209,9 @@ typedef uint32_t PropertyTypeTag_t;
206209
static const PropertyContainerHandle_t k_ulInvalidPropertyContainer = 0;
207210
static const PropertyTypeTag_t k_unInvalidPropertyTag = 0;
208211

212+
typedef PropertyContainerHandle_t DriverHandle_t;
213+
static const PropertyContainerHandle_t k_ulInvalidDriverHandle = 0;
214+
209215
// Use these tags to set/get common types as struct properties
210216
static const PropertyTypeTag_t k_unFloatPropertyTag = 1;
211217
static const PropertyTypeTag_t k_unInt32PropertyTag = 2;
@@ -274,6 +280,7 @@ enum ETrackedDeviceProperty
274280
Prop_ResourceRoot_String = 1035,
275281
Prop_RegisteredDeviceType_String = 1036,
276282
Prop_InputProfilePath_String = 1037, // input profile to use for this device in the input system. Will default to tracking system name if this isn't provided
283+
Prop_NeverTracked_Bool = 1038, // Used for devices that will never have a valid pose by design
277284

278285
// Properties that are unique to TrackedDeviceClass_HMD
279286
Prop_ReportsTimeSinceVSync_Bool = 2000,
@@ -330,9 +337,13 @@ enum ETrackedDeviceProperty
330337
Prop_NamedIconPathTrackingReferenceDeviceOff_String = 2053, // placeholder icon for sensor/base if not yet detected/loaded
331338
Prop_DoNotApplyPrediction_Bool = 2054,
332339
Prop_CameraToHeadTransforms_Matrix34_Array = 2055,
340+
Prop_DistortionMeshResolution_Int32 = 2056, // custom resolution of compositor calls to IVRSystem::ComputeDistortion
333341
Prop_DriverIsDrawingControllers_Bool = 2057,
334342
Prop_DriverRequestsApplicationPause_Bool = 2058,
335343
Prop_DriverRequestsReducedRendering_Bool = 2059,
344+
Prop_MinimumIpdStepMeters_Float = 2060,
345+
Prop_AudioBridgeFirmwareVersion_Uint64 = 2061,
346+
Prop_ImageBridgeFirmwareVersion_Uint64 = 2062,
336347

337348
// Properties that are unique to TrackedDeviceClass_Controller
338349
Prop_AttachedDeviceId_String = 3000,
@@ -554,6 +565,7 @@ enum EVREventType
554565
VREvent_SceneFocusChanged = 405, // data is process - New app got access to draw the scene
555566
VREvent_InputFocusChanged = 406, // data is process
556567
VREvent_SceneApplicationSecondaryRenderingStarted = 407, // data is process
568+
VREvent_SceneApplicationUsingWrongGraphicsAdapter = 408, // data is process
557569

558570
VREvent_HideRenderModels = 410, // Sent to the scene application to request hiding render models temporarily
559571
VREvent_ShowRenderModels = 411, // Sent to the scene application to request restoring render model visibility
@@ -575,11 +587,12 @@ enum EVREventType
575587
VREvent_OverlayGamepadFocusGained = 511, // Sent to an overlay when IVROverlay::SetFocusOverlay is called on it
576588
VREvent_OverlayGamepadFocusLost = 512, // Send to an overlay when it previously had focus and IVROverlay::SetFocusOverlay is called on something else
577589
VREvent_OverlaySharedTextureChanged = 513,
578-
VREvent_DashboardGuideButtonDown = 514,
579-
VREvent_DashboardGuideButtonUp = 515,
590+
//VREvent_DashboardGuideButtonDown = 514, // These are no longer sent
591+
//VREvent_DashboardGuideButtonUp = 515,
580592
VREvent_ScreenshotTriggered = 516, // Screenshot button combo was pressed, Dashboard should request a screenshot
581593
VREvent_ImageFailed = 517, // Sent to overlays when a SetOverlayRaw or SetOverlayfromFail fails to load
582594
VREvent_DashboardOverlayCreated = 518,
595+
VREvent_SwitchGamepadFocus = 519,
583596

584597
// Screenshot API
585598
VREvent_RequestScreenshot = 520, // Sent by vrclient application to compositor to take a screenshot
@@ -589,6 +602,8 @@ enum EVREventType
589602
VREvent_ScreenshotProgressToDashboard = 524, // Sent by compositor to the dashboard that a completed screenshot was submitted
590603

591604
VREvent_PrimaryDashboardDeviceChanged = 525,
605+
VREvent_RoomViewShown = 526, // Sent by compositor whenever room-view is enabled
606+
VREvent_RoomViewHidden = 527, // Sent by compositor whenever room-view is disabled
592607

593608
VREvent_Notification_Shown = 600,
594609
VREvent_Notification_Hidden = 601,
@@ -823,6 +838,8 @@ struct VREvent_Reserved_t
823838
{
824839
uint64_t reserved0;
825840
uint64_t reserved1;
841+
uint64_t reserved2;
842+
uint64_t reserved3;
826843
};
827844

828845
struct VREvent_PerformanceTest_t
@@ -1185,6 +1202,7 @@ enum EVRInitError
11851202
VRInitError_Init_FirmwareUpdateBusy = 138,
11861203
VRInitError_Init_FirmwareRecoveryBusy = 139,
11871204
VRInitError_Init_USBServiceBusy = 140,
1205+
VRInitError_Init_VRWebHelperStartupFailed = 141,
11881206

11891207
VRInitError_Driver_Failed = 200,
11901208
VRInitError_Driver_Unknown = 201,
@@ -1980,6 +1998,7 @@ namespace vr
19801998
static const char * const k_pch_SteamVR_AllowDisplayLockedMode_Bool = "allowDisplayLockedMode";
19811999
static const char * const k_pch_SteamVR_HaveStartedTutorialForNativeChaperoneDriver_Bool = "haveStartedTutorialForNativeChaperoneDriver";
19822000
static const char * const k_pch_SteamVR_ForceWindows32bitVRMonitor = "forceWindows32BitVRMonitor";
2001+
static const char * const k_pch_SteamVR_DebugInput = "debugInput";
19832002

19842003
//-----------------------------------------------------------------------------
19852004
// lighthouse keys
@@ -1991,6 +2010,7 @@ namespace vr
19912010
static const char * const k_pch_Lighthouse_PrimaryBasestation_Int32 = "primarybasestation";
19922011
static const char * const k_pch_Lighthouse_DBHistory_Bool = "dbhistory";
19932012
static const char * const k_pch_Lighthouse_EnableBluetooth_Bool = "enableBluetooth";
2013+
static const char * const k_pch_Lighthouse_PowerManagedBaseStations_String = "PowerManagedBaseStations";
19942014

19952015
//-----------------------------------------------------------------------------
19962016
// null keys
@@ -2092,6 +2112,7 @@ namespace vr
20922112
static const char * const k_pch_Dashboard_Section = "dashboard";
20932113
static const char * const k_pch_Dashboard_EnableDashboard_Bool = "enableDashboard";
20942114
static const char * const k_pch_Dashboard_ArcadeMode_Bool = "arcadeMode";
2115+
static const char * const k_pch_Dashboard_EnableWebUI = "webUI";
20952116

20962117
//-----------------------------------------------------------------------------
20972118
// model skin keys
@@ -2101,6 +2122,11 @@ namespace vr
21012122
// driver keys - These could be checked in any driver_<name> section
21022123
static const char * const k_pch_Driver_Enable_Bool = "enable";
21032124

2125+
//-----------------------------------------------------------------------------
2126+
// web interface keys
2127+
static const char* const k_pch_WebInterface_Section = "WebInterface";
2128+
static const char* const k_pch_WebInterface_WebPort_String = "WebPort";
2129+
21042130
} // namespace vr
21052131

21062132
// ivrchaperone.h
@@ -3598,6 +3624,8 @@ class IVRDriverManager
35983624

35993625
/** Returns the length of the number of bytes necessary to hold this string including the trailing null. */
36003626
virtual uint32_t GetDriverName( vr::DriverId_t nDriver, VR_OUT_STRING() char *pchValue, uint32_t unBufferSize ) = 0;
3627+
3628+
virtual DriverHandle_t GetDriverHandle( const char *pchDriverName ) = 0;
36013629
};
36023630

36033631
static const char * const IVRDriverManager_Version = "IVRDriverManager_001";

headers/openvr_api.cs

+30-2
Original file line numberDiff line numberDiff line change
@@ -1525,6 +1525,11 @@ public struct IVRDriverManager
15251525
[MarshalAs(UnmanagedType.FunctionPtr)]
15261526
internal _GetDriverName GetDriverName;
15271527

1528+
[UnmanagedFunctionPointer(CallingConvention.StdCall)]
1529+
internal delegate ulong _GetDriverHandle(string pchDriverName);
1530+
[MarshalAs(UnmanagedType.FunctionPtr)]
1531+
internal _GetDriverHandle GetDriverHandle;
1532+
15281533
}
15291534

15301535

@@ -3257,6 +3262,11 @@ public uint GetDriverName(uint nDriver,System.Text.StringBuilder pchValue,uint u
32573262
uint result = FnTable.GetDriverName(nDriver,pchValue,unBufferSize);
32583263
return result;
32593264
}
3265+
public ulong GetDriverHandle(string pchDriverName)
3266+
{
3267+
ulong result = FnTable.GetDriverHandle(pchDriverName);
3268+
return result;
3269+
}
32603270
}
32613271

32623272

@@ -3293,6 +3303,7 @@ public enum ETextureType
32933303
Vulkan = 2,
32943304
IOSurface = 3,
32953305
DirectX12 = 4,
3306+
DXGISharedHandle = 5,
32963307
}
32973308
public enum EColorSpace
32983309
{
@@ -3322,6 +3333,7 @@ public enum ETrackedControllerRole
33223333
Invalid = 0,
33233334
LeftHand = 1,
33243335
RightHand = 2,
3336+
OptOut = 3,
33253337
}
33263338
public enum ETrackingUniverseOrigin
33273339
{
@@ -3370,6 +3382,7 @@ public enum ETrackedDeviceProperty
33703382
Prop_ResourceRoot_String = 1035,
33713383
Prop_RegisteredDeviceType_String = 1036,
33723384
Prop_InputProfilePath_String = 1037,
3385+
Prop_NeverTracked_Bool = 1038,
33733386
Prop_ReportsTimeSinceVSync_Bool = 2000,
33743387
Prop_SecondsFromVsyncToPhotons_Float = 2001,
33753388
Prop_DisplayFrequency_Float = 2002,
@@ -3424,9 +3437,13 @@ public enum ETrackedDeviceProperty
34243437
Prop_NamedIconPathTrackingReferenceDeviceOff_String = 2053,
34253438
Prop_DoNotApplyPrediction_Bool = 2054,
34263439
Prop_CameraToHeadTransforms_Matrix34_Array = 2055,
3440+
Prop_DistortionMeshResolution_Int32 = 2056,
34273441
Prop_DriverIsDrawingControllers_Bool = 2057,
34283442
Prop_DriverRequestsApplicationPause_Bool = 2058,
34293443
Prop_DriverRequestsReducedRendering_Bool = 2059,
3444+
Prop_MinimumIpdStepMeters_Float = 2060,
3445+
Prop_AudioBridgeFirmwareVersion_Uint64 = 2061,
3446+
Prop_ImageBridgeFirmwareVersion_Uint64 = 2062,
34303447
Prop_AttachedDeviceId_String = 3000,
34313448
Prop_SupportedButtons_Uint64 = 3001,
34323449
Prop_Axis0Type_Int32 = 3002,
@@ -3549,6 +3566,7 @@ public enum EVREventType
35493566
VREvent_SceneFocusChanged = 405,
35503567
VREvent_InputFocusChanged = 406,
35513568
VREvent_SceneApplicationSecondaryRenderingStarted = 407,
3569+
VREvent_SceneApplicationUsingWrongGraphicsAdapter = 408,
35523570
VREvent_HideRenderModels = 410,
35533571
VREvent_ShowRenderModels = 411,
35543572
VREvent_ConsoleOpened = 420,
@@ -3567,17 +3585,18 @@ public enum EVREventType
35673585
VREvent_OverlayGamepadFocusGained = 511,
35683586
VREvent_OverlayGamepadFocusLost = 512,
35693587
VREvent_OverlaySharedTextureChanged = 513,
3570-
VREvent_DashboardGuideButtonDown = 514,
3571-
VREvent_DashboardGuideButtonUp = 515,
35723588
VREvent_ScreenshotTriggered = 516,
35733589
VREvent_ImageFailed = 517,
35743590
VREvent_DashboardOverlayCreated = 518,
3591+
VREvent_SwitchGamepadFocus = 519,
35753592
VREvent_RequestScreenshot = 520,
35763593
VREvent_ScreenshotTaken = 521,
35773594
VREvent_ScreenshotFailed = 522,
35783595
VREvent_SubmitScreenshotToDashboard = 523,
35793596
VREvent_ScreenshotProgressToDashboard = 524,
35803597
VREvent_PrimaryDashboardDeviceChanged = 525,
3598+
VREvent_RoomViewShown = 526,
3599+
VREvent_RoomViewHidden = 527,
35813600
VREvent_Notification_Shown = 600,
35823601
VREvent_Notification_Hidden = 601,
35833602
VREvent_Notification_BeginInteraction = 602,
@@ -3822,6 +3841,7 @@ public enum EVRInitError
38223841
Init_FirmwareUpdateBusy = 138,
38233842
Init_FirmwareRecoveryBusy = 139,
38243843
Init_USBServiceBusy = 140,
3844+
Init_VRWebHelperStartupFailed = 141,
38253845
Driver_Failed = 200,
38263846
Driver_Unknown = 201,
38273847
Driver_HmdUnknown = 202,
@@ -4375,6 +4395,8 @@ public enum EVRScreenshotError
43754395
{
43764396
public ulong reserved0;
43774397
public ulong reserved1;
4398+
public ulong reserved2;
4399+
public ulong reserved3;
43784400
}
43794401
[StructLayout(LayoutKind.Sequential)] public struct VREvent_PerformanceTest_t
43804402
{
@@ -4781,6 +4803,7 @@ public static uint GetInitToken()
47814803
public const uint k_unTrackedDeviceIndexInvalid = 4294967295;
47824804
public const ulong k_ulInvalidPropertyContainer = 0;
47834805
public const uint k_unInvalidPropertyTag = 0;
4806+
public const ulong k_ulInvalidDriverHandle = 0;
47844807
public const uint k_unFloatPropertyTag = 1;
47854808
public const uint k_unInt32PropertyTag = 2;
47864809
public const uint k_unUint64PropertyTag = 3;
@@ -4874,6 +4897,7 @@ public static uint GetInitToken()
48744897
public const string k_pch_SteamVR_AllowDisplayLockedMode_Bool = "allowDisplayLockedMode";
48754898
public const string k_pch_SteamVR_HaveStartedTutorialForNativeChaperoneDriver_Bool = "haveStartedTutorialForNativeChaperoneDriver";
48764899
public const string k_pch_SteamVR_ForceWindows32bitVRMonitor = "forceWindows32BitVRMonitor";
4900+
public const string k_pch_SteamVR_DebugInput = "debugInput";
48774901
public const string k_pch_Lighthouse_Section = "driver_lighthouse";
48784902
public const string k_pch_Lighthouse_DisableIMU_Bool = "disableimu";
48794903
public const string k_pch_Lighthouse_DisableIMUExceptHMD_Bool = "disableimuexcepthmd";
@@ -4882,6 +4906,7 @@ public static uint GetInitToken()
48824906
public const string k_pch_Lighthouse_PrimaryBasestation_Int32 = "primarybasestation";
48834907
public const string k_pch_Lighthouse_DBHistory_Bool = "dbhistory";
48844908
public const string k_pch_Lighthouse_EnableBluetooth_Bool = "enableBluetooth";
4909+
public const string k_pch_Lighthouse_PowerManagedBaseStations_String = "PowerManagedBaseStations";
48854910
public const string k_pch_Null_Section = "driver_null";
48864911
public const string k_pch_Null_SerialNumber_String = "serialNumber";
48874912
public const string k_pch_Null_ModelNumber_String = "modelNumber";
@@ -4953,8 +4978,11 @@ public static uint GetInitToken()
49534978
public const string k_pch_Dashboard_Section = "dashboard";
49544979
public const string k_pch_Dashboard_EnableDashboard_Bool = "enableDashboard";
49554980
public const string k_pch_Dashboard_ArcadeMode_Bool = "arcadeMode";
4981+
public const string k_pch_Dashboard_EnableWebUI = "webUI";
49564982
public const string k_pch_modelskin_Section = "modelskins";
49574983
public const string k_pch_Driver_Enable_Bool = "enable";
4984+
public const string k_pch_WebInterface_Section = "WebInterface";
4985+
public const string k_pch_WebInterface_WebPort_String = "WebPort";
49584986
public const string IVRScreenshots_Version = "IVRScreenshots_001";
49594987
public const string IVRResources_Version = "IVRResources_001";
49604988
public const string IVRDriverManager_Version = "IVRDriverManager_001";

0 commit comments

Comments
 (0)