{ video game programmer }
Model Synthesis / Wave function collapse
Different projects implementing the WFC algorithm for procedural generation.
I implemented Wave Function Collapse in Unity for cell-based level generation, focusing on constraint propagation, pattern entropy, and visualizing the generation process at runtime.
I kept returning to the algorithm through several projects and ProcGen jams, using each iteration to improve both my understanding of it and the architecture around it.
I discovered it with Oskar Stålberg's work, and Marian42's implementation helped me start getting into it. Although the algorithm was popularized by Maxim Gumin's WFC algorithm, actually it's a reimplementation of the Model Synthesis algorithm by Paul Merrel.
WFC was created in 2016, and Model Synthesis in 2007. The two algorithms are nearly identical and produce very similar results, but model synthesis focused more on generating 3D models instead of 2D textures.
To share my experience with procedural generation, I authored and self-produced a comprehensive, step-by-step ~10-hour YouTube course implementing the algorithm from scratch in Unity. The course covers a full end-to-end solution, with a strong emphasis on correctness, software architecture, and C# + Unity best practices.
The course is delivered in my native language (Catalan) and was a valuable learning experience in technical communication, teaching me how challenging it is to explain complex systems clearly, concisely, and engagingly while speaking directly to camera.
Other iterations and experiments with the algorithm:
And this one last experiment was inspired by catalan sculptor Xavier Corberó's architecture and the unbelievable labyrinthine home he designed throughout his life.