Hi everyone
I'm making a pretty big scene of a city in UE5, using realworld terrain data. So the question is what is the best approach to make roads and pavements? There is a lot of them, and the landscape is curved a lot. As I think, I could model roads in Maya for example, and adjust the landscape to it. But is there any better\faster way?
Replies
editing a model with like 100k+ triangles in maya can be a pain. you can split it into pieces though and recombine if you have to do it
the simplest way i've found is a little tedious but it is fast and simple - i paint a texture mask (like just mask out the roads from your satellite image) and use that to apply a landscape layer with a bright color that stands out in unreal. Then you can use the landscape brushes (ramp, flatten, etc) to fix up the roads where needed. It is manual and tedious but its simple and bug free and pretty mindless work so you can just turn some music on and get it done without much stress.
If you want to use an extra mesh for the roads you can apply the mask as a color texture in maya to use as a guide and then pretty quickly setup the meshes like that. much quicker than anything in unreal.
You could probably use PCG tools in unreal to read a texture and place meshes based on that, but how long it takes to learn how to write the tool versus just doing the thirty minutes of work has to be considered. Likelihood of do-overs being the major concern.
Also PCG (or Houdini) for streets and connections.
The spline system seems to work fine on my large nanite landscape (10x15km) and while it's a little clunky I can't say I'm having any major problems with it.
I'm not building anything as dense as New York though.
Your biggest problem with building a city is what happens between the roads. PCG isn't particularly useful for this stuff if you're trying to match real world layouts - the main issue is that setting the direction of anything is basically impossible due to how it handles point fields.
So far I've found it easiest to block areas between roads out using the modelling tools (spline, extrude etc. ) in editor, take them out to Max for refinement and bring them back. Using large meshes isn't a big deal culling-wise if they're either not dense or you're using nanite so don't be afraid of that.
I suspect you're going to end up using splines to start with and by the time you finish it'll be mostly meshes.
A note on using real world satellite data since I did a lot of it not long ago ...
Make sure you're using the appropriate UTM transforms or you could get quite a lot of lat/long error (get it right and you'll see under 1m per km error)
Height is not super accurate - even the top end (eg. when you pay Airbus a lot of money to use their fanciest satellite to get you custom 0.6m/pixel data) has an error of 1-2m in the vertical.
The Landscaping plugin with the mapbox extension is really good - it sorts all the complicated GIS stuff out for you and grabs you a color map to go with your height which is super useful for blocking out. The only downside is that you can't get super high fidelity data
A spline point can have any number of segments connected to it (ctrl + click to connect points) so you can form junctions easily
if you're applying spline meshes for the road surface then it gets a bit weird cos they overlap
this is all one landscapespline actor
kerbs - you're screwed . I'd recommend thinking of kerbs as being attached to the gaps between roads rather than thinking of them as part of the road