Skip to content

ReinardKuroi/Untitled-Unity3D-Worldgen

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Untitled-Unity3D-Worldgen

For a long time I wanted to create a general use procedural terrain generator. Main goals are high performance, good looks, and the ability to customize density function from the editor. Long-term plan is to use this for a game, or possibly multiple games, to generate planets, asteroids, floating islands, flat terrain, e.c.t.

Most of my notes regarding this are in Obsidian. See ReinardKuroi/worldgen for some details.

General plans

  • ✅ Terrain generation via noise + fade function (CPU)
  • 🔲 Terrain generation via noise + fade function (GPU Compute)
  • ✅ Chunks
  • ✅ Dynamic chunks based on view distance
  • ✅ Collision mesh generation
  • 🔲 LOD based collision mesh for performance
  • 🔲 LOD meshes
  • 🔲 LOD meshes based on view distance
  • ✅ Threaded generation
  • ✅ Background threads
  • 🔲 Terrain modification via diff maps
  • 🔲 Saving terrain modification
  • 🔲 Terrain props (trees rocks items e.c.t)
  • 🔲 Saving terrain prop maps (allows for persistent saves)
  • ✅ Adaptive dual contouring with particle descent (CPU)
  • 🔲 Adaptive dual contouring with particle descent (GPU Compute)
  • 🔲 Marching cubes (CPU)
  • 🔲 Marching cubes (GPU Compute)
  • 🔲 Procedural atmospheric shader
  • 🔲 Procedural terrain shader
  • 🔲 Easily customizable density function
  • 🔲 Support for multiple terrain root points (planets orbiting each other e.c.t.)
  • 🔲 Extensive documentation
  • 🔲 while (true) { Refactoring(); }
  • ...

Builds

Test builds on GDrive

Releases

No releases published

Packages

No packages published

Languages