How can I use different textures for one landscape?

Hello, I’m a new guy here.
Here’s my question:
I’m building a massive landscape using real-world satellite picture.The area is large(80km x 80 km).
We want to use different precision of image such as 1m/pixel, 9m/pixel, 15m/pixel or bigger because the computer can’t hold that amount of data by 1m/pixel of 80 km. So we think maybe in the center area like 10km x10 km, we use the 1m/pixel texture, and on the other area we use the 15m/pixel to reduce the size of the project.However, in the WM, you can only set one resolution for the output landscape tile.If I use the high resolution, the result is too big to import to UE4, otherwise, the image is so blur to keep the detail of the satellite image.We also tried create two projects, one for the big 80km without center 10km, another for the 10km one, but in this way I can’t merge two landscapes exactly in the UE4, the size goes wrong…
There are many excellent programmers and builders here, so anybody could help me ,thanks!

Hey,

Sadly I’m not familiar with UE4. The approach you mentioned sounds reasonable and like it should work. Regarding the merging of the two, I think you mean that you have areas of terrain not stitched together properly, right? If so, that’s the expected result! This is because your “outer” terrain is of a lower resolution, and where it goes up and down every 9 meters, you will have the “inner” terrain vary in height every meter. To combat this, you must blend the terrain, and I think the best is to have some overlap for your inner terrain.

How I would approach this in World Machine:

  1. Create the inner terrain (10 × 10 km)
  2. Create a square, around of 9.5 × 9.5 km, and then blur the edges.
  3. Import the outer terrain without the hole (so essentialy, the inner terrain, but at a lower resolution, 9 m/px)
  4. Combine the two using the square you’ve created as a mask. You can just do a combiner[average].

Let me know if this helps!

Thank you for replying.
Maybe I didn’t describe this clearly before.The point is resolution, not terrain stitching, stitching terrains is the last choice .The bitmap I imported is not used for texture directly, mask instead, I use it to mark the different materials in the terrain, such as red means soil, green means grass, blue means rock.Output the bitmap as a 16bit png, and the picture is black and white. Then in the UE4 I will input the real terrain texture, landscape material in the UE4 can classify different textures by the mask WM exported.The problem is that I import a high resolution bitmap in the WM, but limited by the output resolution set in WM, the output mask will be blur. Yesterday I tried to set resolution of the bitmap output device, and It will be black in the UE4, so now I don’t know how to do at all :face_exhaling:
Here is the material editor in UE4, I can separate channels and set different material to the terrain.


Here is the bitmap output I set in WM, different channel means different material.



Yesterday I tried to set higher resolution of the BitmapOutput Device as the picture above, and the high resolution part is black in UE4…

I chatted with my workmate , he didn’t have a solution either. Any advice will help.Thank you again.

As an initial step, though it will make build times longer, try setting the project resolution to the highest resolution needed, and then downscaling resolutions you need smaller, rather than upscaling resolutions you need larger. I don’t know that this will solve the issue, but it’ll be a good place to start.

Also just to be absolutely sure, the terrain is all one single object, correct? If not, are you making sure to apply the mask material to all objects?

The issue here is that although you can tile the texture for the whole terrain to the desired resolution, the mask itself is limited to 16k map for the entire terrain which is still blurry if looked close to the ground, I think that’s your inquiry, there’s no way to make it higher unless you use some sort of a tiled terrain with masks for each tile at highest resolution…. Never done that , I did do a large terrain here if that helps in some way by using masks and satellite textures.

Thank you for replying.
If I use the high resolution bitmap in WM, the output bitmap files are too large to build or export.
And may I ask how to operate in WM that I can specify the area I need to set high resolution or low resolution? I just don’t know how to set two area separately, if so , I can have a solution.

Thank you for replying.
Excellent terrain you created! I think it is good enough for the detail.
Have you tried to create a 50 miles terrain in this way?

That one was 43 miles and a center patch 12x14 miles at a higher resolution , the various masks were 16k if I remember.

I wish I could break up the terrain into 4 pieces, 4 quadrants with their respective masks and displacement maps but that is a humongous amount of work for a solo artist.

So as far as my crude understanding goes…

Problem:

  1. The landscape being built, is 80km^2 in scale. Based on real world data. The area of interest is just 10km^2.
  2. You want to export the area of interest at 1m/px precision (10000/10000 pixels), and the area outside that at 15m/px precision.

Solution strategy:

TBH, this would require some skill with the “render extents” system. I personally have never tried it, but others have in the past (when this forum was very active).

  1. Set up your 80km project. Open your explorer view, and set up a new render extent inside your “main extents”, this time only covering your area of interest. Set up render resolutions for both your extents.

  2. Build your extents individually. I have never tried this part myself, but this is exactly what that feature is for. I just tried it for the first time today. Attaching a screenshot so you can find the explorer view.

Did you render this terrain in Unreal Engine? I just checked, UE4 doesn’t accept more than 8192 pixel resolution :smile:


So it can not be both large enough and clear enough.
We create the terrain with tiles, so we can set the resolution by changing numbers of tiles, but still, we don’t know how to set two different degrees of detail in one project.

This seems to be feasible. Thank you so much, I’ll try later when I return to the hotel.

Thank you for your advice, but I’m afraid the dem will change by this way, and we need to keep the terrain realistic :smile:

@Fan Let us know how it goes, may help someone down the line (Like me lol)!

That’s correct, Unreal maximum resolution is 8k, I rendered those images in Vray for Maya which allow 16k and higher maps.
I hope the new workflow suggested by the other WM users here can help you achieve your goal and please let us know if you can make it work since we all could use the information for some future projects. Good luck.

Hey dude, sorry for being late for couple of days, I’ve been busy for these days because of work.Finally I can get some time to try your content.Unfortunately, my laptop is old, UE4 poped up a menu that told me my video memory was gone :sweat_smile: Next Monday I’ll return to company, then I’ll try this in the computer of workplace.
Thank you anyway, this helps me a lot, and I’ll post the result after testing.
And thank you too @damaggio , engineers like you, make the forum better.

1 Like

Hello, I tested yesterday.
Still, It looks like we return to the start point. Although I can set resolution in the render extent, but WM outputs two landscapes more than one. And we still need to merge two landscapes together.I checked some websites about this, but no answer found…
Maybe I should visit here more frequently, some day someone will post the solution :smile:

@Fan So you’re trying to get a single image image texture with multiple resolutions? That’s not possible anyway, as I don’t know any image format that has adaptive resolutions. Each image needs to have a fixed resolution. Goes the same way for tiled lanscapes in UE4, UE5 is another story.

If you want variable resolution approach though, you should look into terrain as a “mesh” object. This way you can have a triangulated mesh with optimized details.

You can optimize your mesh using a “Meshify” node. It’s still a work in progress, but may work for your use case. You can export optimized meshes separately using “Mesh Output” node, Or “Scene Output” node to export a “GLTF” scene.

Read More

In any case, you have your terrain areas built separately now. Keep the dataset, something may come up.

Good luck on the path!

I though as I build the terrain in tiles, maybe WM can export the ROI tiles in high resolution, and others in low resolution, apparently this is impossible. So we dicided to create the terrain in the way we discussed before, that is, we build the natural part in WM, and artificial part in 3ds max or some softwares like it.We can plant foliage in UE4 to make up the low resolution mask.
I’ll keep studying WM and focusing on the forum, I wish I can learn awesome things from you guys.