The Unreal Engine, is a game engine which is accessible to both triple-A game developers and beginners. When creating a complex and large scale game, you’d most likely use Unreal’s built in C++ support to have deep-rooted control over the engine’s systems. Although for a beginner, programming can be seen as a daunting task, especially if they also need to learn the engine. That’s where blueprints come in handy. Blueprints, is Unreal Engine’s visual scripting system.
What is Visual Scripting?
Visual scripting is where you can create logic for your game (just like programming) but in a visual form. In Unreal, blueprints use nodes connected to each other. These nodes can be events (i.e. whenever you press the space bar), actions (i.e. move the player here), conditions (i.e. is this equal to this?), etc. Nodes can also have inputs and outputs. You give a node some input values, it will calculate what it needs then return some outputs for you to use.
One import concept of blueprints is flow control. In programming, the code is read from the top down, computing everything along the way. It’s the same with blueprints, although we can guide the progression of flow. Nodes can have an input, output, or both for the flow to pass through. In the image below, you’ll see that we have a number of different nodes, connected by white lines. These white lines control the flow and tell the compiler which nodes to trigger next. Think of this as electricity, and the white lines are powering nodes along its path.
You’ll see that some nodes also have these colored connectors on the left/right. These are the input and output values. Nodes can take in data to use, such as with the DestroyActor node. This node takes in a Target and destroys that object. Some nodes also have both inputs and outputs. It takes in some values, uses those to calculate something, then outputs a result.
You can connect a large number of these nodes together, setup loops, functions, and events just like you would in a programming language.
Here’s another example blueprint. When we press the space bar (triggers the Space Bar node), we’re moving ourselves up in the air. Then the Delay node will hold the flow for 1 second and after that, move us back down.
There are many online resources to learn Unreal Engine and the blueprint system. With diverse documentation and video tutorials, Unreal sets up their developers with many avenues to learn the engine.
Blueprints vs Programming
In Unreal, we have the choice between using blueprints and C++ programming, but which should you use? When starting out with the engine, using blueprints can be a great way of getting into game development without needing to learn programming. Although if you ever wish to create a more complex/large scale game or intend to work in the industry, learning to program may be the next step.
If there’s something you want to create in Unreal, then most likely it can be done using blueprints. Player controllers, AI enemies, cars, etc. The blueprint system is quite powerful and boasts a large number of nodes for you to use. What you can create is only limited by what you don’t know, so I recommend you just play around with the engine and try creating some blueprints of your own. A great way to get started would be to look at the template projects that come with Unreal. There are a number of different games, each with their own systems – all created with blueprints!
- Unreal Engine Documentation
- Blueprints Quick Start Guide
- Basic Scripting
- Unreal Engine Blueprints Forum
- Blueprint Best Practices
- Blueprints vs C++
- Intro to Blueprints – by Unreal Engine
- Blueprint Essentials – by Unreal Engine
- Blueprint Quickshot Series – by Unreal Engine
- Blueprint Time Attack Racer – by Unreal Engine
- Blueprint Twin Stick Shooter – by Unreal Engine
- Basic Enemies in Blueprints – by Matthew Palaje
- Blueprint Creating a Tank – by Unreal Engine
- Blueprints In-Depth – by Unreal Engine