Interface Aquifer

All Known Implementing Classes:
Aquifer.NoiseBasedAquifer

public interface Aquifer
Aquifers are responsible for non-sea level fluids found in terrain generation, but also managing that different aquifers don't intersect with each other in ways that would create undesirable fluid placement. The aquifer interface itself is a modifier on a per-block basis. It computes a block state to be placed for each position in the world.

Aquifers work by first partitioning a single chunk into a low resolution grid. They then generate, via various noise layers, an

invalid reference
NoiseBasedAquifer.AquiferStatus
at each grid point. At each point, the grid cell containing that point is calculated, and then of the eight grid corners, the three closest aquifers are found, by square euclidean distance. Borders between aquifers are created by comparing nearby aquifers to see if the given point is near-equidistant from them, indicating a border if so, or fluid/air depending on the aquifer height if not.
  • Method Details