Claude를 활용해 퀘이크(1996)를 고퀄리티 VR 게임으로 재탄생시켰습니다!
I used Claude to turn Quake (1996) into a first-class VR experience!
핵심 요약
Claude AI 에이전트를 활용해 퀘이크 1을 몰입감 넘치는 VR 모드로 완벽하게 이식했습니다.
- VR 모드 구현 — 무기 조작, 근접 전투, 래그돌 물리 효과 등 네이티브 VR 경험 제공
- AI 개발 워크플로우 — Claude Code 에이전트가 작업 분담 및 테스트를 자동화하여 개발
- 기술적 특징 — C++23, OpenXR, Box3D 물리 엔진을 사용하여 원작의 확장성을 유지
- 오픈 소스 공개 — GitHub를 통해 퀘이크 VR 모드 소스 코드와 트레일러 공개
Quake VR: UNLEASHED는 내가 최근에 내놓은 Quake용 무료 오픈소스 VR 모드다. 그냥 대충 만든 "스테레오 카메라" 포트가 아님. 처음부터 VR 전용으로 만든 것처럼 느껴지게끔 공들였다. 무기는 직접 손으로 들고 조준하고, 재장전도 손으로 직접 해야 하며, 몸에 홀스터링도 가능함. 근접 공격, 패링, 난간 오르기, 물리 오브젝트 던지기나 쌓기도 되고, 적들은 래그돌이라 밀치거나 유도 기술로 던져버리고 사지를 절단할 수도 있다.
오리지널 캠페인이랑 공식 확장팩 전부, 그리고 커스텀 맵까지 다 돌아감.

GitHub: https://github.com/vittorioromeo/quakevr
기술 정보:
-
엔진: Ironwail(빠르고 현대적인 Quake 소스 포트)을 엄청나게 뜯어고친 포크 버전임. VR 레이어는 업스트림 코드랑 최대한 겹치지 않게 분리해 놨다.
-
VR 라이브러리: OpenXR 사용. Virtual Desktop을 통해 Quest 3에서 테스트 완료.
-
VR 전용 코드는 std 대신 내 자체 라이브러리(Zancle)를 쓴 C++23으로 짰고, clang-cl로 빌드함.
-
물리: 래그돌이랑 오브젝트, 그리고 비틀거리거나 벽을 짚고, 물에서 허우적대다가 다시 일어나는 "액티브" 래그돌 구현을 위해 Box3D 사용.
-
게임플레이는 여전히 QuakeC(fteqcc로 컴파일) 기반임. 새로운 내장 함수들을 추가해서 기존 모드나 맵들도 그대로 잘 돌아간다.
-
맵 재조명(relighting)이랑 유저가 만든 지오메트리 베이킹을 위해 ericw-tools 통합.
개발 방식: 지난 몇 달간 짠 코드 대부분은 LLM 에이전트(Claude Code)가 썼다. 나는 헤드셋 쓰고 테스트하면서 음성 메모를 남김. 그럼 코디네이터 에이전트가 Whisper로 로컬에서 받아쓰고, 작업을 쪼갠 다음에 각자 git 워크트리를 가진 워커 에이전트들을 돌리는 식임. 워커들은 게임을 빌드하고 헤드리스 "모의 VR" 테스트 하네스(스크립트로 제어되는 손, 머리, 컨트롤러)로 변경 사항을 검증한다. 그다음 코디네이터가 리베이스, 빌드, 스모크 테스트를 거쳐 배포하고, 내가 VR 안에서 체크리스트를 하나씩 지워나가는 방식임. 나는 코드 리뷰하고, 설계 결정 내리고, 조작감이나 멀미 테스트 같은 거 전담한다. 에이전트끼리 서로 머지된 기능들을 리뷰하기도 함.
VR 설계나 엔진 작업, 아니면 에이전트 워크플로우 관련해서 궁금한 거 있으면 뭐든 물어봐라.



