프로젝트 소개
# WaveFunctionCollapse
이 프로그램은 입력 비트맵과 지역적으로 유사한 비트맵을 생성합니다. 지역적 유사성이란 출력에 입력에 존재하는 NxN 픽셀 패턴만 포함되고, 출력의 패턴 분포가 입력과 유사하다는 것을 의미합니다. 알고리즘은 출력을 가능한 상태의 중첩 상태로 초기화한 후, 가장 낮은 섀넌 엔트로피를 가진 영역을 반복적으로 관측하고 제약 조건을 전파하여 결국 확정된 상태로 수렴합니다. 모순에 부딪힐 수 있지만 이를 피하는 것은 NP-hard 문제이며, 실제에서는 드물게 발생합니다.
이 저장소에는 핵심 알고리즘, 예제, 문서가 포함되어 있습니다. 겹치는 모델과 단순 타일링 모델을 모두 지원하며, 대칭, 제약 조건, 고차원 옵션을 제공합니다. 코드는 외부 의존성 없이 .NET Core를 사용하는 C# 콘솔 애플리케이션으로 작성되었으며, `dotnet run` 또는 `dotnet publish`로 빌드할 수 있습니다. 이 프로젝트는 C++, Python, Rust, JavaScript 등 다양한 언어로의 이식과 Unity, Unreal Engine, Godot 같은 게임 엔진에 대한 적응을 이끌어냈습니다. Bad North, Caves of Qud, Townscaper와 같은 상용 게임에서 사용되었으며, 학술 연구로 이어졌습니다. README에는 ConvChain과 텍스처 합성 같은 관련 알고리즘, 상세한 알고리즘 설명, 기존 연구에 대한 참고 문헌도 다룹니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.