Skip to content

Commit

Permalink
OpenVR SDK 1.0.4:
Browse files Browse the repository at this point in the history
General:
* Further refinement to Vulkan support. Note: the interface is still subject to change.

IVRSystem (v14):
* ComputeDistortion signature change. Previous version used nan as error signaling. New version returns explicit success.
* GetHiddenAreaMesh takes optional EHiddenAreaMeshType argument to request Standard, Inverse, or LineLoop mesh.

IVRCompositor (v18):
* New submit error, VRCompositorError_AlreadySubmitted (if you submit the same eye twice)
* GetFrameTimings signature change
* Exposed GetCurrentFadeColor, GetCurrentGridAlpha

IVROverlay (v13):
* Added SetOverlayIntersectionMask

IServerDriverHost:
* Added PollNextEvent

IClientDriverHost:
* Removed GetSettings
* Added GetGenericInterface

ClientTrackedDeviceProvider (v5):
* GetHiddenAreaMesh takes additional argument, EHiddenAreaMeshType

Pull Requests integrated:
#48 Format README in Markdown
#58 correct detection of GCC
#68 helloworldoverlay: Specify c++11 to fix gcc errors
#76 Remove duplicate, unneeded glBindBuffer call.
#135 Invert m_mat4HMDPose after assignment copying.
#191 Document additional methods
#278 include stdbool.h on non windows platform
#306 Multi-platform CMake support.

[git-p4: depot-paths = "//vr/steamvr/sdk_release/": change = 3697868]
  • Loading branch information
jeremyselan committed Nov 16, 2016
1 parent 5bc41e4 commit 84e877f
Show file tree
Hide file tree
Showing 58 changed files with 11,468 additions and 365 deletions.
8 changes: 6 additions & 2 deletions README → README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
OpenVR SDK
---

OpenVR is an API and runtime that allows access to VR hardware from multiple
vendors without requiring that applications have specific knowledge of the
hardware they are targeting. This repository is an SDK that contains the API
and samples. The runtime is under SteamVR in Tools on Steam.

Documentation for the API is available in the wiki: https://github.com/ValveSoftware/openvr/wiki/API-Documentation
### Documentation

More information on OpenVR and SteamVR can be found on http://steamvr.com
Documentation for the API is available on the [Github Wiki](https://github.com/ValveSoftware/openvr/wiki/API-Documentation)

More information on OpenVR and SteamVR can be found on http://steamvr.com
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.
173 changes: 132 additions & 41 deletions headers/openvr.h

Large diffs are not rendered by default.

135 changes: 110 additions & 25 deletions headers/openvr_api.cs

Large diffs are not rendered by default.

96 changes: 85 additions & 11 deletions headers/openvr_api.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
,{"typedef": "vr::VROverlayHandle_t","type": "uint64_t"}
,{"typedef": "vr::TrackedCameraHandle_t","type": "uint64_t"}
,{"typedef": "vr::ScreenshotHandle_t","type": "uint32_t"}
,{"typedef": "vr::VROverlayIntersectionMaskPrimitive_Data_t","type": "union VROverlayIntersectionMaskPrimitive_Data_t"}
,{"typedef": "vr::VRComponentProperties","type": "uint32_t"}
,{"typedef": "vr::TextureID_t","type": "int32_t"}
,{"typedef": "vr::VRNotificationId","type": "uint32_t"}
Expand Down Expand Up @@ -101,6 +102,7 @@
,{"name": "Prop_HasCamera_Bool","value": "1030"}
,{"name": "Prop_DriverVersion_String","value": "1031"}
,{"name": "Prop_Firmware_ForceUpdateRequired_Bool","value": "1032"}
,{"name": "Prop_ViveSystemButtonFixRequired_Bool","value": "1033"}
,{"name": "Prop_ReportsTimeSinceVSync_Bool","value": "2000"}
,{"name": "Prop_SecondsFromVsyncToPhotons_Float","value": "2001"}
,{"name": "Prop_DisplayFrequency_Float","value": "2002"}
Expand Down Expand Up @@ -138,6 +140,7 @@
,{"name": "Prop_ScreenshotHorizontalFieldOfViewDegrees_Float","value": "2034"}
,{"name": "Prop_ScreenshotVerticalFieldOfViewDegrees_Float","value": "2035"}
,{"name": "Prop_DisplaySuppressed_Bool","value": "2036"}
,{"name": "Prop_DisplayAllowNightMode_Bool","value": "2037"}
,{"name": "Prop_AttachedDeviceId_String","value": "3000"}
,{"name": "Prop_SupportedButtons_Uint64","value": "3001"}
,{"name": "Prop_Axis0Type_Int32","value": "3002"}
Expand Down Expand Up @@ -333,6 +336,11 @@
,{"name": "VRMouseButton_Right","value": "2"}
,{"name": "VRMouseButton_Middle","value": "4"}
]}
, {"enumname": "vr::EHiddenAreaMeshType","values": [
{"name": "k_eHiddenAreaMesh_Standard","value": "0"}
,{"name": "k_eHiddenAreaMesh_Inverse","value": "1"}
,{"name": "k_eHiddenAreaMesh_LineLoop","value": "2"}
]}
, {"enumname": "vr::EVRControllerAxisType","values": [
{"name": "k_eControllerAxis_None","value": "0"}
,{"name": "k_eControllerAxis_TrackPad","value": "1"}
Expand Down Expand Up @@ -371,6 +379,8 @@
,{"name": "VROverlayError_UnableToLoadFile","value": "25"}
,{"name": "VROverlayError_KeyboardAlreadyInUse","value": "26"}
,{"name": "VROverlayError_NoNeighbor","value": "27"}
,{"name": "VROverlayError_TooManyMaskPrimitives","value": "29"}
,{"name": "VROverlayError_BadMaskPrimitive","value": "30"}
]}
, {"enumname": "vr::EVRApplicationType","values": [
{"name": "VRApplication_Other","value": "0"}
Expand Down Expand Up @@ -583,6 +593,7 @@
,{"name": "VRCompositorError_TextureUsesUnsupportedFormat","value": "105"}
,{"name": "VRCompositorError_SharedTexturesNotSupported","value": "106"}
,{"name": "VRCompositorError_IndexOutOfRange","value": "107"}
,{"name": "VRCompositorError_AlreadySubmitted","value": "108"}
]}
, {"enumname": "vr::VROverlayInputMethod","values": [
{"name": "VROverlayInputMethod_None","value": "0"}
Expand Down Expand Up @@ -627,6 +638,10 @@
,{"name": "OverlayDirection_Right","value": "3"}
,{"name": "OverlayDirection_Count","value": "4"}
]}
, {"enumname": "vr::EVROverlayIntersectionMaskPrimitiveType","values": [
{"name": "OverlayIntersectionPrimitiveType_Rectangle","value": "0"}
,{"name": "OverlayIntersectionPrimitiveType_Circle","value": "1"}
]}
, {"enumname": "vr::EVRRenderModelError","values": [
{"name": "VRRenderModelError_None","value": "0"}
,{"name": "VRRenderModelError_Loading","value": "100"}
Expand Down Expand Up @@ -679,8 +694,6 @@
]}
],
"consts":[{
"constname": "k_unTrackingStringSize","consttype": "const uint32_t", "constval": "32"}
,{
"constname": "k_unMaxDriverDebugResponseSize","consttype": "const uint32_t", "constval": "32768"}
,{
"constname": "k_unTrackedDeviceIndex_Hmd","consttype": "const uint32_t", "constval": "0"}
Expand All @@ -699,7 +712,7 @@
,{
"constname": "k_unScreenshotHandleInvalid","consttype": "const uint32_t", "constval": "0"}
,{
"constname": "IVRSystem_Version","consttype": "const char *const", "constval": "IVRSystem_012"}
"constname": "IVRSystem_Version","consttype": "const char *const", "constval": "IVRSystem_014"}
,{
"constname": "IVRExtendedDisplay_Version","consttype": "const char *const", "constval": "IVRExtendedDisplay_001"}
,{
Expand All @@ -717,13 +730,15 @@
,{
"constname": "IVRChaperoneSetup_Version","consttype": "const char *const", "constval": "IVRChaperoneSetup_005"}
,{
"constname": "IVRCompositor_Version","consttype": "const char *const", "constval": "IVRCompositor_016"}
"constname": "IVRCompositor_Version","consttype": "const char *const", "constval": "IVRCompositor_018"}
,{
"constname": "k_unVROverlayMaxKeyLength","consttype": "const uint32_t", "constval": "128"}
,{
"constname": "k_unVROverlayMaxNameLength","consttype": "const uint32_t", "constval": "128"}
,{
"constname": "k_unMaxOverlayCount","consttype": "const uint32_t", "constval": "64"}
,{
"constname": "k_unMaxOverlayIntersectionMaskPrimitivesCount","consttype": "const uint32_t", "constval": "32"}
,{
"constname": "IVROverlay_Version","consttype": "const char *const", "constval": "IVROverlay_013"}
,{
Expand Down Expand Up @@ -772,12 +787,12 @@
"constname": "k_pch_SteamVR_IPD_Float","consttype": "const char *const", "constval": "ipd"}
,{
"constname": "k_pch_SteamVR_Background_String","consttype": "const char *const", "constval": "background"}
,{
"constname": "k_pch_SteamVR_BackgroundUseDomeProjection_Bool","consttype": "const char *const", "constval": "backgroundUseDomeProjection"}
,{
"constname": "k_pch_SteamVR_BackgroundCameraHeight_Float","consttype": "const char *const", "constval": "backgroundCameraHeight"}
,{
"constname": "k_pch_SteamVR_BackgroundDomeRadius_Float","consttype": "const char *const", "constval": "backgroundDomeRadius"}
,{
"constname": "k_pch_SteamVR_Environment_String","consttype": "const char *const", "constval": "environment"}
,{
"constname": "k_pch_SteamVR_GridColor_String","consttype": "const char *const", "constval": "gridColor"}
,{
Expand All @@ -803,7 +818,9 @@
,{
"constname": "k_pch_SteamVR_RenderTargetMultiplier_Float","consttype": "const char *const", "constval": "renderTargetMultiplier"}
,{
"constname": "k_pch_SteamVR_AllowReprojection_Bool","consttype": "const char *const", "constval": "allowReprojection"}
"constname": "k_pch_SteamVR_AllowAsyncReprojection_Bool","consttype": "const char *const", "constval": "allowAsyncReprojection"}
,{
"constname": "k_pch_SteamVR_AllowReprojection_Bool","consttype": "const char *const", "constval": "allowInterleavedReprojection"}
,{
"constname": "k_pch_SteamVR_ForceReprojection_Bool","consttype": "const char *const", "constval": "forceReprojection"}
,{
Expand All @@ -824,6 +841,8 @@
"constname": "k_pch_SteamVR_CycleBackgroundImageTimeSec_Int32","consttype": "const char *const", "constval": "CycleBackgroundImageTimeSec"}
,{
"constname": "k_pch_SteamVR_RetailDemo_Bool","consttype": "const char *const", "constval": "retailDemo"}
,{
"constname": "k_pch_SteamVR_IpdOffset_Float","consttype": "const char *const", "constval": "ipdOffset"}
,{
"constname": "k_pch_Lighthouse_Section","consttype": "const char *const", "constval": "driver_lighthouse"}
,{
Expand Down Expand Up @@ -864,6 +883,8 @@
"constname": "k_pch_UserInterface_Section","consttype": "const char *const", "constval": "userinterface"}
,{
"constname": "k_pch_UserInterface_StatusAlwaysOnTop_Bool","consttype": "const char *const", "constval": "StatusAlwaysOnTop"}
,{
"constname": "k_pch_UserInterface_MinimizeToTray_Bool","consttype": "const char *const", "constval": "MinimizeToTray"}
,{
"constname": "k_pch_UserInterface_Screenshots_Bool","consttype": "const char *const", "constval": "screenshots"}
,{
Expand Down Expand Up @@ -1157,6 +1178,7 @@
{ "fieldname": "m_nSize", "fieldtype": "uint32_t"},
{ "fieldname": "m_nFrameIndex", "fieldtype": "uint32_t"},
{ "fieldname": "m_nNumFramePresents", "fieldtype": "uint32_t"},
{ "fieldname": "m_nNumMisPresented", "fieldtype": "uint32_t"},
{ "fieldname": "m_nNumDroppedFrames", "fieldtype": "uint32_t"},
{ "fieldname": "m_nReprojectionFlags", "fieldtype": "uint32_t"},
{ "fieldname": "m_flSystemTimeInSeconds", "fieldtype": "double"},
Expand Down Expand Up @@ -1202,6 +1224,21 @@
{ "fieldname": "vNormal", "fieldtype": "struct vr::HmdVector3_t"},
{ "fieldname": "vUVs", "fieldtype": "struct vr::HmdVector2_t"},
{ "fieldname": "fDistance", "fieldtype": "float"}]}
,{"struct": "vr::IntersectionMaskRectangle_t","fields": [
{ "fieldname": "m_flTopLeftX", "fieldtype": "float"},
{ "fieldname": "m_flTopLeftY", "fieldtype": "float"},
{ "fieldname": "m_flWidth", "fieldtype": "float"},
{ "fieldname": "m_flHeight", "fieldtype": "float"}]}
,{"struct": "vr::IntersectionMaskCircle_t","fields": [
{ "fieldname": "m_flCenterX", "fieldtype": "float"},
{ "fieldname": "m_flCenterY", "fieldtype": "float"},
{ "fieldname": "m_flRadius", "fieldtype": "float"}]}
,{"struct": "vr::(anonymous)","fields": [
{ "fieldname": "m_Rectangle", "fieldtype": "struct vr::IntersectionMaskRectangle_t"},
{ "fieldname": "m_Circle", "fieldtype": "struct vr::IntersectionMaskCircle_t"}]}
,{"struct": "vr::VROverlayIntersectionMaskPrimitive_t","fields": [
{ "fieldname": "m_nPrimitiveType", "fieldtype": "enum vr::EVROverlayIntersectionMaskPrimitiveType"},
{ "fieldname": "m_Primitive", "fieldtype": "VROverlayIntersectionMaskPrimitive_Data_t"}]}
,{"struct": "vr::RenderModel_ComponentState_t","fields": [
{ "fieldname": "mTrackingToComponentRenderModel", "fieldtype": "struct vr::HmdMatrix34_t"},
{ "fieldname": "mTrackingToComponentLocal", "fieldtype": "struct vr::HmdMatrix34_t"},
Expand Down Expand Up @@ -1276,11 +1313,12 @@
,{
"classname": "vr::IVRSystem",
"methodname": "ComputeDistortion",
"returntype": "struct vr::DistortionCoordinates_t",
"returntype": "bool",
"params": [
{ "paramname": "eEye" ,"paramtype": "vr::EVREye"},
{ "paramname": "fU" ,"paramtype": "float"},
{ "paramname": "fV" ,"paramtype": "float"}
{ "paramname": "fV" ,"paramtype": "float"},
{ "paramname": "pDistortionCoordinates" ,"paramtype": "struct vr::DistortionCoordinates_t *"}
]
}
,{
Expand Down Expand Up @@ -1516,7 +1554,8 @@
"methodname": "GetHiddenAreaMesh",
"returntype": "struct vr::HiddenAreaMesh_t",
"params": [
{ "paramname": "eEye" ,"paramtype": "vr::EVREye"}
{ "paramname": "eEye" ,"paramtype": "vr::EVREye"},
{ "paramname": "type" ,"paramtype": "vr::EHiddenAreaMeshType"}
]
}
,{
Expand All @@ -1525,7 +1564,8 @@
"returntype": "bool",
"params": [
{ "paramname": "unControllerDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
{ "paramname": "pControllerState" ,"paramtype": "vr::VRControllerState_t *"}
{ "paramname": "pControllerState" ,"paramtype": "vr::VRControllerState_t *"},
{ "paramname": "unControllerStateSize" ,"paramtype": "uint32_t"}
]
}
,{
Expand All @@ -1536,6 +1576,7 @@
{ "paramname": "eOrigin" ,"paramtype": "vr::ETrackingUniverseOrigin"},
{ "paramname": "unControllerDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
{ "paramname": "pControllerState" ,"paramtype": "vr::VRControllerState_t *"},
{ "paramname": "unControllerStateSize" ,"paramtype": "uint32_t"},
{ "paramname": "pTrackedDevicePose" ,"paramtype": "struct vr::TrackedDevicePose_t *"}
]
}
Expand Down Expand Up @@ -2333,6 +2374,15 @@
{ "paramname": "unFramesAgo" ,"paramtype": "uint32_t"}
]
}
,{
"classname": "vr::IVRCompositor",
"methodname": "GetFrameTimings",
"returntype": "uint32_t",
"params": [
{ "paramname": "pTiming" ,"paramtype": "struct vr::Compositor_FrameTiming *"},
{ "paramname": "nFrames" ,"paramtype": "uint32_t"}
]
}
,{
"classname": "vr::IVRCompositor",
"methodname": "GetFrameTimeRemaining",
Expand Down Expand Up @@ -2360,6 +2410,14 @@
{ "paramname": "bBackground" ,"paramtype": "bool"}
]
}
,{
"classname": "vr::IVRCompositor",
"methodname": "GetCurrentFadeColor",
"returntype": "struct vr::HmdColor_t",
"params": [
{ "paramname": "bBackground" ,"paramtype": "bool"}
]
}
,{
"classname": "vr::IVRCompositor",
"methodname": "FadeGrid",
Expand All @@ -2369,6 +2427,11 @@
{ "paramname": "bFadeIn" ,"paramtype": "bool"}
]
}
,{
"classname": "vr::IVRCompositor",
"methodname": "GetCurrentGridAlpha",
"returntype": "float"
}
,{
"classname": "vr::IVRCompositor",
"methodname": "SetSkyboxOverride",
Expand Down Expand Up @@ -3176,6 +3239,17 @@
{ "paramname": "avoidRect" ,"paramtype": "struct vr::HmdRect2_t"}
]
}
,{
"classname": "vr::IVROverlay",
"methodname": "SetOverlayIntersectionMask",
"returntype": "vr::EVROverlayError",
"params": [
{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
{ "paramname": "pMaskPrimitives" ,"paramtype": "struct vr::VROverlayIntersectionMaskPrimitive_t *"},
{ "paramname": "unNumMaskPrimitives" ,"paramtype": "uint32_t"},
{ "paramname": "unPrimitiveSize" ,"paramtype": "uint32_t"}
]
}
,{
"classname": "vr::IVRRenderModels",
"methodname": "LoadRenderModel_Async",
Expand Down

0 comments on commit 84e877f

Please sign in to comment.