Feel free to read the following blog article first if you are new to Unreal Engine or have never used Set Relative or Set World Transform Nodes previously.
What is an Add Actor World Transform node?
In Unreal Engine, the Add Actor World Transform node is a Blueprint node that allows you to modify the transform (position, rotation, and scale) of a specified Actor in the game world.
This node takes in the following inputs:
- Target: The Actor you want to modify the transform of.
- Delta Location: The amount to move the Actor along the X, Y, and Z axes.
- Delta Rotation: The amount to rotate the Actor around the X, Y, and Z axes.
- Delta Scale: The amount to scale the Actor along the X, Y, and Z axes.
Tip: If you don’t see the 3 Delta pins, right-click on “Delta Transform” and choose “Split Struct Pin.”
The Add Actor World Transform node then adds the specified deltas to the Actor’s current transform values to calculate the new transform values. This allows you to easily move, rotate, and scale Actors in the game world based on various inputs and conditions.
It’s worth noting that there are other similar nodes available in Unreal Engine, such as the Set Actor Location and Set Actor Rotation nodes. Which allow you to directly set the position and rotation of an Actor, respectively, rather than adding a delta value to its current transform.
What is an Add Actor Local Transform node?
This node works almost exactly to the previous ones, with one important difference.
The Add Actor Local Transform node is a Blueprint allows you to modify the local transform (position, rotation, and scale) of a specified Actor relative to its parent component or Actor.
It is important to note that an Actor’s local transform is relative to its parent component or Actor. This means that if an Actor has a parent component or Actor, the transform of its parent affects the local transform of the Actor. If an Actor lacks a parent, its local transform is equivalent to its world transform.
What is the difference between Relative and World location?
In Unreal Engine, there are two types of location systems that are commonly used: relative location and world location. Or relative and world transform.
Although both of these location systems can be used to position objects in a level, they differ in important ways.
If you don’t know the difference or have never used Set Relative or Set World Transform Nodes before, please read this blog post first.
What is the difference between ADD and SET World or Local Transform?
The Add World Transform and Set World Transform nodes in Unreal Engine are both Blueprint nodes that enable you to change the transform (position, rotation, and scale) of a specific Actor in the game world. There are, however, some significant distinctions between the two nodes:
- Add World Transform: This node adds the given delta values to the Actor’s current transform values to calculate the new transform values. This means that the Actor’s transform is adjusted depending on the amount indicated in the node in relation to its current location, rotation, and scale.
- Set World Transform: This node applies the given transform values to the Actor’s transform. This means that regardless of the Actor’s existing location, rotation, or scale, the transform is directly set to the values indicated in the node.
In other words, Add World Transform is a relative action, but Set World Transform is an absolute operation.
Add World Transform allows you to adjust the transform of the Actor based on a delta value, which can be handy for making gradual changes to the Actor’s position, rotation, and scale over time. Set World Transform allows you to directly set the transform of the Actor to a given value, which might be handy for setting an Actor at a certain position or orientation in the game world.
Real example in Unreal Engine 5
If you want to play around with these nodes, try connecting them to a Static Mesh Reference and a Keyboard Event.
When you press one of the keys, the asset’s transform, in this example its rotation, will change.
Common Warning Error in Unreal Engine
Warning: Mobility of StaticMeshComponent has to be 'Movable' if you'd like to move.
Solution: Set the StaticMesh to Movable in the Details Panel.
Hope This Helps! Keep On Creating!
Unreal Engine Roadmap
Previous Lesson: