♪♪♪
(Wes Bunn) Greetings everyone and welcome. My name is Wes Bunn and I am a Technical Writer
here at Epic Games. We are here today to show you how you can work with Unreal Motion Graphics
or UMG for short, to create your own inventory system. So let's take a look at the finished
project here. Let me go ahead and hop in and show you what it is we are going to try and create
here together over the course of this video series. So in the upper left, we have our
Health, Energy, and Mood displayed. It is also affected by gameplay, as you would expect.
So as we jump around, we are losing Energy. So we are going to show you how to set something
like this up. So we have Health, Energy, and Mood. We also have some items inside of our
level here; these are our pickups. So when we press I, you can see that our inventory
slides in from the right side of the screen. If I press I again, our inventory goes away.
If we go near one of our pickups, you can see that there is text above the pickup that
kind of follows us around as we go near it. As we move away, it goes away. We can pick
it up by pressing E when we are near it. Then, we can press I to bring up our inventory.
There is our inventory. We can hover over it and we can click on it. There are a bunch
of different options we can do here. We can return back to the inventory menu, we can
click on it. We can drop it and it removes it from our inventory, at which point we can
look down and there it is right at our feet. So I can press E to pick it back up. Hit I
and it is back in our inventory, at which point I could use it or eat the banana, in
this instance. It gave me some Health, Energy, and Mood. If I hit I again, there are some
other pickups as well. So we can pick this one up. We can pick this one up. We can also
go over here and maybe pick up this little bush here and Collect Firewood. (Laughter)
So we can press E to pick that up. We can press I and all of those things have been added
to our inventory now. They all do different things. So this one you can eat it and it
will give us some Health, Energy, or Mood, which it does. But if we click this one here and
it says "Start a Fire", which it spawned a little fire particle effect right at our feet
here. So that is what it is we are going to try and create here together. There is a little
bit more to it than that as well. If I hit Esc, we are going to set the system up so
that these pickups can be modified directly inside of the Details panel over here. So
we have selected a pickup and we can define how much Health, Energy, or Mood the pickup
gives us, the thumbnail associated with it, the text, the Static Mesh, etc. We can change
that all right here inside the Details panel just to make creating additional pickups a lot
easier for us down the road. So I did want to mention that we are using Unreal Engine
4.8 and that this series is aimed at the beginner to intermediate user of Unreal Engine 4, specifically
with Blueprints and Unreal Motion Graphics (UMG) as that is what we are going to be primarily
focused on in this video series. So before we continue, I have a quick PowerPoint that
I wanted to bring up to kind of cover the different things that we are going to touch
on in this video series. I promise it is the only one that we are going to do. So I am
going to pop that up. As you can see, we have a lot of things that we are going to cover,
so I wanted to touch on them really quickly to kind of identify what each of these entail.
So first up, what we are going to do is import some assets. So these are going to be the
thumbnails that appear in our inventory. We are going to have to create those externally
and import them into the Engine so that we can use those to represent our items inside
of our inventory. We are also going to create some additional assets inside of the editor;
so some additional Blueprints for UMG purposes and for our pickups, etc. Then we are going
to modify some of the assets that come with the template that we are going to be starting
out with as well. So once we get all of that done, then we are going to jump into a quick
introduction of Unreal Motion Graphics (or UMG for short) just to make sure that we are
all on the same page and have a general understanding of all the different bells and whistles of
UMG, how you can navigate your way around the interface, and how everything works together.
So we are going to go ahead and do that. Once we do that, we can begin working with UMG
to create our player condition setup. So our Health, Energy, and Mood and displaying that
onscreen. It is at that point that we are going to start getting into the process of
passing information between different Blueprints. How do we do that? How do we communicate from
our Player Character that our Player Character has lost Health? How do we update our HUD
and pass that information across? So that is going to be handled in the player condition
setup. Once we finish that, we will begin setting up the visual layout of our inventory
menu inside UMG. This is going to be a little bit more of an intermediate topic. So we have
our foundation out of the way with the introduction and done a little bit in UMG. But when we
set up our inventory menu, we are going to deep dive into some of the details such as
Anchors, working with Anchors, how to anchor your UI widgets to various positions on screen
and have them maintain that position on various screen sizes. So we are going to talk about
Anchors a little bit. We are then going to get into stylizing buttons, playing with some of the different
properties inside of the Designer tab of UMG. Once we set up our inventory menu, then we
can begin scripting the UI functionality for our inventory system. So how does the inventory
system actually function? We have the visual layout, but what happens when I pick up an
item? How are my thumbnails refreshed? How do I bring up that context menu so that I
can use or drop items, etc.? We are going to do that all on the Graph tab inside of
UMG. Then once we finish that, we will actually need to create some pickups that we can pick
up. (Laughter) When we are doing our pickups, we are going to be doing a lot of Blueprint
work here. So a lot of visual scripting and specifically communicating between several
different Blueprints. So our pickups need to communicate not only to our HUD and our
inventory system that the item has been picked up, but also to our PlayerCharacter Blueprint
because we are going to affect the Player Character when we use that item. So we will be taking
a look at Blueprint Interfaces, Event Dispatchers, direct Blueprint communication, as well as
casting, the number of different ways you can communicate between different Blueprints
and pass information between them. Then once we do that, we will need to provide a way
for the Player Character to actually bring up the inventory menu or toggle it on and
off, as well as pick up and drop items. So we will set that up inside of the player input.
Excuse me, inside of the PlayerCharacter Blueprint we will set that up. Finally, we will finish
up by adding some animation to our inventory menu so that it slides in and off screen for
us. So it will be a quick introduction to the Animation Sequencer inside of UMG. We
are not going to go too deep into that, but we will show you how to set it up and get
started with it so that you can start experimenting with it. Then, we will also start taking a
look at how we can customize the pickup that we start out with. So we are going to start
out with one pickup and then we are going to modify that so that we can easily create
custom pickups based off of a template pickup. So we have a lot to cover. We are going to
try to keep these videos between 20-25 minutes each. There should not be that many steps
in this video series, but we are going to try to aim for a 20-25 minute length per video.
But the ultimate end goal is to get all the way back to here where we can have a fully
functional Health, Energy, and Mood player condition status, be able to pick up different
items in our level, have them all appear in our inventory with their correct thumbnails
to which we can either use or drop them, etc. So that is the goal. We are going to pause
here; that is going to do it for this video. In the next video, we will get started creating
those assets, importing the thumbnail images that we are going to need to create externally,
and doing our heavy prep work so we get most of it out of the way so that we can focus
on creating the systems in the later videos. So, thank you guys for watching and we will
see you in the next video.
♪♪♪