New Planet Tech is KILLER of Exploration (all terrain is tiling/repeating/not procedural/random)

View attachment 284514
Thats the one! I am still finding it on other planets. I dont think calling it common would be a stretch, it really isn't hard to find. It's not alone either, after a couple days of exploring I am finding that most rocks on the surface of a planet that have some kind of 'eyecatching' feature can be found repeating nearby.
And suddenly, a new exploration type springs into being.

"Who can find the planet with the most of this rock?"

It's out there, somewhere! Someone, make a grid!

Additional rumor -- there exists a planet that has only this type of rock on it everywhere. It must be found!
 
Thanks for your clear explanations on all this. And sorry for confusing textures with height maps. I understand the situation better now, I think.

How are mountains like these generated? They don't appear to me to be cloned copies of each other. Would these be part of the base terrain height map, or added later in some way?

I can see that the textures are stretched near the peaks pretty badly.

I did not think to measure their height when I was there.

View attachment 284421

Hard to tell from this acute angle, but I suspect this geome* uses the same technique / fixed assets FDev described - ie. "terrain shapes generated offline". It's a bit of a giveaway now because each geome is very homogenous - ie. the max peaks are all about the same height, the distribution of hills/mountains is very regular, etc. Rarely do we see a higher peak jutting up from the rest. But they do exist. I posted one very early on in this thread (looking for highest mountains) and Alec Turner posted one above.

Using Alec's screenshot as the example, I believe his is an example of a purely procedurally generated mountain, which has been placed in the middle of a geome of low lying hills. Of course I can't prove it's a procgen mountain. It's possible it's a pre-generated asset, but I hope not or we'll have a "repeating mountain" issue similar to the repeating tiles.


* Up until now I've been using the term biome (very reluctantly) to describe the new terrain region types introduced in Odyssey, not realising until yesterday that FDev themselves addressed the terminology issue in their Q&A:

"Q: Will atmospheric planets have visible poles with different biomes?
After internal debate, we've ended up using the term 'geomes'! There are geomes across the planet, there are polar caps where there should be, plains, mountain forming regions, and all of the nice stuff!"

So "geomes" it is.. I like it!
 
How are mountains like these generated?

Just realised I didn't answer this well. Being the "procgen tragic" I am, here comes the procgen explanation... :)

Anyone who ventures into procgen needs a good grounding in noise functions. You'll soon learn about Perlin/Simplex, Worley, Musgrave, Voronoi, etc. For terrain, 2D and 3D noise functions are relevant, and in the case of ED specifically, we only need to look at 2D noise. 2D noise can produce very nice heightmaps, but with no possibility of overhangs or caves (3D noise is required for that). For this reason, the type of terrain seen in ED is sometimes called 2.5D.

Great examples of 2D noise functions can be found here:

Now specifically for the geome in your screenshot, the most relevant 2D noise is probably about half way down the page, "Ridged Multifractal". In fact the description there even says, "Great for electrical effects, and as a displacement map for mountains due to the sharp peaks and valleys."

That 2D image is simply a 2D array of height data, so when used as terrain, the game engine transforms the noise into hills and mountains with the lighter shades (higher values) being the higher elevations, like this:
Musgrave_HeteroTerrain.jpg


So I'd suggest the noise function in C most closely resembles the geome in your screenshot.

In practice, any procgen coder will probably tell you that terrain for hills/mountains is the easiest to simulate. It's literally about 20-30 lines in most languages, consisting of:
- Import noise modules/libraries (nobody these days has to code their own noise functions - they're all available in libraries)
- Set up noise parameters (octaves, lacunarity, etc. describing the geome characteristics - these are all noise params you learn quickly)
- Generate the noise (often just a single line calling the noise library)
- Optionally, add additional additive and/or multiplicative layers of noise as necessary, for realism (repeat steps 2 & 3)
- Render / plot

To be perfectly honest, many of the hills/mountains we see in the new ED geomes are underwhelming, especially the rounded (unnatural) looking ones. I've said previously that I see no reason why these had to be pre-generated and repeated as terrain tiles. Having said that, although hills and mountains are simple, there are other geological features which are technically quite complex to solve. These include erosion / alluvial deposition, and rivers. For my own hobby projects, I estimate 10% of my time is spent on tectonics, continents, hills/mountains, and the rest on erosion and rivers. But there are plenty of shortcuts for erosion/rivers which can make them real time.

I've written far too much... bet you're sorry you asked now. :)
 
Here are just a few (it only lets me attach 10) of the screenshots I have personally taken in Odyssey in recent weeks. I honestly don't see any tiling or repetition in these. Perhaps I'm just oblivious to it. But to me, the planet tech looks excellent right now, and FD hasn't even finished with it according to their own admission.

I did see tiling when Odyssey was first released. Now, not so much. And I think some of these look very much like the pre-alpha stuff FD showed us way back when.

I know, opinions vary. But this is mine :) Exploration has definitely not been killed, for me.

View attachment 283999View attachment 283998View attachment 283997View attachment 283996View attachment 284006View attachment 284000View attachment 284001View attachment 284002View attachment 284003View attachment 284005
nice photos indeed but those spiked mountains are on waaaaay too many planets. I agree they should be present on some planets, but to have weird spire mountains on a lot of planets is just odd. it looks like someone's just dragged the terrain up with their mouse cursor, the kind of mountain i'd expect in an N64 game struggling for resources.

it's also jarring when you have loads of these weird spikey thin mountains when it's hard to find any substantial thick lone mountains like we used to get on rocky ice worlds in Horizons or anywhere in the solar system.

why aren't we seeing an Olympus Mons style mountain? we can see it right now on Mars but in the ED universe, these mountain varieties don't exist. I echo previous posts, the terrain generation issues go way beyond just tiling and should all be addressed together - mountains, canyons, overhangs, bodies of liquids - this all needs serious attention as exploration and planetary terrain are the most important parts of the game for a large percentage of the player base.
 
Just realised I didn't answer this well. Being the "procgen tragic" I am, here comes the procgen explanation... :)

Anyone who ventures into procgen needs a good grounding in noise functions. You'll soon learn about Perlin/Simplex, Worley, Musgrave, Voronoi, etc. For terrain, 2D and 3D noise functions are relevant, and in the case of ED specifically, we only need to look at 2D noise. 2D noise can produce very nice heightmaps, but with no possibility of overhangs or caves (3D noise is required for that). For this reason, the type of terrain seen in ED is sometimes called 2.5D.

Great examples of 2D noise functions can be found here:

Now specifically for the geome in your screenshot, the most relevant 2D noise is probably about half way down the page, "Ridged Multifractal". In fact the description there even says, "Great for electrical effects, and as a displacement map for mountains due to the sharp peaks and valleys."

That 2D image is simply a 2D array of height data, so when used as terrain, the game engine transforms the noise into hills and mountains with the lighter shades (higher values) being the higher elevations, like this:
View attachment 284527

So I'd suggest the noise function in C most closely resembles the geome in your screenshot.

In practice, any procgen coder will probably tell you that terrain for hills/mountains is the easiest to simulate. It's literally about 20-30 lines in most languages, consisting of:
- Import noise modules/libraries (nobody these days has to code their own noise functions - they're all available in libraries)
- Set up noise parameters (octaves, lacunarity, etc. describing the geome characteristics - these are all noise params you learn quickly)
- Generate the noise (often just a single line calling the noise library)
- Optionally, add additional additive and/or multiplicative layers of noise as necessary, for realism (repeat steps 2 & 3)
- Render / plot

To be perfectly honest, many of the hills/mountains we see in the new ED geomes are underwhelming, especially the rounded (unnatural) looking ones. I've said previously that I see no reason why these had to be pre-generated and repeated as terrain tiles. Having said that, although hills and mountains are simple, there are other geological features which are technically quite complex to solve. These include erosion / alluvial deposition, and rivers. For my own hobby projects, I estimate 10% of my time is spent on tectonics, continents, hills/mountains, and the rest on erosion and rivers. But there are plenty of shortcuts for erosion/rivers which can make them real time.

I've written far too much... bet you're sorry you asked now. :)
Fascinating and informative, thanks for posting!
 
To be perfectly honest, many of the hills/mountains we see in the new ED geomes are underwhelming, especially the rounded (unnatural) looking ones. I've said previously that I see no reason why these had to be pre-generated and repeated as terrain tiles. Having said that, although hills and mountains are simple, there are other geological features which are technically quite complex to solve. These include erosion / alluvial deposition, and rivers. For my own hobby projects, I estimate 10% of my time is spent on tectonics, continents, hills/mountains, and the rest on erosion and rivers. But there are plenty of shortcuts for erosion/rivers which can make them real time.
Real-time river generation? I'd be curious to see that, what with the obvious constraint that it must flow downhill. Got any above sea level lakes that can be generated on the fly too?
 
Ah no. And to show you why, I'll ask a simple question. Since our own solar system (a single system) has mountains in excess of 20 km, do you really believe that is the maximum height across the entire galaxy? Or is it more plausible that when looking at the billions of other planets in the galaxy, the highest mountain would be at least double that, or even 3x or 4x times that height, or more?

There are going to be physical limits as to how tall a mountain can grow:

Source: https://www.youtube.com/watch?v=sxS_sxGxoJs




According to the famous French astrophysicist Andre Brahic the maximum is round about 30 Km, so not much more than Olympus Mons. Also bear in mind that that is a gigantic shield volcano with a base roughly the size of Poland and average slope is only about 5 degrees so it's not going to look particularly dramatic to fly around or to land on.

We should be seeing volcanoes like this in the game though, and much more realistic looking mountains and canyon systems like Valles Marineris, Noctis Labyrinthus etc. No daft spikes etc. EDO needs a thorough overhaul, with careful consultation with competant geologists. Much greater variety of geological features on individual planets. There should be ancient heavily eroded rounded landscapes too - we see them on the Moon, but mixed in with younger jagged features. Deep crevices in frozen regions.



Since you work with proc gen and landscapes I'd like to ask if complex desert dune and yardang landscapes could be generated procedurally, such as we find on Earth and Mars. More to the point, could it be done in Odyssey? Deserts provide some of the most stunning landscapes especially when seen from above.

Examples:




TARsImag2e.jpg

maxresdefault.jpg

kerman-iran-lut-desert-shahdad-kaluts-49-photo-credit-irandeserts-com-e1510085272772.jpg

Barchan_Sand_Dunes_Empty_Quarter_NationalGeographic.jpg
 
Last edited:
Real-time river generation? I'd be curious to see that, what with the obvious constraint that it must flow downhill. Got any above sea level lakes that can be generated on the fly too?

Plenty, and here's one trick for you. If you've done some "continent building" yourself using perlin/simplex, which is pretty much the first step anyone takes when getting into the field, what you'll find is plenty of inland lakes at sea level, which of course isn't particularly realistic. Take the height data for some of those inland lakes, as well as some of the surrounding terrain, and artificially raise them. The water should be raised by a constant, and the surrounding terrain raised by linear interpolation so as to still seamlessly fit with the surrounding terrain. Voila, above sea level lakes, and with none of that time-consuming iterative water erosion processing.

The above leaves out some pre-processing steps, like determining the local minima of the surrounding terrain so that the water stays at, or below, those minima. If you choose to raise the water to exactly the minimum, you then create an overflow from the lake into a river or waterfall.
 
Last edited:
There are going to be physical limits as to how tall a mountain can grow:

Source: https://www.youtube.com/watch?v=sxS_sxGxoJs




According to the famous French astrophysicist Andre Brahic the maximum is round about 30 Km, so not much more than Olympus Mons. Also bear in mind that that is a gigantic shield volcano with a base roughly the size of Poland and average slope is only about 5 degrees so it's not going to look particularly dramatic to fly around or to land on.

We should be seeing volcanoes like this in the game though, and much more realistic looking mountains and canyon systems like Valles Marineris, Noctis Labyrinthus etc. No daft spikes etc. EDO needs a thorough overhaul, with careful consultation with competant geologists. Much greater variety of geological features on individual planets. There should be ancient heavily eroded rounded landscapes too - we see them on the Moon, but mixed in with younger jagged features. Deep crevices in frozen regions.



Since you work with proc gen and landscapes I'd like to ask if complex desert dune and yardang landscapes could be generated procedurally, such as we find on Earth and Mars. More to the point, could it be done in Odyssey? Deserts provide some of the most stunning landscapes especially when seen from above.

Examples:




View attachment 284775
View attachment 284776
View attachment 284777
View attachment 284778

Great post. Dunes I've not bothered to look into yet, but they seem very suitable to procgen. Water/wind erosion I have. The iterative processes required for the most realistic renditions are not suitable for real time, but approximations are fine for most games, and in many cases even good enough for the likes of ED, which I consider as close to a simulation game as we're likely to get. It's too big a field to go into here though.
 
I'm very pleasantly surprised to see others in the forum with similar interests. Perhaps we should make a new thread "Procedural Generation Enthusiasts Thread" or similar?

Just to show what the bookmarks for a "procgen tragic" look like, here's mine, showing the content of just one of the folders, lol:

Screenshot.jpg


So would anyone be interested in a dedicated Procgen Enthusiasts thread? I won't start one if it's just going to be a single person's echo chamber.
 
Great post. Dunes I've not bothered to look into yet, but they seem very suitable to procgen. Water/wind erosion I have. The iterative processes required for the most realistic renditions are not suitable for real time, but approximations are fine for most games, and in many cases even good enough for the likes of ED, which I consider as close to a simulation game as we're likely to get. It's too big a field to go into here though.

Dunes form wherever sand blows, into hollows etc, so would it be possible to factor that into the proc gen? I guess it would be rather similar to placing it where liquids like water would pool.

I don't know anything about Proc gen unfortunately, I did intend to study geology at Uni until life stuff got in the way and have forgotten most of what I learned at A level as it was four decades ago. Still keep up a purely amateur interest though, and a deep appreciation of the sheer beauty of natural forms.
 
Back
Top Bottom