xandergos/terrain-diffusion
Procedural generation with diffusion models (SIGGRAPH '26)
What it solves
Terrain Diffusion 은 무한하고 결정적이며 랜덤 액세스가 가능한 지형을 실시간으로 생성하기 위한 학습 기반 Perlin 노이즈 대안을 제공합니다. 단순한 절차적 노이즈를 넘어 고충실도, 현실적인 행성 지형 및 기후 데이터를 생성하고, 경계 없는 세계에서도 일관성을 유지합니다.
How it works
시스템은 계층적인 확산 모델 스택을 사용합니다. 먼저 "거친 지도"(절차적으로 생성하거나 손으로 그린)를 준비하여 세계의 전반적인 레이아웃을 정의합니다. 이후 확산 모델이 이 거친 스케치를 고해상도 높이맵(예: 30 m/픽셀) 및 기후 데이터로 변환합니다.
핵심은 InfiniteDiffusion이라는 프레임워크로, 확산 샘플링을 지연(lazy)하고 무한하게 만들 수 있습니다. 이를 통해 무한 세계에서 어떤 지점이든 $O(1)$ 랜덤 액세스가 가능해지며, 전체 맵을 미리 생성할 필요 없이 시드 일관성(결정성)을 유지합니다.
Who it’s for
- Game developers: 높은 지역 변동성과 디테일을 가진 오픈 월드 환경을 만드는 개발자.
- Worldbuilders: 현실적이고 대규모 행성 지리를 중점으로 하는 제작자.
- Technical artists: Azgaar's Fantasy Map Generator와 같은 툴에 AI 생성 지형을 통합하고자 하는 기술 아티스트.
Highlights
Infinite, Deterministic Generation: InfiniteDiffusion 알고리즘을 사용해 동일한 시드가 어떤 좌표에서도 동일한 지형을 생성하도록 보장합니다.
Causal Conditioning: 고도, 온도, 강수량 맵을 조건으로 사용해 지형 생성을 유도합니다.
Multi-Resolution Models: 플레이 가능한 세계(30 m 해상도)와 현실적인 세계 구축(90 m 해상도)을 위한 특화 모델을 제공합니다.
Integration Tools: Azgaar Fantasy Map JSON 내보내기를 GeoTIFF로 변환하는 컨버터와 Minecraft 월드 제너레이터를 교체하는 모드를 포함합니다.