Procedural Real-Time Planet Shader
Overview
Creating planets with volumetric clouds and atmospheric scattering is all fun and games until you want to render animations with it, right?
This planet shader is optimized for rapid rendering in Eevee and Cycles by faking most of the atmospheric effects, including cloud shadows and Rayleigh scattering. It gives you full creative control over lighting and textures. There are over 17 procedural texture groups available, each with tweakable parameters for endless variations. Earth- and Mars-like planets, gas giants, moons, ice planets, lava lakes and cracks, auroras, city lights, its all included.
Don't feel like diving into the node jungle? All settings are conveniently exposed on the top level and in Container groups for easy access.
This product contains a visual step-by-step guide as PDF to help you get started.
How it works
Why calculate it when you can fake it? Cloud shadows, cloud height and atmospheric scattering are faked with shader nodes. The no-bullshit parameters give you a wide range of options to adjust these effects to your needs. Simply import the planet asset and get started right away.
Bend the light to your will:
Add diffuse illumination to the shadows and smoothen the terminator line:
Physics is whatever you want. Shift the terminator line forwards or backwards in 3D:
Set the cloud height:
For a detailed explanation of the available parameters, see the Documentation section.
Performance
These screenshots were captured on an RTX 2070 Max-Q.
Eevee viewport:
Cycles viewport:
The shader consists mostly of diffuse and emission data, which makes it very fast and allows you to keep the sample counts low (8-16 works fine). The slowest part is shader compilation time, which is slightly higher in Eevee than in Cycles.
Rendering a 1080p image takes between 1-7 seconds in Eevee and a similar time in Cycles. 4K renders are not much slower at 10-20 seconds.
Render time depends on the complexity of the procedural texture and viewing distance. More information can be found in the Documentation section.
(Fun fact: all planets on this product page and in the slides were rendered with Eevee.)
For general usage questions and info about how to create your own textures, also check out the Documentation or the included PDF that contains the Documentation and a step-by-step guide.
Keep in mind that this shader was created with Blender 3.6. It is backwards compatible to 3.5 and likely 3.4, but not to 3.3.
Discover more products like this
winter24 3d planet atmosphere planet spring24 procedural space real-time gas planet