최상위 10_Wiki/Topic_*였던 4개 카테고리 폴더를 10_Wiki/Topics/Topic_* 로 재배치.
콘텐츠 변경 없음(순수 폴더 이동) — Topics/ 하위 나머지 폴더는 이미 지난 커밋에서
전부 정리된 상태(잔존 항목은 에이전트 운영 상태 및 사용자가 보존을 요청한
업데이트0615/무제 3.canvas 뿐).
"매 grammar + constraint = playable layout". Procedural level geometry 는 매 1980s Rogue 의 BSP 부터 매 2010s Spelunky 의 room template, 매 2020s Minecraft / No Man's Sky / Townscaper 의 WFC, 매 2026 ML-assisted hybrid (Pixar's RayBend, Nvidia GANverse) 까지 매 evolution. 매 핵심 trade-off: 매 controllability ↔ matrix variety.
매 핵심
매 algorithm families
BSP / partition: Rogue, NetHack — 매 simple, 매 grid-only.
Cellular automata: Cave generation — 매 organic shape.
Random walk / drunkard: 매 cave / path.
Template + stitching: Spelunky, Enter the Gungeon — 매 controllable.
Wave Function Collapse (WFC): Townscaper, Bad North — 매 high constraint.
ROOM_TEMPLATES={"side":["....","..S.","....",".###"],"drop":[".S..","....","###.","...."],"trap":[["X"ifrandom.random()<.1else"."for_inrange(4)]for_inrange(4)],}defbuild_level(plan):"""plan: 4×4 grid of (template_kind)."""return[ROOM_TEMPLATES[kind]forrowinplanforkindinrow]
언제: 매 roguelike / sandbox / open-world 의 generation system, 매 designer 의 매 toolkit, 매 controllability ↔ variety trade-off discussion.
언제 X: 매 highly-authored linear narrative — 매 PCG 의 cost > benefit.
❌ 안티패턴
No validation: 매 unreachable goal / 매 closed-off key item.
Over-randomization: 매 every tile random = 매 chaos, 매 design intent X.
No reproducibility: 매 seed 의 expose 의 X — 매 bug repro / 매 speedrun 의 X.
🧪 검증 / 중복
Verified (Shaker / Togelius "Procedural Content Generation in Games" 2016; WFC paper Gumin 2016; Spelunky postmortem GDC 2014).