This article has participated in the Denver Nuggets Creators Camp 3 “More Productive writing” track, see details: Digg project | creators Camp 3 ongoing, “write” personal impact.

I. Problem description:

The original project was developed using the Unity 2018 version and for some reason needed to be upgraded to the 2020 version. After the version upgrade, I found that the contents of the Input Manager that had been wrapped were no longer usable. After unremitting efforts, the final solution is recorded as follows.

Network transmission: With the rise of VR, various VR manufacturers have different Input devices. All VR devices have their own Unity SDK, and THE SDK code styles are different. Therefore, the old Input System cannot meet the needs of various changes, so there is a new Input System.

There have been no problems with using the old UnityEngine.Input for mobile game development.

So the root cause of the problem is: Unity 2020 has updated the Input Manager


Two, the problem reported error:

Go to Edit from Unity’s main menu — > Project Settings — > Input Manager

The original:

This is where you can configure the controls to use with the UnityEngine.Input API. But you have switched input handing To “Input System Package” in your Player Setting. The Input Manager will not be used

Translation:

You can configure controls here to use the UNityEngine.input API. But you’ve switched the input action to “Enter system package” in Player Settings. The input manager will not be used.

The error said to be resolved in Player Settings.


Iii. Solutions:

Player – > Other Settings – > Active Input Handing Select Input Manager(Old) as shown below:After selecting Input Manager(Old), click Apply and restart Unity.After restart, view the Input Manager as shown below:

You can see a hint that basically says: Here you can configure the controls to be used with the Input API. Consider using a new input system package instead;

It is now compatible with older input systems.