5 Commits

Author SHA1 Message Date
ebdbf62a19
refactor: Remove const references for position parameters in tile and biome accessors
Signed-off-by: szdytom <szdytom@qq.com>
2025-08-01 22:58:07 +08:00
416eabd31f
feat: get_biome method for Chunk
Signed-off-by: szdytom <szdytom@qq.com>
2025-08-01 22:51:41 +08:00
344e475f52
refactor: Simplify sub-chunk handling and improve biome management in Chunk and TerrainGenerator
Signed-off-by: szdytom <szdytom@qq.com>
2025-08-01 22:39:09 +08:00
0b245e0483
feat: Add dual noise terrain generation demo
- Introduced a new example `dual_noise_demo.cpp` to showcase the base and surface generation system.
- Updated biome properties to include ice thresholds and surface feature parameters.
- Enhanced chunk structure to support biomes for sub-chunks.
- Refactored terrain generation logic to separate base terrain and surface feature generation.
- Improved biome determination logic to include new biomes and their properties.
- Updated tile representation to use enums for base and surface tile types.
- Added detailed analysis of generated terrain and sample tile outputs in the demo.

Signed-off-by: szdytom <szdytom@qq.com>
2025-08-01 15:32:36 +08:00
b6656f5023
feat: Add biome-based terrain generation and Perlin noise implementation
- Introduced a new biome system with various biome types and properties.
- Implemented terrain generation using Perlin noise to create diverse landscapes.
- Added examples for basic tilemap generation and biome analysis.
- Created helper functions for displaying tiles and biomes in the console.
- Enhanced the TileMap class to support chunk-based tile management.
- Developed a PerlinNoise class for generating smooth noise patterns.
- Updated generation configuration to include climate parameters for biomes.
- Implemented error handling for out-of-bounds access in TileMap.

Signed-off-by: szdytom <szdytom@qq.com>
2025-08-01 14:28:36 +08:00