Skip to content

Commit

Permalink
**OpenVR SDK 1.0.12**
Browse files Browse the repository at this point in the history
IVRSystem
* Removed the concept of "input focus" and all the associated APIs.
* Added more granular "system behavior" functions to allow applications to query whether or not they should modify their behavior based on the state of the system. The new function are:
 * IsInputAvailable() -- This will return true if the application is receiving input events. For instance, it will return false when the SteamVR dashboard is visible.
 * IsSteamVRDrawingControllers() -- This will return true if SteamVR is drawing the user's actual controllers for any reason. It will be true if the dashboard is visible or if the SteamVR keyboard is visible over the application.
 * ShouldApplicationPause() -- This will return true is applications should pause (where appropriate.) It generally indicates that the user's attention is being taken by something like the SteamVR dashboard. Multiplayer games and other applications where "pause" is unavailable can ignore this.
 * ShouldApplicationReduceRenderingWork() -- This will return true when SteamVR is using more GPU and CPU resources than normal. It is a hint to the application to reduce its own rendering workload. A common way of doing this is to submit smaller render targets per eye.
IVRCompositor
* Added ability to pass depth info for scene textures.  Use VRTextureWithDepth_t (or VRTextureWithPoseAndDepth_t) and pass Submit_TextureWithDepth flag to Submit.


Driver API
* Replaced the API that drivers use to report input (button, trackpad, joystick, etc.) state. See (`IVRDriverInput` documentation)[ https://github.com/ValveSoftware/openvr/wiki/IVRDriverInput-Overview] for more information.
* Replaced the haptic API into drivers with an events. Drivers will receive an event of type VREvent_Input_HapticVibration which uses the hapticVibration member of the data until to specify parameters.
* Prop_CameraToHeadTransforms_Matrix34_Array - HMD devices which support multiple cameras expose camera extrinsic information in this property as an array of 3x4 transforms, one for each camera sensor. It is suggested that new devices also choose one of their cameras as a “primary” and expose its extrinsics as Prop_CameraToHeadTransform_Matrix34 for backwards compatibility with applications designed to recognize a single camera sensor.
* Prop_DriverIsDrawingControllers_Bool – Drivers should set this property if they are rendering controllers on top of the scene in their own compositor.  This will hint the application to stop drawing them separately.
* Prop_DriverRequestsApplicationPause_Bool – Drivers can set this to true in order to hint applications to pause their game (e.g. when bringing up a custom dashboard).
* Prop_DriverRequestsReducedRendering_Bool – Drivers can set this to true in order to hint applications to reduce rendering (e.g. when bringing up a custom dashboard).

IVROverlay
* Removed HandleControllerOverlayInteractionAsMouse. Overlay applications should use the mouse overlay input method instead.

[git-p4: depot-paths = "//vr/steamvr/sdk_release/": change = 4305765]
  • Loading branch information
JoeLudwig committed Jan 9, 2018
1 parent 167e26e commit 53c417b
Show file tree
Hide file tree
Showing 34 changed files with 620 additions and 223 deletions.
Binary file modified bin/linux32/libopenvr_api.so
Binary file not shown.
Binary file modified bin/linux32/libopenvr_api.so.dbg
Binary file not shown.
Binary file modified bin/linux64/libopenvr_api.so
Binary file not shown.
Binary file modified bin/linux64/libopenvr_api.so.dbg
Binary file not shown.
Binary file modified bin/osx32/libopenvr_api.dylib
Binary file not shown.
Binary file not shown.
Binary file modified bin/win32/openvr_api.dll
Binary file not shown.
Binary file modified bin/win32/openvr_api.pdb
Binary file not shown.
Binary file modified bin/win64/openvr_api.dll
Binary file not shown.
Binary file modified bin/win64/openvr_api.pdb
Binary file not shown.
141 changes: 108 additions & 33 deletions headers/openvr.h

Large diffs are not rendered by default.

160 changes: 113 additions & 47 deletions headers/openvr_api.cs

Large diffs are not rendered by default.

115 changes: 86 additions & 29 deletions headers/openvr_api.json
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@
,{"name": "Prop_ParentDriver_Uint64","value": "1034"}
,{"name": "Prop_ResourceRoot_String","value": "1035"}
,{"name": "Prop_RegisteredDeviceType_String","value": "1036"}
,{"name": "Prop_InputProfileName_String","value": "1037"}
,{"name": "Prop_InputProfilePath_String","value": "1037"}
,{"name": "Prop_ReportsTimeSinceVSync_Bool","value": "2000"}
,{"name": "Prop_SecondsFromVsyncToPhotons_Float","value": "2001"}
,{"name": "Prop_DisplayFrequency_Float","value": "2002"}
Expand Down Expand Up @@ -166,6 +166,10 @@
,{"name": "Prop_NamedIconPathControllerRightDeviceOff_String","value": "2052"}
,{"name": "Prop_NamedIconPathTrackingReferenceDeviceOff_String","value": "2053"}
,{"name": "Prop_DoNotApplyPrediction_Bool","value": "2054"}
,{"name": "Prop_CameraToHeadTransforms_Matrix34_Array","value": "2055"}
,{"name": "Prop_DriverIsDrawingControllers_Bool","value": "2057"}
,{"name": "Prop_DriverRequestsApplicationPause_Bool","value": "2058"}
,{"name": "Prop_DriverRequestsReducedRendering_Bool","value": "2059"}
,{"name": "Prop_AttachedDeviceId_String","value": "3000"}
,{"name": "Prop_SupportedButtons_Uint64","value": "3001"}
,{"name": "Prop_Axis0Type_Int32","value": "3002"}
Expand Down Expand Up @@ -200,8 +204,11 @@
,{"name": "Prop_HasCameraComponent_Bool","value": "6004"}
,{"name": "Prop_HasDriverDirectModeComponent_Bool","value": "6005"}
,{"name": "Prop_HasVirtualDisplayComponent_Bool","value": "6006"}
,{"name": "Prop_ControllerType_String","value": "7000"}
,{"name": "Prop_LegacyInputProfile_String","value": "7001"}
,{"name": "Prop_VendorSpecific_Reserved_Start","value": "10000"}
,{"name": "Prop_VendorSpecific_Reserved_End","value": "10999"}
,{"name": "Prop_TrackedDeviceProperty_Max","value": "1000000"}
]}
, {"enumname": "vr::ETrackedPropertyError","values": [
{"name": "TrackedProp_Success","value": "0"}
Expand All @@ -224,6 +231,7 @@
,{"name": "Submit_GlRenderBuffer","value": "2"}
,{"name": "Submit_Reserved","value": "4"}
,{"name": "Submit_TextureWithPose","value": "8"}
,{"name": "Submit_TextureWithDepth","value": "16"}
]}
, {"enumname": "vr::EVRState","values": [
{"name": "VRState_Undefined","value": "-1"}
Expand Down Expand Up @@ -339,7 +347,9 @@
,{"name": "VREvent_KeyboardSectionSettingChanged","value": "862"}
,{"name": "VREvent_PerfSectionSettingChanged","value": "863"}
,{"name": "VREvent_DashboardSectionSettingChanged","value": "864"}
,{"name": "VREvent_WebInterfaceSectionSettingChanged","value": "865"}
,{"name": "VREvent_StatusUpdate","value": "900"}
,{"name": "VREvent_WebInterface_InstallDriverCompleted","value": "950"}
,{"name": "VREvent_MCImageUpdated","value": "1000"}
,{"name": "VREvent_FirmwareUpdateStarted","value": "1100"}
,{"name": "VREvent_FirmwareUpdateFinished","value": "1101"}
Expand Down Expand Up @@ -368,6 +378,7 @@
,{"name": "VREvent_PerformanceTest_FidelityLevel","value": "1602"}
,{"name": "VREvent_MessageOverlay_Closed","value": "1650"}
,{"name": "VREvent_MessageOverlayCloseRequested","value": "1651"}
,{"name": "VREvent_Input_HapticVibration","value": "1700"}
,{"name": "VREvent_VendorSpecific_Reserved_Start","value": "10000"}
,{"name": "VREvent_VendorSpecific_Reserved_End","value": "19999"}
]}
Expand Down Expand Up @@ -407,6 +418,18 @@
{"name": "k_EDualAnalog_Left","value": "0"}
,{"name": "k_EDualAnalog_Right","value": "1"}
]}
, {"enumname": "vr::EVRInputError","values": [
{"name": "VRInputError_None","value": "0"}
,{"name": "VRInputError_NameNotFound","value": "1"}
,{"name": "VRInputError_WrongType","value": "2"}
,{"name": "VRInputError_InvalidHandle","value": "3"}
,{"name": "VRInputError_InvalidParam","value": "4"}
,{"name": "VRInputError_NoSteam","value": "5"}
,{"name": "VRInputError_MaxCapacityReached","value": "6"}
,{"name": "VRInputError_IPCError","value": "7"}
,{"name": "VRInputError_NoActiveActionSet","value": "8"}
,{"name": "VRInputError_InvalidDevice","value": "9"}
]}
, {"enumname": "vr::EHiddenAreaMeshType","values": [
{"name": "k_eHiddenAreaMesh_Standard","value": "0"}
,{"name": "k_eHiddenAreaMesh_Inverse","value": "1"}
Expand Down Expand Up @@ -453,6 +476,9 @@
,{"name": "VROverlayError_NoNeighbor","value": "27"}
,{"name": "VROverlayError_TooManyMaskPrimitives","value": "29"}
,{"name": "VROverlayError_BadMaskPrimitive","value": "30"}
,{"name": "VROverlayError_TextureAlreadyLocked","value": "31"}
,{"name": "VROverlayError_TextureLockCapacityReached","value": "32"}
,{"name": "VROverlayError_TextureNotLocked","value": "33"}
]}
, {"enumname": "vr::EVRApplicationType","values": [
{"name": "VRApplication_Other","value": "0"}
Expand Down Expand Up @@ -636,8 +662,7 @@
,{"name": "VRApplicationProperty_NewsURL_String","value": "51"}
,{"name": "VRApplicationProperty_ImagePath_String","value": "52"}
,{"name": "VRApplicationProperty_Source_String","value": "53"}
,{"name": "VRApplicationProperty_ActionManifestPath_String","value": "54"}
,{"name": "VRApplicationProperty_ActionBindingPath_String","value": "55"}
,{"name": "VRApplicationProperty_ActionManifestURL_String","value": "54"}
,{"name": "VRApplicationProperty_IsDashboardOverlay_Bool","value": "60"}
,{"name": "VRApplicationProperty_IsTemplate_Bool","value": "61"}
,{"name": "VRApplicationProperty_IsInstanced_Bool","value": "62"}
Expand Down Expand Up @@ -842,6 +867,8 @@
"constname": "k_unInputValuePropertyTag","consttype": "const PropertyTypeTag_t", "constval": "33"}
,{
"constname": "k_unWildcardPropertyTag","consttype": "const PropertyTypeTag_t", "constval": "34"}
,{
"constname": "k_unHapticVibrationPropertyTag","consttype": "const PropertyTypeTag_t", "constval": "35"}
,{
"constname": "k_unOpenVRInternalReserved_Start","consttype": "const PropertyTypeTag_t", "constval": "1000"}
,{
Expand All @@ -855,7 +882,7 @@
,{
"constname": "k_unScreenshotHandleInvalid","consttype": "const uint32_t", "constval": "0"}
,{
"constname": "IVRSystem_Version","consttype": "const char *const", "constval": "IVRSystem_017"}
"constname": "IVRSystem_Version","consttype": "const char *const", "constval": "IVRSystem_019"}
,{
"constname": "IVRExtendedDisplay_Version","consttype": "const char *const", "constval": "IVRExtendedDisplay_001"}
,{
Expand Down Expand Up @@ -883,7 +910,7 @@
,{
"constname": "k_unMaxOverlayIntersectionMaskPrimitivesCount","consttype": "const uint32_t", "constval": "32"}
,{
"constname": "IVROverlay_Version","consttype": "const char *const", "constval": "IVROverlay_017"}
"constname": "IVROverlay_Version","consttype": "const char *const", "constval": "IVROverlay_018"}
,{
"constname": "k_pch_Controller_Component_GDC2015","consttype": "const char *const", "constval": "gdc2015"}
,{
Expand Down Expand Up @@ -992,12 +1019,18 @@
"constname": "k_pch_SteamVR_AllowSupersampleFiltering_Bool","consttype": "const char *const", "constval": "allowSupersampleFiltering"}
,{
"constname": "k_pch_SteamVR_EnableLinuxVulkanAsync_Bool","consttype": "const char *const", "constval": "enableLinuxVulkanAsync"}
,{
"constname": "k_pch_SteamVR_AllowDisplayLockedMode_Bool","consttype": "const char *const", "constval": "allowDisplayLockedMode"}
,{
"constname": "k_pch_SteamVR_HaveStartedTutorialForNativeChaperoneDriver_Bool","consttype": "const char *const", "constval": "haveStartedTutorialForNativeChaperoneDriver"}
,{
"constname": "k_pch_SteamVR_ForceWindows32bitVRMonitor","consttype": "const char *const", "constval": "forceWindows32BitVRMonitor"}
,{
"constname": "k_pch_Lighthouse_Section","consttype": "const char *const", "constval": "driver_lighthouse"}
,{
"constname": "k_pch_Lighthouse_DisableIMU_Bool","consttype": "const char *const", "constval": "disableimu"}
,{
"constname": "k_pch_Lighthouse_DisableIMUExceptHMD_Bool","consttype": "const char *const", "constval": "disableimuexcepthmd"}
,{
"constname": "k_pch_Lighthouse_UseDisambiguation_String","consttype": "const char *const", "constval": "usedisambiguation"}
,{
Expand Down Expand Up @@ -1210,6 +1243,14 @@
{ "fieldname": "vMax", "fieldtype": "float"}]}
,{"struct": "vr::VRTextureWithPose_t","fields": [
{ "fieldname": "mDeviceToAbsoluteTracking", "fieldtype": "struct vr::HmdMatrix34_t"}]}
,{"struct": "vr::VRTextureDepthInfo_t","fields": [
{ "fieldname": "handle", "fieldtype": "void *"},
{ "fieldname": "mProjection", "fieldtype": "struct vr::HmdMatrix44_t"},
{ "fieldname": "vRange", "fieldtype": "struct vr::HmdVector2_t"}]}
,{"struct": "vr::VRTextureWithDepth_t","fields": [
{ "fieldname": "depth", "fieldtype": "struct vr::VRTextureDepthInfo_t"}]}
,{"struct": "vr::VRTextureWithPoseAndDepth_t","fields": [
{ "fieldname": "depth", "fieldtype": "struct vr::VRTextureDepthInfo_t"}]}
,{"struct": "vr::VRVulkanTextureData_t","fields": [
{ "fieldname": "m_nImage", "fieldtype": "uint64_t"},
{ "fieldname": "m_pDevice", "fieldtype": "struct VkDevice_T *"},
Expand Down Expand Up @@ -1290,6 +1331,12 @@
{ "fieldname": "transformedX", "fieldtype": "float"},
{ "fieldname": "transformedY", "fieldtype": "float"},
{ "fieldname": "which", "fieldtype": "enum vr::EDualAnalogWhich"}]}
,{"struct": "vr::VREvent_HapticVibration_t","fields": [
{ "fieldname": "containerHandle", "fieldtype": "uint64_t"},
{ "fieldname": "componentHandle", "fieldtype": "uint64_t"},
{ "fieldname": "fDurationSeconds", "fieldtype": "float"},
{ "fieldname": "fFrequency", "fieldtype": "float"},
{ "fieldname": "fAmplitude", "fieldtype": "float"}]}
,{"struct": "vr::(anonymous)","fields": [
{ "fieldname": "reserved", "fieldtype": "struct vr::VREvent_Reserved_t"},
{ "fieldname": "controller", "fieldtype": "struct vr::VREvent_Controller_t"},
Expand All @@ -1311,7 +1358,8 @@
{ "fieldname": "cameraSurface", "fieldtype": "struct vr::VREvent_EditingCameraSurface_t"},
{ "fieldname": "messageOverlay", "fieldtype": "struct vr::VREvent_MessageOverlay_t"},
{ "fieldname": "property", "fieldtype": "struct vr::VREvent_Property_t"},
{ "fieldname": "dualAnalog", "fieldtype": "struct vr::VREvent_DualAnalog_t"}]}
{ "fieldname": "dualAnalog", "fieldtype": "struct vr::VREvent_DualAnalog_t"},
{ "fieldname": "hapticVibration", "fieldtype": "struct vr::VREvent_HapticVibration_t"}]}
,{"struct": "vr::VREvent_t","fields": [
{ "fieldname": "eventType", "fieldtype": "uint32_t"},
{ "fieldname": "trackedDeviceIndex", "fieldtype": "TrackedDeviceIndex_t"},
Expand Down Expand Up @@ -1696,6 +1744,19 @@
{ "paramname": "pError" ,"paramtype": "vr::ETrackedPropertyError *"}
]
}
,{
"classname": "vr::IVRSystem",
"methodname": "GetArrayTrackedDeviceProperty",
"returntype": "uint32_t",
"params": [
{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
{ "paramname": "prop" ,"paramtype": "vr::ETrackedDeviceProperty"},
{ "paramname": "propType" ,"paramtype": "vr::PropertyTypeTag_t"},
{ "paramname": "pBuffer" ,"paramtype": "void *"},
{ "paramname": "unBufferSize" ,"paramtype": "uint32_t"},
{ "paramname": "pError" ,"paramtype": "vr::ETrackedPropertyError *"}
]
}
,{
"classname": "vr::IVRSystem",
"methodname": "GetStringTrackedDeviceProperty",
Expand Down Expand Up @@ -1803,17 +1864,22 @@
}
,{
"classname": "vr::IVRSystem",
"methodname": "CaptureInputFocus",
"methodname": "IsInputAvailable",
"returntype": "bool"
}
,{
"classname": "vr::IVRSystem",
"methodname": "ReleaseInputFocus",
"returntype": "void"
"methodname": "IsSteamVRDrawingControllers",
"returntype": "bool"
}
,{
"classname": "vr::IVRSystem",
"methodname": "ShouldApplicationPause",
"returntype": "bool"
}
,{
"classname": "vr::IVRSystem",
"methodname": "IsInputFocusCapturedByAnotherProcess",
"methodname": "ShouldApplicationReduceRenderingWork",
"returntype": "bool"
}
,{
Expand All @@ -1823,7 +1889,7 @@
"params": [
{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
{ "paramname": "pchRequest" ,"paramtype": "const char *"},
{ "paramname": "pchResponseBuffer" ,"paramtype": "char *"},
{ "paramname": "pchResponseBuffer" ,"out_string": " " ,"paramtype": "char *"},
{ "paramname": "unResponseBufferSize" ,"paramtype": "uint32_t"}
]
}
Expand Down Expand Up @@ -2051,7 +2117,7 @@
"returntype": "vr::EVRApplicationError",
"params": [
{ "paramname": "unProcessId" ,"paramtype": "uint32_t"},
{ "paramname": "pchAppKeyBuffer" ,"paramtype": "char *"},
{ "paramname": "pchAppKeyBuffer" ,"out_string": " " ,"paramtype": "char *"},
{ "paramname": "unAppKeyBufferLen" ,"paramtype": "uint32_t"}
]
}
Expand Down Expand Up @@ -2188,7 +2254,7 @@
"returntype": "bool",
"params": [
{ "paramname": "pchMimeType" ,"paramtype": "const char *"},
{ "paramname": "pchAppKeyBuffer" ,"paramtype": "char *"},
{ "paramname": "pchAppKeyBuffer" ,"out_string": " " ,"paramtype": "char *"},
{ "paramname": "unAppKeyBufferLen" ,"paramtype": "uint32_t"}
]
}
Expand All @@ -2198,7 +2264,7 @@
"returntype": "bool",
"params": [
{ "paramname": "pchAppKey" ,"paramtype": "const char *"},
{ "paramname": "pchMimeTypesBuffer" ,"paramtype": "char *"},
{ "paramname": "pchMimeTypesBuffer" ,"out_string": " " ,"paramtype": "char *"},
{ "paramname": "unMimeTypesBuffer" ,"paramtype": "uint32_t"}
]
}
Expand All @@ -2208,7 +2274,7 @@
"returntype": "uint32_t",
"params": [
{ "paramname": "pchMimeType" ,"paramtype": "const char *"},
{ "paramname": "pchAppKeysThatSupportBuffer" ,"paramtype": "char *"},
{ "paramname": "pchAppKeysThatSupportBuffer" ,"out_string": " " ,"paramtype": "char *"},
{ "paramname": "unAppKeysThatSupportBuffer" ,"paramtype": "uint32_t"}
]
}
Expand All @@ -2218,7 +2284,7 @@
"returntype": "uint32_t",
"params": [
{ "paramname": "unHandle" ,"paramtype": "uint32_t"},
{ "paramname": "pchArgs" ,"paramtype": "char *"},
{ "paramname": "pchArgs" ,"out_string": " " ,"paramtype": "char *"},
{ "paramname": "unArgs" ,"paramtype": "uint32_t"}
]
}
Expand All @@ -2227,7 +2293,7 @@
"methodname": "GetStartingApplication",
"returntype": "vr::EVRApplicationError",
"params": [
{ "paramname": "pchAppKeyBuffer" ,"paramtype": "char *"},
{ "paramname": "pchAppKeyBuffer" ,"out_string": " " ,"paramtype": "char *"},
{ "paramname": "unAppKeyBufferLen" ,"paramtype": "uint32_t"}
]
}
Expand Down Expand Up @@ -3096,7 +3162,7 @@
"returntype": "uint32_t",
"params": [
{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
{ "paramname": "pchValue" ,"paramtype": "char *"},
{ "paramname": "pchValue" ,"out_string": " " ,"paramtype": "char *"},
{ "paramname": "unBufferSize" ,"paramtype": "uint32_t"},
{ "paramname": "pColor" ,"paramtype": "struct vr::HmdColor_t *"},
{ "paramname": "pError" ,"paramtype": "vr::EVROverlayError *"}
Expand Down Expand Up @@ -3178,7 +3244,7 @@
"params": [
{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
{ "paramname": "punDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t *"},
{ "paramname": "pchComponentName" ,"paramtype": "char *"},
{ "paramname": "pchComponentName" ,"out_string": " " ,"paramtype": "char *"},
{ "paramname": "unComponentNameSize" ,"paramtype": "uint32_t"}
]
}
Expand Down Expand Up @@ -3293,15 +3359,6 @@
{ "paramname": "pResults" ,"paramtype": "struct vr::VROverlayIntersectionResults_t *"}
]
}
,{
"classname": "vr::IVROverlay",
"methodname": "HandleControllerOverlayInteractionAsMouse",
"returntype": "bool",
"params": [
{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
{ "paramname": "unControllerDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"}
]
}
,{
"classname": "vr::IVROverlay",
"methodname": "IsHoverTargetOverlay",
Expand Down Expand Up @@ -3989,7 +4046,7 @@
"params": [
{ "paramname": "pchResourceName" ,"paramtype": "const char *"},
{ "paramname": "pchResourceTypeDirectory" ,"paramtype": "const char *"},
{ "paramname": "pchPathBuffer" ,"paramtype": "char *"},
{ "paramname": "pchPathBuffer" ,"out_string": " " ,"paramtype": "char *"},
{ "paramname": "unBufferLen" ,"paramtype": "uint32_t"}
]
}
Expand Down
Loading

0 comments on commit 53c417b

Please sign in to comment.