Search Issue Tracker
By Design
Votes
0
Found in [Package]
1.0.0
1.4.4
Issue ID
ISXB-391
Regression
No
[Input System] anyKey.wasReleasedThisFrame return true only when the last button was released
Steps to reproduce:
1. Open the attached “InputAnyKey” project
2. Open “SampleScene” scene
3. Enter Play Mode
4. Observe the Console window while pressing and holding, then releasing multiple buttons
Expected result: Prints true every time the button is released
Actual result: Prints true only for the last released button
Reproducible with: 1.0.2 (2021.3.16f1), 1.2.0(2021.3.16f1), 1.4.4 (2020.3.43f1, 2021.3.16f1, 2022.2.1f1, 2023.1.0a24)
Reproduced on: macOS Monterey 12.2 (Intel)
Note: The issue is reproducible in an Editor and in a build
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
- UI Builder Scrollview is unable to scroll all the way down when the window is downsized vertically
- Celestial bodies order remains unchanged when the Distance setting is modified
- A memory leak occurs with massive terrain when camera position changes occur.
- No valid hits are returned when using RaycastCommand
- Camera is not overlooking the main Scene in Scene View in the HDRP Sample Template
Resolution Note:
The anyKey is a 'synthetic control' that is activated when one or more keys are pressed
(see https://docs.unity3d.com/Packages/com.unity.inputsystem@1.6/manual/Keyboard.html#controls)
Therefore it will only return true for wasReleasedThisFrame when there are no longer any keys pressed. This is what is correctly occurring.
The phrasing of the code anyKey.wasReleasedThisFrame can lead a reader to believe it would be triggered when 'an individual key is released' but that is not the case. This is therefore working as designed.