Overlaying an image on my landscape for height sculpting

Hello,

I want to use a screenshot from Google Maps and put it onto my terrain so that it roughly matches real world sizes and I can just sculpt my terrain using that image as reference.

Basically, if the image contains a river that’s say… 100 meters wide, I want to see the river on my terrain and when I use the measurement tool (middle mouse button) it should also be roughly 100 meters wide.

What is the best way to do this?
Should I just use the screenshot as a material and scale it? If so, how should I do that? I’ve seen something called absolute world position in the material editor, maybe I can use that?

Basically, I want to recreate a real world place. The heightmap data of that place is however unusable, so I must manually create it.

This is the closest I can get:

Only 1 of those should stretch over the entire map and then I can scale it down or up to match up the real world sizes in unreal units.

This is my material graph:

Hello, even though this is quite old, i’d just answer your question and anyone’s question in the future, for the records.

It’s fairly simple to do in your case, just set one material for the landscape, use a landscape coord, then change the scale to the four tiles, then insert the texture sample and into basic. then you are finished.

But if you were to use more than 4 tiles which i did, i found a solution.

Using a third-party image editing tool, you can use one image, crop it out into the amount of tiles required, then just create one material for each tile, and match all the landscape coord scale values to each individual tile. You may have to experiment with the scale as it is quite hard.

I have got one method that works decently for me but it is quite limited on how the map has to be made

I have got one method which works but is quite limited on how the map needs to be made in unreal, so keep this as an example in mind. Funny part is it is very similar to your method when i look at the code. My map is made from a world composition ([tutorial][1]) which allows me to divide my final map into smaller submaps. But this technique also just applies to normal terrains made from grids. I total i use a grid of 3x2 for this drawn map (3 cols, 2 rows). Each terrain block is 127x127 Quads. The map drawing is 1920x1080p

  1. First you need to divide your source image into smaller blocks of (640x640 px). I personally use this [tool][3] and then choose “split both” with 640px for the horizontal and vertical resolution. Import all the split images as textures and keep their original name so it becomes easier to distinguish between them.

  2. Now you need to create a master material with this layout

  1. After you made the master material, create the n instances of the master material with the belonging tile name. So for example (mt_map_1_1, … mt_map2_3). This is so you can more easily adjust parameters to make the edged align in your final map.

  2. Assign each terrain block with the correct material instance (so top-left to mt_map_1_1, etc). I would also recommend switching to a Top down perspective so you can see uf the map is displaying correctly.

  3. You should probably see that the image is somewhat scaled correctly on the 3x2 terrain but the edges are not overlapping correctly. To fix this, open the Material instance of the terrain block and adjust the the value of the Diviser to fix this. You should avoid changing the Scale parameter unless you see this help with fixing the edges.

If everything went correctly you should see that you now have a 3x2 map that looks like this. (i personally had to change the Diviser values of mt_map_1_3 and mt_map_1_3 to 15.555)

But just to be clear, this is not a 100% correct solution as you can see some of the lines are a bit ■■■■■ and the scaling is not realy correct, but just as reference material so you can sculpt your world outline this should suffice.

Please contact me on if you can’t make it work, i would love to help!

You also just import my [][1]t if you like.

[1]:

Nice solution, BabyYoda I tried your solution and it works. I have another doubt though. If I have only 1 height map spanning the complete landscape and want to overlay high resolution overlay like a google street map, how can i do it? Do you some hints?

I did not explain my problem properly. I want to model an area which is around 8kmx 5km. I have the DEM for this area at 1m/1pixel resolution. So my DEM size is: 8129x 4878. Now I have UAV aerial imagery for the same area with 5 times the resolution 15cm/pixel. So I created 5x3 tiles of this image overlay data for the area covering the DEM with each tile having a resolution of 8192x 8192 pixels which is the maximum supported by UE4. Now the challenge is to create a Landscape material which has all these 15 tiles at their respective position. I found a guide from old UE4 documentation to accomplish this. This is linked here:
[link text][1]

Look into the section “Expanded Overlay Multi-Tiling”. I followed the guide but my tiling is very small or it is not the correct size for the landscape. The version used in the guide had a material property called Material.MappingScale which is similar to that of the LandscapeCoords Scaling property. But cannot use the LandscapeCoords node if i want to follow the guide. Maybe you have some better idea about this problem. Thanks :slight_smile:

You can follow same guide but just create one single material instead of 6 fore each tile. But you will have to resize your image to a perfect square and expanding your map will be more tedious, so I will advise chopping your map into chunks. Splitting it in chunks in alao better for the perfromance.

Thanks for sharing it.

Impressive fix, BabyYoda! Tested your solution and its effective in resolving the issue. Thank you for the help.

Finally, there’s a solution which actually works. Thanks for it.

Can you also help me with it, I cant figure out how it will work.

Use the Google Maps screenshot as a material, scale accordingly.