Procedural planets

Hi folks.

I’ve googled the topic and found some mind bendingly good work out there however…

I’m in the middle of writing a game which requires a bunch of revolving/tumbling planets. I’ve tested several ways to produce the game effect I want and the best ‘all round’ option is to film the revolving planet in Blender, then use the tiles as a sprite sheet in game. The whys and wherefores for this decision are many and a bit complicated so I wont go into why I’m not using models, blah, blah, blah.

I need a whole bunch of planets and 360 pictures of each. I’ve tested by wrapping a sphere (sphere from plane method) and the results are perfect, but there aren’t that many planet projections out there in the googleshpere.

Plus, in game, I’m blending one object into another to give a simple look of the planets evolving, so I need several different states for each planet. Pretty impossible to find without paying someone to produce them.

With all this in mind I’ve come to the conclusion that I need procedural planets and a set of variables I can tweak to give me any number of planets in any number of states from barren rock (Mars) to a lush planet. (Earth)

I have played around and I can come up with cartoon style planets which isn’t really what I want and it takes a long time. Moving to the next state and/or next planet I’m starting the process from scratch, this is just taking too long.

So… Does anyone have any ideas of how I can automate this process? I am a programmer but I know nothing of python or how to script with Blender so that option is out.

If anyone has any ideas please prod me. Thank you.

(Example of 5 evolving states, these are wrapping tests.)

I’ll post this in case it helps: Oddly enough, I just wrote a little Java program to make seamless tilable cratered textures, usable in Blender though the Normal Maps it can output. Here’s a quick example of one of its normal maps applied to a perfectly flat plane (blend file attached):

Here’s what a the texture UV mapped to a sphere looks like:

I wrote it for myself, but it should be self-explanatory to use; clicking on the image plane toggles cratering on/off. This is the link to run the program:

NOTE: If you want to run the program, you’ll need Java installed, and (unless you’re on Linux) you’ll probably also have to give permission via the Java Control Panel, by putting this website in the Security tab’s “Exception Site List”:


Craters2017_NormaMapTest.blend (1.23 MB)

Wow, that’s intriguingly beautiful. I will take a look at the code, it may be very useful for the initial planet phase.

Thank you gnaural.