Blueprints

Noodle coding

Blueprints are assets that can be visually scripted. They work by using nodes that are connected with wires to events, functions and variables.

Blueprint Types

Level Blueprints

Each level has its own level blueprint. It can be used to script the events in the level. To open it click the blueprint button and then Open Level Blueprint in the menu.

Blueprint Classes (BP_)

Makes it possible to add functionality on top of an existing gameplay class. When creating the blueprint select what parent class to base it on. The most common ones are Actor, Pawn, Character, PlayerController and GameMode.

Blueprint Macro Library (BPML_)

A macro is a self-contained graph that can be placed as nodes in the Blueprint it is created in. By putting a macro in a Blueprint Macro Library it can be used in other blueprints in the whole project.

Blueprint Interfaces (BPI_)

A Blueprint Interfaces is a collection of one or more functions. It can then be added to other blueprints and the functions hooked up to do things inside the blueprint. The good thing with this is that it is a good way to give different types of blueprints a shared interface.

Blueprint Elements

Component (BP_ / Component)

Events

Events are nodes that are called from gameplay code. With them the blueprint can respond to things that happen withing the game. Some of the common used events are below.

    • Event Begin Play: Called when actor spawned or at level start for actors that exist in the level.

    • Event Tick: Event called each frame.

    • Event Actor Begin Overlap

    • Event Hit

    • Event Actor End Overlap

    • Event End Play: Called when actor stops existing in the world. The out pin End Play Reason tells why the actor is destroyed.

Custom events can be created by right-clicking a graph and choosing Add Custom Event... from the context menu.

EventGraph

The blueprints contain graphs where one puts all the nodes and wire them up with each other. The default graph is called the EventGraph but it is possible to add more graphs to make things tidy and easy to manage. In the my blueprint list one can see what events are put inside each graph.

Construction Script

This only exist on a blueprint class and it's called when ConstructionScript node execs. That happens when the an instance of the blueprint is created.

Functions

A function is a seperate node graph in a blueprint. It can be called from other graphs in the blueprint or if it's access specifier allows it from other objects.

Variables

A variable hold a value or a reference to another object. The can be used by the blueprint to keep track of things internally or they can be made public so designers can tweak how each instance behave. Each variable have a type and a name. Variables can also be replicated over network and by setting it to RepNotify a function will be called each time the variable is changed.

Blueprint Function Library (BPFL_)

Enumeration (E)

Structure (F or S)


Unreal Engine, and the hidden pitfalls of Blueprints - 2021