Search Issue Tracker
By Design
Votes
1
Found in [Package]
1.14.0
Issue ID
ISXB-1528
Regression
No
The New Input System is not detecting clicks when under heavy load
Reproduction steps:
1. Open the attached project "ReproProj"
2. Open the "/Assets/Scenes/Main.unity" Scene
3. Enter the Play Mode
4. Fast click "W","A","S" and "D" keys
Expected result: Only the green circle is present
Actual result: Red and green circles are present
Reproducible with: 1.11.2 (2022.3.60f1), 1.14.0 (2022.3.61f1, 6000.0.47f1, 6000.1.0b15, 6000.2.0a9)
Reproducible on:
Play Mode
Windows Standalone Player
Testing environment: Windows 10 Enterprise 21H2
Not reproducible on: No other environment tested
Notes:
- The red circle is the New Input System
- The green circle is the Old Input System
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- [Android] Stage information is not logged when Log Shader Compilation is enabled
- [Vulkan] The memory allocation increases rapidly when there are multiple (three or more) Real-Time Reflection Probes in the Scene
- [macOS] Library folder of the opened project can be deleted which leads to the crash
- “Default Scene” dropdown field contains a spelling mistake “Default Builtin”
- Editor crashes on PPtr<Mesh> after adding Text Mesh and Cloth Components to the same GameObject
Resolution Note:
The current implementation in the input system is by design.
You can however achieve similar results if they would like to receive input under load.
I investigated the issue and the project you provided quite thoroughly.
This is not a bug and rather a feature of the old input manager that we do not want to have in the new input system.
If you want to have similar behavior in the input system you can listen for events instead as these provide the delta change.
Example:
m_Controls.gameplay.move.performed += (callbackContext) => Sum(callbackContext.ReadValue<Vector2>());
This will allow for similar movement when quick tapping.
Doc’s here:
https://docs.unity3d.com/Packages/com.unity.inputsystem@1.5/manual/Actions.html#using-actions
The old input manager used to cache keyboard quick presses, to know if it was pressed this frame and then applied the keypress once the frame had finished, we don’t want this approach in the new system as there are other ways to achieve this.
If you compare both the input manager and input system with a gamepad or mouse you in the demo project you will see they act similarly. Just for key presses they differ due to the old input system caching.
Other doc’s that may be useful for you:
https://docs.unity3d.com/Packages/com.unity.inputsystem@1.2/api/UnityEngine.InputSystem.InputAction.html#UnityEngine_InputSys[…]_WasPressedThisFrame
I hope this helps!
Darren