Highly customizable procedural planet

Hi everyone!

Over the last few months I’ve been working on a planet generator for blender Cycles in my free time. I wanted to have 100% procedural materials and it should be as versatile as possible to allow me to create a large variety of planets. At the moment there are more than 100 settings across all group nodes, so I had to split it up into multiple group nodes for different planet properties like terrain, poles or cityscapes that can all be combined.

Here is an example planet from different perspectives:

And here is how the group node setup for this planet surface material looks like:

Here are a few more planet renders. The view of the whole planet on the left takes around 30 min to render and the view on the right around 1 hour (1920x1080 500 samples with an RTX 2070):

I also made shader groups for lava and moons:

Finally, I also made shader groups for gas planets, including planetary rings:

I still have a lot to do before I feel confident to release it. Most of the nodes inside the group nodes are still node spaghetti and I still have to go through some of the older node setups and update them with what I have learned since I started this project. Feedback is always appreciated.


Wow, this is looking great!

I made a procedural planet generator too, but yours has definitely gone beyond what I have achieved before with realism. I don’t know if you have seen it already or not, but it’s downloadable there if you want to get any inspiration.

1 Like

I am a Historian and I recognise Black Magic when I see it

but really, this is beyond insanity! congratulations!


Have you done any more with this?

1 Like

Wow :slightly_smiling_face: super awesome :slight_smile: A while ago I made 200 planets with the old blender internal render engine. A generator would have been a great help.

Sadly, I didn’t have enough time to finish my planet generator yet, especially during the last few months. A lot of cleanup and improvements to the node structure have been done however, especially to the Lava node group. I also came up with a few more ideas that I want to fully implement before I release it. I can’t make any promises, but I am still determined to finish it at some point.