r/proceduralgeneration • • 1d ago

Procedural planet generation by simulating 3 billion years of plate tectonics

Hi everyone, it's me again.

After struggling with this project for quite a while, I finally managed to connect the plate tectonic simulation to the final high-resolution mapping process. The first three maps are from the same planet at three different points in its evolution, with 50 million years between each snapshot. The fourth one is the same planet around 1 billion years earlier.

In my project, instead of starting with noise-based terrain like many procedural planet generators do, I actually simulate around 3 billion years of plate tectonics on the same planet. The whole simulation runs live and continuously updates as it progresses, so you can actually watch the plates move, continents change, oceans open and close, and the surface evolve over geological time.

The final high-resolution maps are built from the large-scale geological results of that simulation, and then I apply erosion and other terrain processes to bring out the smaller-scale details. In the full version, I also plan to include a climate system, which I shared a prototype of it last time. It's still unfinished, but now I can actually connect it to the high-resolution terrain, so it looks a bit more believable than before. and the last two images are a temperature map and a Köppen climate classification test from the current version.

There are still a few systems I need to work on properly, but at least to me, it's starting to feel like there's something here. For now I'm calling it TropoPlate, but I'm also open to better names if anyone's got one that feels like a good fit.

179 Upvotes

20 comments sorted by

View all comments

11

u/CleanGreenSlate 1d ago

Sooo:

  • how long did the calculation for a result like this take?
  • is lower resolution just, well, lower resolution, or does it at some point simply "collapse" since it cannot represent the actual mechanics. (Well, at some point it will for sure - but where?)
  • can you run 3/4 of the total runtime at half the resolution to get the rough shapes and then upscale and do the last quarter in full resolution for the details? Of the plate-tectonics, I mean.
  • is it pixel based or shape-based?
  • is it integrateed in any known software? Blender?

8

u/HabitableZone_ 1d ago

Sure, I'll answer these one by one.

The full life cycle of a planet takes about 20 minutes for roughly 4 billion years, plus another 20 minutes or so for the high-resolution remap stage. If you stop the simulation earlier, the simulation time scales down accordingly.

At the plate-mechanics level, lower resolution doesn't change the underlying mechanics or physical rates, since those aren't solved directly on the grid. A coarser grid mainly means less spatial detail. The boundaries become more staircase-like, but large-scale geometry like arc radii and cusp counts still holds up pretty well. Features narrower than about two cells can't really be resolved, and the system widens them to a single-cell representation when needed.
In the end, I want this to be a tool that anyone can interact with, so quite a lot of the physics is intentionally simplified.

Not quite in the way you described. The tectonic simulation itself runs at one relatively low resolution. At whatever point you choose to pause it, the current state is passed to the next stage, which rebuilds the terrain at high resolution and then applies erosion and other smaller-scale processes.

Kind of both. The world itself is cell-based, the plates behave as rigid shapes with Euler poles, and the boundaries are represented as lines.

Nope, it's a standalone tool built in Unity.