Procgen is a fast general purpose procedural generation library for Python 3 that works on Linux, Windows, Mac OS and BSD. It can be used for a wide range of purposes, from terrain generation to generative art, both in 2D and 3D worlds.
To install Procgen, simply:
pip install git+https://github.com/juancroldan/procgen
Soon, you will be able to use pip to install this library.
Since big API changes are expected, documentation is not available yet. We will upload it to readthedocs.org soon.
By 2021, a 1.0 stable version will be released, a proper branch workflow will be used, and contributions will be open. Adventurous coders can contact via mail at juancarlos @ sevilla . es
to contribute in this wild, unstable stage.
Currenty, we are working to provide a basic set of algorithms for procedural generation.
We are implementing algorithms from the following sources:
- Procedural generation gamasutra example
- Procedural generation wiki
- Procedural Content Generation in Games book
- Procedural generation subreddit
- Procgen Github projects
Our backlog is:
- Noise initialisation:
seed
- Lattice-based noise functions:
perlin
,simplex
,opensimplex
,wavelet
- Point-based noise functions:
voronoi
,worley
- Perlin-based noise functions:
billow
,ridged
- Test coverage for noise functions
- Biome generation:
whittaker
- Tree-placement algorithms
- Water-placement algorithms: rivers, lakes, wind-aware filling
- Test coverage for terrain functions
- Backlog update: Cellullar automata, L-systems, boolean evaluation heightmap, maze generation, midpoint displacement...
- Version 1.0 is reached: issue-driven development, pull requests opened, dev branch, examples in wiki, automatic tests, setup.py to use pip install git+git://