[h1]Update Highlights[/h1] 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. [img]https://clan.cloudflare.steamstatic.com/images//5519564/bcb3787eae0e78c90be1b8830e57b4a9eefed618.png[/img] 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. [h1]Full Update Notes[/h1] [b]SteamVR:[/b] [list] [*]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. [/list] [b]OpenXR:[/b] [list] [*]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 [/list]