Procedural road networks in infinite worlds can be generated deterministically using a Relative Neighborhood Graph algorithm, where each settlement connects only to its nearest neighbors without road crossings, ensuring seamless terrain deformation across chunk boundaries without requiring coordination between chunks.
Deep Dive
Prerequisite Knowledge
- No data available.
Where to go next
- No data available.
Deep Dive
Roads That Build Themselves — Procedural Roads in UE5Added:
Hello everyone. In this update of the version, I have added uh infinitely generated uh generated road network and settlements. So here is the demonstration.
This is the actual in game. So here you can see this uh red uh tower represents a settlement location. We I don't have any buildings yet but and now here you can see all the road road network that expands from settlements. So here you see from one settlement it expands to other settlements here and no matter where we go we can follow the road and there will be settlements everywhere we go like this. So if you have a car in this open world you will be able to drive infinitely along the road. So this is the update here we have. Okay. Now let's talk a little bit about how this is implemented and what are the features that you have to control the road generation. So here this is a deterministic settlements and [clears throat] self-connected road network on infinite terrain. So if this is uh usually in a static world which is not an infinite world we usually this is what we do. We generate around the origin spawn the red road network and begin play and it would work well depending on your uh game. But if you want an infinitely generated world then it's not that simple. So here in a finite world where as the name implies you can only walk around and apart from the initial bubble there will not be any other settlements or roads anything right now. The settlement means a position that is suitable for a village like this location. So you can actually uh customize the parameters to your liking.
So basically these are the this is the function seat plus cell coordinate and get a random number. RNG means random number generated. And here you have candidate positions and then you validate positions these uh given positions. So validation means we have these conditions. It should be above sea level uh and [clears throat] plus the margin from above the sea level that we allow for settlements and also it should be below the snow line and also the slope that allows the maximum slope for settlements to take place. As long as you keep the same seat, you get the same settlements in different playthroughs. And these are the properties. PO that means same input, same output and local. So even though you are infinitely generating word chunks as you move around the world, everything can be locally computed. So without having to know about any other neighboring cells. So it's truly infinite. And now this talks about how each of these settlements are connected with roads. So here, let me show.
Now if I zoom out a little bit, you can see we have a settlement here and a settlement there and another settlement here and another settlement here. So even though it looks like a grid here, it's not actually a grid. It looks like a square here. It's not always the case.
It depends on uh based on the condition how the settlements are calculated. But here you see the basic shape and how roads are connecting each settlement. Here it's trying to find paths on the minimum cost path.
So I disabled paths that cross these uh cells here. It only allows settlements to connect like this.
This is the logic behind it. We only allow connecting just the relatively nearest neighbors.
So it's more than a minimum span entry less than everything to everything kind of a connection. So if you are familiar with uh the algorithms terminology. So this is the basic rule.
When we consider one connection between two points, we only keep that point uh that connection only if there are no other connection, no other points that are closer to both A and B.
So if there is a point somewhere like this, then of course we wouldn't have this. we would have a connection from here to there and from there to B here like this. If we had a point C like this, this will be disconnected and we will have the connections this way.
And by doing this, we can achieve a clean rod network that does not go over each other. I tried with uh allowing connections like this as well but that kind of makes the settlement a mess. Right now my uh system is not robust enough to [snorts] identify uh junctions and adjust the terrain accordingly. So that's why I kept it simpler. So here if we go closer you see only two three connections per each settlement.
Here we have four but that's likely the maximum.
Okay. And also you can see here the road is going around the water line avoiding this water. But if it is not possible to avoid it will create a bridge like this. See we have a nice bridge here to connect these two uh continents or islands. Uh later on I will uh when I add meshes I will implement this to have a bridge instead of deforming the terrain but that's coming up next.
So yeah this is how the road is carved.
Let me show the parameters they were already there they are in the system but now we actually refining them here. When you select the world streaming manager and go to the roads here you see uh road half width blend radius that means from the center of the road how far from the edge of the road how far the deformation takes place on the terrain.
And you can see all these parameters everything I have added tool tips for everything. So you can um understand easily what each of them are doing. This is how we avoid water.
And here we [clears throat] always have a minimum height me uh maintaining above the sea level. You can customize that.
Yeah, min height above water. You can customize that here. And on the junctions, I have applied flattening around the junction to make sure that things are smooth around junctions. This would be important when we actually add this blind meshes. But right now, I haven't added spline meshes because it still requires some work. So yeah, that's all for now. And let me give you a sneak peek on how this would look when you enable uh spline meshes. But mind that this is not this is still a work in progress. So there will be problems. But let me just show you.
Yeah, when I add [snorts] road meshes, they are there but not perfect.
Okay. Now, uh as you already know, this plug-in is already available in Fab and also you can early access the development updates from Patreon. And yeah, let me know what you guys think.
And if you have any more questions, feel free to let me know in the comments below. And see you in the next update.
Goodbye.
Related Videos
BREAKING: Microsoft’s New Image Generating Model Beat Out GPT 1.5 and Nano Banana 2
aimmediahouse
122 views•2026-06-03
Nvidia Bets Big On AI PCs | New Chip To Power Windows Laptops | Technology | AI Updates | N18S
cnnnews18
3K views•2026-06-01
AI Doesn't Create Bias — It Inherits It
UXEvolved
176 views•2026-06-01
Distributed Inference Challenges Explained #shorts
alexa_griffith
466 views•2026-05-31
[한글자막] OpenAI @ Replay 2026 | OpenAI는 Codex로 개발 방식을 어떻게 바꾸고 있을까요?
TechBridge-KR
1K views•2026-06-03
Starting & Test Driving JAKE'S Abandoned BUS from Subway Surfers | POV Restarting
RestartGaragePOV
4K views•2026-06-04
Building the Future of Voice-First Sovereign AI: Sarvam & NVIDIA
NVIDIA
3K views•2026-06-01
Tokens Turn Data Into Knowledge | Official Keynote Intro | GTC Taipei at COMPUTEX 2026
NVIDIA
2K views•2026-06-02











