Any Unreal Engine Experts Here?

Renzatic

Egg Nog King of the Eastern Seaboard
Posts
3,905
Reaction score
6,836
Location
Dinosaurs
I had a bazaar dream last night, I was taking notes and I was looking at a form that took up my entire field of view (in the dream) and when I would make a note, it was acting like a program that would add comments, references and cross references. And in this dream, I was puzzled, as to how this program was working trying to figure it out. I’m confident this is a direct result of my graphic studies, but it won’t stop me. :D

I have dreams somewhat like that too when I'm trying to figure something out. I'll tediously pick at some random thing, never quite getting it, and eventually bore myself awake.

Though those dreams must be good for something, because I usually have my moments of inspiration when I first wake up in the morning.
 

Huntn

Whatwerewe talk'n about?
Site Donor
Posts
5,289
Reaction score
5,232
Location
The Misty Mountains
From the UE Tutorial making a Master Environmental Material:

Master Material Concepts
  • • Material Functions:
    • • Allow you to share and re-use parts of your Material Graph.
    • • Allow you to share material code to lessen the burden of maintenance, in case. wide global changes are required.
    • • UE4 has a lot of material functions built in, determine where object is in world or where screen coordinates for your mouse are located.
    • • Many material functions you may already be using and not realize it.
    • Pertinent- If making or recreating a certain piece of code like tiling the texture in both the X and Y axis, it is advantageous to take that code and put it into a material function and share that through your material library, so if ever need to make adjusting to that specific tiling, would only have to adjust the material function, instead of opening every material you have to make tiling adjustment there.
Create a Master Material by creating a new material and into this:
  • • Add a Color.
  • • Add a Texture.
  • • Add a Metal Component.
  • • Add a roughness component by using the same texture.
  • • Add Normal Map (texture).
  • • Apply and Save
MMaterial 2021-10-19 at 8.04.56 PM.png

Create Master Environment Material (Material Instance?) for Environment Objects
  • • In UE, author creates a new Level, and in Master Material Folder, RC to create New Material, labels Mat_Env_Master and DCs to open it.
  • Step 2: Add Color, create Vector Parameter (Yellow box) Node.
    • • RC in Material Editor and choose or type in “Vec”, choose vector parameter and name it Base_Color and adds it to group BaseColor.
    • • Connect Node to Master Material List box to right.
    • Set Color values as R= .5, G=.5, B=.5, A= .0 to put some white in there.
  • Add Texture from the Content browser- and place it inside the Material with the T key, make it a texture object.
    • Place Texture in Material Editor- Select texture- T_Brick_Clay_ New, hold T, then click in Material Editor to place it as a texture sample. If at this point, you connect it to “Base Color” on the material menu, but can’t be used as a material instance, because the texture sample can’t be adjusted. It must be turned into a parameter first. (This step is undone.)
    • Turn texture into a parameter (Blue Box)- RC on Texture, and from the menu select Convert to Parameter.
      • Under Details, you’ll now see both a Parameter Name (name Base_Color_Texture) and Group: BaseColor.
  • Create Static Switch (Green box) -to get the ability to change back and forth between a basic color or a texture inside the material instance.
    • • Disconnect the connection between the texture and the material menu panel.
    • • RC in the Material editor and in the search field type “switch” and pick StaticSwitchParameter.
    • • At this point all 3 boxes should be disconnected from each other.
  • Under Details:
    • • Material Expression Static Bool Expression- Default Box checked.
    • • General: Parameter Name: bUseBaseColorTex- This name is to decipher what you are doing, enabling the texture that you previously labeled base color texture.
    • • General: Group: BaseColor.
    • • So with Default checked, the base color will be used, and if unchecked (false value), the base texture will be used.
  • Adds Metal Component- Set Up Master Material for Metal
    • Based on last example, going to add a metallic component by adding a constant, converting it into a parameter, and set it up to be a Metallic input.
    • • Hold 1 in Material Editor and LC to create Constant?
    • • RC and convert into parameter.
    • Details Note: Metallic by default has a value of 0 or 1, either on or off.
    • • Details: Parameter: Metallic, Group: Metallic.
    • Details: Material Expression Scalar Parameter: Default 0.0, Min Slider 0.0, Max Slider 1.0.
    • • Author makes a comment that the max value of 1.0 is set so the artist does not accidentally push the metallic value above 1, but says nothing is going to happen if he does?




  • • Add Roughness Component- Creating a Master Material: Set Up Roughness
    • Add Roughness to Master Material and set up so that roughness is controlled by turning the values of roughness up or down using a Lerp Parameter (?), described as a poor man’s levels.
    • • Create Texture Sample in Material Editor- Drag material into Material Editor- In UE grab texture T_Brick_Clay_ New, and pulls it into the Material Editor, where it appears as a box with a “texture sample” label.
    • • Set up Roughness Mask-that is packed into the R, G, or B channels of the material.
      • • Details: Material Expression Texture Base: Sampler Type: Masks.
      • • Create a Mask Parameter: On the Texture Sample (previously created) not sure if author clicked on UV label to create a white line connector or RC on the triangle (pull down menu) of the Label to create a Mask Parameter which will allow us to select the R, G, or B channels of Texture Sample.
      • • Detail: Parameter Name: RoughnessMasks; Group: Roughness.
    • • Change Texture Sample to a parameter: RC on it and select “Convert to Parameter”.
      • • Details:General: Parameter Name: RoughnessTexure; Group: Roughness.
      • • Create Lerp Parameter:Hold “L” and click in Material Editor to create Lerp parameter.
        • Take the output of Mask Parameter and drag it to the Lerp Alpha Channel.
    • • Create 2 Scalar Parameters:Hold 1 and click in Material Editor to create 2 Scalar Nodes.
      • Select both RC on them and Convert to Parameters.
      • • First (Top) Scalar Parameter
        • • Details:General: Parameter Name: Roughness_Low; Group: Roughness.
        • • Details: Material Expression Scalar Parameter: Default 0.0, Min Slider 0.0001, Max Slider 1.0. Note author states Default value of 1 but leaves it at 0, so not sure which is the correct value.
      • • Second (Bottom) Scalar Parameter
        • • Details:General: Parameter Name: Roughness_High; Group: Roughness.
        • • Details: Material Expression Scalar Parameter: Default 0.5, Min Slider 0.0001, Max Slider 1.0.
        • Connect to Lerp B Value.
      • • Connect Scalars to Lerp and Lerp to Roughness on Material Menu
        • Connect Roughness_Low Scalar Parameter to Lerp value A.
        • Connect Roughness_High Scalar Parameter to Lerp value B.
        • Connect Lerp Parameter to Material Menu: Roughnesss.
  • • Add Normal Map (texture)
    • • Note: This is a different texture than used before.
    • Place Texture in Material Editor- Select texture- T_Brick_Clay_ Norm, hold T, then click in Material Editor to place it as a texture sample.
    • Details: Material Expression Texture Base: Sampler Type: Normal.
    • • RC and Convert to Parameter.
    • Details:General: Parameter Name: Normal_Map; Group: Normal.
  • Apply and Save- At the top of the Material Editor select “Apply” and then “Save” now it can be used. This is ready to be used in a Material Instance.
 

Renzatic

Egg Nog King of the Eastern Seaboard
Posts
3,905
Reaction score
6,836
Location
Dinosaurs
Personal opinion? If you really want to grasp materials easily, it might be best to start out with the barest basics of the PBR texture stack before delving in to the deep end of the shader pool.

Diffuse/Albedo - The colors of your surface, devoid of any shadow or highlight information

Metallic - What surfaces on your texture are metal, and what aren't. For photorealistic results, this should be treated as a binary value: if it's metal, it's white, if it's not a metal, it's black. You can play around with shades of grey for some extra style and taste though.

Roughness - In simplest terms, it's what's shiny on your texture, and what isn't. Think of a Pool ball fresh out of the box with nary a scratch or a fingerprint on it. It's very shiny, right? In PBR texturing terms, it's smooth. A full black roughness map. Now, say you take an X-acto knife to this Pool ball, and start scratching away at this shiny surface. It starts becoming less and less shiny the more you scratch it. You're adding roughness to the surface of this pool ball, which would be translated into little cuts of lighter grey on your roughness map. The more towards white it is, the rougher it becomes.

Normal - So what's a normal in 3D terms? Okay, think of a quad, a square with 4 vertex points at each corner, all connected by edges that, when enclosed, make up a face. Now which direction is this face pointing? That's your normal.

Since a picture is worth a thousand words, here's a shot of a quad, with the little light blue line representing the surface normal.

Normal.jpg


So what's a normal map good for? Well, say your texture has a bunch of little pebbles on it. They're bumpy, so they should be picked up by the lights, and cast shadows and highlights, right? Thing is, there's no information on your texture for the light rays to bounce off of. As far as they're concerned, your texture is perfectly flat.

You could add in some polygon rocks in there to break up the light, and make things look more realistic. But these are tiny details. There's no reason to waste millions of polygons on something that small. So what do you do? You can take the normal information from a surface, and bake it to a texture, giving your renderer something to work with.

And since pictures will be worth a million words in this situation, here's a shot of a basic cylinder with a normal map baked from a high poly source. There's no extra geometry added to the cylinder, but it's catching the light much like the high poly rope does.

Normalmap.jpg


This is what your normal maps are for.

Height - Somewhat similar to a normal map, but instead of baking curvature and angle, it's baking height. You won't be using these often starting out, but they're great for displacements, or adding actual 3D depth to an otherwise flat object through shader trickery, like parallax occlusion maps.

Ambient Occlusion - A map of the shadows in your crevices, places where light usually doesn't quite reach, leaving it in slight shadows. In the shot above, you can see the AO in the places where the braids of the ropes meet on both the real geometry, and normalmapped cylinder. You'll usually be combining these with your diffuse, strengthening or weakening their effect based upon your personal tastes. They can also be used to create masks for adding things like rust, dirt, or dust into the cracks and crevices on your objects when making smart materials.

Emission - This one's easy. You have a texture with a glowy bit on it? Make them actually glow with emission maps! When baking light information, they'll make your texture act as their own light source based upon the emission.

Now these are the basic parts of a material. Once you know how all of these play together, you can start building more complex shaders more easily.
 
Last edited:

thekev

Elite Member
Posts
1,110
Reaction score
1,674
To me, renting software is like renting tools. Yeah, I could probably save a bit of money in the long run renting them, but I'd rather just spend the money, and always have them on-hand for everything from big projects, to little incidental tweaks.

Take Photoshop for example. An old license for it used to cost, what, $400 or so? Paying $20 a month is easier to stomach in the short term, but what if all I want to do is open up and convert old .psd file? I'd have to pay $20 for a month just to do that.

My use case with Photoshop was that I'd use it heavily for awhile, then not need it that much for awhile after, just for the occasional thing. Having to sign up and cancel, sign up and cancel, sign up and cancel for those moments when I do have a need for it is just kind of a pain in the ass. Spending $400 up front, then always having it around thereafter is far preferable.

Photoshop was more expensive for a full license, more like $700. Upgrades were only around $200 for 2 - 3 versions back (think they changed from 3 to 2 back at some point). Some third party retailers would sell upgrades for about 10% less than Adobe charged directly. Basically if you had an initial license, it was cheaper to maintain than the current model without adjusting for inflation.
 

Huntn

Whatwerewe talk'n about?
Site Donor
Posts
5,289
Reaction score
5,232
Location
The Misty Mountains
Personal opinion? If you really want to grasp materials easily, it might be best to start out with the barest basics of the PBR texture stack before delving in to the deep end of the shader pool.

Diffuse/Albedo - The colors of your surface, devoid of any shadow or highlight information

Metallic - What surfaces on your texture are metal, and what aren't. For photorealistic results, this should be treated as a binary value: if it's metal, it's white, if it's not a metal, it's black. You can play around with shades of grey for some extra style and taste though.

Roughness - In simplest terms, it's what's shiny on your texture, and what isn't. Think of a Pool ball fresh out of the box with nary a scratch or a fingerprint on it. It's very shiny, right? In PBR texturing terms, it's smooth. A full black roughness map. Now, say you take an X-acto knife to this Pool ball, and start scratching away at this shiny surface. It starts becoming less and less shiny the more you scratch it. You're adding roughness to the surface of this pool ball, which would be translated into little cuts of lighter grey on your roughness map. The more towards white it is, the rougher it becomes.

Normal - So what's a normal in 3D terms? Okay, think of a quad, a square with 4 vertex points at each corner, all connected by edges that, when enclosed, make up a face. Now which direction is this face pointing? That's your normal.

Since a picture is worth a thousand words, here's a shot of a quad, with the little light blue line representing the surface normal.

View attachment 9483

So what's a normal map good for? Well, say your texture has a bunch of little pebbles on it. They're bumpy, so they should be picked up by the lights, and cast shadows and highlights, right? Thing is, there's no information on your texture for the light rays to bounce off of. As far as they're concerned, your texture is perfectly flat.

You could add in some polygon rocks in there to break up the light, and make things look more realistic. But these are tiny details. There's no reason to waste millions of polygons on something that small. So what do you do? You can take the normal information from a surface, and bake it to a texture, giving your renderer something to work with.

And since pictures will be worth a million words in this situation, here's a shot of a basic cylinder with a normal map baked from a high poly source. There's no extra geometry added to the cylinder, but it's catching the light much like the high poly rope does.

View attachment 9484

This is what your normal maps are for.

Height - Somewhat similar to a normal map, but instead of baking curvature and angle, it's baking height. You won't be using these often starting out, but they're great for displacements, or adding actual 3D depth to an otherwise flat object through shader trickery, like parallax occlusion maps.

Ambient Occlusion - A map of the shadows in your crevices, places where light usually doesn't quite reach, leaving it in slight shadows. In the shot above, you can see the AO in the places where the braids of the ropes meet on both the real geometry, and normalmapped cylinder. You'll usually be combining these with your diffuse, strengthening or weakening their effect based upon your personal tastes. They can also be used to create masks for adding things like rust, dirt, or dust into the cracks and crevices on your objects when making smart materials.

Emission - This one's easy. You have a texture with a glowy bit on it? Make them actually glow with emission maps! When baking light information, they'll make your texture act as their own light source based upon the emission.

Now these are the basic parts of a material. Once you know how all of these play together, you can start building more complex shaders more easily.
Thanks for your perspective on these definitions! I’m mostly focused on understanding just what I need to know for my first project, duplicating the Forest road. That’s not a hint and I appreciate your perspective. :)

What is kind of funny is that the author of the Forest scene tutorial, throws up this insanely complicated master material and describes it as routine stuff, minus a complete explanation because it’s s so basic how could a novice not understand it? 😵‍💫

5078686A-12C3-49BF-B64A-8E38C5CFD116.png
So I am evaluating what I need to know to create some minimally passible master material to duplicate the Forest floor, which also includes vector painting.

The main problem with the UE Intro tutorial, is that while they show you step by step how to set up a master material, it’s completely divorced from showing you how this relates to a project And shows how it works. Now maybe, I’m just not to the point where the author says now that we built this master material, now here is how to use it in a project.

Today, I have been studying an excellent tutorial on vector painting in what looks like to me to be a master material, but maybe it’s not. :unsure: What you said at the beginning of you post coincided with some of the info provided in the following link, where roughness is described, along with diffused and normal maps, where the diffused equates to a basic color and normal equates to details.




Next I’m looking for info on Height Lerps. This if I understand it, where texture is applied to another based on the height of the bumps in the texture Where it is being applied.


PS, probably not going to get home till Monday.
 
Last edited:

Renzatic

Egg Nog King of the Eastern Seaboard
Posts
3,905
Reaction score
6,836
Location
Dinosaurs
...minus a complete explanation because it’s s so basic how could a novice not understand it?

Well, yeah! I mean, comeon! It's right there!

From what it looks like from far away, he's creating a master material for all the bits and pieces he'll need for a forest floor. The dirt, leaves, and grass, all blended together using Red, Green, and Blue vertex colors, alongside some transitional effects at the edges for extra blending beyond what you'd get from the vertex paint.

I can't tell you EXACTLY what's he doing, because Blender and Unreal are similar enough that you can get the jist of what's going on by looking at it, different enough that you have to learn different nodes to perform the same actions. The beat's the same, but the melody's a little different.

Now, lerps seem sorta complicated at first, but they're actually the easiest things in the world. Lerp is short for Linear Interpolation. It's a straightforward gradient from 0 (black) to 1 (white), and all the numbers between that 0 and 1, such as 0.357 or 0.81, are the shades of the grey between the black and white. Lerps are put in place to take you from an arbitrarily defined 0, to another defined 1 based upon some set parimeters. In short, it creates a transition.

As far as height maps go, you could use lerps for a number of things, most of which blend two textures together. Like say you want to fill the cracks of a brick texture with sand, with the bricks being various different heights. You have two materials, your bricks on top, and your sand on the bottom. You combine them together on a lerp node, then apply a parameter to control the contrast, mixing them together.

If your lerp contrast is a perfect grey between black and white, or 0.5 in computer terms, then all the parts of the brick texture's heightmap that are below 0.5 will be filled with the sand material, leaving the bricks that are above 0.5 exposed and unsanded.

...I feel like I've forgotten to address something, so if you've got more questions, feel free to ask.
 

Huntn

Whatwerewe talk'n about?
Site Donor
Posts
5,289
Reaction score
5,232
Location
The Misty Mountains
Well, yeah! I mean, comeon! It's right there!

From what it looks like from far away, he's creating a master material for all the bits and pieces he'll need for a forest floor. The dirt, leaves, and grass, all blended together using Red, Green, and Blue vertex colors, alongside some transitional effects at the edges for extra blending beyond what you'd get from the vertex paint.

I can't tell you EXACTLY what's he doing, because Blender and Unreal are similar enough that you can get the jist of what's going on by looking at it, different enough that you have to learn different nodes to perform the same actions. The beat's the same, but the melody's a little different.

Now, lerps seem sorta complicated at first, but they're actually the easiest things in the world. Lerp is short for Linear Interpolation. It's a straightforward gradient from 0 (black) to 1 (white), and all the numbers between that 0 and 1, such as 0.357 or 0.81, are the shades of the grey between the black and white. Lerps are put in place to take you from an arbitrarily defined 0, to another defined 1 based upon some set parimeters. In short, it creates a transition.

As far as height maps go, you could use lerps for a number of things, most of which blend two textures together. Like say you want to fill the cracks of a brick texture with sand, with the bricks being various different heights. You have two materials, your bricks on top, and your sand on the bottom. You combine them together on a lerp node, then apply a parameter to control the contrast, mixing them together.

If your lerp contrast is a perfect grey between black and white, or 0.5 in computer terms, then all the parts of the brick texture's heightmap that are below 0.5 will be filled with the sand material, leaving the bricks that are above 0.5 exposed and unsanded.

...I feel like I've forgotten to address something, so if you've got more questions, feel free to ask.
You are always helpful! :love:

Because I’ve chosen what I would describe as an advanced project to become enamored with, I am being exposed to many advanced concepts. Which is not necessarily bad, I’m not feeling overwhelmed, and when I look at an unpacked material there is a lot of nodes all connected, but it does not seem overly complicated. Mostly it’s just being familiar with what a node does (easy), and how it functionally works (just a matter of looking at examples, tutorials).

I linked to a vertex painting tutorial which is easy to digest.
I’m looking at channel packing because UE limits you to 16 texture maps but you might feel squeezed. I obviously need some XP before I can judge this.

The bad thing about the UE tutorial is they spend a lot of time setting things up, but very little showing how something like a master material is used, after it is set up.




What I’m not clear on about height/displacement maps when it comes to blending because I think the Forest Scene Tutorial man may have used a texture height map, and what I’m not sure about is if the average person has the ability to create a displacement map, or if you just search around online for a material that includes a displacement map?

We are getting ready to drive from Broken Arrow, Ok back to Houston, and this week, I anticipate, I will start messing with the Forest floor textures and vertex painting to see if a displacement map is really needed to get a nice effect for the floor. There are places online, including UE Marketplace that has free textures, so I need to open them up and see what is there, such as a displacement map and then figure out if it was used in the Forest scene (rewatch the video) and what is actually required to make a nice floor texture For my purposes.

Be back soon! :)
 

Renzatic

Egg Nog King of the Eastern Seaboard
Posts
3,905
Reaction score
6,836
Location
Dinosaurs
Because I’ve chosen what I would describe as an advanced project to become enamored with, I am being exposed to many advanced concepts. Which is not necessarily bad, I’m not feeling overwhelmed, and when I look at an unpacked material there is a lot of nodes all connected, but it does not seem overly complicated. Mostly it’s just being familiar with what a node does (easy), and how it functionally works (just a matter of looking at examples, tutorials).

Nodes really aren't that complicated, though they can be busy. You look at some of these node trees, see all those crisscrossing noodles, and think it's doing some weird, arcane thing, but really, it's all just simple actions performed step by step by step.

I linked to a vertex painting tutorial which is easy to digest.
I’m looking at channel packing because UE limits you to 16 texture maps but you might feel squeezed. I obviously need some XP before I can judge this.

Just so you know, that's 16 texture maps per material, not in an entire scene. UE is only limited by the amount of system and GPU memory you have available.

16 textures would roughly equate to 4 full materials, and you could probably double or triple that through channel packing. Though keep in mind that you have something of a hard limit if you go the vertex painting route, since you can only use red, green, or blue channels to blend your textures together. If you try to get clever by throwing in a 4th material, thinking you can separate RGB then recombine, say, R and B to get a texture on purple, it'll default back to your original materials, giving you a 50/50 mix of your base red and blue textures.

And remember, not everything HAS to be on a single master material. You can mix and match accordingly.

The bad thing about the UE tutorial is they spend a lot of time setting things up, but very little showing how something like a master material is used, after it is set up.

The way I see it, master materials are there for anything you need a tweakable amount of variety from to prevent repetition. Like for your forest floor, you could just use two basic materials for it, dirt and grass, and assign them to different faces on your mesh. That'd look like crap though. A master material lets you blend these materials together onto a single mesh through a single material. You can have your dirt and grass textures, and also a pebble texture to break up the monotony. Then you can smear them together with vertex colors, creating transitions, or little blotches of dirt amidst your grass to make things look more naturally random.

Or say you're making a hallway for an old Victorian style hotel. You could slap a single plaster texture down for the whole thing, but what if you want variety? You could combine three textures, a smooth plaster, cracked plaster, and broken up plaster onto a single master material, then mask between the three on your vertex colors to get more variety.

There's a lot of stuff you can do with them.

What I’m not clear on about height/displacement maps when it comes to blending because I think the Forest Scene Tutorial man may have used a texture height map, and what I’m not sure about is if the average person has the ability to create a displacement map, or if you just search around online for a material that includes a displacement map?

We are getting ready to drive from Broken Arrow, Ok back to Houston, and this week, I anticipate, I will start messing with the Forest floor textures and vertex painting to see if a displacement map is really needed to get a nice effect for the floor. There are places online, including UE Marketplace that has free textures, so I need to open them up and see what is there, such as a displacement map and then figure out if it was used in the Forest scene (rewatch the video) and what is actually required to make a nice floor texture For my purposes.

You can make your own heightmaps, but it can be tedious to do. One way to do it would be to apply your texture to a heavily subdivided plane, sculpt in your height details, then bake that out to a texture.

There's also a cool free program that can generate roughness, height, and normal maps from a single image, though hell if I can remember the name of it at the moment.

Plus, there are tons of sites out there that offer royalty free materials. AmbientCG.com is one I sometimes hit up. https://polyhaven.com/textures is another good one.

...but hey, as an Unreal Engine user, you have access to the entire Megascan library for free, so use those. :p
 

Huntn

Whatwerewe talk'n about?
Site Donor
Posts
5,289
Reaction score
5,232
Location
The Misty Mountains
Nodes really aren't that complicated, though they can be busy. You look at some of these node trees, see all those crisscrossing noodles, and think it's doing some weird, arcane thing, but really, it's all just simple actions performed step by step by step.



Just so you know, that's 16 texture maps per material, not in an entire scene. UE is only limited by the amount of system and GPU memory you have available.

16 textures would roughly equate to 4 full materials, and you could probably double or triple that through channel packing. Though keep in mind that you have something of a hard limit if you go the vertex painting route, since you can only use red, green, or blue channels to blend your textures together. If you try to get clever by throwing in a 4th material, thinking you can separate RGB then recombine, say, R and B to get a texture on purple, it'll default back to your original materials, giving you a 50/50 mix of your base red and blue textures.

And remember, not everything HAS to be on a single master material. You can mix and match accordingly.



The way I see it, master materials are there for anything you need a tweakable amount of variety from to prevent repetition. Like for your forest floor, you could just use two basic materials for it, dirt and grass, and assign them to different faces on your mesh. That'd look like crap though. A master material lets you blend these materials together onto a single mesh through a single material. You can have your dirt and grass textures, and also a pebble texture to break up the monotony. Then you can smear them together with vertex colors, creating transitions, or little blotches of dirt amidst your grass to make things look more naturally random.

Or say you're making a hallway for an old Victorian style hotel. You could slap a single plaster texture down for the whole thing, but what if you want variety? You could combine three textures, a smooth plaster, cracked plaster, and broken up plaster onto a single master material, then mask between the three on your vertex colors to get more variety.

There's a lot of stuff you can do with them.



You can make your own heightmaps, but it can be tedious to do. One way to do it would be to apply your texture to a heavily subdivided plane, sculpt in your height details, then bake that out to a texture.

There's also a cool free program that can generate roughness, height, and normal maps from a single image, though hell if I can remember the name of it at the moment.

Plus, there are tons of sites out there that offer royalty free materials. AmbientCG.com is one I sometimes hit up. https://polyhaven.com/textures is another good one.

...but hey, as an Unreal Engine user, you have access to the entire Megascan library for free, so use those. :p
Just got in from Broken Arrow.

I looked through the comments in the Forest Scene tutorial and apparantly the author placed a file of the master material he used In the description. It’s the second file I think. Someone said to just copy paste it into a grid or a graph , whatever that means. Others complained that it needs to be connected to textures to work. I realize that I’d love to have this material while acknowledging I would not understand what is going on now, but might in the future. Any clue how to convert this second link into a master material?



 

Renzatic

Egg Nog King of the Eastern Seaboard
Posts
3,905
Reaction score
6,836
Location
Dinosaurs
Let me install UE right fast. It's a pain in the ass doing so on Linux, because Epic, for reasons entirely unknown, don't provide a nice little executable to install it like everyone else does for their engines. They make you compile the damn thing from source, cuz they're a bunch of buttholes.

Gimme a few.
 

Huntn

Whatwerewe talk'n about?
Site Donor
Posts
5,289
Reaction score
5,232
Location
The Misty Mountains
Let me install UE right fast. It's a pain in the ass doing so on Linux, because Epic, for reasons entirely unknown, don't provide a nice little executable to install it like everyone else does for their engines. They make you compile the damn thing from source, cuz they're a bunch of buttholes.

Gimme a few.
I understand this is a lot of work and don’t expect you to bend over backwards for me, but I appreciate it. :) Check out this section of the comments. On the right are the 16 replies that add more info like where material graph is mentioned.

5DB7FC25-B71E-4827-B121-9AA5486CC828.png
 

Renzatic

Egg Nog King of the Eastern Seaboard
Posts
3,905
Reaction score
6,836
Location
Dinosaurs
I understand this is a lot of work and don’t expect you to bend over backwards for me, but I appreciate it. :) Check out this section of the comments. On the right are the 16 replies that add more info like where material graph is mentioned.

It's no problem. This is my song and dance right here, so I'm more than happy to nerd out for you. For reference though, the one thing you're trying to do is recreate the ground material in the forest video, right?

As for what I'm doing above, programs usually come precompiled out of the box, and all you have to do is click on the executable to run them. UE for Linux doesn't do this. They make you take the raw code, and compile your own executable to run. It's not that big of a deal, since most of it is automated through a few handy scripts, but you have to wait about an hour or so for it to bake.

Wish you picked Unity to learn with. All I have to do with that is download it. :p
 

Huntn

Whatwerewe talk'n about?
Site Donor
Posts
5,289
Reaction score
5,232
Location
The Misty Mountains
It's no problem. This is my song and dance right here, so I'm more than happy to nerd out for you. For reference though, the one thing you're trying to do is recreate the ground material in the forest video, right?

As for what I'm doing above, programs usually come precompiled out of the box, and all you have to do is click on the executable to run them. UE for Linux doesn't do this. They make you take the raw code, and compile your own executable to run. It's not that big of a deal, since most of it is automated through a few handy scripts, but you have to wait about an hour or so for it to bake.

Wish you picked Unity to learn with. All I have to do with that is download it. :p
How many gigabytes is there?

Apologies, but I’ve been vested emotionally with the Unreal Engine since 1998: :)

6F6F531B-FE55-46E4-BE1A-D9BDEB5AE161.jpeg

Unreal (game)​
 

Huntn

Whatwerewe talk'n about?
Site Donor
Posts
5,289
Reaction score
5,232
Location
The Misty Mountains
Well, yeah! I mean, comeon! It's right there!

From what it looks like from far away, he's creating a master material for all the bits and pieces he'll need for a forest floor. The dirt, leaves, and grass, all blended together using Red, Green, and Blue vertex colors, alongside some transitional effects at the edges for extra blending beyond what you'd get from the vertex paint.

I can't tell you EXACTLY what's he doing, because Blender and Unreal are similar enough that you can get the jist of what's going on by looking at it, different enough that you have to learn different nodes to perform the same actions. The beat's the same, but the melody's a little different.

Now, lerps seem sorta complicated at first, but they're actually the easiest things in the world. Lerp is short for Linear Interpolation. It's a straightforward gradient from 0 (black) to 1 (white), and all the numbers between that 0 and 1, such as 0.357 or 0.81, are the shades of the grey between the black and white. Lerps are put in place to take you from an arbitrarily defined 0, to another defined 1 based upon some set parimeters. In short, it creates a transition.

As far as height maps go, you could use lerps for a number of things, most of which blend two textures together. Like say you want to fill the cracks of a brick texture with sand, with the bricks being various different heights. You have two materials, your bricks on top, and your sand on the bottom. You combine them together on a lerp node, then apply a parameter to control the contrast, mixing them together.

If your lerp contrast is a perfect grey between black and white, or 0.5 in computer terms, then all the parts of the brick texture's heightmap that are below 0.5 will be filled with the sand material, leaving the bricks that are above 0.5 exposed and unsanded.

...I feel like I've forgotten to address something, so if you've got more questions, feel free to ask.
Regarding the Forest floor, I need to rewatch the video. As I recall he packed a material with leaves in one channel, branches in another and a color in a third. But then he went over it again, placing other small grassy and twig elements.

I also remember him saying he used 4 different tress, and then just painted them in. In other words he just ran the curser over landscape and with randomness set in, the tress just plopped themselves down. Another thing to figure out but I’m not anticipating that to be difficult. Maybe it is related to vector painting…
 
Last edited:

Renzatic

Egg Nog King of the Eastern Seaboard
Posts
3,905
Reaction score
6,836
Location
Dinosaurs
Regarding the Forest floor, I need to rewatch the video. As I recall he packed a material with leaves in one channel, branches in another and a color in a third. But then he went over it again, placing other small grassy and twin elements.

I'll watch it again too once Unreal finishes it's thing. It's compiling the actual editor now, and is 681 out of 3040 compiled modules.

...this'll take a minute. Wish I had a faster computer.

I also remember him saying he used 4 different tress, and then just painted them in. In other words he just ran the curser over landscape and with randomness set in, the tress just plopped themselves down. Another thing to figure out but I’m not anticipating that to be difficult. Maybe it is related to vector painting…

That's just basic scattering, handled totally in-engine. You don't have to set up a material for that. You just choose your models, set up their randomness, and go at it with the cursor.
 

Huntn

Whatwerewe talk'n about?
Site Donor
Posts
5,289
Reaction score
5,232
Location
The Misty Mountains
Channel Packing- In the UE market place I’ve seen 2 inexpensive products for channel packing within UE so you don’t have to rely on a seperate 2D program like Photoshop to do it. I don’t know if they are extensions, but they are advertised to function within UE. This seems appealing although I am still in the beginning stages. I’m going to watch a couple of channel packing tutorials and then decide if this would be a good choice. I definitely don’t want to buy PS, so If it comes to that, I’ll look for something open source or inexpensive, GitHub?
 

Renzatic

Egg Nog King of the Eastern Seaboard
Posts
3,905
Reaction score
6,836
Location
Dinosaurs
Channel Packing- In the UE market place I’ve seen 2 inexpensive products for channel packing within UE so you don’t have to rely on a seperate 2D program like Photoshop to do it. I don’t know if they are extensions, but they are advertised to function within UE. This seems appealing although I am still in the beginning stages. I’m going to watch a couple of channel packing tutorials and then decide if this would be a good choice. I definitely don’t want to buy PS, so If it comes to that, I’ll look for something open source or inexpensive, GitHub?

Just get GIMP. It's free, and can handle channel packing easily. If you want something a little more refined, more on the level of Photoshop, then get Affinity Photo.

Oh, and I just now launched the editor.
 
Top Bottom
1 2