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

Package: Input System

-

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

  1. 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.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.