Enhanced Input
Gameplay SystemsEnhanced Input System: Input Actions, Mapping Contexts, Modifiers, Triggers (hold, double-tap, chorded), and gamepad/keyboard/mouse/touch.
/skill enhanced-input What This Skill Does
Enhanced Input helps you set up UE5's modern input system: the replacement for the legacy input framework. Whether you need basic WASD movement and mouse look, complex inputs like hold-to-charge and double-tap-to-dodge, context-sensitive controls that change between on-foot and vehicle gameplay, or rebindable keys for player customization, this skill guides you through creating Input Action assets, building Input Mapping Contexts that bind physical keys to logical actions, configuring Modifiers for dead zones and sensitivity scaling, and setting up Triggers for press, hold, tap, chorded, and combo inputs.
Covers
- Input Action assets: defining logical input events with value types (bool, float, Vector2D)
- Input Mapping Contexts: binding physical keys and buttons to actions
- Modifiers: dead zones, inversion, scaling, swizzle axis remapping, and response curves
- Triggers: press, release, hold, tap, chorded (multi-key), combo, and pulse inputs
- Applying and removing mapping contexts at runtime for context-sensitive controls
- Gamepad, keyboard, mouse, and touch input configuration
- Player Mappable Input Config for rebindable keys
- Common control schemes: FPS, third-person adventure, and vehicle context switching
Does Not Cover
- Legacy input system (BindAction/BindAxis) → deprecated, use Enhanced Input instead
- Motion controller and VR input → VR Input
- Touch gesture recognition → Mobile Input
- UI input routing → UMG Widget Basics
How to Use
Invoke this skill in Claude Code:
/skill enhanced-input This skill is also auto-detected when your prompt mentions input, keybindings, controller, gamepad, mouse, keyboard, action mapping, or input context. AgentUX will automatically activate Enhanced Input when it recognizes relevant context in your request.
Key Unreal Engine Concepts
| Concept | Description |
|---|---|
UInputAction | A data asset defining a logical input event (e.g., IA_Jump, IA_Move) with a value type: Digital (bool), Axis1D (float), or Axis2D (Vector2D). |
UInputMappingContext | Maps physical keys and buttons to Input Actions with per-binding modifiers and triggers, swappable at runtime for context-sensitive controls. |
UInputModifier | Transforms raw input values before they reach the action: includes Dead Zone, Negate, Scalar, Swizzle, Smooth, and Response Curve modifiers. |
UInputTrigger | Defines when an action fires based on input state: Press, Release, Hold, Tap, Chorded (multi-key), Combo, and Pulse triggers. |
UEnhancedInputLocalPlayerSubsystem | The per-player subsystem that manages active mapping contexts, handles context priority, and routes input to bound actions. |
ETriggerEvent | The event type fired by an action: Started (initial activation), Triggered (continuous while active), Completed (action ends), or Canceled (interrupted). |
Related Skills
blueprint-basics
Visual scripting for binding input actions to gameplay logic
umg-widget-basics
UMG widget creation for key rebinding UI and input display
vehicle-physics
Vehicle input binding for throttle, steering, brake, and handbrake
What You'll Learn
- How to create Input Action assets for movement, combat, interaction, and UI
- How to build Input Mapping Contexts with proper modifier and trigger configurations
- How to configure dead zones, sensitivity scaling, and axis swizzling for gamepad and keyboard
- How to set up hold, tap, chorded, and combo triggers for complex input behaviors
- How to switch mapping contexts at runtime for context-sensitive gameplay (on-foot vs. vehicle vs. menu)
- How to implement rebindable keys using Player Mappable Input Config