Tutorial :Looking for algorithms to generate realistic planets



Question:

I'd like to collect a list of algorithms and other resources to generate realistic and interesting visuals of planets. The visual should look like something which you'd expect to find on the NASA homepage. Key attributes would be:

  • a nice colorful atmosphere for gas giants
  • rings (optional)
  • impact craters for solid rocks without atmosphere
  • inhabitable planets could have features like oceans, mountains, rivers, forests
  • inhabitables could even have a realistic distribution for the civilization on the surface

The final goal should be to give Science Fiction(SciFi) writers a tool to generate a world which helps them to spark ideas, create locations for scenes, or as a basis to render nice images for their books.

Note: This is a wiki, so no single "correct" answer.


Solution:1

If you want high-level descriptions of a very mature procedural planet renderer, Infinity is perhaps the most venerable. The development blog covers many of the concepts used to create some very nice procedural planets and some other very nice space phenomena.


Solution:2

Fractal terrain generation works wonders for creating realistic landscapes. I imagine you could scale the processs up in order to generate landmasses on a plantary scale. This site has a detailed description of the process used for landscapes.


Solution:3

Check out conworlding links. There is actually commercial software out there (ProFantasy comes to mind) but if you wanted to do something from scratch, I have a link you may be interested in :

Magical World Builder

Finally, Guy Lecky-Thompson has written some interesting books on using procedural content in game design. I have both of his books and they are very inspiring. Many algorithms are listed, including a few RNG implementations, name generators (HINT: pick a list of name parts, then how many parts each name should have, then randomise), two whole chapters on terrain and landscape generation, a dungeon chapter...

Oooh ! Speaking of dungeons, dunno if you have heard of Roguelikes, but I have recently been looking into these. I imagine that many of the same general principles they use for dungeons can be applied - and there are wilderness algorithms they share, besides. Try:

Temple of The Roguelike - possibly the largest Roguelike dev forum

Wilderness Generation using Vornoi Diagrams - this blog is run by a developer of Unangband, a very popular Rogue variant. Many people in the Roguelike dev community share sources.

Markov Chain - this article is about how to put together randomised names using Markov Chains. The wiki where this is hosted has quite a few algorithms of interest to anyone generating procedural content of any sort.

Roguebasin - many useful aglorithms and code examples here.

Have fun !


Solution:4

I'm no astronomer, but you might consider some sort of decision tree for a preliminary classification of the planet:

  1. Main Composition (methane/rock/etc.)
  2. Mass
  3. Additional atmosphere (how much, what of, etc.)
  4. Temperature (Alternately, specify distance from star, model the star and write an algorithm based on the above)
  5. Age
  6. Asteroid/Meteor activity

Things like craters would be indirectly determined by 1, 3, and 6. Radius could be calculated from 1 and 2. And higher elements on the list might put boundaries on lower elements.

You still have many algorithms to research, but maybe having an order of information might structure your calculations or what variables you use.


Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Previous
Next Post »