Valve have just released version 1.0.0 of the OpenVR SDK on Github. The OpenVR SDK is the primary API for developing VR applications that adhere to the OpenVR standard, most notably the HTC Vive. Changes in this release taken from the release notes:
- Added VREvent_ApplicationListUpdated event. This is sent whenever an application manifest is added, removed, or updated.
- Added VREvent_ModelSkinSettingsHaveChanged event. This is sent when the user has selected a new controller or base station/camera replacement model. If your application uses the IVRRenderModel interface to load the user's actual controllers it should reload them after receiving this event.
- Added GetRenderModelOriginalPath function. This returns the non-overridden full path to the render model so controller/base station/camera skinning can be avoided if the application requires it.
- Added GetRenderModelThumbnailURL function. This returns a URL (usually to a file) for a 4x3 aspect ratio thumbnail image that can be used to preview the render model.
- Added GetRenderModelErrorNameFromEnum so applications don't need to provide their own lookup table to interpret these errors.
- Added cumulative stats tracked per-application and associated accessor.
- Added interface to access the mirror textures (per-eye). This is the undistorted view with chaperone and overlays (e.g. dashboard) drawn on top.
- Added preliminary support for screenshots. This interface is not stable yet and should be ignored for now.
- Exposed the initial version. Provides developers access to poll streaming frames from the HMD front facing camera with the associated tracked HMD pose. The image is available as either a pre-corrected distorted view or corrected undistorted view.
- Added a thin Qt example for getting and showing the camera image/pose.
- Added interface to get size of a texture used by an overlay. This is useful when setting the overlay texture by filename.
- Added ability to render side-by-side stereo content and panoramas.
- IVRCameraComponent is still in a development phase.
- Added provider method GetInterfaceVersions. This contains all the version numbers of the other interfaces in the driver. Drivers should return vr::k_InterfaceVersions from the version of openvr_driver.h that they were compiled against.
- GetTrackedDeviceDriver and FindTrackedDeviceDriver no longer take an interface version. The caller will expect the version of the interface returned in GetInterfaceVesions()
- Fixed compile error around glDebugMessageCallback that could happen with certain versions of the OpenGL headers.
- Fixed compile error from LoadRenderModel->LoadRenderModel_Async name change.
- Fixed compile error from LoadTexture->LoadTexture_Async name change.