This post is to announce a recent change, which has been causing some confusion:
In the Input System package 0.9.6, we have removed support for specific XR devices and for controllers on consoles (PS4, Switch, Xbox One). This is not because we don’t want to support those devices, but because we have decided that it is better to use separate packages to support these. We are doing this because:
This way, we allow the respective console and XR teams to release changes to the support for their platforms at their own pace.
We generally want to make sure we that distribute any console-specific code through separate channels, as this may be required by the platform vendors. For the Input System, this is a pre-emptive measure - we were not in violation of any platform vendor rules, but keeping the code on separate distribution channels makes sure that we will never be.
Now, this means that with the Input System package version 0.9.6 or newer, you will not be able to to target console devices or XR controllers at the moment. This support will be brought back in the form of additional packages you can install into your project, but these are not available yet. We will let you know when they are.
Could you maybe give some more details? So this additional packages won’t be listed in the package manager but we have to download them seperately from for example DevNet for the PS4, do I understand that correctly?
I’m currently developing an XR title that is using 0.2.8 of the package. With 1.0.0 available I’m thinking it’s a good time to update—what is the best way forward for me? Will an XR input package be available in the near future, or should I just grab the version before 0.9.6 and stick with that?
Really happy with the new system, so I don’t want to have to bail on it right now.
Sorry, this was a big oversight on our part. The pull requests to remove this functionality came from members of the XR and console teams, and not the usual input system devs. They are not familiar with the release not process, so it was forgotten - this is not their fault, it is our (input system devs) task to verify that everything was in order before landing the change - we just overlooked this.
How does this leave support for console controllers (xbox 360/one, switch pro, dualshock) on PC? Will we be unable to use them?
I know Xbox’s have first-party support on Windows, and Steamworks offers a compatibility layer for the rest. I don’t quite understant if the input system is/will be able to interface with propiertary controllers on PC, be it by itself or trough the steamworks controller API.
For XR at least, the definitions were all moved into their individual plugins, and so instead of having 1 list of all possible XR devices, each platform’s package (e.g. Oculus, or WindowsMR) will come with definitions for devices available on that platform. The core functionality for XR is still there in the Input System, there are just no bindings listed in the UI, and classes like ‘OculusTouchController’ are not available. The XR packages that have built-in device layouts are all making their way through our publishing process now.
This only applies to the native controller support for games running on consoles. PS/Xbox/Switch Pro controller support for desktop hasn’t been removed.
Right, totally missed this. There are so many redundant threads of Unity information that it’s amazing even a hardcore unity geek like me can miss info. Luckily enough I’ll pass this around too. Can’t use new input for quest, but just the individual standalone XR input package.
Omg… I was updated the package and now no switch support. Project is broken.
Have no idea where I can get separated package for switch, no support and information on closed nintendo forum.
I guess it’s because it’s not ready for production.
Can not wait anymore, It’s time to move to my custom input system.