Skip to main content

steel_core/worldgen/
mod.rs

1//! World generation module.
2//!
3//! This module provides the integration between extracted vanilla worldgen data
4//! and the world generation pipeline.
5
6/// World-carving: runtime context + carver implementations.
7pub mod carver;
8#[cfg(test)]
9mod chunk_stage_hashes;
10pub(crate) mod feature;
11pub mod generator;
12pub mod region;
13pub(crate) mod stages;
14pub(crate) mod structure;
15pub mod surface;
16pub(crate) mod template;
17
18pub use generator::context::{
19    ChunkGeneratorType, EndGenerator, NetherGenerator, OverworldGenerator, WorldGenContext,
20};
21pub use generator::registry::{GeneratorOutput, WorldGeneratorRegistry};
22pub use generator::{ChunkGenerator, EmptyChunkGenerator, FlatChunkGenerator, VanillaGenerator};
23pub use region::WorldGenRegion;
24pub use steel_worldgen::density_functions::overworld::OverworldColumnCache;
25pub use steel_worldgen::noise::EndIslands;
26
27/// Compatibility path for the per-chunk carving bitset.
28/// Compatibility path for generator context types.
29pub mod context {
30    pub use super::generator::context::*;
31}
32
33/// Compatibility path for concrete generator implementations.
34pub mod generators {
35    pub use super::generator::{EmptyChunkGenerator, FlatChunkGenerator, VanillaGenerator};
36
37    pub(crate) mod vanilla {
38        pub(crate) use super::super::generator::vanilla::*;
39    }
40}
41
42/// Compatibility path for generator factory types.
43pub mod registry {
44    pub use super::generator::registry::*;
45}