Releases: ValveSoftware/steamvr_unity_plugin
SteamVR Unity Plugin v2.8.3 (sdk 2.5.1) beta
This is a beta release. Not intended for release builds.
Upgrading from older versions
Upgrading from anything from 2.6+
Delete SteamVR folder and remove all OpenVR packages in package manager. Then install. If there are errors reported after installation you may need to reimport the project.
This release will auto-install the OpenVR Unity XR package on Unity 2020.1+ from the included tarball. This is a different installation method than was previously used (npm). If you want to use Unity XR (rendering) on 2019.3/4 you a dialog will pop up giving you that option.
Upgrading from anything from 2.3+
Delete SteamVR folder and import
Upgrading from anything from 2.1 - 2.3
The location of actions.json and associated bindings has changed. They will get automatically moved from project root to StreamingAssets/SteamVR/
Upgrading from version 2.0
You will need to delete your SteamVR/SteamVR_Input folders, Save and Generate, and then re-set your actions that you've assigned in the editor. You do not need to recreate your actions file or bindings files. This was necessary to support Unity's new serialization in 2018/2019. If you've made changes to your SteamVR/Resources/SteamVR_Settings.asset file, remember to keep it.
Upgrading your project from 1.2.3 or below
You will need to delete the SteamVR folder and rewrite your input layer. See the new documentation site here: https://valvesoftware.github.io/steamvr_unity_plugin/ for more information. If you don't want to do that then do not upgrade to this version.
Documentation
Documentation can be found online here: https://valvesoftware.github.io/steamvr_unity_plugin/
Quick Start
If you want to explore the interaction scene you'll need to open the SteamVR Input window (under the Window Menu), click yes to copy example jsons, then click Save and Generate to create input actions.
For the most simple example of VR with tracked controllers see the sample scene at SteamVR/Simple Sample
For a more extensive example including picking up, throwing objects, and animated hands see the Interaction System example at SteamVR/Interaction System/Samples/Interactions_Example
Support
If you're having trouble with the plugin the best place to discuss issues is our github here: https://github.com/ValveSoftware/steamvr_unity_plugin/issues/
If you'd like to discuss features, post guides, and give general feedback please post on the steam forum here: https://steamcommunity.com/app/250820/discussions/7/
Changes for 2.8.3
-
Using WaitFrameSync in main loop for overlay apps
-
Poses predict one frame ahead in overlay apps
-
Updating OpenVR sdk to 2.5.1
-
Fixed a few editor crashes on exit
-
Added overlay example - SteamVR_FirstPersonOverlay
-
Added support for GetActionBindingInfo to all SteamVR_Actions
-
Linux Crash Fix
Changes for 2.8.0
-
Updating OpenVR sdk to 2.0.10
-
Added knee, elbow, ankle, and wrist input sources.
-
Updated urls to sidestep log spam in Unity 2022
-
Fixed compiler errors in some plugin update scenarios.
-
Fixed the interaction system not being able to create interactables at runtime
-
Fixed reimports erasing openvr settings on some machines
-
Fixed the interaction system not respecting the hand clearance mask
-
Fixed the interaction system teleport example not working while using the 2d fallback
-
Fixed RemoveAllListeners not removing all listeners
-
Various performance and garbage collection fixes
-
Fix for multipass breaking under scriptable render pipelines.
-
Fix for unnecessary preinit that was breaking some startup scenarios
-
Fix for incorrect reporting of eye position
-
Fix for broken depth textures in some situations
-
Fixed some scenarios where OpenGL wouldn't work.
-
Fix for projects that use binary serialization. (Settings file gets output on build now)
-
Better support for unicode app names and keys
-
Fix for some projects in linux not loading manifests properly.
-
Fixed a localization issue preventing some projects with unicode characters in the path from working.
-
Fixed the interaction system not handling the bow and arrow correctly under newer physics simulations
-
Fixed the interaction system not dismissing grip hints correctly
SteamVR Unity Plugin v2.8.0 (sdk 2.0.10)
Upgrading from older versions
Upgrading from anything from 2.6+
Delete SteamVR folder and remove all OpenVR packages in package manager. Then install. If there are errors reported after installation you may need to reimport the project.
This release will auto-install the OpenVR Unity XR package on Unity 2020.1+ from the included tarball. This is a different installation method than was previously used (npm). If you want to use Unity XR (rendering) on 2019.3/4 you a dialog will pop up giving you that option.
Upgrading from anything from 2.3+
Delete SteamVR folder and import
Upgrading from anything from 2.1 - 2.3
The location of actions.json and associated bindings has changed. They will get automatically moved from project root to StreamingAssets/SteamVR/
Upgrading from version 2.0
You will need to delete your SteamVR/SteamVR_Input folders, Save and Generate, and then re-set your actions that you've assigned in the editor. You do not need to recreate your actions file or bindings files. This was necessary to support Unity's new serialization in 2018/2019. If you've made changes to your SteamVR/Resources/SteamVR_Settings.asset file, remember to keep it.
Upgrading your project from 1.2.3 or below
You will need to delete the SteamVR folder and rewrite your input layer. See the new documentation site here: https://valvesoftware.github.io/steamvr_unity_plugin/ for more information. If you don't want to do that then do not upgrade to this version.
Documentation
Documentation can be found online here: https://valvesoftware.github.io/steamvr_unity_plugin/
Quick Start
If you want to explore the interaction scene you'll need to open the SteamVR Input window (under the Window Menu), click yes to copy example jsons, then click Save and Generate to create input actions.
For the most simple example of VR with tracked controllers see the sample scene at SteamVR/Simple Sample
For a more extensive example including picking up, throwing objects, and animated hands see the Interaction System example at SteamVR/Interaction System/Samples/Interactions_Example
Support
If you're having trouble with the plugin the best place to discuss issues is our github here: https://github.com/ValveSoftware/steamvr_unity_plugin/issues/
If you'd like to discuss features, post guides, and give general feedback please post on the steam forum here: https://steamcommunity.com/app/250820/discussions/7/
Changes for 2.8.0
-
Updating OpenVR sdk to 2.0.10
-
Added knee, elbow, ankle, and wrist input sources.
-
Updated urls to sidestep log spam in Unity 2022
-
Fixed compiler errors in some plugin update scenarios.
-
Fixed the interaction system not being able to create interactables at runtime
-
Fixed reimports erasing openvr settings on some machines
-
Fixed the interaction system not respecting the hand clearance mask
-
Fixed the interaction system teleport example not working while using the 2d fallback
-
Fixed RemoveAllListeners not removing all listeners
-
Various performance and garbage collection fixes
-
Fix for multipass breaking under scriptable render pipelines.
-
Fix for unnecessary preinit that was breaking some startup scenarios
-
Fix for incorrect reporting of eye position
-
Fix for broken depth textures in some situations
-
Fixed some scenarios where OpenGL wouldn't work.
-
Fix for projects that use binary serialization. (Settings file gets output on build now)
-
Better support for unicode app names and keys
-
Fix for some projects in linux not loading manifests properly.
-
Fixed a localization issue preventing some projects with unicode characters in the path from working.
-
Fixed the interaction system not handling the bow and arrow correctly under newer physics simulations
-
Fixed the interaction system not dismissing grip hints correctly
SteamVR Unity Plugin v2.7.3 (sdk 1.14.15)
This release will auto-install the OpenVR Unity XR package on Unity 2020.1+ from the included tarball. This is a different installation method than was previously used (npm). If you want to use Unity XR (rendering) on 2019.3/4 you a dialog will pop up giving you that option.
Upgrading from older versions
Upgrading from anything from 2.6+
Delete SteamVR folder and remove all OpenVR packages. Then install.
Upgrading from anything from 2.3+
Delete SteamVR folder and import
Upgrading from anything from 2.1 - 2.3
The location of actions.json and associated bindings has changed. They will get automatically moved from project root to StreamingAssets/SteamVR/
Upgrading from version 2.0
You will need to delete your SteamVR/SteamVR_Input folders, Save and Generate, and then re-set your actions that you've assigned in the editor. You do not need to recreate your actions file or bindings files. This was necessary to support Unity's new serialization in 2018/2019. If you've made changes to your SteamVR/Resources/SteamVR_Settings.asset file, remember to keep it.
Upgrading your project from 1.2.3 or below
You will need to delete the SteamVR folder and rewrite your input layer. See the new documentation site here: https://valvesoftware.github.io/steamvr_unity_plugin/ for more information. If you don't want to do that then do not upgrade to this version.
Documentation
Documentation can be found online here: https://valvesoftware.github.io/steamvr_unity_plugin/
Quick Start
If you want to explore the interaction scene you'll need to open the SteamVR Input window (under the Window Menu), click yes to copy example jsons, then click Save and Generate to create input actions.
For the most simple example of VR with tracked controllers see the sample scene at SteamVR/Simple Sample
For a more extensive example including picking up, throwing objects, and animated hands see the Interaction System example at SteamVR/Interaction System/Samples/Interactions_Example
Support
If you're having trouble with the plugin the best place to discuss issues is our github here: https://github.com/ValveSoftware/steamvr_unity_plugin/issues/
If you'd like to discuss features, post guides, and give general feedback please post on the steam forum here: https://steamcommunity.com/app/250820/discussions/7/
Changes for 2.7.3
Changes for 2.7.2
- Refixed issue where Unity XR builds were failing
Changes for 2.7.1
- Fixed issue where builds were failing #879
Changes for 2.7.1
-
Fixed issue where builds were failing #879
-
Fixed skeleton poser crash bug #876
-
Fixed WebGL builds failing #869
-
Unity XR: Fixed issue with other platforms not building with the package installed. #33 #71
-
Unity XR: Fixed issue with unity editor crashing on init for some people. #52
-
Updated sdk header to 1.14.15
-
Moved OpenVR Unity XR package to a tarball included in this project instead of NPM per Unity's new TOS.
-
Removing app key from binding files on build (fixes some scenarios where an indev binding file wouldn't apply to a released app)
-
Retargeted some DLLs to not cause issues on other platforms
-
Fixed an issue with some builds where the settings file wouldn't copy over properly.
-
Removed some resolution dialog recommendations for 2019+
-
Reworked the auto-enable-vr systems to be easier to manage in the future and cause less problems in the present.
-
Added initialPriority to SteamVR_ActivateActionSetOnLoad. Thanks for the pull request @shiena
-
Fixed ControllerButtonHints for URP, Thanks again for the pull request @shiena
-
Added RemoveAllListeners to each action type for easy delegate disposal. Thanks for the pull request @Extrys
-
Unity XR: Fix for laptops not always using the correct video card
-
Unity XR: Fixing IL2CPP issue with builds
-
Unity XR: Enabled user presence detection via the userPresence feature.
-
Unity XR: Temporary fix for Unity XR Settings reverting to defaults when users hit play in the editor and have the window open.
SteamVR Unity Plugin v2.6.1 (sdk 1.3.10)
Upgrading from older versions
Upgrading from anything from 2.3+
Delete SteamVR folder and import. Make sure to restart the editor after everything imports successfully. Sometimes dlls get stuck in import limbo.
Upgrading from anything from 2.1 - 2.3
The location of actions.json and associated bindings has changed. They will get automatically moved from project root to StreamingAssets/SteamVR/
Upgrading from version 2.0
You will need to delete your SteamVR/SteamVR_Input folders, Save and Generate, and then re-set your actions that you've assigned in the editor. You do not need to recreate your actions file or bindings files. This was necessary to support Unity's new serialization in 2018/2019. If you've made changes to your SteamVR/Resources/SteamVR_Settings.asset file, remember to keep it.
Upgrading your project from 1.2.3 or below
You will need to delete the SteamVR folder and rewrite your input layer. See the new documentation site here: https://valvesoftware.github.io/steamvr_unity_plugin/ for more information. If you don't want to do that then do not upgrade to this version.
Documentation
Documentation can be found online here: https://valvesoftware.github.io/steamvr_unity_plugin/
Quick Start
If you want to explore the interaction scene you'll need to open the SteamVR Input window (under the Window Menu), click yes to copy example jsons, then click Save and Generate to create input actions.
For the most simple example of VR with tracked controllers see the sample scene at SteamVR/Simple Sample
For a more extensive example including picking up, throwing objects, and animated hands see the Interaction System example at SteamVR/Interaction System/Samples/Interactions_Example
Support
If you're having trouble with the plugin the best place to discuss issues is our github here: https://github.com/ValveSoftware/steamvr_unity_plugin/issues/
If you'd like to discuss features, post guides, and give general feedback please post on the steam forum here: https://steamcommunity.com/app/250820/discussions/7/
Changes for 2.6.1
-
Updated sdk header to 1.13.10
-
Added support for Unity XR
-
Added basic Universal Rendering Pipeline support
-
Added Exclusion for unused build targets
-
Fixed some error logging messages related to the old VR API.
-
Fixing obsolete API issue in unity 2020.2a
-
Moved System.ResetSeatedPosition to Chaperone.ResetZeroPosition(trackingUniverse)
-
Fixed some errors / warnings in 2020.1+
-
Fixed HDRP error that would cause SteamVR to not start. (still no hdrp support for the interaction system)
SteamVR Unity Plugin v2.5.0 (sdk 1.8.19)
Upgrading from older versions
Upgrading from anything from 2.3+
Delete SteamVR folder and import
Upgrading from anything from 2.1 - 2.3
The location of actions.json and associated bindings has changed. They will get automatically moved from project root to StreamingAssets/SteamVR/
Upgrading from version 2.0
You will need to delete your SteamVR/SteamVR_Input folders, Save and Generate, and then re-set your actions that you've assigned in the editor. You do not need to recreate your actions file or bindings files. This was necessary to support Unity's new serialization in 2018/2019. If you've made changes to your SteamVR/Resources/SteamVR_Settings.asset file, remember to keep it.
Upgrading your project from 1.2.3 or below
You will need to delete the SteamVR folder and rewrite your input layer. See the new documentation site here: https://valvesoftware.github.io/steamvr_unity_plugin/ for more information. If you don't want to do that then do not upgrade to this version.
Documentation
Documentation can be found online here: https://valvesoftware.github.io/steamvr_unity_plugin/
Quick Start
If you want to explore the interaction scene you'll need to open the SteamVR Input window (under the Window Menu), click yes to copy example jsons, then click Save and Generate to create input actions.
For the most simple example of VR with tracked controllers see the sample scene at SteamVR/Simple Sample
For a more extensive example including picking up, throwing objects, and animated hands see the Interaction System example at SteamVR/Interaction System/Samples/Interactions_Example
Support
If you're having trouble with the plugin the best place to discuss issues is our github here: https://github.com/ValveSoftware/steamvr_unity_plugin/issues/
If you'd like to discuss features, post guides, and give general feedback please post on the steam forum here: https://steamcommunity.com/app/250820/discussions/7/
Changes for 2.5.0
-
Updated sdk header to 1.8.19
-
Fixes the Open Binding UI button. This should now work on all computers as it opens the window in SteamVR instead of through your default browser.
-
Multiple hands can now hover over one interactable.
-
Interactable now has a priority member. Higher numbers will make the interactable preferred when one hand is hovering over multiple interactables.
-
Fixed the SteamVR binding hint ui. This lets you show the user (through a SteamVR interface) what actions are mapped to what bindings in a specified set. See: SteamVR_Input.ShowBindingHints(Action), SteamVR_Input.ShowBindingHints(ActionSet), SteamVR_Input.ShowBindingHints(ActionSet), SteamVR_Input.ShowBindingHintsForActiveActionSets()
-
SteamVR_Behaviour_Skeleton will now initialize SteamVR if a Pose has not already done so.
-
Fixed default binding bug with the index hmd not responding to proximity events (controller type is "indexhmd" not "index_hmd")
-
Fixed bug with the SteamVR_Skeleton_Poser_Editor being offscreen
-
Fixed a bug with the teleport point prefabs being on the wrong layer
SteamVR Unity Plugin v2.4.5 (sdk 1.7.15)
Upgrading from older versions
Upgrading from anything from 2.1 - 2.3
The location of actions.json and associated bindings has changed. They will get automatically moved from project root to StreamingAssets/SteamVR/
Upgrading from version 2.0
You will need to delete your SteamVR/SteamVR_Input folders, Save and Generate, and then re-set your actions that you've assigned in the editor. You do not need to recreate your actions file or bindings files. This was necessary to support Unity's new serialization in 2018/2019. If you've made changes to your SteamVR/Resources/SteamVR_Settings.asset file, remember to keep it.
Upgrading your project from 1.2.3 or below
You will need to delete the SteamVR folder and rewrite your input layer. See the new documentation site here: https://valvesoftware.github.io/steamvr_unity_plugin/ for more information. If you don't want to do that then do not upgrade to this version.
Documentation
Documentation can be found online here: https://valvesoftware.github.io/steamvr_unity_plugin/
Quick Start
If you want to explore the interaction scene you'll need to open the SteamVR Input window (under the Window Menu), click yes to copy example jsons, then click Save and Generate to create input actions.
For the most simple example of VR with tracked controllers see the sample scene at SteamVR/Simple Sample
For a more extensive example including picking up, throwing objects, and animated hands see the Interaction System example at SteamVR/Interaction System/Samples/Interactions_Example
Support
If you're having trouble with the plugin the best place to discuss issues is our github here: https://github.com/ValveSoftware/steamvr_unity_plugin/issues/
If you'd like to discuss features, post guides, and give general feedback please post on the steam forum here: https://steamcommunity.com/app/250820/discussions/7/
Changes for 2.4.3
-
BREAKING actions.json and associated bindings will automatically be moved to the StreamingAssets folder instead of stored in the project root. This removes the need for the plugin to copy them post build and fixes some problems people were having with version control. **IF YOU HAVE A TITLE ON STEAM AND YOU USE THIS TO BUILD - SET THE NEW PATH IN Application/Virtual Reality -> SteamVR Input System -> This game uses SteamVR Input system to: [GameName]_Data/StreamingAssets/SteamVR/actions.json **
-
Added properties to SteamVR_Settings to set default models to use when previewing hand poses
-
Moved default location of SteamVR_Settings.asset to a folder called SteamVR_Resources to make upgrading the plugin easier (can just delete the whole steamvr directory and import again)
-
Various fixes for mac/linux issues
-
Pathing fixes to allow nesting of the SteamVR folders
-
Added a way to easily set the prefab the poser system uses for previews in the editor. Check SteamVR_Settings.asset
-
Some fixes for fallback mode
-
Added index hmd proximity binding
-
Increased default ColliderArraySize for Hands in the Interaction System to 32
-
Removed ResolutionDialogSetting warning in Unity 2019.1 (#498)
-
Fix partial bindings not including default actions (#494)
-
Fix Unity crash on "Open binding UI" when using as package (#491)
-
Fix for copy example input files failing on Linux/OSX (#490)
-
Add Treadmill Source to Input Sources (#486)
-
2D Debug: Camera navigation up/down (E/Q) support (#481)
-
Fixed an issue with Unity throwing "cannot find ın" error in PCs with Turkish default language. (#479)
-
Exposed useItemPackagePreview (#432)
-
Modified Throwable to optionally ease into release velocity scaling. (#173)
-
Updated openvr sdk version to 1.7.15
-
Significant performance increases in the input system
-
Made the hands physical objects that can touch and push things (similar to The Lab)
-
Added Snap Turn and related actions / bindings
-
Changed teleport bindings to use joysticks when available
-
Normalized line endings and trailing spaces across project
-
Added Vive Cosmos default bindings
-
Removed the requirements to have a velocityestimator on throwables.
-
Added SteamVR.GetHeadsetActivityLevel() which will give you the current state of the hmd (idle, in use, etc)
SteamVR Unity Plugin v2.2.0
If you are upgrading your project from 1.2.3 you will need to rewrite your input layer. See the new documentation site here: https://valvesoftware.github.io/steamvr_unity_plugin/ for more information. If you don't want to do that then do not upgrade to this version.
If you are upgrading from 2.0.1 you will need to delete your SteamVR folder, Save and Generate, and then re-set your actions that you've assigned in the editor. You do not need to recreate your actions file or bindings files. This was necessary to support Unity's new serialization in 2018/2019.
Documentation
Documentation can be found online here: https://valvesoftware.github.io/steamvr_unity_plugin/
Quick Start
If you want to explore the interaction scene you'll need to open the SteamVR Input window (under the Window Menu), click yes to copy example jsons, then click Save and Generate to create input actions.
For the most simple example of VR with tracked controllers see the sample scene at SteamVR/Simple Sample
For a more extensive example including picking up, throwing objects, and animated hands see the Interaction System example at SteamVR/Interaction System/Samples/Interactions_Example
Support
If you're having trouble with the plugin the best place to discuss issues is our github here: https://github.com/ValveSoftware/steamvr_unity_plugin/issues/
If you'd like to discuss features, post guides, and give general feedback please post on the steam forum here: https://steamcommunity.com/app/250820/discussions/7/
Changes for v2.2.0:
- Removing some unused code
Changes for v2.2RC5:
-
Fix for controllers that don't support Skeleton Input yet (WinMR)
-
Fixing issue where sometimes SteamVR would load legacy bindings for SteamVR Input projects while in the editor.
Changes for v2.2RC4:
-
Changed SteamVR_Input.isStartupFrame to return true for the couple frames around startup. This fixes some startup errors temporarily until we have a SteamVR API to determine startup state.
-
Fixed an issue where builds would fail
-
Significantly reduced asset package file size (~50%). Some psds were replaced with pngs, some png res was lowered. The old assets are still on the github repo under old plugin versions.
-
Made Unity 2018.1+ OpenVR package detection and installation more robust.
-
Improved Project Setup experience when using an Oculus headset
Changes for v2.2RC3:
-
Minor Breaking Change: SteamVR_Behaviour_ActionType events were incorrectly sending the action instead of the behaviour component they came from.
-
Minor Breaking Change: Simplified the handFollowTransform member to be one variable instead of three
-
Fixed code generation so it deletes unused actionset classes (asks first)
-
Fixed behaviour events disappearing from serialized objects in some unity versions
-
Added a few events to SteamVR_Behaviour_Skeleton
-
Added C# style events to the SteamVR_Behaviour_ActionType components.
-
Added Happy Ball as an example of a complex blending pose that moves the held object
-
Added scaling support for the skeleton poser
-
Cleaned up the canvas elements on the Interaction System Sample scene.
-
Skeleton poser is now able to snap/follow interactables
-
Fixed the namespace on a couple small sample scene components
-
When clicking the "Show binding UI" button we will now always try to launch the default browser, though it may fail sometimes (Edge) we have better error messages now
-
Fixed some documentation errors
-
Improved skeleton poser editor ui
-
Fixed an issue with ActionSets not serializing defaults properly
Changes for v2.2RC2:
-
Interactable.isHovering now correctly reports hovering when a hand is over it. There is a new associated field Interactable.hoveringHand.
-
RenderModels should no longer throw an error on immediate reload.
-
Added the SteamVR_Behaviour component to the Player prefab in the Interaction System so it's easier to set it's DoNotDestroy value.
-
Fixed an issue with skeletons complaining that they were getting called too early. Initial action updates now happen a frame after SteamVR_Input initialization.
-
Normalized the behaviours of the throwables in the Interaction System sample scene to do what their description says they should.
-
Fixed an issue with TeleportArea throwing errors without a Teleport component in the scene.
Changes for v2.2RC1:
-
Feature: Added SteamVR_Skeleton_Poser component that simplifies creating poses that are easily compatible with the SteamVR Skeletal System. Check the objects in the Interaction System scene for examples or add the component to an interactable. More documentation on this feature will come before release. Example poses will be improved before release.
-
Copied skeletalTrackingLevel, arrays, and finger splays into the Skeleton Behaviour component
-
Fixed some related skeleton docs
-
Added an option to importing partial bindings to just replace the current actions instead of merging.
Changes for v2.2b5:
-
Fixed an issue where the SteamVR_Actions assembly was not being auto referenced by the main assembly. (intellisense would not recognize the class)
-
Fixed an issue with nullchecks against unassigned actions returning false incorrectly. (headsetOnHead == null with no action assigned should return true)
Changes for v2.2b4:
-
Fixed an issue in builds where actions and action sets were not deserializing correctly.
-
Added an option to turn on the action set debug text generation for builds in the manager.
-
Fixed an issue where automatic SteamVR Input calls on frame 0 would cause errors.
Changes for v2.2b3:
-
Fixed a named action property generation issue
-
Fixed an issue with not removing missing default binding files from the action manifest
Changes for v2.2b2:
-
Fixed an assembly definition issue during generation.
-
Added a warning to Edge users that they need to manually open the binding ui.
Changes for v2.2:
-
Major Breaking Change: To allow for the new SteamVR plugin to use assembly definition files generated action properties have been moved to the SteamVR_Actions class. Since this was already breaking references to actions we've also created friendlier names. SteamVR_Input.__actions_default_in_GripGrab -> SteamVR_Actions.default_GripGrab
-
Breaking Change: SteamVR_Action_In.GetDeviceComponentName() has been renamed GetRenderModelComponentName because that is more descriptive. This is a non-localized string representing the render model's component. Not necessarily the physical component on the device.
-
Major Change: Added Indexer/property style action data access. Instead of booleanAction.GetStateDown(SteamVR_Input_Sources.LeftHand); you can now use booleanAction[SteamVR_Input_Sources.LeftHand].stateDown; Or if you don't need to restrict to a specific input source just access booleanAction.stateDown;
-
Fix for Mixed Reality camera configs. The Example actions now have a "mixedreality" action set with an "ExternalCamera" pose action. Set this pose to a tracker / controller and mixed reality should work again. By default the camera tracker type is bound to this action. You can also change the pose that's used in SteamVR/Resources/ExternalCamera.
-
When saving / generating actions the plugin will now automatically remove entries in default binding files for actions that no longer exist.
-
Auto loading OpenVR package for projects that don't have it (2018.1+)
-
Only updating actions that has been accessed.
-
Fixed issue where you would get old data from an action recently activated.
-
Fixed some issues with Unity 2018.3+
-
Significant XML style documentation added in preparation for documentation generation
-
Added C# events with autocomplete to all actions. booleanAction[source].onStateDown += yourMethod will auto-generate a method with named variables!
-
Added C# events to all SteamVR_Behaviour_ActionType components
-
Added unrestricted input source shortcuts to actions. booleanAction.state is a short-cut to booleanAction[SteamVR_Input_Sources.Any].state.
-
Faster initialization.
-
Fixed some issues with actions not serializing properly.
-
Added DoNotDestroy checkbox to SteamVR_Behaviour component.
-
Active has been split into Active and ActiveBinding - ActiveBinding indicates the action has an active binding, Active indicates the binding is active as well as the containing action set.
-
Calls to action data will now only return valid data then the action is active. So actionBoolean.stateDown will always be false if the action is inactive.
-
Added delta parameter to Single, Vector2, Vector3 behaviour events
-
Added onState event to Boolean actions that fires when the action is true
-
Added onAxis event to Single, Vector2, and Vector3 actions that fires when the action is non-zero.
-
General input system performance increases
Changes for v2.1.5:
-
Breaking Change: Skeleton actions no longer take a input source as a parameter since this doesn't make sense. A lot of skeleton action method signatures have changed
-
Added lots of new helpful functions to the skeleton behaviour and action classes. Finger curl, finger splay, reference poses, tracking level, bone names, etc.
-
Added SteamVR_Input.GetLocalizedName and SteamVR_Action_In.GetLocalizedName that will return the localized name of the device component to last use that action. "Left Hand Vive Controller Trackpad". You can specify which parts of the name you want as well.
-
Fixed a major slowdown with going in and out of the steamvr dashboard at runtime
Changes for v2.1:
- Major Breaking Change: Actions and ActionSets are no longer Scriptable Objects. Make sure to delete your existing SteamVR_Input folder with all your generated ...
SteamVR Unity Plugin v2.0.1
This is a significant change from prior versions of the SteamVR Plugin. If you are upgrading from 1.x this will break your project and things will need to be rewritten. Please read the included SteamVR Unity Plugin.pdf and check out this blog post: https://steamcommunity.com/sharedfiles/filedetails/?id=1416820276
Changes for v2.0.1:
Changed SteamVR to identify only when in editor. SteamVR_Setting.appKey has been replaced with SteamVR_Setting.editorAppKey. This means that downloads from steam will always use proper bindings but builds run separate from Steam will have their own autogenerated app key. Remember to replace your default bindings in the binding ui before creating a build.
Fixed bug where hands were not reactivating properly after visiting the dashboard (#118)
Fixed bug with multiple items being grabbed at once (#121)
Fixed bug where Linear Drive would freeze when grabbed twice (#120)
Fixed bug with bindings that were readonly not copying correctly.
Fixed some other bugs with multiple pickup types being activated at once.
Changes for v2.0:
Updated to SteamVR runtime v1537309452 and SDK version 1.0.16.
Removed support for older versions of Unity (v5.4 or newer required). Previous versions of the plugin can be found here: https://github.com/ValveSoftware/steamvr_unity_plugin/
Changes for v2.0rc4:
Support for Windows MR (no Skeletal input at this time - driver needs to be updated)
Added SteamVR_ActionIn.onActiveChange event (most actions inherit from this class)
Added Interactable.activateActionSetOnAttach to activate action sets when you grab an item and deactivate them when they're detached
Fixed an issue in the SteamVR Input Live View that made it unreadable
Fixed an issue that lead to duplicate SteamVR_Render components in some circumstances
Removed Debug UI from release builds using the Interaction System
Added ModalThrowable. Allowing different snap locations for grip and pinch pickups
Added grenade as an example of the ModalThrowable
Added a squishable object for a knuckles force example
Fixed an order of operations error where the interactable detach event was being called after the attach event when an item changed hands
Fixed an issue with pickup points being in odd places
Forcing hover unlock on interactable destruction
Added support for Unity 2018.3
Fixed an issue with delayed init
Changes for v2.0rc3:
Added some pdf documentation for the new plugin and input system
Added code documentation to most public functions in the input system
Removed SteamVR_Camera from prefabs as this is no longer necessary
Added simple rc car example ported from Knuckles Tech Demo
Added simple platformer example
Switched hover highlights to highlight the object being interacted with instead of the controller. Can be reenabled in the player prefab.
Fixed some upgrading issues for Unity 2018
Added glcore to a few of the shaders to make them opengl compatible
Fixed a code generation issue that was generating static members instead of instance members, making actions inside sets unavailable.
Added scrollview to LiveWindow
Fixed some issues with action sets
Added DefaultActionSet attribute to specify a default action set to be assigned to fields/properties on input generation
Updated some scriptable object fields to not serialize things unintentionally
Made initialization a little more streamlined.
Added an event you can subscribe to for when initialization is completed (SteamVR_Events.Initialized(bool)). The bool indicates success
Improved editor UI for action / action set assignment
Made the example button do something on press
Changes for v2.0rc2:
Added built in support for delayed loading of SteamVR. You can now call SteamVR.Initialize() and pass a boolean to force set unity to OpenVR mode.
Added a new Simple Sample scene in the root to do super basic testing.
Moved SteamVR Input updating to SteamVR_Behaviour which also handles the SteamVR_Render component. This will be added to scenes at runtime.
Added ability to explicitly show or hide controller model in the interaction system
Gave the interaction system scene a new paint job
Auto scaling the teleporter beam to the player size
Added a new quickstart pdf
Fixed issue for Unity 5.6 not showing controllers
Fixed issue for 2018.2 not opening the input window properly
Minor performance increases
Updated initialization process to support having XR set to none or Oculus initially.
Moved some of example jsons files into a more reasonable directory.
Changes for v2.0rc1:
Namespacing all SteamVR scripts. This will be a breaking change for most projects but this is a major revision.
Renamed most of the input classes to have a more reasonable length. Generally removed Input as it's redundant in most places
Fixed some issues with newer versions of Unity throwing errors during action generation
Fixed some issues with scenes not opening properly during generation on newer versions of Unity
Removing SteamVR_Settings from plugin, it should be auto generated so new versions of the plugin don't overwrite it
Fixed some performance issues surrounding using the legacy input system at the same time as the new input system. This is not a supported scenario.
Minor performance increases around render model loading.
Removed some legacy system scripts
Fixed the button hint system
Consolidated the skeleton options
Changes for v1.3b10:
Fixed a couple issues that would cause tracking jitter or entire loss of input
Fixed an issue with destroying held objects
Changes for v1.3b09:
Newly created action sets default to "single" mode allowing action mirroring in the binding UI.
Added an example of blending unity animations with the skeleton input system. The sphere on the Equippable table can be grabbed and the hand will blend to an animation.
Interactables now hand a hideHandOnAttach bool, a handAnimationOnPickup int that triggers an Animator.SetInt, and setRangeOfMotionOnPickup which will temporarily set the range of motion while an object is attached.
Added a tool example for "With Controller" hand animation examples. Equippables can also be flipped depending on the hand that picks them up.
Interactables now can tell hands to snap to them on attach. Specify a transform to snap to in Interactable.handFollowTransform and then check handFollowTransformPosition and/or handFollowTransformRotation
Added Range of Motion blending to skeleton - Hand.SetSkeletonRangeOfMotion(rangeOfMotion, blendTime)
Updated skeleton system to account for coordinate system changes
Fixed some perf issues with the old render models (WIP)
Fixed some bugs with button hints (WIP)
Interactables should now auto detach on destroy.
Added slim glove models, an example of an alien hand with 3 fingers, and an alien hand with floppy fingers
Hands now initialize a RenderModel object which can contain a hand and a controller. These can be toggled on and off separately
Fixed issue with controller highlighters not initializing correctly
Added the ability to attach an object to a specific offset from the Hand - Hand.ObjectAttachmentPoint
Fixed issue where render model would not show after bringing up compositor
Fixed issue with default Throwables. HoverButton now works in local space
Fixed issue with velocities and angular velocities not transforming properly
Changes for v1.3b08:
SteamVR_Input_References has been moved to the generated folder so new plugin updates don't wipe yours. Prior beta users: Please delete your existing one in Assets/SteamVR/Resources/SteamVR_Input_References.asset
SteamVR_Input is no longer a MonoBehaviour. This fixes scene transition issues as well as event subscription issues.
The Live Action View has been moved to its own window under the Window menu.
Some excess configuration options were removed from the settings window, some were moved into SteamVR_Settings if still needed.
Added a Hover Button that depresses when the controller gets close to it.
Fixed an issue where default throwables would "auto catch" objects
Changes for v1.3b07:
Fixed issue with upgrading from the legacy system
Fixed some line endings
Fixed generation bug where it wouldn't reopen to the scene you started on
Auto replacing app key in binding files
Updating actions and bindings to have one pose and one haptic action
Gave each app its own app id via a vrmanifest that is generated on import. Can be modified in SteamVR_Settings for release.
Fixed haptic actions not displaying in play mode
Temporary fix for skeletons erroring while the dashboard is up
Changes for v1.3b06:
Added some flower and planting stuff for the tutorial
Updating knuckles actions and binding jsons
Added code solution for blending skeleton animations to mechanim, no example yet though
Updated some helper components to utilize Unity Events properly
Updated skeleton hierarchy
Changes for v1.3b05:
Added a knuckles binding for the Grab mode
Fixed some bugs around skeleton updates and GC alloc
Fixed a pretty significant perf hit
Added a blending option to skeletons
Added some ui to try out skeleton options
Added a target for the throwing examples
Updated longbow to only fire arrows with the pinch action
Updated other interactable examples
Added some helper methods to hand around showing / hiding controller or the whole hand.
Fixed some of the throwing examples
Changes for v1.3b04:
Added some more extensive velocity and angular velocity estimation based on positions and rotations per frame. Normalizing for time between frames.
Cleaned out and updated the actions + bindings for knuckles/wands/touch.
Fixed a bug with newly created actions not having a set type
Updated extra scenes to use the new input system
...
SteamVR Unity Plugin v1.2.3 [deprecated]
This is the old version of the SteamVR Unity Plugin. Released Jan 10, 2018. It uses the old style of input with button ids instead of SteamVR Input's actions and action sets. We recommend you upgrade to the new SteamVR Input System with the SteamVR Unity Plugin version 2.0 https://assetstore.unity.com/packages/templates/systems/steamvr-plugin-32647