Editing Outputs
Last updated
Last updated
The Outputs tab in Windows -> Actor I/O is your main editing environment, it shows all actions that are tied to this actor. You can add new actions to the actor with the "New Action" button.
Each action has the following fields:
Event: The event that this action is binding to.
Target: The actor to call the selected function on.
Action: The function that is called on the target actor when this action is executed.
Parameter: Parameters that are sent with the function.
Delay: Time before the function is called on the target actor, after this action is executed.
Once: Whether the action can only be executed once.
The Parameters field (also known as arguments) require a very specific format to be understood by the I/O system and Unreal. Here are some of the most commonly used types:
In case of multiple parameters, use a semicolon ;
as the separator:
Structs are a bit tricky. First they always need to be wrapped in parenthesis ()
. Each variable used to construct the struct must be given a value by name depending on the type it is, and it should not contain spaces unless its a quoted string. So for example, the required format for a LinearColor
struct created from RGBA float values is:
The execution order of actions is not guaranteed! For the most part, the order will be the same as the list that you see in the I/O editor. However, the more actions you add to the same event of the same actor, the higher the chance of the order being changed. This is due to how dynamic delegates work in Unreal Engine.
In case it is crucial for actions to execute in a set order, it is best practice to use a small delay of 0.1 seconds. This ensures that the order is always the same, while not being noticable by players.
are also supported. These get their values assigned at runtime by game code usually by an event processor, so essentially they can represent anything. Named arguments must start with a dollar sign $
followed by the argument name:
Object references (pointers) are supported as path information to the object. You are not going to type these out by hand, rather use code to get the object's path and assign it to a . Use GetObjectPathString
in blueprints, or GetPathName
in C++. Here is what the path information looks like for the player character in the third person template for example: