General improvements to the input system #10914
Dynamic-Pistol
started this conversation in
Engine Core
Replies: 1 comment 1 reply
-
I think should add a resource to store inputs instead project settings. |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
To be direct quickly and not bore you,here are some suggestions,feel free to make proposal issues based off them
Add composite input actions
basically,the dev should be able to setup composite actions that are made of sub actions, the following composite types are
How they work:
A composite action can contain sub actions for example,
an
Axis1D
can contain positive and negative actiona composite action is called with one of the following depending on views:
Input.get_value("comp name", COMP_TYPE)
Input.get_value_comp("Comp name)
Input.get_value[Type]("compname")
composite actions can also be obtained as input events
sub actions of composite actions can be obtained via
"action_name:name_of_subaction"
, for exampleInput.is_action_pressed("move:xPositive")
if a certain action has more than axis by default, it will take over the entire action/multiple axises, for example the mouse moving delta will take over the entirety of
Axis2D
Types of Composite actions
Axis 2D
Common uses:
Actions:
Axis2D
Common uses:
Actions:
Indexer
Common uses:
Actions:
Combo
Common uses:
Actions:
MutliClick
Common uses:
Actions:
Add Input Node
basically,instead of having each node have a
_input
function,there will be aInputNode
that sends event signalsSignal types
there exists different types of signals,which are called at different times,they all have
action_name
Began Input
Called when the input is just started
Performed Input
Called when it the input is done
End Input
Called when input is released
Cancel Input
Called when input is cancelled
Going Input
Called when input is still on going
Value Input
called when composite action is valid
Value Fin Input
called when composite action is done or cancelled
Add input action interactions and modifiers
Interactions
interactions basically change the trigger requirement for the input action, instead of me copying and pasting in different ways, check out Unity's implementation and an Unreal video
Modifiers
modifiers modify the output of the input action, same as for interactions, here is Unity's implementation and here is an Unreal video
General
both interactions and modifiers should be changed at runtime, this can be useful for settings (invert cam axis)
Beta Was this translation helpful? Give feedback.
All reactions