66 bool & a_CacheOffByDefault
103 bool & a_CacheOffByDefault
133 GenHeightMap(chunkCoords, heightMap);
142 bool & a_CacheOffByDefault
194 virtual void GenFinish(
cChunkDesc & a_ChunkDesc) = 0;
212 virtual void Initialize(
cIniFile & a_IniFile)
override;
214 virtual void Generate(
cChunkDesc & a_ChunkDesc)
override;
218 static void InitializeGeneratorDefaults(
cIniFile & a_IniFile,
eDimension a_Dimension);
241 void InitBiomeGen(
cIniFile & a_IniFile);
244 void InitShapeGen(
cIniFile & a_IniFile);
247 void InitCompositionGen(
cIniFile & a_IniFile);
250 void InitFinishGens(
cIniFile & a_IniFile);
Byte Shape[256 *16 *16]
The datatype used to represent the entire chunk worth of shape.
eDimension
Dimension of a world.
virtual ~cTerrainShapeGen()
std::shared_ptr< cFinishGen > cFinishGenPtr
virtual ~cTerrainCompositionGen()
virtual ~cTerrainHeightGen()
std::shared_ptr< cTerrainHeightGen > cTerrainHeightGenPtr
The interface that is used to query terrain height from the shape generator.
static HEIGHTTYPE GetHeight(const HeightMap &a_HeightMap, int a_X, int a_Z)
static cBiomeGenPtr CreateBiomeGen(cIniFile &a_IniFile, int a_Seed, bool &a_CacheOffByDefault)
Creates the correct BiomeGen descendant based on the ini file settings.
std::shared_ptr< cTerrainCompositionGen > cTerrainCompositionGenPtr
virtual void InitializeHeightGen(cIniFile &a_IniFile)
Initializes the generator, reading its parameters from the INI file.
cTerrainHeightGenPtr m_CompositedHeightCache
The cache for the heights of the composited terrain.
unsigned char HEIGHTTYPE
The type used by the heightmap.
cBiomeGenPtr m_BiomeGen
The biome generator.
static void BlockToChunk(int a_X, int a_Z, int &a_ChunkX, int &a_ChunkZ)
Converts absolute block coords to chunk coords:
std::list< cFinishGenPtr > cFinishGenList
virtual void InitializeCompoGen(cIniFile &a_IniFile)
Reads parameters from the ini file, prepares generator for use.
std::shared_ptr< cTerrainShapeGen > cTerrainShapeGenPtr
The interface that a terrain composition generator must implement Terrain composition takes chunk coo...
virtual void GenBiomes(cChunkCoords a_ChunkCoords, cChunkDef::BiomeMap &a_BiomeMap)=0
Generates biomes for the given chunk.
cFinishGenList m_FinishGens
The finisher generators, in the order in which they are applied.
The interface that a terrain shape generator must implement A terrain shape generator takes chunk coo...
cTerrainShapeGenPtr m_ShapeGen
The terrain shape generator.
virtual void InitializeShapeGen(cIniFile &a_IniFile)
Reads parameters from the ini file, prepares generator for use.
virtual void InitializeBiomeGen(cIniFile &a_IniFile)
Reads parameters from the ini file, prepares generator for use.
HEIGHTTYPE HeightMap[Width *Width]
The type used for any heightmap operations and storage; idx = x + Width * z; Height points to the hig...
cTerrainCompositionGenPtr m_CompositionGen
The terrain composition generator.
EMCSBiome BiomeMap[Width *Width]
The type used for any biomemap operations and storage inside Cuberite, using Cuberite biomes (need no...
The interface that a finisher must implement Finisher implements changes to the chunk after the rough...
virtual HEIGHTTYPE GetHeightAt(int a_BlockX, int a_BlockZ)
Returns the height at the specified column.
The interface that all chunk generators must implement to provide the generated chunks.
The interface that a biome generator must implement A biome generator takes chunk coords on input and...
std::shared_ptr< cBiomeGen > cBiomeGenPtr