Description
Changelog
Reviews (0)

A full-size planet (Earth radius, ~6,378 km) with terrain that increases in detail as the camera approaches and simplifies as it moves away. You can fly from orbit down to the surface and pick out individual hills, with the level of detail following the camera the whole way down.

The technique is called chunked LOD (Level of Detail). The planet surface is divided into a tree of rectangular patches (chunks). Near the camera, chunks split into 4 smaller children. Far away, children merge back into one parent. The result is high detail where you need it and low detail where you don't.

Everything is in GDScript + two GLSL shaders (terrain + atmosphere). No C++, no GDExtensions, no external plugins.

The project has a pretty thorough README that (hopefully) covers all the mechanisms I used:

  • Quadtree-based chunked LOD (split/merge based on camera distance)
  • Cube-to-sphere projection
  • Terrain generated in a GLSL vertex shader (5 noise octaves)
  • Elevation-based coloring (ocean → sand → grass → rock → snow)
  • Atmospheric scattering (Rayleigh + Mie)
  • Frustum + horizon culling
  • Origin shifting for large-scale precision
  • Chunk pooling and mesh reuse

Just open the project in Godot editor and hit Play.

Changelog for version v1.0.0

No changelog provided for this version.

Reviews

Procedural Planet - Chunked LOD has no reviews yet.

Login to write a review.