{ }Blueprint → C++

Unreal Engine 5 · Blueprint → C++

Add Force in Unreal Engine 5 C++UE Docs

The Add Force node is UPrimitiveComponent::AddForce. Call MyMesh->AddForce(FVector(0,0,100000)); each frame to push a simulating body with a continuous force.

Blueprint node & C++ equivalent

C++
MyMesh->AddForce(FVector(0.f, 0.f, 100000.f));

What does the Add Force node do?

Add Force applies a continuous force to a physics body for the duration of the current substep. Because force accumulates over time, it is used for sustained effects such as thrusters, wind, magnetism or anti-gravity rather than instant hits.

The C++ function is AddForce on UPrimitiveComponent and takes a force vector in Unreal units.

The C++ equivalent

The example MyMesh->AddForce(FVector(0.f, 0.f, 100000.f)); applies an upward force along the Z axis. By default the force is mass-dependent, so heavier objects accelerate less for the same value, which is why the magnitude is large.

To feel sustained, this should be called every frame, typically from Tick. Calling it once applies force for a single substep and has almost no visible effect.

When to use it instead of Add Impulse

Choose Add Force when you want a smooth, ongoing push that ramps the velocity up over multiple frames, like a rocket engine. Choose Add Impulse when you want a single instantaneous shove. The component must be simulating physics for either to apply.

Frequently asked questions

How do I apply continuous force in Unreal Engine 5 C++?+

Call MyMesh->AddForce(FVector(...)); from your actor's Tick function so the force is reapplied every frame. A single call only lasts one physics substep.

Why does AddForce need such a large value in UE5?+

By default AddForce is scaled by the body's mass, so heavy meshes need large values like 100000 to accelerate visibly. You can pass bAccelChange to treat the value as acceleration and ignore mass.

Related Physics nodes

View all Physics nodes →