Model Synthesis
Model synthesis is a technique for generating large complex 2D and 3D shapes. It is inspired by texture synthesis. The code for model synthesis is available here written in C++ along with many examples. The first video below explains the basic algorithm. The second video shows some results. The third video shows how to extend the algorithm to generate complex shapes that don’t work on a regular grid.
WFC is Based on Model Synthesis
Wave Function Collapse (WFC) reimplements the model synthesis algorithm. WFC was created by Maxim Gumin in 2016. Model Synthesis was created in 2007. The two algorithms are nearly identical and produce very similar results. Here is a detailed comparison of the two methods. Model synthesis focused more on generating 3D models instead of 2D textures.
Papers
P. Merrell. Model Synthesis. Ph.D. Dissertation, University of North Carolina at Chapel Hill, 2009. (project, slides)
P. Merrell and D. Manocha. Model Synthesis: A General Procedural Modeling Algorithm. IEEE Transactions on Visualization and Computer Graphics, 2010.
P. Merrell and D. Manocha. Continuous Model Synthesis. ACM Transactions on Graphics, 2008. (video)
P. Merrell. Example-Based Model Synthesis. Symposium on Interactive 3D Graphics (i3D), 2007. (project, powerpoint, code)
P. Merrell and D. Manocha. Example-Based Curve Generation. Computers & Graphics, 2010.