In order to use Enhanced Input event nodes in a widget, you must set the bAutomaticallyRegisterInputOnConstruction value to true on your widget. If you do not, then you will receive BP compilation errors.
You can use the "enhancedInput.bp.ShouldValidateWidgetBlueprintSettings" cvar to disable the BP errors if desired.
#jira UE-188341
#rb daren.cheng, jodon.karlik
[CL 35418859 by ben hoffman in ue5-main branch]
Blueprint pure nodes were initially intended to be similar to "functional pure". In other words, they're deterministic and produce no side effects (eg: doesn't mutate state). However, pure nodes have violated both conditions for a while now.
Instead, pure nodes are simply function nodes with output values and no visible exec pins. While this can be convenient, they come with a downside: the pure node is evaluated for each connected output. This can lead to unexpected performance issues if the node is expensive to evaluate. In the case of non-deterministic nodes, this can lead to unexpected behavior. In both cases, the user often needs to cull multiple outputs of a pure node and cache the result manually.
The solution here is to add support for toggling purity at the call site. When a function node is placed, right-clicking on it and selecting either "Hide Exec pins" or "Show Exec Pins" will toggle purity. Additionally, the meaning of BlueprintPure and the "Pure" check box changes slightly: it now means that the function node _defaults_ to a pure state when placed in a graph. However, it can be toggled to show its exec pins.
In future changes, we'll also reevaluate which common library functions should continue to default as pure.
#jira UE-196156
#rb dan.oconnor, jodon.karlik, ben.zeigler
[CL 35309072 by dave jones2 in ue5-main branch]
This deadzone will block any input values if their magnitude is less then a lower threshold, and clamp the values to an upper threshold.
#jira UE-217544
#rb nate.strohmyer
[CL 35019067 by ben hoffman in ue5-main branch]
[/Script/InputEditor.EnhancedInputEditorProjectSettings]
bAutomaticallyStartConsumingInput=true
bLogAllInput=true
#jira UE-218081
#rb jodon.karlik
[CL 34884119 by ben hoffman in ue5-main branch]
-This allows non instanced objects (such as widgets that will inject touch input), to be able to use the scale modifier.
#tests Changed to EditAnywhere, and observed that no data loss occured in PIE
#rb ben.hoffman
[CL 34433850 by velin tchalakov in ue5-main branch]
This will make for a good A/B test when optimizing modifiers, which at the moment are the most expensive part of enhanced input ticking.
#rb justin.hare
#rnx
[CL 33872525 by ben hoffman in ue5-main branch]
Deprecated GReachableObjectFlag, GMaybeUnreachableObjectFlag and GUnreachableObjectFlag. Moved the first two to an internal FGCFlags class which is the only thing that can manipulate GC reachability flags.
Deprecated a bunch of FUObjectItem functions that could manipulate reachability flags. These functions will be removed in UE 5.6.
#rb danny.couture, Johan.Torp
[CL 33716377 by robert manuszewski in ue5-main branch]
This behavior can be disabled by setting the CVar "EnhancedInput.ReconcileRemovedMappingDelegates" to false. This CVar will likely be removed in the future after 2 release versions of the engine to give any dependancies to this broken behavior an opt-out to fix up any broken code.
#jira UE-211095
#rb Phillip.Kavan
[CL 33264498 by ben hoffman in ue5-main branch]