Jedi Engine
Jedi Engine 또는 JEDI는 LucasArts가 《Star Wars: Dark Forces》(1995년)를 위해 개발한 2.5차원 1인칭 슈팅 게임 엔진이다. 이후 서부극을 배경으로 한 FPS 《Outlaws》(1997년)에 사용되면서 새로운 그래픽스·레벨·게임플레이 기능을 추...
| 분류 | 게임 엔진, 고전 2.5차원 1인칭 슈팅 게임 엔진 |
|---|---|
| 다른 표기 | JEDI, Jedi |
| 개발사 | LucasArts |
| 최초 대표 게임 | Star Wars: Dark Forces (1995년) |
| 후속 주요 작품 | Outlaws (1997년) |
| 초기 개발 시대 | 1990년대 중반 |
| 주요 렌더링 | DOS용 소프트웨어 렌더러 |
| 공간 표현 | 섹터·벽·포털 중심 2.5D 공간 |
| 게임플레이 | 1인칭 이동·전투, 문·엘리베이터·트리거 |
| 오브젝트 | 3D 환경과 스프라이트·애니메이션 객체 |
| 원본 플랫폼 | MS-DOS PC (게임별 이식판 존재) |
| 게임 자산 | GOB 아카이브, 레벨·오브젝트·스크립트 파일 |
| 원작 저작 도구 | LucasArts 내부 레벨·리소스 제작 환경 |
| 관련 엔진 | Sith Engine(1997년 Jedi Knight에 사용, 별개) |
| 현대 재구현 | The Force Engine (TFE) |
| TFE 최초 1.0 | 2022년 12월 19일 |
| TFE 현황 | Dark Forces 완전 지원, Outlaws는 개발·이식 진행 |
| 원본 엔진 소스 | 일반 공개되지 않은 독점 코드 |
| 원작 권리 | Lucasfilm/Disney의 상용 게임 데이터 |
| 현대 역공학 자료 | The Force Engine 소스 |
| 공식 보존 프로젝트 | The Force Engine |
Jedi Engine 또는 JEDI는 LucasArts가 《Star Wars: Dark Forces》(1995년)를 위해 개발한 2.5차원 1인칭 슈팅 게임 엔진이다. 이후 서부극을 배경으로 한 FPS 《Outlaws》(1997년)에 사용되면서 새로운 그래픽스·레벨·게임플레이 기능을 추가했다. 당시 DOS 기반 개인용 컴퓨터에서 입체적인 공간과 수직 이동, 캐릭터·적의 행동 및 이벤트 중심의 임무 구조를 효율적으로 실행할 수 있도록 설계됐다. 1997년 《Star Wars Jedi Knight: Dark Forces II》의 엔진인 Sith Engine과는 이름이 비슷하지만 서로 다른 기술이다.[1]
《Dark Forces》는 《DOOM》과 같은 시기에 등장한 1인칭 슈팅 게임이지만 공간 표현과 임무의 구성에 차이가 있다. Jedi 엔진은 게임 세계를 연결된 섹터와 벽·포털로 표현하고, 섹터별 바닥과 천장 높이, 문과 움직이는 엘리베이터·플랫폼 등을 처리한다. 개발자는 수직 위치가 달라지는 공간과 특수한 상호작용을 구성할 수 있으며, 적과 물체·장치의 상태는 게임의 진행 규칙에 따라 변경된다. 이렇게 기하 데이터를 일정한 구조로 제한하면서도 복잡한 임무를 구현할 수 있는 절충은 당시 소프트웨어 렌더링의 성능 제약과 연결된다.
초기 Jedi 엔진의 화면 출력은 GPU 가속이 아니라 CPU에서 수행하는 소프트웨어 렌더링을 중심으로 한다. 벽과 바닥·천장·스프라이트의 화면 투영과 가시성 판정, 텍스처·색상 표현을 계산하며 적·아이템과 여러 이펙트를 입체 공간 안에 배치한다. 개발자는 레벨의 섹터와 포털 관계를 설계하여 플레이어가 이동하는 방향에 따라 화면에 표시할 데이터를 정리할 수 있다. 원본 실행 환경에서 320×200 해상도를 사용한 고전적인 렌더링 경로는 후대의 재구현에서도 역사적 모드로 보존됐다.[2]
엔진은 장면 렌더링 외에도 플레이어의 이동과 점프·조준, 적 AI·무기·탄약, 충돌·트리거와 임무 진행을 관리한다. 레벨·리소스의 일부는 GOB 아카이브 및 게임 전용 파일 형식으로 배포됐으며 영상·오디오·게임 상태의 처리를 함께 포함한다. 레벨에는 문을 열거나 엘리베이터를 움직이고 사건을 실행시키는 데이터가 존재하고, 게임은 이를 해석하여 맵 안에서 동작을 변경한다. 단순히 정적인 3D 화면을 표시하는 시스템이 아니라 자료 파일·스크립트와 런타임 동작을 결합한 게임 제작 기반이었다.
1997년 《Outlaws》에서 Jedi 엔진은 서부 시대의 무기와 전투, 스나이퍼 조준 및 장전, 만화풍 컷신과 멀티플레이를 위한 기능으로 확장됐다. 현대 역공학 프로젝트는 《Outlaws》의 엔진 계통에 경사진 바닥, 중첩 섹터, 섹터별 색상 팔레트 등 개선된 공간·화면 표현이 포함되어 있다고 설명한다. 이 기능들은 이후 일부 《Dark Forces》용 사용자 맵 제작에서도 재현·확장 대상으로 고려되고 있다. 따라서 1995년 원본 Jedi와 1997년 개량판은 게임 데이터와 엔진 기능의 차이를 구분해서 설명해야 한다.[3]
The Force Engine(TFE)은 Jedi 엔진의 원래 DOS 실행 파일을 역공학하여 현대 운영체제에서 대체 실행할 수 있도록 만든 독립적인 프로젝트다. 원본 소스가 공개되지 않았기 때문에 게임 코드와 엔진 동작을 분석하고 새 코드를 작성하는 방식을 사용했다. TFE는 2022년 12월 19일 버전 1.0을 발표하면서 《Dark Forces》의 기본 캠페인과 모드 실행을 지원했고, 고해상도·와이드스크린, 마우스 시점 이동·개선된 컨트롤 등 추가 기능을 제공했다. 개발팀은 《Outlaws》 지원을 후속 2.0 목표로 두고 있으며, 이는 이미 모든 Outlaws 기능이 완성됐다는 뜻은 아니다.[4]
The Force Engine의 소스 트리는 원본에서 재구현한 게임 규칙과 Jedi 엔진 시스템, 자산 로더 및 공통 프레임워크를 구분한다. 역공학한 부분과 자체 개발한 추가 코드·도구는 별도의 저작권 조건이 적용될 수 있고, 원래 LucasArts 게임의 그래픽과 음악·영상·맵 데이터 역시 상용 저작물이다. TFE로 정식 게임을 플레이하려면 적법하게 보유한 원본 게임 데이터가 필요하다. 원본 Jedi 엔진 전체가 공식적으로 오픈 소스가 된 것과 역공학으로 호환 런타임을 만든 것은 다른 일이며, 이 프로젝트는 게임 보존과 기술적 호환성 연구를 위한 중요한 자료다.[5]