What Can You Do With Blueprints?

We have a lot coming your way this morning! Hope you guys are enjoying all of the info our dev team is throwing your way. New post by environment artist below, telling you about all of the cool things you can accomplish with Blueprint!

The Blueprint visual scripting system is one of the most exciting features UE4 brings to artists and level designers, allowing a level of control that was previously out of reach without having some knowledge of writing code. The range of systems and features you can access with Blueprint script is extensive, and while this means there’s a great deal of creative potential, figuring out how it all works can seem daunting at first.

So what kinds of things can you actually make with Blueprints? The list below provides some general examples, and will hopefully show why it’s worthwhile to dive in, start experimenting, and take the time to learn how to make the most of this system.

Create level script


The Level Blueprint fills the same role that Kismet did in Unreal Engine 3, and has the same capabilities. Each level has its own Level Blueprint, and this can reference and manipulate actors within the level, control cinematics using Matinee actors, and manage things like level streaming, checkpoints, and other level-related systems. The Level Blueprint can also interact with Class Blueprints (see the next section for examples of these) placed in the level, such as reading/setting any variables or triggering custom events they might contain.

Create interactive objects


Class Blueprints are ideal for making interactive assets such as doors, switches, collectible items and destructible scenery. In the image above, the button and the set of doors are each separate Blueprints that contain the necessary script to respond to player overlap events, make them animate, play sound effects, and change their materials (the button lights up when pressed, for example).

In this case, pressing the button activates an event inside the door Blueprint, causing it to open - but the doors could just as easily be activated by another type of Blueprint, or by a level script sequence. Because of the self-contained nature of Blueprints, they can be constructed in such a way that you can drop them into a level and they’ll simply work, with minimal setup required. This also means that editing a Blueprint that’s in use throughout a project will update every instance of it.

Create customizable prefabs with construction script


Construction script is a type of graph within Class Blueprints that executes when that actor is placed or updated in the editor, but not during gameplay. It’s useful for creating easily customizable props that allow environment artists to work faster, such as a light fixture that automatically updates its material to match the color and brightness of its point light component, or a Blueprint that randomly scatters foliage meshes over an area.

In the Content Examples maps, the long rooms that contain each example (pictured above) are actually a single Blueprint made up of many components. The Blueprint’s construction script creates and arranges the various static meshes and lights according to parameters exposed in the Blueprint’s details panel. With each Content Example map we created, we were able to drop in the demo room Blueprint, set values for the length, height, and number of rooms that would be generated (and a few other options), and have a complete set of rooms ready in moments.

A Blueprint like this can be time-consuming to create initially, but if you know you’ll use it often, the time saved when building a level and the ease of making changes can make it very worthwhile.

Create a playable game character


Pawns are also a type of Class Blueprint, and it’s possible to put together every element you need for a playable character in the Blueprint graph. You can manipulate camera behavior, set up input events for mouse, controller and touch screens, and create an Animation Blueprint asset for handling skeletal mesh animations.

When you create a new Character Blueprint, it comes with a character component that has much of the behavior needed for moving around, jumping, swimming and falling built-in, and all that’s required is to add some input events in accordance with how you want your character to be controlled.

Create a HUD


Blueprint script can be used to create a game’s HUD as well, which is similar to Class Blueprints in that it can contain event sequences and variables, but is assigned to your project’s GameMode asset instead of being added directly to a level.

You can set up a HUD to read variables from other Blueprints and use them to display a health bar, update a score value, display objective markers, and so on. It’s also possible to use the HUD to add hit-boxes for elements like buttons that can be clicked on or, in the case of mobile games, can respond to touch input.

All of the examples pictured here exist in the sample content available with UE4, so if you want to get a closer look, they can be found in the Content Examples, Shooter Game and Swing Ninja projects.

What do you guys think? Are you excited about all of the things you can do with Blueprint? Give us your feedback below!

Very nice quick showcase for Blueprint here, I love the new system, it makes coding a lot easier visually and mentally. I love messing with blueprint and feel like its a quicker way to code for myself.
Thanks for this and keep up the great work

What can’t you make?

Thanks for putting that together. I’m starting to clearly understand the blueprint system and absolutely excited to start playing with it. Really makes development make much more sense. Thanks for innovating.

I love UE4 and Blueprints! :slight_smile:

I know well C++ and C# and many other languages. But new UE4 Blueprint system is absolutely owesome revelation for me. I love this set of tools. I would prefer to use BP instead of C++, except time consuming operations of course :). The guys who made it are gods for me now. :slight_smile:

I’m very impressed with what they have done with blueprint so far and i want to see some more. its the first and only visual scripting language that actually looks like it could match code as far as being able to make a game with it. however it still has many weaknesses that i think could make it absolutely mind-blowing if they where fixed.

here are some features that would help:
(disclaimer: if these are in here and i just didnt notice than i am sorry.)

  1. custom data types.

usage: inventory is practically impossible without this and its the basis of most advanced data storage.

explanation: this would be similar to classes or structs. a blueprint type for storing data. could be somewhat like a macro but instead of having logic it would house a bunch of variables that could be accessed. these data types could be treated like variables with the ability to create instances of them as well as arrays of each data type.

  1. data saving.

usage: player saves. editor data storage.

explanation: you need a way to save some data to a file so you can have persistence. this could be some built in functions for things like saving a file(could use the custom data types listed above), loading a file(to said data type). also atop the simple saving there should be one for writing byte per byte data to a file.

i think if blueprint becomes a viable coding language for making games it could greatly help with speed of development(as well as giving me less carpul tunnel).
best of luck ue4 team! toasts

   regards, .

Custom structs are being worked on!

You can create simple save games using Blueprints, you derive from the SaveGame class, and use the ‘Creat Save Game From Class’ and ‘Save Game To Slot’ functions. I’m afraid we don’t have docs or tutorials on this yet, but we are working on it!

Guys, everything is fine but tell us a bit about replication , A Crash Course in Blueprint Replication - Unreal Engine - it’s not enough information here . I just don’t know how to replicate anims which I call in my levelBP(Play animation,montage etc.) ,other clients don’t see it.Only animation in animblueprint works fine for multiple clients.

I would like to see the card game example referred to in the sample game web page up on the store. Short of that more information on using arrays. Thanks!

Awesome glad to hear it! sorry didnt see the save games. thanks for the reply. looking forward to the inventory systems. =3
one more note that i’m pretty sure is pretty apparent but just in case you should know that the ability to add these structs within other structs should be a given. so for example: RPGItem is made up of = RPG Stats, an int for damage, Name struct(for whatever data is name related) etc… you get the idea. anyway good luck!

Now that we’re talking about blueprint, can we expect some of theseto be implemented anytime soon? Especially B1 and B5.

Okay not to spam this thread but i thought of something to add. another concept to put in the development pipeline if you like.

Blueprint state machines.

these would work wonders for AI states and such. patrolling, chasing, waiting, etc…
these could also really play to the strengths of the visual scripting nature of blueprint. make something that is really complicated with code very simple with blueprint. another example would be having a door with 3 states(open, closed, locked). if its locked one of the transitions checks if you hit the interact button and have the key, if so then it goes to closed, from there if you interact then you go to open, etc… essentially imagine each state as a mini blueprint. with events and features of there own. and have a list of transitions from that state that are treated like functions almost. a node that you execute to activate that transition.

not a high demand feature by any means but i think its worth considering as its something that is far more suited to visual scripting and is rather clunky in current blueprints.