dcz-self / feldspar

Procedural voxel worlds for Bevy Engine.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

feldspar

Procedural voxel worlds for Bevy Engine.

Currently a work in progress!

Scope

This is not intended to be a highly generic voxel library. Namely it does not intend to support generic voxel data types. Rather it has an opinionated data model to achieve specific goals like:

  • SDF-based terrain for:
  • real-time responsive terraforming
  • LOD (level of detail) via chunk downsampling
  • biplanar texture mapping and material blending

Project Structure

Crates

crates

  • feldspar: the top-level crate that only contains executable targets like the map editor
  • feldspar-map: the map data model and operational Bevy plugin
    • streams map data from a database into the scene
    • performs voxel and octree queries
    • persists edits to a versioned database
  • feldspar-sim: a Bevy schedule that runs an RPG-like discrete time simulation in an isolated ECS world
  • feldspar-procgen: algorithms for procedurally generating maps
  • feldspar-renderer: a Bevy plugin that renders the currently loaded map
  • feldspar-gizmos: Bevy plugins that allow GUI interaction with the scene

Dependencies

This project has spawned several fundamental data structures and algorithms that are exposed as their own crates.

dependencies

About

Procedural voxel worlds for Bevy Engine.

License:MIT License


Languages

Language:Rust 89.9%Language:GLSL 10.1%