# Procedural generation These are my bookmarks on [procedural generation](!W) and topics closely related to it, mostly from the 2010s. I have marked the items with plain-text tags. I use "[example]" for examples and code snippets. Other tags should be self-explanatory. ## Contents ## 3D models from code - [AngelCAD](https://arnholm.github.io/angelcad-docs/). "AngelCAD is a powerful open source 3D solid modeller based on the Constructive Solid Geometry [CSG] modelling technique, expressed in the AngelScript language." [software] - [Antimony](https://www.mattkeeter.com/projects/antimony/3/). "Antimony is a computer-aided design [CAD] tool from a parallel universe in which CAD software evolved from Lisp machines rather than drafting tables." [software] - ["Distance functions"](https://www.iquilezles.org/www/articles/distfunctions/distfunctions.htm), Inigo Quilez (2011). [article] - ["Function representation"](!W) or "FRep". [article] - [Tangerine](https://github.com/Aeva/tangerine). "Tangerine is a system for creating 3D models procedurally from a set of Signed Distance Function (SDF) primitive shapes and combining operators. Models are written in Lua, and may be either rendered directly or exported to a variety of common 3D model file formats." [software] - [VoxelDesc](https://notimetoplay.itch.io/voxeldesc). A command line-driven voxel editor. No longer maintained. [software] ## Book covers - ["Generative eBook Covers"](https://www.nypl.org/blog/2014/09/03/generative-ebook-covers), Mauricio Giraldo Arteaga (2014). [article] ## Cities - ["CityDreamer: Compositional Generative Model of Unbounded 3D Cities"](https://arxiv.org/abs/2309.00610), Haozhe Xie et al. (2023). [article] - [City Map Generator](https://maps.probabletrain.com/). Creates maps, heightmaps, and 3D models of American-style cities in the browser. [software] - ["Cubic cityscape #1"](https://turtletoy.net/turtle/789cce3829), reinder (2018). A tunable [turtle graphics](!W) effect. [example] - ["Extreme D&D DIY: adventures in hypergeometry, procedural generation, and software development (part 2)"](https://blog.obormot.net/Extreme-D-D-DIY-adventures-in-hypergeometry-procedural-generation-and-software-development-part-2), Said Achmiz (2024). This blog post examines the problem of generating good [D&D](!W "Dungeons & Dragons") combat maps for the vast and desolate city of Lacc from the adventure _Gates of Oblivion_. The author refines a solution in JavaScript step by step with detailed critique. [article] - ["Generating an infinite world with the Wave Function Collapse algorithm"](https://marian42.de/article/infinite-wfc/), Marian Kleineberg (2023). [article] - ["Procedural City"](https://www.shamusyoung.com/twentysidedtale/?p=2940), Shamus Young (2009). [article] - [Voyager3](https://voyager3.tumblr.com/), Brendan Zabarauskas. "Explorations into procedural village and landscape generation". [blog] ## Game engines with procedural generation - [Liminal](https://hg.sr.ht/~duangle/lua_legacy/browse/default/liminal). "An in-house prototyping game engine for no-static-assets procedural games..." No longer maintained. [software] - [ZGameEditor](http://www.zgameeditor.org/). "Create games that have a redistributable size of only 64kb or less using procedural content. The game engine use OpenGL for graphics and a real time synthesizer for audio." [software] ## Human figures - [MakeHuman](http://www.makehumancommunity.org/). A tool for making 3D human characters. [software] ## Landscapes and maps - ["Beyond the Köppen-Geiger Climate Classification System, Part I: Extensions and Alternatives"](https://worldbuildingpasta.blogspot.com/2024/12/beyond-koppen-geiger-climate.html), Nikolai Lofving Hersfeldt (2024). [article] - [Cylindrical World Generator](https://deathray.itch.io/cylindrical-world-generator-procjam). "Watch a world be born or make your own edits". [software] - ["Generating fantasy maps"](https://web.archive.org/web/20160810202300/http://mewo2.com/notes/terrain/), Martin O'Leary (2016). An article with embedded (open source) demonstrations. [article] [example] - [gaia](https://github.com/cutgarnetgames/gaia). An Earth-like world generator in Haxe + Flixel. [software] - ["How does Cave/Glade Generator Work"](https://www.boristhebrave.com/2023/11/19/how-does-cave-glade-generator-work/), Boris (2023). Explains how [Watabou's](https://watabou.itch.io/) cave map generator works. [article] - [{Shan, Shui}\*](https://github.com/LingDong-/shan-shui-inf). Procedurally-generated infinitely-scrolling vector Chinese landscape paintings for the browser. [software] - [proclib](https://kts_kettek.itch.io/proclib). "A library and syntax language for structure-centric world/map generation." [software] - ["Realistic terrain in 130 lines"](http://www.playfuljs.com/realistic-terrain-in-130-lines/), Hunter Loftis (2014). [article] [example] - [World Builder Page](http://markjstock.org/pages/builder.html). A collection of tools for landscape creation and visualization. [software] - [WorldEngine](https://github.com/Mindwerks/worldengine). A world generator based on geological and climate simulations. [software] ## Levels - [platformgen](https://github.com/adurdin/platformgen). "2D platform game map generator for #procjam 2014". [software] ## Music - ["Bytebeat"](http://canonical.org/~kragen/bytebeat/), Kragen (2012). Music that comes from simple waveform generators. [article] [links] ## Textures - [Filter Forge](https://www.filterforge.com/). Procedural texture editor that works as a standalone application or an Adobe Photoshop and Affinity Photo plug-in. Proprietary. [software] - [Genetica](https://web.archive.org/web/20220524022627/http://spiralgraphics.biz/genetica.htm). "[T]he world's most powerful editor of seamless textures, animated textures, and HDRI environment maps". Proprietary and defunct. [software] - [Material Maker](https://www.materialmaker.org/). Open-source graph-based procedural texture editor based on the Godot Engine. Exports to Godot, Unity, and Unreal Engine. [software] - [NeoTextureEdit](http://neotextureedit.sourceforge.net/). Open-source graph-based procedural seamless texture editor. [software] - [Tiny Texture Tumbler](https://github.com/phoboslab/ttt). Open-source JavaScript procedural texture library with an editor that runs in the browser. "Mainly useful for file size restricted competitions." [software] ## Trees - [2D Tree Generator](https://github.com/drake7707/proceduraltree). "Procedurally generate 2D or 3D trees using multiple particles with defined behaviours." [software] ## Video - [PixiVisor](https://www.warmplace.ru/soft/pixivisor/). "PixiVisor is a tool for experimenting with the transmission of video over audio." [software] ## Misc. - ["Debris: Opening the box"](https://fgiesen.wordpress.com/2012/02/13/debris-opening-the-box/), Fabian "ryg" Giesen (2012). An exploration of how the demoscene group ["farbrausch"](http://www.farbrausch.de/) made _[fr-041: debris.](https://www.pouet.net/prod.php?which=30244)_ [article] - [Inconvergent](https://inconvergent.net/), anders hoff. A generative art project. Contains the artist's gallery and a series of illustrated articles on generative algorithms. [article] [example] - [_The Nature of Code_](https://natureofcode.com/), Daniel Shiffman (2012). [_2nd Edition_](https://github.com/nature-of-code/noc-book-2023) (2023). A course that teaches programming simulations of natural systems with Processing (first edition) or p5.js (second). [book] - [_Procedural Content Generation in Games_](http://pcgbook.com/), Noor Shaker, Julian Togelius, and Mark J. Nelson (2016). "A textbook and an overview of current research." [book] - [Procedural generation subreddit](https://old.reddit.com/r/proceduralgeneration/). [links] - [Procedural World](https://procworld.blogspot.com/), Miguel Cepero. "Following one man's task of building a virtual world from the comfort of his pajamas. Discusses Procedural Terrain, Vegetation and Architecture generation. Also OpenCL, Voxels and Computer Graphics in general." [blog] - [ProcGen Tumblr](https://procgen.tumblr.com/), Clyde Shaffer. [blog] ## Page metadata URL: Published 2020-04-19, updated 2025-08-10. Tags: - bookmarks - programming - video games