Valve has released the 1.1.3 update to the SteamVR SDK, and along with it comes a host of long-awaited improvements such as Motion Smoothing, easier access to Valve’s custom controller keybinding utility, and a few more bits and bobs that should make at least a few people happy.
Previously available via the SteamVR beta branch, now all HTC Vive users will have default access to Motion Smoothing, the company’s version of Oculus’ Asynchronous Spacewarp (ASW). When engaged, the utility uses previous frames to synthesize new frames during gameplay, allowing VR applications to chug along while running visibly smoother and more comfortably even when your computer struggles and begins dropping frames.
Long story short: Motion Smoothing halves your framerate to 45 fps when the system dips below 90 fps, inserting a synthetic frame that’s calculated quickly enough to serve to the headset where a dropped frame would otherwise fit. It’s not a cure-all, but a welcome solution for HTC Vive users with lower-spec computers. Like Valve’s Motion Smoothing, Oculus’ ASW has made a significant difference for users at, or right on the edge of the minimum spec, letting them play games with a degree of comfort that wasn’t possible beforehand.
Just like in the beta, users can always turn it off by going to ‘Settings’ > ‘Video’ or ‘Settings’ > ‘Applications’ to specify when it should be enabled. Valve’s Motion Smoothing tech only works with HTC Vive and HTC Vive Pro; both Oculus Rift and Windows VR headsets have their own driver-specific techniques for doing this.
Reminder: Motion Smoothing is only available for users running Windows 10 with an NVIDIA GPU currently. The company hasn’t given an ETA on when to expect support for AMD graphics cards.
There’s also good news for SteamVR users who make regular use of Valve’s key binding utility, which lets you map custom keys and buttons for any controller regardless of whether it has official support or not. The UI is now available on the desktop application, found under the ‘Devices’ sub-menu in the ‘SteamVR’ pop-up utility window.
Users can also rename actions for applications which do not yet have native SteamVR Input support, and create simulated actions for trigger pulls or trackpad clicks.
As stated in the OpenVR github changelog, native support for VR treadmills is now also live. According to Valve’s Jemery Selan, SteamVR now lets a driver specify that a device is intended to function as a treadmill.
Skeletal Input, or Valve’s developer-focused set of lifelike skeleton-based animations for Knuckles, Vive wands and Oculus Touch, has also been improved in the 1.1.3 update, bringing an improved hand pose used in the ’empty hand’ range of motion to all of the aforementioned controllers.
The OpenVR changelog referenced above also holds a few interesting bits of info here too, as Valve has classified its Skeletal Input into three levels of interaction: Estimated, Partial, and Full skeletal tracking.
Estimated: body part location can’t be directly determined by the device. Any skeletal pose provided by the device is estimated by assuming the position required to active buttons, triggers, joysticks, or other input sensors. e.g. Vive Controller, Gamepad
Partial: body part location can be measured directly but with fewer degrees of freedom than the actual body part. Certain body part positions may be unmeasured by the device and estimated from other input data. e.g. Knuckles, gloves that only measure finger curl
Full: body part location can be measured directly throughout the entire range of motion of the body part. e.g. Mocap suit for the full body, gloves that measure rotation of each finger segment
You can check out the full list of updates in SteamVR 1.1.3 here.