It’s great you had such success with SteamVR but having used SteamVR on a title and spent a good amount of time with it, I am doing everything I can to steer away from Steam VR on my current project. In my case, neither myself (as the developer) or the players have a good time with it.
In my new project I check to see if they are on a Valve device and if they are then I use SteamVR (with a wrapper, so I can ditch it without ever noticing it was there), if not I use the new input system. Hopefully, by the time I publish, they will have this resolved and I can simply move to the new Input System entirely. So far new input system has been a dream come true (except for SteamVR nightmare).
Don’t get me wrong I really liked SteamVR early on when there were only 2 devices on the market and my scope was much smaller. But trying to extend or do anything remotely beyond what is built into steam VR is not pleasant. Did not scale well at all! And trying to troubleshoot was an absolute nightmare too. Don’t even get me started on how bloated that package is.
My biggest scare was/is SteamVR updates, every time they did something, you had to adapt to that version and sometimes things just broke.
On the contrary Unity, Input has been far more extendable and reliable for me. Also if you want to publish to the Oculus store you cannot use SteamVR.
You definitely can customize/rebind with the Unity Input system. You just have to do the work yourself and create an in-game binding system vs SteamVR doing this for you outside of the game.
https://docs.unity3d.com/Packages/com.unity.inputsystem@1.0/manual/ActionBindings.html#runtime-rebinding
I think “independent” is irreverent because bindings are still very much tied to your game via game profiles. I just can’t think of a use case for this. Only benefit I can think of is players can share the bindings, but then again you can do that with unity bindings too, they are just json files. I’d like to hear more, if you have any others.
At the end of the day, I guess it really depends on your project and use cases -no one size fits all. If you just want to publish to Steam Store and want simple controls or do not need to scale beyond SteamVR, then yes maybe Steam is the way to go, especially if you’re a new developer. They provide you with all these great solutions out of the box, such as the skeleton and finger tracking, etc… So you do not need to implement these on your own.
My personal stance is, input should be handled by the engine, not by some 3rd party software that the engine or the 3rd party can’t guarantee support for. I think people should give the Unity Input system a try. It has come a long way since the early, buggy days. And I think it (along with URP) is here to stay and not sure how long Unity would support the legacy input and the Render Pipeline. Better to be prepared if you ask me.
Also, if you guys haven’t seen, take a look here: https://discussions.unity.com/t/813942 I think it will finally happen!