It is to allow modifiers to be added separately instead of require to add a new input for each new modifier, but i don’t know exactly if this becomes useful in practice yet. It is mainly because i don’t know how azerty keyboards handle inputs like ctrl, shift, alt, so may be useful to set this individually depending on querty or azerty keyboard.
Yes, when you define two modifiers (.i.e. “alt” and “ctrl”) then you will need all modifiers pressed at the same time. It is good for key combinations, but is impossible right now to set a combination like: “alt” works and “gamepad 1 + gamepad2” also works for the same action. I think i should not try to handle the modifiers as the desktop do for now, because it is a bit different. In the desktop for example if you want to execute a shortcut, if you press another modifier key the shortcut will not work, this kind of verification is unnecessary for games and may introduce more delay.
I think is valid to create another class or function just to handle the keys combinations (the modifiers) because they may become complex. Gamepads have a limited number of buttons, they require more key combinations then a keyboard. I will try to change then to vectors, thanks again for the suggestion!
Maybe it will be possible to the InputAction
and the InputAxis
share this third class for the combinations, i need to see if it will work without cause confusion.
The problem of the current state of the started()
and released()
functions checking for the input type is its size after adding more verifications like for Koui, Canvas, Virtual Button, etc. i think i will need to check if there is inputs for each input type but i will wait to see how is the performance.