Using WaveFunction Collapse to make monstrous bodies! A project by Devi Acharya, Rehaf Aljammaz, and Mirek Stolee
This is a set of rules used with Maxim Gumin's WFC in C#.. It uses Gumin's SimpleTiledModel as a base. We add our tileset and rules for placing those tiles.
Produces a NxN image made of 32x32px tiles.
We have provided two tilesets - zombie and centipede.- Open samples.xml
- Edit parameters: which monsters to output, width and height of output in tiles
- In root directory, enter command: dotnet run WaveFunctionCollapse.csproj
- After running, output will appear in the root directory.
The rules for the tiles are in ./samples/"MonsterName"/data.xml Tiles are assigned a symmetry value depending on their number of unique rotations. For example, the empty tile is assigned "X" because its orientations do not matter. The arm has 4 unique rotations, so it is assigned the letter "L". These symmetry values automatically generate implicit placement rules from the neighbor rules you set in the next section.
Then, tiles are assigned neighbor rules that determine which tiles and in which orientations can be next to each other. By saying which tiles can be on the left and right of each other, the vertical rules are implied using the symmetry values set above. A tile with no number after it is in its original orientation, and the 1-3 variants represent subsequent 90 degree turns counter-clockwise.Here is our original tileset without any rules:
After updating rules, we had some issues with arms before making some changes to the symmetry values:To make your own tilesets, you need the following tiles in the .png format. Tiles must be oriented the same way as ours and placed in ./samples/"YourMonsterName"
















