https://github.com/escottalexander/biomes
https://github.com/escottalexander/biomes
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/escottalexander/biomes
- Owner: escottalexander
- Created: 2024-12-23T14:29:39.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2025-01-01T04:25:58.000Z (6 months ago)
- Last Synced: 2025-04-12T05:39:20.918Z (2 months ago)
- Language: TypeScript
- Homepage: https://perlin-noise-world-gen.vercel.app
- Size: 75.2 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Procedural World Generator
A procedural world generator that uses Perlin noise to create infinite, explorable terrain with various biomes. The generator creates coherent landscapes by combining three layers of Perlin noise:
- Height map (terrain elevation)
- Moisture map (affects biome distribution)
- Temperature map (influences climate zones)## Features
- Infinite terrain generation
- 2D and 3D visualization
- Multiple biomes based on height, moisture, and temperature
- Real-time terrain exploration
- Mobile-responsive design## How It Works
The generator uses layered Perlin noise with different seeds to create natural-looking terrain. Each point in the world is determined by:
1. Height value (determines elevation)
2. Moisture value (affects vegetation)
3. Temperature value (influences climate)These values combine to select appropriate biomes, creating a diverse and coherent world.
## Credits
Inspired by:
- [5/9's blog post on on-chain worlds](https://www.fiveoutofnine.com/blog/on-chain-worlds-with-terrain-generation)
- [Henrik Kniberg's terrain generation video](https://www.youtube.com/watch?v=CSa5O6knuwI)## Live Demo
[View the live demo](https://perlin-noise-world-gen.vercel.app)
## License
MIT