
한 문장의 마법: 처음부터 끝까지 스스로 살아 움직이는 AI 샌드박스 만들기
문장 하나를 입력하자마자 거대하고 상호작용 가능한 2D 픽셀 아트 세계가 눈앞에 펼쳐지는 상상을 해보세요. 타일 매핑도, 수천 줄의 NPC 대사 작성도, 복잡한 상태 추적도 필요 없습니다.
오픈 소스 AI 기반 세계 생성 및 시뮬레이터인 WorldX를 사용하면 이는 더 이상 상상이 아닌 현실입니다. WorldX는 생성형 AI와 컴퓨터 비전(CV), 그리고 멀티 에이전트 시뮬레이션을 결합하여, 텍스트 설명을 인간의 개입 없이 캐릭터들이 스스로 소통하며 자신만의 서사를 만들어가는 샌드박스 환경으로 즉시 변환합니다.

WorldX 내부 들여다보기: 하나의 프롬프트가 자율적인 현실로 구현되는 과정
기존의 게임 개발은 하드코딩된 스크립트와 경직된 행동 트리에 크게 의존해 왔습니다. WorldX는 다음과 같은 2단계 파이프라인을 통해 이러한 패러다임을 완전히 대체합니다.
- 알고리즘 기반 맵 생성: 프롬프트를 입력하면 Orchestrator LLM이 텍스트를 구조화된 JSON 레이아웃으로 변환하고, 이미지 생성 모델이 글로벌 맵을 제작합니다. 창의적인 AI 아트와 정밀한 게임 메커니즘 사이의 간극을 메우기 위해, WorldX는 '오버레이 주석 + 차분 비전(differential vision)'이라는 스마트한 기술을 사용합니다. 이를 통해 상호작용 구역과 충돌 경계를 정밀하게 태그하여 단순한 픽셀 이미지를 이동 및 상호작용 가능한 게임 그리드로 변환합니다.
- 멀티 에이전트 오케스트레이션: 맵이 생성되면 고유한 프로필, 동기, 기억을 가진 캐릭터(NPC)가 생성됩니다. 시뮬레이션 LLM에 의해 구동되는 이 캐릭터들은 단순히 제자리에 머물지 않습니다. 환경을 능동적으로 인식하고, 개인 일기에 사건을 기록하며, WebSocket을 통해 서로 메시지를 주고받고, 주변 상황에 따라 자신의 목표를 역동적으로 수정합니다.
쇼케이스: 프롬프트 하나로 5분 만에 살아 숨 쉬는 해적 섬 만들기
처음부터 라이브 시뮬레이션을 얼마나 쉽게 설정하고 실행할 수 있는지 살펴보겠습니다.

1단계: 환경 설정 및 API 키 구성
먼저 저장소를 복제하고 종속성을 설치합니다:
Bash
plaintext1git clone https://github.com/YGYOOO/WorldX.git 2cd WorldX 3npm install
시뮬레이션을 실행하려면 LLM과 이미지 생성 모델에 대한 접근 권한이 필요합니다.
💡 개발자 노트: 오케스트레이션, 시뮬레이션, 이미지 생성을 위해 4개의 서로 다른 AI 플랫폼에 가입하고 각각의 API 키를 관리하는 대신, 이 단계에서는 AtlasCloud 통합 API 키를 사용합니다. 하나의 키로 여러 모델(추론용 DeepSeek, 에이전트 대화용 표준 LLM 등)에 손쉽게 요청을 보낼 수 있으며, 환경 변수를 여러 번 업데이트할 필요가 없습니다.
.env 파일을 설정하세요:
코드段
plaintext1PORT=3000 2ATLASCLOUD_API_KEY=your_atlascloud_key_here 3# 통합 게이트웨이를 구성하여 오케스트레이터 및 시뮬레이션 쿼리를 원활하게 라우팅하세요
2단계: 마법의 프롬프트 입력
npm run dev를 사용하여 서버를 실행하고 로컬 대시보드를 엽니다. 생성 콘솔에 다음 한 문장의 프롬프트를 입력하세요:
"선장이 저주받은 보물을 숨겨놓은 해적 섬. 그리고 선원 중 한 명인 배신자가 자정 전에 그 보물을 몰래 훔치려 한다."
3단계: 진화하는 시뮬레이션 관찰
Generate를 클릭하세요. 이후 5분 동안 WorldX는 백그라운드 파이프라인을 실행하여 전체 맵을 출력하고, 캡틴 블랙우드, 일등 항해사 토마스(배신자), 보급관 엘레나 등 세 명의 주요 에이전트를 초기화합니다.
다음은 5분간의 라이브 테스트 동안 진행된 자율 시뮬레이션의 타임라인입니다:
- 01:15 (맵 생성 완료): 선술집, 해안가, 숨겨진 동굴 구역이 완비된 픽셀 해안 섬이 나타납니다.
- 02:30 (첫 상호작용): 토마스가 선술집으로 이동하여 엘레나에게 말을 걸며, 선장의 보물 상자 열쇠 위치를 알고 있는지 떠보기 시작합니다.
- 03:45 (갈등 발생): 캡틴 블랙우드가 제한 구역인 동굴 근처를 서성이는 토마스를 발견합니다. 시뮬레이션 LLM이 블랙우드의 일기를 업데이트합니다: "토마스가 해안가 근처에서 이상하게 행동한다. 경계를 강화해야겠다."
- 05:00 (클라이맥스): 블랙우드가 동굴 근처에서 토마스와 대치합니다. WebSocket을 통해 팽팽한 대화가 오가며 두 에이전트의 관계 상태가 "적대적"으로 변경됩니다.
이번 실행의 성능 및 비용 지표:
- 총 맵 생성 시간: 42초
- 평균 에이전트 의사결정 지연 시간: 1.2초
- 총 토큰 소모량 (5분 실행): 약 24,500 토큰 (오케스트레이션, 일기, 실시간 대화 포함)
데이터 및 아키텍처 분석: WorldX의 내부 구조
WorldX의 효율성은 기존 게임 엔진과 비교했을 때 수동 설정을 얼마나 최소화했는지에서 나옵니다.
| 항목 / 기능 | 기존 샌드박스 설정 | WorldX 파이프라인 |
|---|---|---|
| 맵 생성 시간 | 수 시간/수 일 (수동 타일링 또는 복잡한 절차적 코딩) | 60초 미만 (AI 및 CV를 통한 프롬프트 기반 맵 그리드 생성) |
| NPC 대사 경로 | 고정된 분기 트리 (수백 줄의 텍스트 작성) | 역동적이고 제한 없음 (LLM이 실시간으로 생성) |
| 충돌 매핑 | Tiled와 같은 에디터에서 수동 경계선 그리기 | 자동화 (기능적 컬러 마스크 및 Sharp 처리를 통해) |
| 상태 추적 | 중앙 집중식 대규모 데이터베이스 상태 | 탈중앙화된 일기 (단기 및 장기 기억 스니펫으로 저장) |
FAQ: WorldX에 대해 알아야 할 모든 것
WorldX는 AI가 생성한 맵에서 캐릭터 충돌을 어떻게 처리하나요?
지능적인 이중 레이어 접근 방식을 사용합니다. AI가 먼저 시각적 맵을 생성하면, 비전 기반의 보조 루프가 그 위에 반투명 컬러 마스크를 적용하여 이동 가능 구역과 불가능 구역을 구분합니다. 핵심 엔진은 이러한 마스크를 이진 그리드 행렬로 변환하며, 내장된 경로 탐색 라이브러리(EasyStar.js)가 이를 사용하여 캐릭터의 이동을 부드럽게 안내합니다.
로컬 LLM을 사용하여 완전히 오프라인에서 WorldX를 실행할 수 있나요?
네, 가능합니다. 프레임워크가 표준 REST 및 WebSocket 프로토콜을 통해 통신하므로, 베이스 URL을 Ollama나 Llama.cpp 등을 실행하는 로컬 추론 제공자로 쉽게 변경할 수 있습니다. 맵 오케스트레이션에는 높은 수준의 JSON 출력 능력이 요구되므로, 안정적인 실행을 위해 매개변수 규모가 큰 양자화 모델을 사용하는 것을 권장합니다.
에이전트의 기억이 너무 길어지면 어떻게 되나요?
WorldX는 구조화된 스냅샷 시스템을 사용하여 컨텍스트 윈도우가 비대해지는 것을 방지합니다. 매 턴마다 전체 기록을 전달하는 대신, 시뮬레이션 아키텍처가 과거 사건을 간결한 일기 항목과 관계 상태 플래그로 압축하여 에이전트 개별 루프를 빠르고 비용 효율적으로 유지합니다.







