Алгоритм Wave Function Collapse (WFC) генерирует растровые изображения, сохраняя локальную сходство с исходным входом, где NxN паттерны присутствуют в выходных данных так же часто, как и в входе. Метод имитирует квантовую механику: каждая пиксельная область находится в суперпозиции цветов до момента «наблюдения», когда энтропия зоны минимизируется и волновая функция коллапсирует в определённое состояние. Этот подход реализуется на множестве языков, включая C++, Python, Rust, Kotlin, Java и Go, а также адаптирован для движков Unity, Unreal Engine 5, Godot 4 и Houdini. Программа WFC используется для генерации уровней в играх Bad North, Caves of Qud, Dead Static Drive и Townscaper, где она решает задачу удовлетворения ограничений с высокой эффективностью.
Исходный метод обеспечивает сильное соответствие условиям совместимости, гарантируя, что в выходе не появляются новые паттерны, но не всегда удовлетворяет критерий равной вероятности распределения, что требует сочетания с алгоритмами типа ConvChain для получения идеального покрытия. WFC превосходит методы синтеза текстур по Paul Harrison в работе с длинными корреляциями, например, генерацией кирпичных стен с выровненными рядами, хотя и требует больше вычислительных ресурсов. Для ускорения процесса были внедрены улучшения от Mathieu Fehr и Nathanael Courant, а также использование симметрии плиток для сокращения перебора смежностей. Алгоритм поддерживает работу в трех измерениях, где одна ось может быть временем, позволяя моделировать клеточные автоматы, и может применяться для создания бесконечных городов, генерации лабиринтов и даже кодирования текстовых сообщений внутри текстур, аналогично штрих-кодам. Разработчики создали множество плагинов и библиотек, интегрируя WFC в редакторы ассетов для Unity, Unreal Engine и Godot, а также реализовали его на GPU через PyOpenCL для параллельной обработки всех узлов сетки.
Существуют специальные техники для обеспечения связности структур, такие как метод «выдалбливания» блоков, и гибридные подходы, сочетающие WFC с marching cubes на нерегулярных сетках. Также были созданы инструменты для стилизованной генерации, имитирующие работы Мунсаура или игры Zachtronics, а приложения для рисования на планшетах используют WFC для создания процедурных узоров. Исследования показывают, что алгоритм может сталкиваться с противоречиями, но на практике это случается редко, так как задачи определения существования решения часто NP-сложны, однако эвристики минимальной энтропии делают процесс надежным. Команда Microsoft Azure и другие исследователи изучают применение WFC в машинном обучении, а также для создания аргументов для агентов обучения с подкреплением. Проекты включают как консольные приложения, так и интерактивные веб-версии на itch.io, где пользователи могут наблюдать процесс коллапса волновой функции в реальном времени, а также коммерческие ассеты для Unity и плагины для Unreal Engine.