Join Craig Barr for an in-depth discussion in this video Material properties, part of Unreal Essential Training (2016).
- Materials in Unreal Engine 4 are a very powerful way to bring your game assets to life. In this video, we want to take a look at how we can work with the properties, or parameters, around materials. Now, if you have access to the content for this course, you'll see that I'm using simply chapter 6_0 to begin from my scene file, but most importantly, I'm going to be working with the content directory here that comes with this course content. Everything I'm going to do in here you can create without this content as well.
You can simply grab any kind of material here, and I'm going to be showing the way to work with this by creating a fresh material. Now, the key to understanding the way that content works within Unreal Engine 4 is the content browser. And the content browser really is the core of the Unreal Engine 4 workflow. And this is where we can create and organize everything within a scene. Now, for materials it's no different. This is how we can simply come in here and actually create or define a brand new material. Now, in the content directory structure, there is a folder called Materials.
If you didn't have one, you could simply create your own material directory. Inside this directory are several sub-directories of, material sub-directories where we can place materials that are related to specific things. For example, there is a buildings sub-directory. There's an effects, a foliage, a props, and even a rocks material directory that contains all the materials for all the different rocks utilized throughout this environment so far. Now, let's look at how we can create a material, and also the properties around the basics of a material.
If come to the content browser and you right mouse button click within that content browser, you'll see that you get a few different options in here. This is, of course, where you can create a new folder, as we've just looked at there, to organize your materials or your other assets. But this is where you can also create a basic asset. Now, the power of the content browser is it really does allow you to go in here and start creating base objects and effects, all sorts of different things in here. This is really power menu set. Now, promoted upfront here are some of the basic things that might be most commonly created rather quickly within a content browser.
Things like blueprints and overall level, particle systems, and of course, a base basic material, which is the main material node in Unreal Engine 4. All of the different material options are available down in this advanced asset menu here, create advanced assets, you can see down below. If you scroll down to materials and textures, you'll see in here that we actually have the ability to create a bunch of different types of materials that we can utilize as our base to create or control overall how we want our materials to operate.
Now, what we want to work with specifically in here is this material node, you can see it has this basic little gray grid pattern as it's thumbnail. So, I'm going to click that material, and it's going to drop down this new material node and immediately it wants me to give this material a name. Let's just call this one Test, with a capital T, and Material, with a capital M. And this just simply going to be the base material, and how we can understand what a material is in Unreal Engine 4 and what the properties are associated with that material.
Now, you can see that we're in this material structure within our content browser of our project, but if I click on any of these materials, nothing's happening in the details panel. Well, why is that? This is because everything is handled here within its own materials node, it's own materials structure in Unreal. So, any of these materials, if I want to look at them, for example, our test material, if I double click on them, it's going to bring up a whole new tab here, and you can see that this is a floating window that we can leave here if we want, but what I would recommend you do to get used to the overall scope of this editor is grab that tab and drag it up top into your overall user interface here.
And at any time you can go back to your scene over on the left, but you can also come over to this tab and you can stack several tabs here. You can see that I have a bricks material already open here that has access to that material node structure. So, with our test material, you can see the difference between these two. Go back to the bricks, for example. This is a material that some time has been spent to create and hook up all of the different nodes. And it may look very complex at first, and it can get very complicated, but that is how powerful it is to use visual scripting within Unreal Engine 4.
However, you can create some very amazing materials here in Unreal Engine 4 with some simple hookups, and getting used to some of the basic concepts in here will allow you to do that. In this discussion right here, we want to look at just the basic material node and the parameters that are around there. Now, I mention we've created a brand new material that we've called Test Material, and I'm just zooming in by using my middle mouse button, just to zoom in to that area here, and I can pan around using my right mouse button as well. I can just scroll around or pan around with that.
Now, we can see our Test Material node. We've named it out in the content browser, that's where we've created it as well. And it's going to drop down this. This is the main material node in Unreal Engine 4. This is where all of the hookups that we can define what type of material it is are going to become apparent. Now, let's take a look at the properties node here. The main focus right now, we want to look at this details tab that's here and this node. So, we can ignore all this for now. Right now we want to understand what's going on with the properties in a material in Unreal Engine 4. So, this Test Material node, you can see that highlighted in white are some live connections.
These are all defined by the material parameters or properties over here in the details tab. Now, as I mentioned before, if we clicked on a material, we couldn't see anything live in the details tab in the user interface, this is why we dive into here, which is actually a material editor in its own tab. This is where the details or the properties or parameters for a material in Unreal Engine 4 come to life. This is where things like defining what type of material we're working with here, how this material operates and what types of parameters or hookups will become live for us to work with.
The default for a material domain or type of material is this surface material. Now, that's going to be your basic type of material, anything you want, like we looked at that brick structure. It's going to be anything that's going to cover a surface. You know, for example, those bricks. Perhaps you have a landscape texture you're using, or even the rocks that we saw in the scene. You can use something that covers over all a surface. Now, we have a couple of different functions in here, but the default is this surface. And this is what we want to work with in this case. By blend mode, it's opaque. And that's the default setting, and that means that it's just a solid surface.
If we change any of this, to example, translucent, you'll see that a couple of things just changed here, most notably is opacity has been promoted to be live. And that is that we can now drive the opacity of that material. We can go down to things like additive and change overall the different material structures, and we can see that anything that is available will be promoted or come live within that material as well. Let's just keep it back at the default opaque, which does not have an opacity setting.
Now, down below here, this is where we can dive into all the different structures or attributes related to the material, but for the most part, the most important thing to understand right now is that your properties are in a details tab in the material editor of Unreal Engine 4. And depending on how you define these basic idea of the material, this is how you're going to be able to wire things up. So, if you're ever working with a material and you want opacity, you'd need to define the material domain. You need to change the type of material and how it's going to operate.
Say for example, if you had a simple sticker to apply to something, or a decal, you would definitely have to change this material domain to be something like this deferred decal here, where you can work with things like opacity and be able to drive all of that setting into your overall material. So, the material properties node, or material properties access through a details tab in the materials editor in Unreal Engine 4, is where you will find everything related to that. And this is set up or engineered in the same way as a details panel would be for an asset, for a model.
Of course, there are different attributes available in here, but the main thing is that it's the same idea across the board in Unreal Engine 4, that if you want anything on the main component of how this node, this node right here, the main material node works, you're always going to find this in your details node. Any other connections that connect directly to your material will have their own details node. All of the attributes, parameters, properties, will be live within their own details node here within the material editor.
So, that's a quick overview of how to create a material in Unreal Engine 4, the power of using the content browser to create and organize those materials there and how we can dock simply the material editor up above in the user interface, and where the properties exist for the materials, all those parameters, attributes, anything that you want to change to do with the base material exists in that details panel.
- Customizing the Unreal UI
- Creating a new project
- Creating landscapes
- Blocking out levels
- Assembling a scene
- Working with materials and lights
- Adding post-processing effects
- Defining bodies of water
- Adding atmospherics, foliage, and wind
- Working with the Blueprint editor
- Creating cinematics
- Monitoring performance
- Packaging a game for distribution