Punch Out Model Synthesis

 
 

Punch Out Model Synthesis (POMS) is a Constraint Based Tiling Generation (CBTG) algorithm, extending Merrell's modify in block Model Synthesis (MMS) and Gumin's Wave Function Collapse (WFC) algorithms. POMS can work on large grids with minimal requirements for initial setup state. Source can be found on GitHub at zzyzek/PunchOutModelSynthesis. A paper is available that goes into details and motivates about the algorithm which can be found on Github at zzyzek/PunchOutModelSynthesis-Paper. This project has a set of tools to automatically create tile sets and tile rule constraints from exemplar (2D) images as well as some example code to programatically generate 3D tilesets. For advanced users, there are a set of auxiliary web applications to allow for run visualization.