I need expert advice on this Material BP and what I can do with its TESS/DIS scalers

I posted this in the Content Creation section but hit me this is probably more suited for this area.

Yesterday I was trying to ask about a blueprint I came across. I am pretty new to the engine, heck game creation but I have messed in a few other engines over the years, so catching on is not problematic for me but I am not finding very solid info on my issue at hand.

At the moment i am trying to create a versatile landscape material with an instance that gives me options for as many textures as possible at hand, even if I don’t utilize them all in my creation I have them setup kind of like a full blown pallatte at my disposal per landscape I create. Right now I am starting out, just feeling out Unreal so I don’t expect a lot of action and progress ahead, the issue I have had is creating a material that allows scalers in all the necessary areas I would need. AKA, tessellation, displacement, roughness, ect.

On my own I did manage to create one, it was a little buggy though when I populated my first map, probably because I was frankensteining many tutorials and probably had conflict or unnecessary extra nodes taxing everything.

The other day though, I searched these forums and found a pretty well put together blueprint that actually looked very close to mine but fixed some areas I was wrong on. Cool and all but I think the guy that started the thread is not active so I thought maybe one of you guys can clue me in on a specific area I am unsure about.

Towards the end of this blueprint (I will provide screenshots below) I gather the displacement area he created and tessellation under it is linking up to the scalers, which eventually outputs to the World Coordinate node to make everything happen on my map. The issue I noticed in this is while yes I have in my material a scaler for Tessellation (near, far, amounts) and Displacement, its actually not per the Displacement Texture map I provided for that specific texture, but overall its displacing and tessellating the whole of the level aka map.

I been using Landscape Coordinate nodes for the end point of previous blueprints, not sure much about the World one or if its the best use case for my needs. I am just unsure how I would sub divide this whole section. Do I create separated World nodes per each texture channel with its own Displacement/Tessellation areas, so I can put in each displacement map so it all ticks to each area or is that not possible at all?

Basically I would love to continue on this blueprint but kind of seperate the end points per texture, so as I create my level and paint in areas I can adjust each texture to suit what I need and reduce tessellation if I need it on the fly. I believe this is possible seeing I do have a scaler showing up in my instance but I can figure out what area needs to be cut and what nodes I probably need in addition to this blueprint to make that happen.

Any help on this is really appreciated, i am so green to this that while I get a lot of areas, I just have to admit I probably need to ask this great community what they know, only way to learn right ?

Here is the screenshots of what I am working with. First pic is the overall Blueprint, probably not useful but I have cleaned it up some from the original but maybe someone has used this before, the second is the Displacement/Tessellation area and the final one is where that Displacement setup is tying into. The Displacement is connecting to the node parameter for Mud_Soil, which utilmately connects to the scaler for world, thinking that can be duplicated for each area but unsure.

I have no plans to increase a lot of Tessellation, I get it can get expensive. Main reason I have hopes to have multiple Displacement/Tessellation nodes per texture with its correct Displacement map is due to the fact my terrain right now just tessellates everywhere, its very unrealistic looking and the only way to make it work is to completely shut it off or very slight with no real effect. I figure if I can clean up the latter half of this blueprint, sort it out where each displacement/tess channel is not so fused together but seperated, I might end up with a scaler for displacement and tessellation per channel/texture.

Now this is my logic but is it doable? That I do not know due to the info I am not finding much out there on google or in here. I am looking at it, haven’t tried it just yet but I think if I add a Layer Blend before the Displation/Tess nodes, then seperate with dublicates of the Tess/Displacement area, I can then reroute to each scaler above and maybe duplicate the top with some way of splitting the channels above? I see a “MAIN” param node at the end, so I speculate that is the main scaler for Tess Near/Far and the Displacement I am seeing solo in my instance material. I guess I duplicate per channel there as well and then end point to the World node? Am I looking at this right? lol

Bare with me guys, I slightly grasp this stuff, been crash coursing for a month but flexing more towards making this engine do what I want but I don’t know the boundaries as of yet.

Any help, please lol. Or even just to welcome me to the community and say dude you might need to read more is a plus to me at this stage lol.

Thanks for any help, be looking out for your comments.

Hey man! So I am still pretty new to programming in general and to Unreal as well. However, if I understand what you are looking to do it is to:

  1. Import a bunch of megascan materials to use on your landscape
  2. Activate or trigger those landscapes when and if you need them

Is that correct?

I guess my first question is why?

Second question/concern is I would think that this would be extremely expensive in terms of computational resources to process multiple 4k materials for any machine/game. I suppose you could potentially accomplish this with Level Streaming, but again this would be very expensive to do (I think)

Third, if the megascans do not look realistic, are you importing the main material correctly? Have you tried Parallax Occlusion mapping? Are you using the LanscapeCoord node to adjust your scaling appropriately? Using landscape Layer blend nodes?

I guess I am just trying to wrap my head around why you would need multiple 3+ megascans in one landscape layer,

Thanks for the look into this. Well the importing I got, no problem there. Mainly its this guys setup that is confusing me, see I am with you about using the landscape coord, thats how I was doing it in previous BP experiments during my learning. This guy though did it with an Absolute World Position but before it has Displacement and Tessellation running completely through all the final nodes. So what I end up with is this, all displacement overlaps all over the map, literally I used a leafy bottom displacement texture and when I crank up that displacement, you can see it over all of the map, thus making dirt ares look strange and grass, ect.

Far as 4K material and what I am trying to achieve, actually some reason this BP is not taxing my system at all. I tested it by crash testing it with a full on biggest scale you can get in landscape size, I ended up populating the whole thing with a 4K texture and then started just randomly painting in 3 other textures at random, even with tessellation cranked up a little, it didn’t drop a frame at all. Even popped random trees in there that I actually have choppable with animations on all of them, still no issues. So oddly this must be very optimized for what it is. After seeing that I kind of sense potential to get displacement per each texture, maybe manipulate the tessellation if possible where its sectionally working with each layer, I am shooting for that because I seen a guy in a video who had a setup like that but he did not disclose how he did it lol. Though he didn’t make a big map, very small but the detail was insane.

More or less just figuring out the boundaries of what can be done and can’t. Push the limits kind of without falling off the edge if you get me.

Don’t get me wrong, the scans do show what I expected, its the lack of displacement, well more the fact the pattern of the map of only one texture on all different types is unsettling on the landscape. This BP the only option at the moment is to take is scaler and drop down Displacement which flattens that pop shadowing as you know. My guess is I got to at minimum seperate his setup at the end, at least for the displacement and keep tessellation as is for the whole of the map like most do. I already figure on any other machine it would be too much, but for mine it seems to handle it, I won’t need more than 3 to 4 textures at least on something else I make, here I just would like to figure limitations before diving into a more full focused project. If that all makes sense.

Honestly more or less what I am searching for is just my best route to keep that displacement scaler but fix this setup where its with a displacement map per its matching Normal/Diffuse. Some reason this was setup with only one displacement map for all and it really is showing all over the place to my eyes, I could be picky maybe lol or just that new to this but I can see this pattern popping at me when I really look at each texture. So I would think this is supposed to have different displacement channels matching to its corresponding diffuse. But its a mess, can’t seem to visual that end area of this BP well enough to figure out what I should seperate and keep together. Tessellation, it is what it is there, i don’t even really want it raised up much due to resources, looks off me there too if I notch it up even a little past its default. I also need to look into this Cracking fix in tessellation, I think its still buggy because my material ball is only showing tessellation at the top and bottom and its all warped looking on the middle sides, I read that is bug a few versions back so I may need to untick that as well.

Trial and error, honestly I am so green to this I am kind of mad scientisting it together lol. Thank God I work side by side with cryptocurrency devs who also created games in the past, some of it might rub off eventually

Why not run the landscapeCoord into all of your texture UV’s (Base color, normal, ao, roughness etc…etc…) then adjust the scale value on the LandscapeCoord details panel? You could then run these into a landscapeBlend which could run out to your main material output node.

@threepm actually that is how I had it in the previous BP before finding this one. It worked, but I had the displacement area and tessellation all kinds of screwed up. Thats what led me to look through the forum and I found that above BP.

With this one that I am trying to tweak, basically you create an instance of it and what you end up with is scalers for every aspect, down to even the cavity map. And they all show, like its a thing of beauty I tell you lol. You can manipulate your scene very well due to the scaling the guy that created it put in. Issue though, it comes with that cost of laying displacement of one displacement map for the whole of the landscape. Maybe thats how its done, I have seen a few BP on this where they had each texture with its own displacement map but I am too young in this to know if thats a real benefit or if everyone just uses one map for everything. I would think you would use a corresponding displacement map per its texture.

In this one though, which is probably hard to see but roughness and normal and all those run to a set of scalers as well. The whole Absolute World Coord thing throws me off, so I probably should omit that and see what happens if I place the Landscape one there in its place. I read somewhere that is what we actually should be using on landscapes, unless this Absolute World node is important to the kind of setup.

I haven’t come across a BP so far that looks like this one, its definitely different, trust me I been all over the internet looking for one remotely like it, sure its out there but so far not found a comparison to say why these nodes are at the end like this one.

I am starting to realize though i can relax and experiment more in BPs than I originally thought, little more forgiving to test the waters than it looked to me at the first glance awhile back. I think I will try what your suggesting though, kind of go back to the basics and maybe doing so and compare to this along the way I can sort out why the end has what it has.

Crazy, did not notice this till now, this thing has a fad for distance, just played with the scaler on that, it literally will allow me to fade out grass and tree models like LODS would do on the fly, odd, I can’t even find that in the blueprint lol. Its there I am sure but where I have no clue. I better go to school on this junk lol. I really appreciate the help, I totally get your suggestions @threepm and at this stage I think I might want to return to the way I was going before I found this, put this BP on backup and return to it when I understand it better, lots of combinations in there I can’t just yet grasp lol

You could also adjust your Culling distance start/end which will also allow you to adjust the fade in / out, it looks great especially when you add in the procedural or instanced vegetation/grass on top of your landscape. Again, I am still very new and still learning but will do my best to help when I can. And yeah, blueprints allow for a lot of experimentation. I just wish there were a way to see when something didn’t work, why it didn’t work. (Example, I have no errors in the blueprint, but when I play to see what I made in blueprint, nothing happens. Almost like I am missing a step. But I suppose that is part of the fun of problem solving and programming using visual scripting. :slight_smile:

I agree @threepm i seriously wish it would highlight things not meshing but is fine with blueprints lol. I think that is our learning curve, troubleshooting, once we master that it will probably be way easier on all of this stuff lol. Yea I plan to use the culling option, I like that effect too, plus it helps with the resources a lot. I really appreciate you helping out, I got kind of stuck with work related ■■■■ so I had to dip for a bit but I will keep in touch man, try out a few things and let you know what i figure out, maybe I can master this one day lol, hopefully because I am driven to get there at this point hehehehe

Keep me updated! Good luck with your blueprinting and learnings!

Thanks for all the help, ended up stuck with work junk all day so I probably may dive into experimentation tomorrow, never know man, I may come up with a new way of doing things, maybe the wrong way but it will be unique lol. Thanks so much for the help and it’s awesome to meet you, definitely will keep in touch. Might have to pass my amazing BP to you one of these days, if you like bugs and lag that is lol