AI 에이전트가 MCP 도구와 생성된 스킬을 통해 Unity를 제어하도록 지원하는 플러그인
mxgmn/WaveFunctionCollapse
Wave Function Collapse 알고리즘으로 입력 예시 하나와 국소적으로 비슷한 비트맵과 타일맵을 생성하는 C# 프로그램입니다.
- 스타
- 25,410
- 포크
- 1,368
- 열린 이슈
- 10
- 마지막 커밋
- 3일 전
어떤 프로젝트인가요?
WaveFunctionCollapse는 샘플 이미지 하나 또는 타일 세트에서 새 비트맵이나 타일맵을 생성합니다. 출력에는 입력에 등장한 NxN 픽셀 패턴만 포함되므로, 새로운 전체 배치를 만들면서도 예시와 국소적으로 비슷한 결과를 얻습니다. 이름은 가능한 상태가 중첩된 상태에서 하나의 확정된 상태로 붕괴한다는 개념에서 유래했지만, 알고리즘은 실제 양자역학 대신 실수 계수를 사용합니다.
알고리즘은 관측되지 않은 영역 중 엔트로피가 가장 낮은 곳을 반복해서 선택하고, 입력의 패턴 빈도에 따라 확정된 상태로 붕괴시킨 뒤, 그 결과로 생긴 제약을 출력 전체에 전파합니다. 어떤 셀에서 가능한 선택지가 모두 제거되면 모순이 발생해 실행이 실패하는데, 프로젝트에 따르면 실제로는 드문 일입니다. 저장소에는 픽셀 샘플용 overlapping model과 인접 규칙이 있는 타일 세트용 simple tiled model이 모두 포함되어 있으며, 타일 인접 목록을 줄이는 대칭 시스템도 제공합니다.
이 프로젝트는 .NET 기반 콘솔 애플리케이션으로, samples.xml을 통해 설정하고 output 폴더에 결과를 저장합니다. 게임과 픽셀 아트에서 절차적 레벨 및 텍스처 생성에 널리 사용되며, 다른 언어로 포팅된 버전도 많습니다.
핵심 기능
- 01입력 이미지 하나에 있는 NxN 패턴만 포함하는 출력 비트맵을 생성합니다.
- 02픽셀 샘플용 overlapping model과 타일 세트용 simple tiled model을 지원합니다.
- 03다음에 붕괴시킬 영역을 선택할 때 최소 엔트로피 방식을 사용합니다.
- 04인접 목록의 크기를 줄이는 타일 대칭 시스템을 포함합니다.
- 05samples.xml을 통해 설정하는 .NET 콘솔 애플리케이션으로 실행됩니다.
활용 사례
- 직접 만든 타일 세트로 게임 레벨이나 던전 배치를 생성합니다.
- 샘플 이미지와 비슷한 픽셀 아트 맵이나 텍스처를 만듭니다.
- 디자이너가 지정한 제약 조건을 적용해 절차적 생성을 프로토타이핑합니다.
- Wave Function Collapse 알고리즘을 연구하거나 가르칩니다.
토픽
자주 묻는 질문
- WaveFunctionCollapse은(는) 무엇인가요?
- Wave Function Collapse 알고리즘으로 입력 예시 하나와 국소적으로 비슷한 비트맵과 타일맵을 생성하는 C# 프로그램입니다. WaveFunctionCollapse는 샘플 이미지 하나 또는 타일 세트에서 새 비트맵이나 타일맵을 생성합니다. 출력에는 입력에 등장한 NxN 픽셀 패턴만 포함되므로, 새로운 전체 배치를 만들면서도 예시와 국소적으로 비슷한 결과를 얻습니다. 이름은 가능한 상태가 중첩된 상태에서 하나의 확정된 상태로 붕괴한다는 개념에서 유래했지만, 알고리즘은 실제 양자역학 대신 실수 계수를 사용합니다.
- WaveFunctionCollapse은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- WaveFunctionCollapse은(는) Other 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- WaveFunctionCollapse은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. WaveFunctionCollapse의 마지막 커밋은 2026년 10월 15일입니다.
- WaveFunctionCollapse은(는) 어디에 사용할 수 있나요?
- 직접 만든 타일 세트로 게임 레벨이나 던전 배치를 생성합니다. 샘플 이미지와 비슷한 픽셀 아트 맵이나 텍스처를 만듭니다. 디자이너가 지정한 제약 조건을 적용해 절차적 생성을 프로토타이핑합니다. Wave Function Collapse 알고리즘을 연구하거나 가르칩니다.
- WaveFunctionCollapse은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/mxgmn/WaveFunctionCollapse
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
AI가 생성한 들쭉날쭉한 픽셀 아트를 일관된 픽셀 그리드와 제한된 팔레트에 맞추는 Rust CLI 및 WASM 도구입니다.
게임 대화 실행을 위한 시나리오 형식 대화 시스템 Yarn Spinner의 공식 Unity 통합 패키지입니다.
생물학, 기후, 농업, 네트워크 등 여러 분야의 고품질 공개 데이터셋을 주제별로 엄선해 모아 둔 목록입니다.
인코딩, 포맷팅, 변환, 데이터 테스트를 위한 약 30가지 오프라인 도구를 담은 개발자용 데스크톱 스위스 아미 나이프입니다.
선택 영역, 웹캠 또는 스케치보드를 녹화하고 다양한 형식으로 내보내는 Windows 화면 녹화 도구입니다.