SteamVR - nathann
Update Highlights

Today’s update includes a few minor feature additions and a variety of bug fixes, particularly in OpenXR. We continue to focus on OpenXR as our preferred API for new games and applications. These improvements will help stabilize SteamVR and ease the release of some of our upcoming changes and new features.

SteamVR’s official OpenXR subforum is here and we’d love to hear your feedback, as well as suggestions for new features. To report a bug, please use our Bug Reports subforum, here. Guidelines for how to provide an effective bug report are pinned at the top of that subforum.

Full Update Notes

SteamVR:
  • Fix for crash where GPU would hang due to excessive bus usage.
  • Added a setting in the video tab to turn GPU bus monitoring on/off. Enabling bus monitoring may cause hitches on some systems. When enabled, the mini-performance graph will show bus percent usage when above 3% (currently Nvidia only). Bus usage measures memory transfer between the GPU and the rest of the system. The highest usage is usually during loading. If the GPU runs out of video memory and the OS starts paging critical resources to system memory, then there can be catastrophic performance loss. The easiest fix is typically to reduce your recommended render target resolution in SteamVR settings, or reduce max texture resolutions in the application’s settings.
  • Fixed missing font for many dashboard elements.
  • Fixed hitching issue for 40-series Nvidia cards.

OpenXR:
  • Fixed an issue for DX12 apps that use multiple swap chains per frame.
  • Fixed an issue with xrStopHapticFeedback having no effect on HTC Vive controllers.
  • Updated OpenGL supported depth format. Removed GL_DEPTH_COMPONENT32 and added GL_DEPTH_COMPONENT32F for wider driver compatibility.
  • Fixed an issue where multi-session applications would get old time information on the first frame of sessions after the first session.
  • Implemented XR_EXT_active_action_set_priority.
  • Fixed some issues with automapping Oculus Touch bindings to other controllers when no other bindings were suggested.
  • Enabled Visibility Mask for Oculus/Meta devices.
  • Fixed a bug with visibility mask vertex direction and related two-call idiom behavior.
  • Fixed some haptic issues, including pre-set minimum duration, to resolve issue with Vive Wands not responding to xrStopHapticFeedback.
  • Allow an OpenXR instance to be created even if there's no headset connected and the headless extension isn't enabled. This allows applications and tools to probe the SteamVR runtime for system information.
  • Provide better logging of errors when multiple application connections are attempted (e.g. multiple OpenXR instances, combination of an OpenVR scene app instance and an OpenXR instance).
SteamVR - nathann
This build is a candidate for a full release. If you encounter issues, please report them in the forum so they can be fixed before this build goes out to everyone.

If you encounter issues with this update, please post in the SteamVR Bug Report forum. If possible, please include a system report to aid in tracking down your issue. Replies to this post are not tracked for bug reporting purposes. Please use the forum linked above to report issues.

SteamVR:
  • Updated localization
SteamVR - nathann
If you encounter issues with this update, please post in the SteamVR Bug Report forum. If possible, please include a system report to aid in tracking down your issue. Replies to this post are not tracked for bug reporting purposes. Please use the forum linked above to report issues.

Compositor:
  • Fixed timing issue for 40-series Nvidia cards.

OpenXR:
  • Fixed a memory leak when using OpenXR with DX12.
  • New dedicated OpenXR settings tab and ability to manually enable and disable implicit openxr api layers.
  • Allow an OpenXR instance to be created even if there's no headset connected and the headless extension isn't enabled. This allows applications and tools to probe the SteamVR runtime for system information.
  • Provide better logging of errors when multiple application connections are attempted (e.g. multiple OpenXR instances, combination of an OpenVR scene app instance and an OpenXR instance).




SteamVR - nathann
If you encounter issues with this update, please post in the SteamVR Bug Report forum. If possible, please include a system report to aid in tracking down your issue. Replies to this post are not tracked for bug reporting purposes. Please use the forum linked above to report issues.

SteamVR:
  • Fixed a bug were hiding the dashboard and then calling IVROverlay::GetPrimaryDashboardDevice would return 0 instead of k_unTrackedDeviceIndexInvalid.
  • Added a setting to disable gpu bus monitoring. (steamvr.vrsettings section "perfcheck" value "disableGpuBusMonitoring" type bool)
  • Fixed missing font for many dashboard elements.

OpenXR:
  • Implemented XR_EXT_active_action_set_priority.
  • Fixed some issues with automapping Oculus Touch bindings to other controllers when no other bindings were suggested.
  • Enabled Visibility Mask for Oculus/Meta devices.
  • Fixed some haptic issues including pre-set minimum duration to resolve issue with Vive Wands not responding to xrStopHapticFeedback.



Dec 23, 2022
SteamVR - nathann
SteamVR has been updated with the following changes.

If you encounter issues with this update, please post in the SteamVR Bug Report forum. If possible, please include a system report to aid in tracking down your issue. Replies to this post are not tracked for bug reporting purposes. Please use the forum linked above to report issues.

OpenXR:
  • Improved the readability of subtitles rendered with quad layers placed with action spaces.
SteamVR - nathann
If you encounter issues with this update, please post in the SteamVR Bug Report forum. If possible, please include a system report to aid in tracking down your issue. Replies to this post are not tracked for bug reporting purposes. Please use the forum linked above to report issues.

OpenXR:
  • Improved the readability of subtitles rendered with quad layers placed with action spaces.


SteamVR - nathann
If you encounter issues with this update, please post in the SteamVR Bug Report forum. If possible, please include a system report to aid in tracking down your issue. Replies to this post are not tracked for bug reporting purposes. Please use the forum linked above to report issues.

SteamVR:
  • Fix for crash where GPU would hang due to excessive bus usage.
  • Mini-perf graph now shows Bus % usage when above 3% (currently Nvidia only). Bus usage measures memory transfer between GPU and system. This typically happens primarily during loading, but can result in catastrophic performance loss when running out of video memory and the OS starts paging critical resources to system memory. The easiest fix in this case is typically to reduce your recommended render target resolution in SteamVR settings, or max texture resolutions in the application’s settings.

OpenXR:
  • Fixed a bug with visibility mask vertex direction and related two-call idiom behavior.
  • Fixed an issue for DX12 apps that use multiple swapchains per frame.
  • Fixed an issue with xrStopHapticFeedback having no effect on HTC Vive controllers.
  • Updated OpenGL supported depth format. Removed GL_DEPTH_COMPONENT32 and added GL_DEPTH_COMPONENT32F for wider driver compatibility.
  • Fixed an issue where multi-session applications would get old time information on the first frame of sessions after the first.


SteamVR - nathann
Update Highlights

Today's update brings exciting new compatibility features, enabling players with newer or less common headsets to play more games, and broadening input customization for OpenXR.

As VR has grown over the past few years, assumptions that games made about the kinds of controllers or headsets in the community have become stale. This has lead to players with some headsets being unable to play older, much loved games. The updates in this release allow users to work around many of these problems.



The new compatibility features can be found in the input binding UI by pressing the options button in the top right corner. You will then be able to select a controller to emulate, and if the render model and associated HMD should be emulated. Different games require different levels of emulation, and you should restart the game after making changes. You'll want to select the controller with the physical buttons that most closely matches the one you're holding. In most cases, this will be the Touch controller.

We've also brought input remapping to OpenXR. You can now use our existing binding UI and workshop features with games that use OpenXR. Similar to the compatibility features described above, rebinding input with OpenXR apps allows you to select the input profile you would like to use.

Full Update Notes

SteamVR:
  • SteamVR Input bindings can now configure compatibility modes. Compatibility mode emulates a different controller’s properties, and can even return a different render model. This lets games that were targeted towards specific controller types be accessible to all controllers.
  • DXGI_FORMAT_R16G16B16A16_UNORM (i.e. GL_RGBA16 on Windows) format textures are now correctly treated as containing linear color data when using ColorSpace_Auto.

OpenXR:
  • XrViewConfigurationView maxImageRectWidth and maxImageRectHeight now report the global SteamVR setting MaxRecommendedResolution which defaults to 8192.
  • xrEnumerateSwapchainFormats no longer returns the following formats on Linux as they are not properly supported: GL_RGBA16, GL_RGB16F, GL_RGB16F.
  • Fixed an issue with non-native headsets (e.g. Focus3, Quest, WMR) which was introducing extra unnecessary latency in UE apps >= v4.27 (and possibly others).
  • OpenXR titles can now be rebound using the binding UI.
  • OpenXR bindings now allow selection of the “interaction profile” name. Some games may have actions that only work when using a specific interaction profile.
  • Applied fix to allow for dead zones in between dpad input directions (wedgeAngle < pi and >= 0)
  • Fixed DX12-only issue that was interfering with gpu frame overlap (xrEndFrame was blocking until its associated gpu work was finished).
  • Fixed inconsistent pose flags returned by xrLocateSpace - both “valid” and “tracked” flags will be cleared in case of tracking loss.
  • Fixed DX12 validation error with resetting a command allocator causing a crash on Unity with the latest OpenXR plugin

SteamVR - Keith
This build is a candidate for a full release. If you encounter issues, please report them in the forum so they can be fixed before this build goes out to everyone.

If you encounter issues with this update, please post in the SteamVR Bug Report forum. If possible, please include a system report to aid in tracking down your issue. Replies to this post are not tracked for bug reporting purposes. Please use the forum linked above to report issues.

OpenXR:
  • Fix for OpenXR apps not showing default bindings in rebinding UI in certain scenarios.
SteamVR - nathann
This build is a candidate for a full release. If you encounter issues, please report them in the forum so they can be fixed before this build goes out to everyone.

If you encounter issues with this update, please post in the SteamVR Bug Report forum. If possible, please include a system report to aid in tracking down your issue. Replies to this post are not tracked for bug reporting purposes. Please use the forum linked above to report issues.

OpenXR:
  • Fix for OpenXR apps not recognizing controllers that were turned on after session start.
  • Fixed DX12 validation error with resetting a command allocator causing a crash on Unity with the latest OpenXR plugin
...