Skip to content
The WaveFunctionCollapse algorithm in Julia.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
samples
src Fill in usage.ipynb. Jan 2, 2019
.gitignore
LICENSE.md
Manifest.toml
Project.toml
README.md
usage.ipynb

README.md

WaveFunctionCollapse

WaveFunctionCollapse procedurally generates arbitrarily sized images based on a single example image. It is based on https://github.com/mxgmn/WaveFunctionCollapse.

->

Installation

Start Julia. Add WaveFunctionCollapse.jl with

] add https://github.com/roberthoenig/WaveFunctionCollapse.jl

Usage

Start Julia.

> using WaveFunctionCollapse
# ...warnings...
> generate("samples/Flowers.png")
# output Array{RGB{Float32}, 2}

For more details and example, see

Credits

The WaveFunctionCollapse algorithm was invented by mxgmn. Their WaveFunctionCollapse repository contains the original algorithm, and in particular the samples/ directory that is also included in this repository. Thus, I include the original credits:

Some samples are taken from the games Ultima IV and Dungeon Crawl. Circles tileset is taken from Mario Klingemann. Idea of generating integrated circuits was suggested to me by Moonasaur and their style was taken from Zachtronics' Ruckingenur II. Cat overlapping sample is taken from the Nyan Cat video, Qud sample was made by Brian Bucklew, Magic Office + Spirals samples - by rid5x, Colored City + Link + Link 2 + Mazelike + Red Dot + Smile City overlapping samples - by Arvi Teikari. Summer tileset was made by Hermann Hillmann. Voxel models were rendered in MagicaVoxel.

You can’t perform that action at this time.