출처
- source_url: https://discuss.pytorch.kr/t/opengame/10697
- author: 9bow
- published: 2026-06-22
- raw: raw source:
web-2026-06-29-opengame-playable-web-game-agent-framework
요약
OpenGame은 고수준 프롬프트 하나를 받아 플레이 가능한 웹 게임을 끝에서 끝까지(end-to-end) 생성하는 오픈소스 에이전트 프레임워크로, 홍콩중문대학교 MMLab(CUHK MMLab) 연구진이 공개했다. 저자들은 게임 개발이 게임 엔진·실시간 루프·여러 파일에 걸쳐 얽힌 상태를 동시에 조율해야 하는 영역이라, 코드 에이전트가 고립된 프로그래밍 과제는 잘 풀어도 고수준 설계로부터 완전히 플레이 가능한 게임을 만들려 하면 파일 간 불일치, 끊어진 씬 연결, 논리적 비일관성 앞에서 무너진다는 문제를 지적한다. OpenGame은 이를 “프롬프트로부터 끝까지 웹 게임을 만드는 최초의 오픈소스 에이전트 프레임워크”라고 설명하며, 재사용 가능한 게임 스킬(Game Skill), 게임 엔진 특화 코드 LLM인 GameCoder-27B, 플레이 가능성을 채점하는 평가 파이프라인 OpenGame-Bench 세 요소로 구성된다.
에이전트는 게임 스킬로 부트스트랩되는데, canvas·Phaser·three.js 같은 엔진과 안정적 프로젝트 구조를 고르는 템플릿 스킬과, 게임을 샌드박스에서 실행해 통합·콘솔 오류와 깨진 상호작용을 잡아 플레이 가능해질 때까지 체계적으로 해결하는 디버그 스킬로 나뉜다. 게임 생성 자체는 논문이 “순진한 단대단 생성은 논리 환각, 맥락 표류, 깨지기 쉬운 통합으로 무너진다”고 지적하며 설계한 6단계 워크플로로 진행된다. ① 물리 우선 분류(Physics-First Classification)로 게임을 platformer·top_down·grid_logic·tower_defense·ui_heavy 다섯 아키타입에 매핑하는 초기화·분류, ② 선택된 아키타입의 모듈 코드베이스를 복사하는 스캐폴딩, ③ 아키타입별 API 제약을 반영한 기술 게임 디자인 문서(GDD) 생성, ④ 배경·캐릭터 애니메이션·오디오·타일맵을 만드는 멀티모달 에셋 합성, ⑤ API 요약→소스 파일→구현 가이드 순으로 읽는 3단 읽기 전략과 템플릿 메서드 패턴을 쓰는 맥락 인식 코드 구현, ⑥ npm run build·npm run test를 헤드리스 브라우저에서 실행해 실패 시 반복 수리하는 검증·자기 교정이다. 각 단계 상태는 전용 todo_write 도구로 추적된다.
프레임워크를 떠받치는 모델 GameCoder-27B는 Qwen3.5-27B 백본 위에 지속적 사전학습(CPT)→지도 미세조정(SFT)→실행 기반 강화학습 3단계로 학습됐다. CPT는 GitHub의 Phaser·JS/TS 게임 저장소로 게임 루프·물리·상태 관리 사전 지식을 쌓고, SFT는 엔진 API·스캐폴딩·버그 수정 워크플로 합성 데이터를, 강화학습은 충돌 감지·상태 기계 전이 같은 단일 파일 모듈을 합성시켜 단위 테스트 통과율로 보상을 계산한다. 평가 도구 OpenGame-Bench는 다섯 장르 150개 자기완결적 게임 프롬프트로 생성된 게임을 헤드리스 브라우저 실행과 VLM 심판을 통해 빌드 건전성·시각적 사용성·의도 정렬 세 지표(0-100)로 채점하며 시드 3회 평균을 낸다. Claude Sonnet 4.6을 추론 엔진으로 결합한 OpenGame은 빌드 건전성 72.4, 시각적 사용성 67.2, 의도 정렬 65.1로 새 SOTA를 세우며 가장 강력한 기준선 Cursor(Claude Sonnet 4.6)를 각 지표에서 5.6~6.2점 앞섰다. GameCoder-27B 단독으로도 63.9/57.0/54.1을 기록해 모든 직접 LLM 기준선을 빌드 건전성·의도 정렬에서 앞선다. 다만 저자들은 전체 OpenGame조차 가중 메커니즘 요구사항의 약 34.9%를 완전히 충족하지 못한다고 밝혀, 모호한 자연어를 일관된 멀티파일 시스템으로 옮기는 일의 본질적 어려움을 함께 짚는다.
OpenGame은 qwen-code의 에이전트 런타임·CLI 구조 위에 게임 스킬, GameCoder-27B 통합, OpenGame-Bench 도구를 더해 만들어졌고 렌더링·메커니즘에는 Phaser를 사용한다. 소스 설치(git clone → npm install → npm run build → npm link)로 opengame 명령을 노출하며, 헤드리스 CLI로 opengame -p "..." --yolo처럼 프롬프트 하나로 게임을 생성한다. 승인 모드는 자동으로 auto-edit으로 오르고 셸 명령 실행은 --yolo(--approval-mode yolo)로 명시적으로 허용해야 하며, OpenAI 호환 API를 지원해 로컬 GameCoder-27B로도 교체할 수 있다. Apache License 2.0으로 공개되어 있다.
관련 위키
원문 보존 위치
원문 전체는 raw source: web-2026-06-29-opengame-playable-web-game-agent-framework에 source_url과 함께 저장되어 있다.