I deleted previous post, cause I accidentally posted the wrong video to it
Before all, my long and detailed post was gone because blackout issue, so here the video I have on phone. It's the whole country of Ukraine(233 000 square miles)
Now the long text part. If you don't like this, the all links will be on bottom
A few days ago I posted about an experiment I had started after running into the obvious problem with real-world BeamNG maps: eventually the map simply becomes too large to generate and keep loaded in the traditional way.
So instead of trying to make a bigger static map, I started working on EarthNG, a streaming layer built on top of my Earth2Road generator.
The idea is pretty simple:
pick a place on the real map β spawn there β generate and stream the world around the car while you drive.
A lot has changed since my first prototype.
At this point I've prepared the whole of Ukraine as one EarthNG package.
The source dataset is split into 34,946 OSM tiles, around 3.3 GB, and the complete test package with Python, the companion process, BeamNG mod, terrain data and generated art is roughly 4.5 GB.
You don't load the whole country into BeamNG.
EarthNG only generates and keeps the part of the world you actually need around the car. Tiles behind you are unloaded, new ones are generated ahead, and already generated places stay cached so revisiting them is basically instant.
I also had to solve something I hadn't really thought about in the first prototype: BeamNG really doesn't like huge world coordinates.
So now every place you spawn gets its own local coordinate origin. I tested this on the other side of Ukraine in Uzhhorod, over 600 km from Kyiv, and the world still behaves normally instead of losing precision because everything is sitting hundreds of kilometres from 0,0.
The fast generator is also getting considerably less ugly.
It now streams:
\- roads and intersections
\- terrain
\- buildings with photo-based facades
\- roofs and building details
\- sidewalks and paths
\- fences
\- trees
\- parked cars
\- bus stops
\- road markings and crossings
\- distant scenery out to about 3 km
There are also multiple visual packs that can be switched while playing, including realistic, night, rainy evening, winter, autumn, cyberpunk and some more experimental styles.
And the important part: it can actually keep up with driving.
In one of the 300 km/h replay tests I got 0 missed tiles, 0 frames above 100 ms and a p99 frame time of 26 ms.
It's still very much experimental. Buildings and scenery can appear later than roads when generation is under load, there is plenty of visual work left, and I'm definitely not claiming this is suddenly Google Earth inside BeamNG.
But the question has changed quite a bit.
A few days ago I was asking whether a country-sized BeamNG map was theoretically possible.
Now I have one running.
There is one slightly annoying problem with showing more of it tonight: I currently have no electricity.
The timing of the power cuts during this project is becoming almost comedic.
So tomorrow I'm going to prepare and upload two more test datasets as a proof that this isn't something specifically tuned for Ukraine:
California and Great Britain.
These are actually much more interesting tests for me because I don't live there.
If anyone here is from California or Great Britain, I'd really appreciate it if you tried your local area and compared what EarthNG generates with what is actually there in real life.
I'm especially interested in things that are obviously wrong: road widths, intersections, building density, terrain, vegetation, suburban areas, rural roads, weird OSM cases, etc.
Screenshots of the generated place next to photos or Street View of the real location would be incredibly useful.
There is still a lot to improve, but I'm starting to think the practical limit might not be how large a BeamNG map can be anymore.
It might simply be how much of the world we can generate fast enough while you're driving through it.
EarthNG:
https://github.com/Alezx311/earthng
Earth2Road, the underlying world generator:
https://github.com/Alezx311/earth2road
The country packs will be here, just unpack the one you need and launch EarthNG.bat:
https://drive.google.com/drive/folders/1tz4PGSxX74oKtXYuq9Z9WAmNg_Kg0dgF?usp=drive_link
And the last one. Guys, im from Ukraine, we has a lot of electricity problems, so please support the project
Project will always be free, and i will never make a paywall, or something like that.
I struggling with the power supply for winter. Even a dollar will be very helpful!
π Bank link
https://send.monobank.ua/jar/8ULAci5Sgx
π³ Bank card number
4874 1000 3505 0700
SWIFT
IBAN UA163220010000026203364418895
SWIFT/ BIC Code UNJSUAUKXXX
Receiver SOKOLOV OLEKSII