9 Commits

Author SHA1 Message Date
849b7b2ed9
refactor: Replace hardcoded thresholds with constants in biome determination
Signed-off-by: szdytom <szdytom@qq.com>
2025-08-01 21:41:15 +08:00
6be8869568
fix: biome demo
Signed-off-by: szdytom <szdytom@qq.com>
2025-08-01 21:37:23 +08:00
720d1a1c69
feat: Enhance command line interface to support optional chunk size parameter
Signed-off-by: szdytom <szdytom@qq.com>
2025-08-01 20:46:40 +08:00
4d88ea4a29
feat: Refactor visualization to generate BMP files instead of SVG
Signed-off-by: szdytom <szdytom@qq.com>
2025-08-01 20:40:36 +08:00
2b5f62da08
feat: Implement uniform distribution mapping for Perlin noise and add comparison demo
Signed-off-by: szdytom <szdytom@qq.com>
2025-08-01 19:41:11 +08:00
1cb4c19b77
Refactor tilemap examples and enhance biome generation
- Removed dual_noise_demo example as it was deemed unnecessary.
- Added perlin_demo example for visualizing Perlin noise.
- Updated biome_demo to generate SVG visualizations of tilemaps.
- Changed biome properties from thresholds to ratios for better control.
- Modified terrain generation logic to accommodate new biome properties.
- Improved documentation with detailed API and usage examples.

Signed-off-by: szdytom <szdytom@qq.com>
2025-08-01 19:25:36 +08:00
1289e99fc3
feat: Refactor biome generation and terrain noise handling
Signed-off-by: szdytom <szdytom@qq.com>
2025-08-01 18:47:55 +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