In Game Input, the buttons for different thumbstick and trigger digital events (i.e. RightStickUp, LeftStickUp, LeftStickRight, etc) can actually fire multiple times in a single frame, even though we only actually evaluate the analog value once (for the last game input reading, in PostProcessInput).
This is because in FGameInputGamepadDeviceProcessor::ProcessGamepadButtonState, we are processing the analog buttons. What we should do is only process these button events when we actually fire the analog input events (in PostProcessInput during ProcessGamepadAnalogState). This will ensure that the gamepad buttons are fired only when you would also be able to query the actual analog input value of that thumbstick/trigger.
Result: The thumbstick events can be fired multiple times on a single frame.
Expected: They are only fired once per-frame.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-232251 in the post.
0 |
Component | UE - Gameplay - Input |
---|---|
Affects Versions | 5.4, 5.6, 5.5 |
Target Fix | 5.6 |
Fix Commit | 38635854 |
---|
Created | Dec 4, 2024 |
---|---|
Resolved | Dec 6, 2024 |
Updated | Dec 15, 2024 |