WaveFunctionCollapse
WaveFunctionCollapse is a free tool that generates bitmaps using local patterns from an input image.
What WaveFunctionCollapse is
WaveFunctionCollapse is a free tool that generates bitmaps using local patterns from an input image. Its output is limited to NxN pixel patterns found in that image, with an option to add rotated and reflected pattern variations. The algorithm repeatedly chooses an unresolved region with the lowest Shannon entropy, assigns it a state, then propagates the resulting constraints. For tilemaps, the simple tiled model can use tiles and adjacency data instead of a sample bitmap; a symmetry system can reduce adjacency lists for symmetrical tilesets. Constraints allow the method to work alongside other generative algorithms or manual creation. Its README describes uses in game level generation and pixel art, and notes it is less suited to large full-color textures. Higher-dimensional models include voxel examples. A browser-based interactive version is linked, and adaptations are listed for Unity, Unreal Engine 5, Godot 4, and Houdini. It supports Linux, macOS, web, and Windows, with PNG and TXT export formats.
Good
- Free plan; MIT-licensed software.
- Can generate tilemaps from tiles and adjacency data.
- Optional rotations and reflections expand input patterns.
- Adaptations listed for Unity, Unreal Engine 5, Godot 4, and Houdini.
- PNG and TXT export formats.
Watch out
- Generation can stop after reaching a contradiction.
- Large full-color textures are a less suitable use.
- Linux and macOS users are advised to download source from the repository.
Who it suits
It suits people creating game levels, pixel art, or tilemaps from sample patterns. It may be less suitable for generating large full-color textures.
Verdict
WaveFunctionCollapse offers pattern-based bitmap and tilemap generation, with controls for constraints and symmetry. Be aware that generation may fail on a contradiction, and the bundled release source has a stated limitation for Linux and macOS users.
The facts
Each one read from WaveFunctionCollapse's own pages, with the date it was checked.
Where it runs
- Browser version
- The README links to an interactive version that runs in a browser.checked 30 Sep 2026
- Platforms
- The project can be built from source with .NET Core for Windows, Linux, or macOS, and the README links to a browser version.checked 30 Sep 2026
What it does
- Constraints
- The algorithm supports constraints and can be combined with other generative algorithms or manual creation.checked 30 Sep 2026
- Generation method
- The algorithm repeatedly selects an unobserved region with the lowest Shannon entropy, collapses it to a state, and propagates the resulting information.checked 30 Sep 2026
- Higher dimensions
- The README describes WFC models in higher dimensions, including voxel examples.checked 30 Sep 2026
- Input augmentation
- The algorithm can optionally augment pattern data with rotations and reflections.checked 30 Sep 2026
- Integrations
- The README lists adaptations for Unity, Unreal Engine 5, Godot 4, and Houdini.checked 30 Sep 2026
- Intended uses
- The README describes the method as well suited to game level generation and pixel art, and less suited to large full-color textures.checked 30 Sep 2026
- License
- The software is under the MIT License; the license states that the provided image samples and tiles are not part of the software.checked 30 Sep 2026
- Limit
- Generation can reach a contradiction and stop without producing output; determining whether a valid bitmap exists is described as NP-hard.checked 30 Sep 2026
- Pattern matching
- The output is constrained to contain only NxN pixel patterns found in the input.checked 30 Sep 2026
- Possible failure
- Generation can stop if propagation creates a contradiction, leaving no valid coefficients for a pixel.checked 30 Sep 2026
- Purpose
- WaveFunctionCollapse generates bitmaps that are locally similar to an input bitmap.checked 30 Sep 2026
- Release limitation
- The release page advises Linux and macOS users to download source from the repository because the bundled release source uses a Windows-only System.Drawing library.checked 30 Sep 2026
- Release note
- The v1.00 release page says Linux and macOS users should download source from the repository because the bundled release source uses a Windows-only System.Drawing library.checked 30 Sep 2026
- Symmetry
- A tile symmetry system can shorten adjacency lists for tilesets with symmetrical tiles.checked 30 Sep 2026
- Tilemap generation
- The simple tiled model can be initialized with tiles and adjacency data instead of a sample bitmap.checked 30 Sep 2026
The company
- Founded
- 2016checked 28 Sep 2026
- Maker
- The repository license credits Maxim Gumin with copyright in 2016.checked 30 Sep 2026
- Maker location
- Maxim Gumin’s GitHub profile lists Helsinki.checked 30 Sep 2026
Alternatives to WaveFunctionCollapse
- 1

World Machine
Free planLinuxmacOSWindows7.6$119 one-time - 2
Heightmap Level Generator
Free planOpen sourceWebSelf-hostedWindows7.2Free plan - 3

Gaea
Free planWindows6.8$99 one-time - 4
Infinity Generation
Free planAPILinuxmacOSWindows6.8Free plan - 5
Voxel Plugin
Free planAndroidmacOSWindows6.8$349 one-time - 6
L3DT
Free planLinuxWindows6.7$34.95 one-time
