city_simple9f
parliament3
canyon_newer2
fractal
platform5
city_reflect_new
night6
castle12
spaceshipB
office3
fourHouse4
gpm
gadget3
pentOffice3
houses6
arches
coaster2
roads
domes6
library4
pipes
stairs
tree_yinyang2
yinyang_city3
tree_wheelchair2
wheelchair_city3
previous arrow
next arrow

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.