1996년 출시된 이드 소프트웨어(id Software)의 전설적인 1인칭 슈팅 게임 퀘이크(Quake)가 최신 프로그래밍 언어 러스트(Rust)로 포팅되어 웹 브라우저에서 구동되는 'Quake-SRP' 프로젝트로 부활했습니다. 이 프로젝트는 원본 퀘이크의 GPL 소스 코드를 러스트로 안전하게 재작성하여 웹어셈블리(WASM) 환경에서 소프트웨어 렌더링 방식으로 실행됩니다. 덕분에 별도의 GPU나 복잡한 의존성 설치 없이 웹 브라우저만으로 퀘이크를 즐길 수 있게 되었습니다.
Quake-SRP는 셰어웨어(Shareware) 버전의 에피소드 1을 기본으로 포함하고 있으며, 사용자가 보유한 원본 퀘이크 데이터 파일(예: id1/pak1.pak)을 웹 페이지에 끌어다 놓는 방식으로 에피소드 2~4와 확장팩까지 플레이할 수 있습니다. WASD 키와 마우스 조작, 게임패드를 모두 지원하며, 1996년 원작의 조작 방식인 'Classic' 프리셋과 포트 자체의 개선된 설정인 'slop' 프리셋을 선택할 수 있습니다. 특히, 원작과의 픽셀 단위 시각적 일치 여부를 검증하는 도구까지 갖춰 높은 완성도를 자랑합니다. 제작자는 이 프로젝트에 약 4개월이 소요되었으며, 대규모 언어모델(LLM)의 도움을 받아 러스트 코드를 작성했다고 밝혔습니다.
이 프로젝트는 단순히 고전 게임을 다시 즐기는 것을 넘어, 러스트와 웹어셈블리가 가진 강력한 잠재력을 보여주는 사례로 주목받고 있습니다. C/C++로 작성된 기존 소프트웨어를 러스트로 안전하게 포팅하고 웹 환경에서 실행할 수 있음을 입증한 것입니다. 이는 향후 웹 기반 애플리케이션 개발에 있어 성능과 보안을 동시에 잡을 수 있는 새로운 가능성을 제시하며, 특히 복잡한 클라이언트 설치 없이도 고성능 애플리케이션을 브라우저에서 구동하는 시대를 앞당길 수 있음을 시사합니다. 또한, LLM이 개발 생산성을 혁신적으로 향상시키는 도구로서 활용될 수 있음을 보여주는 흥미로운 예시이기도 합니다.