AActor::AddActorLocalOffset
#include "GameFramework/Actor.h"
Access: public
Description
Moves the actor by a delta offset expressed in the actor's local space. Use this instead of AddActorWorldOffset when the movement direction should be relative to the actor's current orientation.
Signature
void AddActorLocalOffset(FVector DeltaLocation, bool bSweep=false, FHitResult* OutSweepHitResult=nullptr, ETeleportType Teleport = ETeleportType::None) Parameters
| Name | Type | Description | Default |
|---|---|---|---|
| DeltaLocation | FVector | Offset in the actor's local space to apply. | — |
| bSweep | bool | If true, sweeps through the world for collision, stopping at the first blocking hit. | false |
| OutSweepHitResult | FHitResult* | Optional output populated with sweep hit data when bSweep is true. | nullptr |
| Teleport | ETeleportType | Controls physics velocity reset behaviour. | ETeleportType::None |
Return Type
void Caveats & Gotchas
- • DeltaLocation is in local space. Passing a world-space delta will give incorrect results if the actor is rotated. Use AddActorWorldOffset for world-space deltas.
- • When used on a physics-simulating actor without ETeleportType::TeleportPhysics, physics will override the position immediately. Use AddForce or SetPhysicsLinearVelocity for physics actors.
- • Calling this every frame with bSweep=true is expensive. Profile when used on large numbers of actors.
- • Blueprint-exposed equivalent is K2_AddActorLocalOffset.
Example
Move forward in local space each tick C++
void AMyActor::Tick(float DeltaTime)
{
Super::Tick(DeltaTime);
AddActorLocalOffset(FVector(100.f * DeltaTime, 0.f, 0.f));
} See Also
Tags
Version History
Introduced in: 4.0
| Version | Status | Notes |
|---|---|---|
| 5.6 | stable | — |
Feedback
Was this helpful?