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
- Unclear warning message in Rendering Debugger about the Play mode Debugger Overlay
- [Android][iOS] Particles are not affected by External Forces when loaded from AssetBundles with Strip Engine Code enabled
- Rendering Debugger "STP" and "Reflection Probe Atlas" overlays don't change size when changing the "Map Size"
- "ArgumentException" error when using CameraCaptureBridge with post-processing off and when rendering to a RenderTexture
- Shaders read from the buffer unconditionally
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.