ResidualVM

ResidualVM은 고전적인 3차원 그래픽 어드벤처 게임을 현대 시스템에서 실행하기 위해 개발된 자유 소프트웨어 호환 게임 엔진 프로젝트다. 처음에는 LucasArts의 GrimE 게임 《Grim Fandango》와 《Escape from Monkey Island》를 재구현하는 데 중...

분류게임 엔진, 3D 어드벤처 게임 호환 실행기
프로젝트 성격원본 게임 엔진의 독립적 재구현
초기 목표GrimE 기반 게임의 현대 실행
주요 대상Grim Fandango, Escape from Monkey Island
후기 지원Myst III: Exile, The Longest Journey 등
기술 배경GrimE 및 3D 어드벤처 게임 엔진
주요 언어C++
그래픽스소프트웨어·OpenGL 등 재구현별
기본 배포Windows, Linux, macOS 등
프로젝트 통합2020년 10월 9일 ScummVM과 공식 합병
현재 개발ScummVM 엔진 모듈에서 유지보수
게임 자산원본 게임 데이터 별도 필요
소스 라이선스GNU GPL 계열의 자유 소프트웨어
통합 공식 발표ScummVM: A merger
역사적 소스ResidualVM GitHub
현행 소스ScummVM

ResidualVM은 고전적인 3차원 그래픽 어드벤처 게임을 현대 시스템에서 실행하기 위해 개발된 자유 소프트웨어 호환 게임 엔진 프로젝트다. 처음에는 LucasArts의 GrimE 게임 《Grim Fandango》와 《Escape from Monkey Island》를 재구현하는 데 중점을 뒀고 이후 《Myst III: Exile》·《The Longest Journey》 등 여러 엔진의 게임으로 지원 범위를 확대했다. 원본 상용 게임이 가진 파일과 실행 동작을 분석해 새 런타임으로 재현하는 프로젝트로, 원본 엔진 소스를 그대로 배포하는 제품은 아니다.[1]

ResidualVM이 등장한 배경에는 처음의 ScummVM이 주로 2D 포인트 앤 클릭 어드벤처 게임을 지원했다는 점이 있다. Grim Fandango처럼 3D 인물과 배경, 카메라·애니메이션 및 고유 스크립트 언어를 사용하는 게임은 다른 실행 기술이 필요했다. ResidualVM은 같은 고전 게임 보존 목표를 공유하면서 3차원 게임의 렌더링·입력 및 스크립트 처리를 전문적으로 개발한 자매 프로젝트였다.

엔진 재구현 과정에서는 게임 리소스의 포맷과 장면 구조, 캐릭터의 행동·대화 및 원작 스크립트의 명령을 분석한다. LucasArts의 GrimE 기술은 Lua 스크립트를 사용하고 3D 캐릭터와 고정된 배경을 결합하므로, 호환 실행기도 게임별 파일과 객체 모델을 정확히 처리해야 한다. 단순히 더 높은 해상도로 그래픽을 표시하는 것만으로는 게임의 퍼즐·진행·저장 동작이 재현되지 않는다.[2]

2020년 10월 9일 ScummVM과 ResidualVM은 공식 합병을 발표했다. 이때 Grim Fandango와 Escape from Monkey Island, Myst III: Exile, The Longest Journey 및 일부 개발 중 엔진의 지원 코드와 개발자들이 ScummVM으로 합류했다. 이후 ResidualVM은 별도 독립 제품으로 계속 개발되는 것이 아니라 ScummVM의 3차원 게임 지원 기술에 통합되는 형태로 유지된다.[3]

프로젝트의 역사적 저장소에는 과거 빌드·플랫폼 지원 정보가 남아 있지만 현대 컴파일러와 그래픽스·오디오 구현은 통합된 ScummVM 저장소를 기준으로 확인해야 한다. 일부 게임은 원본의 다양한 출시 버전·번역판, 하드웨어 기능에 따라 별도 처리 코드가 필요하다. 게임 데이터를 새로 배포하는 사업이 아니므로 적법하게 보유한 상용 게임 자료를 사용해야 한다.

ResidualVM 및 ScummVM 코드에는 자유 소프트웨어 라이선스가 적용되지만 지원 게임의 이미지·음악·대본과 상표권은 별도 권리를 가진다. ResidualVM을 명칭 변경만 거친 독자적인 현역 엔진으로 기록하는 대신 ScummVM으로 병합된 기술·조직적 계보를 설명하는 것이 정확하다. 이 프로젝트는 오래된 3D 어드벤처 게임의 실행 동작을 역공학해 보존한 중요한 사례다.[4]

역사

기술 계보와 개발 목표

아키텍처와 실행 모델

게임 객체 및 콘텐츠 모델

프로그래밍·스크립팅

렌더링과 그래픽스

입력·오디오·애니메이션

제작 도구와 게임 자산

운영체제·플랫폼 지원

라이선스와 원본 저작권

대표 게임과 영향

관련 문서

  1. ScummVM: ResidualVM 프로젝트의 공식 합병 안내 ↩
  2. ResidualVM 역사적 엔진 소스 ↩
  3. ScummVM 공식 발표: A merger ↩
  4. ScummVM 공식 프로젝트 ↩