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
- Terms of Service agreement checkbox is invisible under specific OS system themes (UI Accessibility)
- Tile Palette: "Create New Tilemap" dropdown area is displayed in several colors
- Input.mousePosition stops syncing to touch input when using "DownloadHandlerTexture" in WebGL build
- UI Builder canvas doesn't update element styling accordingly when changing Active Theme for some Editor Authoring elements
- Selector Value buttons are not aligned with parameters in UI Builder
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.