ACharacter::K2_UpdateCustomMovement
#include "GameFramework/Character.h"
Access: public
Specifiers: UFUNCTIONBlueprintImplementableEventENGINE_API
Description
BlueprintImplementableEvent called each frame while the character's movement mode is set to Custom. Implement this to define custom physics in Blueprint without subclassing the movement component.
Caveats & Gotchas
- • This event only fires when MovementMode == MOVE_Custom. You must explicitly set the character's movement mode to Custom (e.g. GetCharacterMovement()->SetMovementMode(MOVE_Custom, MyCustomModeIndex)) for this to be called.
- • For performance-sensitive or complex custom movement, Epic recommends overriding UCharacterMovementComponent::PhysCustom() in C++ instead. Blueprint custom movement runs after the main movement tick and can produce latency in network correction.
Signature
ENGINE_API void K2_UpdateCustomMovement(float DeltaTime); Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| DeltaTime | float | Delta time in seconds for this movement update. | — |
Return Type
void Example
Implement a zero-gravity glide mode in Blueprint text
// 1. Set movement mode to Custom (index 0) when glide starts:
// GetCharacterMovement → SetMovementMode(Custom, 0)
// 2. Override UpdateCustomMovement event in the Character Blueprint:
// Compute a gentle forward velocity; set via GetCharacterMovement → Velocity.
// 3. Reset movement mode to Walking when glide ends. Tags
Version History
Introduced in: 4.0
| Version | Status | Notes |
|---|---|---|
| 5.6 | stable | — |
Feedback
Was this helpful?