Skip to main content

Camera Travel

CameraTravel() allows you to create smooth transitions of the camera position (Location, Rotation and/or Zoom).

Example

With the CameraTravel() node in the image above, I would be traveling to the location of the "Target Actor" in 2 seconds.

info

You're not forced to move the Location of the UC with CameraTravel. You can choose to only move the Rotation or Zoom.

Target Settings

You can make a Target Settings structure if you want to track the position of an object (Actor, SceneComponent or Mesh Socket).

Registering an Actor, a SceneComponent and/or a Mesh Socket will keep them in memory for the duration of the travel and track their positions, allowing you to use them in your Location, Offset, Yaw, Pitch and/or Roll settings.

example

In this example, I'm registering "MyCharacter" as an Actor to track, and its Skeletal Mesh socket "MySocket".
Then, I use the Socket Location as my target Location in "Location Settings" : The UC will travel to the Socket Location.
I use the Actor Value for my "Yaw Settings" : The UC will rotate to MyCharacter's Yaw.
For the Zoom, I use a Custom Value "1500".

Position Settings

All of the position settings are optional, yet at least one has to be valid for the node to trigger.

When dragging position settings, you'll be able to specify wether you want to target an object from the Target Settings or a Custom Value.

Curve

You can add a Curve using a Curve_Float that goes from (0,0) to (1,1).

note

Using this curve, the UC will go slower in the beginning and the end of the travel, and faster in the middle.

Speed Settings

By dragging the Speed Settings, you can use a Duration or a Speed.

While the duration is pretty straightforward, the speed tries to normalize the different settings.
Since there are different types of values and all of them should end their traveling at the same time, the speed setting will try to pick the greatest distance between the initial value and the target value.
For example, if you feed a location close to the initial location, and feed a yaw value that will result in a 180 degrees rotation, the speed will be used for the yaw instead of the location

Execution Pins

CameraTravel() has three execution pins.

Normal execution

The first execution pin follows the normal execution of your logic with no delay.

On Reached Destination

Triggered whenever the UC has reached its destination.

Example

In this example, I'm traveling to "MyCharacter" Location and rotating to its Yaw.
Once I've reached "MyCharacter"'s Location and Yaw, I start following its Location and Yaw.

On Aborted

You can interrupt the traveling process at any moment by calling AbortTravelTask(). This will trigger the "On Aborted" execution pin of the CameraTravel() node.