id Tech 엔진

덤프버전 :


Xbox Game Studio
게임 개발 도구


[ 펼치기 · 접기 ]



1. 개요
2. id Tech 이전
2.1. 횡스크롤 게임 엔진 (커맨더 킨 시리즈 등)
2.2. 호버탱크 3D, 카타콤 3D, 울펜슈타인 3D 엔진
3. id Tech 시리즈 목록
3.1. id Tech 1 <>
3.1.1. id Tech 1 기반 게임 목록
3.2. id Tech 2 <퀘이크> / <퀘이크 2>
3.2.1. 퀘이크 1 엔진
3.2.2. 퀘이크 2 엔진
3.2.3. id Tech 2 기반 게임 목록
3.3.1. 퀘이크 3 아레나 엔진
3.3.2. 리턴 투 캐슬 울펜슈타인 엔진
3.3.3. 우버툴스 포 퀘이크 3(ÜberTools for Quake III) <헤비 메탈: F.A.K.K.²>
3.3.4. id Tech 3 기반 게임 목록
3.4. id Tech 4 <둠 3>
3.4.1. id Tech 4 기반 게임 목록
3.5. id Tech 5 <레이지>
3.5.1. id Tech 5 기반 게임 목록
3.6. id Tech 6 <둠(2016)>
3.6.1. id Tech 6 기반 게임 목록
3.7. id Tech 7 <둠 이터널>
3.7.1. id Tech 7 기반 게임 목록
4. id Tech에서 포크된 독립 엔진
5. 맵 에디터, 기타 툴, 유틸리티
5.1. 공식 맵 에디터
5.1.1. DoomEd (둠 공식 맵 에디터)
5.1.2. QuakeEd (퀘이크 공식 맵 에디터)
5.1.3. QE4 Radiant / QERadiant (퀘이크 2 공식 맵 에디터)
5.1.4. Q3Radiant / GTKRadiant (퀘이크 3 공식 맵 에디터)
5.1.5. DOOMEdit (둠 3 공식 맵 에디터)
5.1.6. id Studio (id Tech 5 이후 공식 맵 에디터)
5.2. 공식 맵 에디터 소스 코드 기반 비공식 에디터
5.2.1. ÜberRadiant
5.2.2. GTKRadiant의 비공식 버전업
5.2.3. QtRadiant
5.2.4. DarkRadiant
5.2.5. NetRadiant
5.2.6. QuakeEd 3.x (비공식 버전업)
5.2.7. QE5 Radiant (비공식 버전업)
5.3. 완전 비공식 에디터
5.3.1. Doom Builder
5.3.2. THRED
5.3.3. WorldCraft
5.3.4. NT-BRUSH
5.3.5. BSP
5.3.6. CraFTEr
5.3.7. QuArK
5.3.8. Quest
5.3.9. Qoole
5.3.10. Quiver
5.3.11. QuMa
5.3.12. ToeTag
5.3.13. TrenchBrooom



1. 개요[편집]


이드 소프트웨어에서 공개한 소스 코드들.

이드 소프트웨어에서 만든 게임과 해당 게임 개발에 사용된 유틸리티/툴 및 그 소스 코드이다. id Tech 1에서는 렌더링과 네트워크 파트 대부분을 프로그래머 존 카맥이 혼자서, 툴과 게임플레이 파트는 프로그래머이자 게임 디자이너인 존 로메로가 거의 혼자서 개발했다. id Tech 3부터는 로버트 듀피(Robert Duffy)가 게임플레이와 툴 전반을 담당했다.

원래는 정식 명칭이 없었고 각 게임의 제목[1]이 붙은 명칭을 썼으며, 라이선스 표기는 다음과 같았다.

id Tech로 개명 전 라이선스 명칭
  • 둠 엔진 = id Software Code license 1993 for xxx id Software, INC. 헥센 박스 뒷면
  • 퀘이크 1 엔진 = id Technology 1996 id Software, INC. 헥센 2 CD 하프라이프 박스 뒷면
  • 퀘이크 2 엔진 = id Technology 1997 id Software, INC. 헤러틱 2 박스 뒷면 솔저 오브 포춘 박스 뒷면
  • 퀘이크 3 엔진 = Powered by Quake III Technology 로고 아메리칸 맥기의 앨리스 박스 뒷면
  • 둠 3 엔진 = Doom 3 Technology
  • 레이지 엔진 = id eXtender Technology[2]

위와 같이 라이선스 표기를 사용했으며 해당 엔진을 사용한 게임들의 표지[3]에서도 저 문구들을 확인이 가능하다. 2007년에 id Tech 5 공식 발표 후로는 기존 버전의 라이선스 표기는 id Tech로 통일됐고 로고는 id Tech 5에서 숫자 5를 지운 로고를 사용했다. 레이지를 제외한 id Tech 5 기반 게임인 울펜슈타인 더 뉴 오더부터 id Tech 5도 숫자 로고에 숫자 5를 삭제했으며 id Tech 6, id Tech 7도 숫자를 표기하지 않는다.

2007년에 당시 개발중이던 신작 레이지의 엔진을 id Tech 5라는 로고까지 만들어서 공식 발표하면서 기존의 게임 엔진들도 id Tech 시리즈로 개명되었다. 공식적으로 id Tech는 id Tech 1(둠 엔진)부터 시작되며, 현재 id Tech 7(둠 이터널 엔진)까지 나온 상태다.

id Tech 엔진 시리즈는 본래 별도의 게임 엔진으로 개발되지도 않았고 범용성이 전혀 고려되지 않았으며 엔진의 기반 되는 본 게임에 모든 것이 특화되어 있기 때문에 상업용 게임 엔진과는 거리가 매우 멀다. 그래서 id Tech 엔진을 사용한 개발사들도 과거부터 이드의 엔진을 사용했거나, 퀘이크의 확장팩을 개발했거나, 개발을 했던 개발진이 나와서 설립한 개발사거나 어떻게든 연관이 있는 개발사들로 거의 한정되었으며, id Tech 6에서는 관련 IP 게임만 사용되었고, id Tech 7에서는 같은 모회사의 계열사에게도 외면받는 상태에 이르렀다. 라이선스가 가장 많이 사용된 퀘이크 3 엔진(id Tech 3)도 사용한 개발사 대부분이 기존에 이드 친화적인 개발사들이며 개발된 게임도 11개[4] 밖에 되지 않는다. 항상 이드 소프트웨어이의 엔진을 사용해오던 레이븐 소프트웨어가 4개, 퀘이크 1의 확장팩을 제작했던 리추얼(구 힙노틱)이 2개, 퀘이크 1, 2의 확장팩을 제작했던 로그 엔터테인먼트가 1개[5]를 제작했으니, 그 외에는 EA가 라이선스 한 개발작 3개[6]와 콜 오브 듀티 라이선스 1개 밖에 없는 것으므로 퀘이크 3 엔진이 딱히 라이선스 시장에서 많이 사용되었다고 하기에도 애매한 것이 사실이다.


2. id Tech 이전[편집]


해외 유명 웹진인 IGN에서는 이드 소프트웨어에서 개발한 게임 기술의 역사를 설명하기 위해 휭스크롤 게임 커맨더 킨 등 2D 횡스크롤 게임들에 사용된 기술과 호버탱크 3D카타콤 3D, 울펜슈타인 3D에 쓰인 기술에 임의로 id Tech -1 및 id Tech 0라는 명칭을 붙여 설명했으나 단지 IGN의 기사에서만 비공식적으로 언급된 것일 뿐, 공식적으로 인정되지는 않는다.


2.1. 횡스크롤 게임 엔진 (커맨더 킨 시리즈 등)[편집]


당시 존 카맥이 횡스크롤 게임을 위해 개발한 기술이다. 당시 PC에서 보기 힘들었던 부드러운 화면 스크롤이 가능했으며, 이드 소프트웨어는 이 기술을 이용해 슈퍼 마리오 브라더스 3를 PC로 이식하기도 했으나,# 닌텐도 플랫폼 이외의 기종으로 마리오 게임을 내놓을 필요가 없다는 닌텐도 측의 거부로 인해 프로젝트가 무산되었다. 이후 위험한 데이브 2 및 커맨더 킨에 사용된 것이 대표적이며 존 카맥, 존 로메로, 에이드리언 카맥이 이드 소프트웨어를 차려 독립하기 전 소속사인 소프트디스크와의 계약으로 납품한 게임들에도 사용되었다.


2.2. 호버탱크 3D, 카타콤 3D, 울펜슈타인 3D 엔진[편집]


파일:attachment/uploadfile/Wolf3d_pc.png

호버탱크 3D카타콤 3D, 그리고 울펜슈타인 3D에 사용된 기술은 원시적인 레이캐스팅[7] 방식을 사용한다. 매우 단순한 표현만이 가능했는데, 높낮이는 구현할 수 없고, 게임에 나오는 벽도 상자를 쌓아서 만든 것처럼 일정한 상자꼴로만 되어 있어서 벽은 90도 단위 각도로만 꺾어질 수 있었다. 또한 캐릭터는 2D 스프라이트로 표현된다.

존 로메로와 존 카맥 관련 서적을 보면 울펜슈타인을 2D 횡스크롤로 개발하기 위한 토론을 하던 중 결정이 안 나고 일주일 동안 계속 토론이 이어지자, 존 카맥이 더 이상 시끄러워서 작업하기 힘들다고 하면서 나갔다가 일주일 뒤에 돌아오며 가져온 게 바로 이 엔진이었다.

비영리, 교육 목적에 한해 소스 코드가 공개되어 있는 엔진으로, 16비트 기반에 어셈블리어가 뒤섞여 있고 기술 제약이 크므로 뭔가 해 보려면 GPL 라이선스와 일반 비영리 라이센스로 모두 공개되어 있는 id Tech 1 엔진을 참고하는 쪽이 작업에 수월하다.

울펜슈타인 3D 엔진으로 만들어진 게임들은 아래와 같다.

  • 울펜슈타인 3D (1992)
  • 섀도 캐스터 (1993) - 이후 오랫동안 이드 소프트웨어와 인연을 유지하게 되는 레이븐 소프트웨어의 초기작으로 중세배경의 1인칭 RPG.
  • 블레이크 스톤 (1993)
  • 오퍼레이션 보디 카운트 (1994) - 캡스톤 제작. 엔진은 구형이지만 이래 봬도 아랍 테러리스트를 막는다는(...) 비교적 현대전을 배경으로 한 게임이다.[8] 한때 SKC에서 CD롬판을 <테러리스터>라는 제목으로 정발한 적도 있었다. 원작은 B급 게임이었는데, 팬 리메이크둠 시리즈의 MOD로 나와있다.
  • 코리도 7 (1994) - 캡스톤 제작. 나중에 CD 버전으로도 나왔다. SF물이지만 적인 외계생명체가 죽는 비주얼이 꽤 잔인하다. 중간에 이상한 얼굴이 나와서 사람을 깜짝 놀래키기도 한다.
  • 슈퍼 3D 노아의 방주 (1994) - 위스덤 트리 제작. 슈퍼 패미콤으로 나왔으며 제목 그대로 노아의 방주를 주제로 한 종교 게임이다(!). AVGN의 성경 게임편 참조. 1995년 id tech 0 엔진을 이용해 DOS로 이식되었으며 이 버전을 2015년 경 스팀에서 HD 리마스터판으로 출시했다. 과거 해적판 게임들을 제작한 것 치곤 엔진에 정식 라이센스를 받아 사용했단 점도 특이한 점 중 하나. 건전한 분위기지만 새총 등의 무기로 먹이를 발사해 방주의 동물들을 잠들게 한다는 아스트랄한 소재를 가지고 있다(…)
파일:rise of triad.jpg

3. id Tech 시리즈 목록[편집]



3.1. id Tech 1 <>[편집]


파일:attachment/uploadfile/doom102.png

의 소스 코드다. 앞서 기술된 바와 같이 이드 소프트웨어가 만든 최초의 3D 그래픽 FPS 게임 엔진은 아니지만 호버탱크 3D나 울펜슈타인 3D의 엔진은 상당히 원시적인 관계로 둠 엔진이 id Tech 1으로 명명되었다. 97년에는 비상업적인 용도로 리눅스 버전의 둠 소스 코드가 공개되었으며, 99년에 GPL로 다시 공개되었다. 이 소스 코드를 토대로 수십 개의 둠 소스 포트가 제작되었고, 일부는 커다란 개조를 거쳐 이전 둠 엔진에 없던 기능들을 지원하기도 한다.

파일:attachment/id_tech_1.png

사실상 폴리곤을 사용한 완전한 3D 그래픽이 아닌 2.5D 그래픽이기 때문에 제약이 많다.[9] 둠에서는 위 아래를 제대로 바라볼 수 없으며,[10] 한 층 위에 다른 층이 존재할 수 없다.[11] 그 외 사물들은 폴리곤 모델이 아닌 2D 스프라이트로 만들어져 있다.

이런 단순함으로 기술적 제약이 많은 대신 둠 맵의 개발 난이도는 매우 낮다. 둠의 커다란 인기와 함께 등장한 여러 비공식 맵 에디터들, 그리고 쉬운 개발 난이도가 맞물리면서 엄청난 숫자의 둠 맵이 제작되었는데, 맵 사이트 중 가장 규모가 큰 'idgames 데이터베이스'에는 유저들이 만든 둠 WAD[12]가 1만여 개 이상 올라와 있다.

둠의 데이터 파일 모음인 WAD 파일은 이드의 자체 포맷으로 압축파일 포맷은 아니며, 단지 "여러개의 파일을 묶어주는 패키지 파일"일뿐이다.

그리고 1997년도에는 GPL 라이선스 하에 소스 코드가 공개되어 Zdoom, GZdoom 같은 소스 포트를 통한 수 많은 개량 버전들이 등장하게 된다.

게임 엔진이 단순한 관계로 분석될대로 분석되다보니까 OBSIDIAN이라는 자동 맵 생성기까지 나왔다.

이런 소스 포트를 통해 상업적 판매 목적의 게임이 발매되기도 했는데 2019년작인 The Forestale에서도 둠의 소스 포트인 GZdoom의 소스 코드를 이용해 제작되었다.


3.1.1. id Tech 1 기반 게임 목록[편집]


개발사
제목
발매년도
장르
엔진 버전
이드 소프트웨어
둠 (얼티밋 둠)[* 얼티밋 둠은 에피소드 4가 추가된 버전으로, 별도 패키지도 발매됐으며 기존 구매자들에게는 무료 다운로드 패치를 제공했다.] / 둠 2: 헬 온 어스 / 마스터 레벨 포 둠 2 / 파이널 둠
1993 ~ 1996
FPS
v1.0 ~ 1.9
레이븐 소프트웨어
헤러틱 (헤러틱: 섀도우 오브 더 서펜트 라이더)[13]
1994 / 1996
FPS
v1.666[14] ~ 1.9
헥센: 비욘드 헤러틱 / 데스킹 오브 더 다크 시타델 (확장팩)
1995 / 1996
FPS
v1.666 ~ 1.9
로그 엔터테인먼트
스트라이프
1996
FPS
v1.9
미드웨이
둠 64
1997
FPS
v1.2[15]
  • 토탈 컨버전 형태로 발매된 게임
    • 첵스 퀘스트[16] (1996)
    • 첵스 퀘스트 2 (1997)
    • 핵스[17] (1997)
  • Zdoom및 GZdoom 계열 소스 포트에 기반해 만들어진 상용 게임
    • 첵스 퀘스트 3 (2008)
    • 포레스테일 (2018)[18]
    • 헤돈 (2019)[19]
    • 핸드 오브 네크로맨시 (2022)
    • 나는 사쿠야 (2022)[20]
    • 셀라코 (2024)
    • 디스대인 (TBA)
    • 브루탈 페이트 (TBA)[21]

그 외 둠 소스 코드를 기반으로 만들어진 비 상용 무료 배포 게임이 다수 존재하며, 몇몇 개인 제작자들은 사실상 어밴던웨어가 된 FPS 게임들을 둠 엔진 기반으로 리메이크하기도 한다. 대표적인 예시가 비행 FPS 게임 라딕스[22]와 위에서 상술한 오퍼레이션 보디카운트다.

엔진과 직접적인 관련은 없으나, 이때까지의 id Tech 엔진[23]으로 제작된 게임들 원본은 DOS상에서 인스톨시 전부 DEICE라는 압축해제 방식의 인스톨러 프로그램으로 설치하게 된다는 특징이 있다. 이 DEICE의 소스는 LHA 압축 포맷으로 어떻게 보면 LHA의 변종인 셈.


3.2. id Tech 2 <퀘이크> / <퀘이크 2>[편집]


파일:attachment/uploadfile/idtech2.jpg

퀘이크 1 엔진과 퀘이크 2 엔진은 id Tech 2로 개명되었다. 분명히 공식적으로 퀘이크 1 엔진과 퀘이크 2 엔진을 아우르는 명칭이지만, 해외 위키피디아나 게임 포럼등에서는 퀘이크 2 엔진을 id Tech 2로, 퀘이크 1 엔진은 별도의 "퀘이크 엔진"으로 구분하고 있다. 그 와중에 둠 엔진은 id Tech 1로 구분하면서 그 중간에 놓은 퀘이크 1 엔진만 id Tech에 포함하지 않고 있으며, 위키피디아에 id Tech 2에 퀘이크 1 엔진도 포함하는 것으로 수정을 해도 누군가가 계속 퀘이크 1 엔진을 id Tech 2가 아닌 별도의 "퀘이크 엔진"으로 구분해 놓는 짓을 저지르고 있다.

퀘이크 1과 퀘이크 2의 소스 코드를 살펴 보면 전체적인 구조가 상당히 다르다. 기본 MS-DOS용으로 개발되어 윈도우용 포팅과, 네트워크 엔진 강화 버전인 QuakeWorld, OpenGL 지원용 GLQuake 등 별도의 실행 파일로 만들어지는 퀘이크 1과 비교하면 퀘이크 2는 윈도우 전용인 DLL 구조로 코드의 각 기능이 분리되어 있고 별도의 DLL 파일로 컴파일된다.

그러나 퀘이크 1, 퀘이크 2가 id Tech 2로 통칭되는 이유는 코드의 구조를 떠나서 어차피 퀘이크 1이나 퀘이크 2나 전체 소스 코드의 규모가 매우 작고, 전체에서 비중이 가장 큰 부분이 렌더링 코드인데 퀘이크 2 렌더링 코드의 약 98% 이상이 퀘이크 1의 렌더링 코드를 거의 그대로 사용했기 때문이다. 퀘이크 1에서 quake.exe나 winquake.exe에 컴파일되는 소프트웨어 렌더러는 퀘이크 2에서 ref_soft.dll 파일로 컴파일되며, glquake.exe나 vquake.exe 등에 컴파일되는 오픈GL 렌더러는 ref_gl.dll 파일로 컴파일된다.

그리고 나머지 코드도 전체 도스의 구조가 단지 도스 기반에서 윈도우 DLL 기반으로 변경됐을 뿐, 네트워크, 클라이언트, 사운드 등 주요 기능 구현 코드가 그대로 사용되어, 전체 코드를 비교했을 때 퀘이크 2 코드의 약 80%가 퀘이크 1의 코드를 그대로 사용하고 있다. 퀘이크 2의 네트워크 코드는 퀘이크 1의 네트워크 코드 강화 클라이언트 패치 실행 파일인 quakeworld의 네트워크 코드를 사용한다. 달라진 부분은 게임플레이 스크립트에 사용되는 퀘이크 1의 QuakeC 대신 퀘이크 2에서는 C를 사용한다는 점이다. 퀘이크 2는 게임플레이 스크립트가 gamex86.dll 파일에 컴파일되어 각 MOD별 폴더에 담아 실행할 수 있다.

퀘이크 1과 퀘이크 2가 id Tech 2로 통일된 이유는 위의 설명처럼 소스 코드의 구조를 논하기 전에, 전체 코드의 규모가 매우 작으며, 그중 가장 비중이 큰 렌더링 코드가 약 98% 이상 동일하기 때문이다. 비유를 한다면 둠 엔진으로 헥센을 만든 수준인 것이다. 케이크를 만드는 것에 비유를 한다면 동일한 버터크림(렌더링 코드), 동일한 반죽(네트워크 코드), 동일한 시럽(사운드 코드) 등으로 네모난 케이크(퀘이크 1 소스 구조)를 만들었는지, 동그란 케이크(퀘이크 2 소스 구조)를 만들었는지의 차이며, 위에 올라가는 데코레이션으로 과자(퀘이크 1의 QuakeC 게임플레이 코드)나, 생과일(퀘이크 2의 C를 사용한 DLL 게임플레이 코드)처럼 바로 위에 보여지는 일부 재료가 다르고 케이크의 모양이 다르더라도 주요 재료가 모두 같으므로 둘 다 버터크림 케이크라고 부르는 것과 같다.

조금 더 상세하게 따지고 본다면 id Tech 엔진의 버전 숫자를 올리는 기준은 렌더러라고 볼 수 있다. 네트워크 코드 같은 것은 퀘이크 1에서도 오리지널 퀘이크와 네트워크 강화 버전인 퀘이크 월드의 네트워크 코드가 완전히 다르고, 퀘이크 2도 패치를 통해 네트워크 코드가 거의 전면 교체되기도 했다. 퀘이크 3에서도 마찬가지로 네트워크 코드가 패치를 통해 몇 번이나 교체되기도 했는데, 렌더러는 패치로 교체된 적이 당연히 있을 수 없으며, 퀘이크 1, 2의 전체 코드에서 거의 완전히 동일한 것은 렌더러이므로, 같은 id Tech 2를 유지하는 것이다.

퀘이크 3 엔진과 리턴 투 울펜슈타인 역시 렌더러 코드가 98% 이상 동일하다. 게임플레이 코드는 완전히 대체되었고, AI 코드도 퀘이크 3의 멀티플레이 AI와는 전혀 다른 새로운 코드다. 리추얼 우버툴의 경우도 사실상 렌더러를 제외한 모든 코드가 리추얼의 자체 개발한 코드라고 볼 수 있는데 그럼에도 그것들은 모두 id Tech 3로, 당시에는 퀘이크 3 엔진이라고 불렸으며, 그것에 이의는 없었다.

둠 3 엔진의 경우, 오리지널 둠 3 소스 코드와 둠 3 BFG 에디션의 소스를 보면, 렌더러를 제외한 많은 부분이 재작성되었다. 사운드 엔진이 새롭게 교체되었으며, UI 코드의 많은 부분이 재작성되었고, 파일 시스템도 재작성되어 게임의 파일 구조도 많이 다르다. 그럼에도 둠 3 BFG 에디션이 id Tech 4가 아니라고 하지 않는다.

id Tech 5인 레이지의 경우, 둠 3 엔진을 바탕으로 개발을 시작해서 파일 시스템, 게임플레이, UI 같은 코드 등 많은 부분들이 둠 3 BFG 에디션과 같은 것으로 보이는데, 렌더러가 완전히 새롭게 재작성되어 id Tech 5로 불리는 것이다.

id Tech 6인 둠(2016)의 경우, id Tech 5(레이지)를 바탕으로 개발했으며, 렌더러는 메가텍스처 사용 부분을 제외하고는 거의 다 새로운 코드로 대체되었는데, 게임플레이나 나머지 부분의 코드는 레이지의 코드를 거의 그대로 사용한 흔적이 보이나, 렌더러가 새로운 것이기 때문에 id Tech 6로 불린다.

id Tech 7인 둠 이터널의 경우, 게임으로만 봤을 때 id Tech 6(둠 2016)과 거의 차이가 없는 확장팩 수준으로 보이고, 실제로도 id Tech 6의 게임플레이, 파일 시스템, UI 등 거의 모든 코드를 그대로 사용했지만 렌더러는 내부를 완전히 새롭게 재작성했다. 게임 그래픽도 비슷하고 렌더링 스타일도 같아서, 단지 같은 렌더러를 최적만가 개선한 것으로 보일 수 있으나, 그 최적화를 위해서 렌더링 코드 거의 전부를 재작성했다. 3D 월드 구현에서 가장 기본적인 지오메트리 처리부터 같은 연산처리 속도에서 훨씬 많은 처리를 효율적으로 할 수 있도록 코드가 완전히 재작성됐으며, 머티리얼 처리, 라이팅 처리 등 모든 구현 부분이 재작성되었기 때문에, 사실상 렌더링 코드는 완전히 새로운 것이고, 그래서 id Tech 7로 버전 숫자가 올라간 것이다.

퀘이크 1, 퀘이크 2의 데이터 파일은 PAK라는 파일 덩어리로 되어 있는데, 이것은 둠의 WAD 파일처럼 여러개의 파일을 패키지로 묶어 주는 것으로, WAD와는 다른 포맷이지만, 여전히 압축파일이 아니며 단순한 패키지 파일이다. 이것 역시 이드 소프트웨어의 자체 개발 포맷이다. 다만 PAK이라는 확장자는 수 많은 곳에서 사용하고 있는데, id Tech 2 게임들을 제외하면 그것들은 퀘이크 1, 2에서 사용한 포맷을 사용하지 않는 모두 각자의 포맷이다. 예를 들면, 라그나로크 온라인도 PAK 확장자를 가진 파일을 사용하고, 크라이엔진도 PAK 확장자를 가진 파일을 사용하며, 언리얼 엔진 4도 프로젝트를 배포할 경우 PAK 확장자를 가진 파일로 묶을 수 있는데, 이것들은 퀘이크 1, 2의 PAK 파일 포맷과는 어떤 연관도 없다.

3.2.1. 퀘이크 1 엔진[편집]


1996년 작인 퀘이크의 소스 코드이며, 배경 및 오브젝트를 모두 폴리곤으로 처리하기 때문에 맵을 복층으로 만들거나 복잡한 구조물을 표현할 수 있게 되었다.

퀘이크 1에선 볼 수 없었던 투명한 수면이나 부서지는 벽, 구조물 따위의 표현들을 퀘이크 2에서는 볼 수 있지만 사실 그것은 퀘이크 1에서도 원래 가능했던 것이다. 실제로 공식 확장팩에서 부서지는 구조물을 볼 수 있으며, 소스 코드 수정 없이도 퀘이크 1 유저 모드나 유저 맵 등에서 부서지는 구조물이나 벽, 투명한 수면 등을 볼 수 있다.

이 시절 대부분의 게임들은 C++로 개발되었지만 퀘이크는 C++가 아닌 C로만 작성되었으며[24] 속도가 필요한 부분은 어셈블리어로도 일부분이 작성되어있다.

게임플레이 코드에 한정해서 고유의 QuakeC라는 매우 단순명료한 스크립트로 작성되어있다(사실 스크립트라고 하기에도 너무 규모가 작은, 약간의 조합이 가능한 일종의 콘솔 명령어 수준이다).

소스 코드 전체가 하나의 통짜로 되어 있으며 구조적으로 융통성이 전혀 없고 개량이 거의 불가능한 수준이다.

1999년에 GPL 라이선스로 공개된 퀘이크의 풀 소스는 공식 최종 버전인 1.09 소스로 다음과 같은 실행 파일이 생성되며, 오리지널 퀘이크(WinQuake)와 퀘이크 월드(QW)가 완전히 별개의 프로젝트로 컴파일되는 별도의 폴더로 구분되어 있으며, 도스 버전용 Quake.exe는 제외되어 있다.

  • 오리지널 퀘이크
    • WinQuake.exe: 윈도우 버전 소프트웨어 렌더링
    • GLQuake.exe: 3DFX Glide 및 OpenGL 렌더링
  • 퀘이크 월드
    • QWSV.exe: 퀘이크 월드 데디케이트 서버
    • QWCL.exe: 퀘이크 월드 클라이언트
    • GLQWCL.exe: 3DFX Glide 및 OpenGL 렌더링 퀘이크 월드 클라이언트
    • QWCL.so: 솔라리스 리눅스용 퀘이크 월드 클라이언트

소스의 구조가 폴더 구분도 없이 완전히 하나의 통짜형 구조적인 소스로 구현되어 있다. 오리지널 퀘이크도 하나의 폴더에 전체 소스가 다 들어가 있고 퀘이크 월드도 하나의 폴더에 전체 소스가 다 들어가 있기 때문에 각각의 기능들만 별도로 컴파일할 수 있는 모듈화가 전혀 이루어져 있지 않아서 일부를 변경하거나 엔진에 변화를 가하기가 매우 힘들다. 그런 이유로 오리지널 퀘이크와 퀘이크 월드도 별개로 컴파일될 수 밖에 없어서 완전히 별도 폴더에 소스가 구분되어 있는 것이다.

데이터 파일은 PAK으로 통합되어 있는데 이 파일은 id Tech 1(둠 엔진)에서의 WAD와 비슷하지만 새로운 포맷이다. WAD나 PAK 모두 압축파일은 아니고 그냥 파일을 하나로 모아놓은 그룹파일이다.

퀘이크 1 엔진의 캐릭터 모델은 키프레임 기반의 버텍스 애니메이션을 사용하며 포맷 확장자명은 MDL이다.

참고로 2021년에 재발매된 퀘이크 인핸스드는 프로그램상으로는 원작의 소스 코드를 일부 활용한 복각판에 해당한다. 개발사 나이트다이브 스튜디오해당 항목 참조.


3.2.2. 퀘이크 2 엔진[편집]


퀘이크 2 풀 소스 코드는 2001년에 GPL 라이선스로 공개되었다.

퀘이크 1에 비해 시각적으로 가장 진보된 부분은 광원에 색채가 들어간 부분(Colored Lighting)이지만 실질적으로 가장 변화가 큰 부분은 소스 코드 재구성에 있다.

여전히 C++가 아닌 일반 C언어 기반이며 속도가 필요한 일부분에 어셈블리어를 사용하고 있지만 더이상 도스에 기반을 두지 않고 윈도우 전용 게임으로 전환하면서 소스 코드가 렌더링과 게임플레이 같은 일정 파트는 DLL 모듈 기반으로 재구성되며 구조적으로 상당한 변화가 있었다.

그 덕에 당시 그래픽 카드 제조사별로 게임에서도 각각의 렌더링 드라이버가 필요했는데, 렌더링 파트가 별도의 DLL로 분리되어 있어, 제조사별 렌더러를 DLL 파일로 컴파일해서 패치로 제공할 수 있었다. 부분적 모듈화에 힘 입어 GLQuake, WinQuake, QuakeWorld 같은 별도의 실행 파일 생성할 필요가 없어졌으니 퀘이크 1 엔진에 비해서는 훨씬 효율적이게 되었다. 다만, 제조사별로 DLL을 컴파일하는 것이 렌더링 드라이버만 분리된 게 아니고 렌더링 엔진이 통째로 컴파일되며 그 전체 렌더링 코드를 각각의 하드웨어에 맞게 소스를 수정해야 했다. 즉, 렌더링 엔진과 렌더링 드라이버의 분리 같은 건 전혀 고려되지 않은 구조로, 그냥 Winquake나 Glquake의 렌더링 코드를 DLL로 분리한 것에 불과하다. 언리얼 엔진 1의 경우에는 기본 엔진 기능(Engine.dll), 그래픽 렌더러(Render.dll), 렌더링 드라이버(GlideDrv.dll, OpenGlDrv.dll, D3DDrv.dll, PwVRSrv.dll, SGLDrv.dll 등)가 완전히 분리되어 렌더링 드라이버만 새로 작성하면 되었지만, 퀘이크 2 엔진은 렌더링 엔진을 통째로 재작업해야 했으므로 엄밀한 의미에서의 모듈화는 이루어지지 읺았다고 봐야한다.

또한, 게임플레이 코드에서도 퀘이크 1에서 사용됐던 매우 제한적인 스크립트였던 QuakeC는 버려지고 C언어로 게임플레이 코드를 작성후 해당 코드만 컴파일하여 DLL 파일을 생성하는 방식으로 바뀌었다.

구조적으로 상당히 달랐기 때문에 존 로메로의 다이카타나가 퀘이크 1 엔진으로 개발도중 퀘이크 2 엔진으로 교체하면서 쉽게 업그레이드할 수 있을 것으로 생각했다가 완전 낭패를 보았다.

오프닝과 엔딩, 그리고 중간의 미션 브리핑으로 동영상이 포함되었는데 이 동영상의 포맷은 cin 파일이며 저화질에 음질도 좋지 않다.

그러나 구조적으로는 상당한 차이를 보이더라도 렌더링, 네트워크 등 각각의 파트를 구현한 코드는 퀘이크 1 엔진과 거의 동일했다. 코드 전반의 구조적인 부분이 윈도우 모듈화를 이뤘으나 코드 자체는 80% 이상이 퀘이크 1 엔진의 코드를 그대로 사용하고 있었고 그것은 기술적으로 퀘이크 1 엔진과 퀘이크 2 엔진이 같은 엔진이라는 것을 증명한다.

렌더링 엔진은 색채가 들어간 광원효과(사실 이 부분도 매우 미미한 개선이다)와 애니메이션 프레임 보정효과가 들어간 MD2 모델 포맷을 제외하면 달라진 부분이 거의 없으며 사운드 엔진도 스테레오 사운드만 지원하는 등 전혀 개선이 없었고(특수 음향효과의 지원이 전혀 없으며 그 흔한 서라운드 사운드도 미지원), 네트워크 엔진도 기존의 퀘이크 월드의 네트워크 엔진을 그대로 사용하였다. 게임의 데이터 파일도 퀘이크 1에서 사용한 PAK 포맷을 그대로 사용한다.

기술적인 면에서 퀘이크 1 엔진과 퀘이크 2 엔진은 같은 엔진이므로 퀘이크 2 엔진은 id Tech 3가 아닌 2의 넘버링을 유지하게 되었다.

퀘이크 2 엔진의 모델 포맷 확장자명은 MD2이며 퀘이크 1 엔진의 MDL 포맷에 비해 동일한 프레임을 가진 버텍스 애니메이션의 각 프레임당 중간 보정을 통해 같은 프레임이지만 더 부드럽게 표현해준다.

참고로 2023년에 재발매된 퀘이크 2 인핸스드는 프로그램상으로는 원작의 소스 코드를 일부 활용한 복각판에 해당한다. 개발사 나이트다이브 스튜디오해당 항목 참조.

그리고 퀘이크 2 엔진을 사용해서 1998년 발매된 게임 SIN을 재구축(복각, 재개발) 버전인 신 리로디드퀘이크 2 리마스터와는 다르게 나이트다이브 스튜디오KEX 엔진으로 완전히 재구축(재개발) 한 것이기 때문에 사실상 리메이크에 해당하며, 퀘이크 2 엔진과 무관하다.

퀘이크 2 엔진을 사용해서 1999년 발매된 게임 킹핀: 라이프 오브 크라임의 재구축(복각, 재개발) 버전인 킹핀 리로디드는 Slipgate Ironworks에서 유니티를 이용해 재구축하고 있기 때문에 이것 역시 퀘이크 2 엔진과 무관하다.

3.2.3. id Tech 2 기반 게임 목록[편집]


개발사
제목
발매년도
장르
엔진 버전
이드 소프트웨어
퀘이크 / 스커지 오브 아르마곤 (공식 확장팩 1)[25] / 디쏠루션 오브 이터니티 (공식 확장팩 2)[26]
1996
FPS
퀘이크 1 v1.00 ~ v1.09
퀘이크 2 / 더 렉커닝 (공식 확장팩 1)[27] / 그라운드 제로 (공식 확장팩 2)[28] / 넷팩 1 (상용 애드온 모음)
1997 / 1998
FPS
퀘이크 2 v3.05 ~ v3.21
레이븐 소프트웨어
헥센 2 / 미션 팩: 포탈 오브 프라에부스 (확장팩)
1997
FPS
퀘이크 1 v1.09
헤러틱 2
1998
TPS
퀘이크 2 + 자체 개조(많이)
솔저 오브 포춘
2000
FPS
헤러틱 2 + 자체 개조(매우 많이)
리추얼 엔터테인먼트[29]
신(SiN) / 웨이지 오브 신 (확장팩)
1998 / 1999
FPS
퀘이크 2 + 자체 개조(매우 많이)[30]
밸브 소프트웨어
하프라이프
1998
FPS
퀘이크 1의 렌더링 코드를 일부분 사용한 골드 소스 엔진[31]
잭트릭스 엔터테인먼트[32]
킹핀: 라이프 오브 크라임
1999
FPS
퀘이크 2 + 자체 개조(약간)[33]
이온 스톰
다이카타나
2000
FPS
퀘이크 2 + 자체 개조(매우 많이)
아나크로녹스
2000
RPG
퀘이크 2 + 자체 개조(매우 많이)[34]

  • GPL 라이선스 기반 상용 게임
    • 레이저 아레나 (2000)

  • Darkplace 소스 포트 기반 상용 게임
    • Wrath: Aeon of Ruin (2019~2023)[35]

3.3. id Tech 3 <퀘이크 3 아레나>[편집]


파일:attachment/idt3.jpg
리턴 투 캐슬 울펜슈타인의 스크린샷.
퀘이크 3 아레나 엔진은 id Tech 3로 개명되었다.

외주 개발작인 리턴 투 캐슬 울펜슈타인에도 퀘이크 3 아레나 엔진이 사용되었는데 본래 멀티플레이 전용으로 만들어서 퀘이크 3 아레나의 소스 코드에는 싱글플레이 관련 기능이 전혀 없었기 때문에, 싱글플레이 스크립팅 시스템을 비롯해 싱글플레이 AI, 싱글플레이에 필요한 각종 트리거 시스템 등을 새로 만드는 등 상당부분이 개조되었다.

리턴 투 캐슬 울펜슈타인 엔진은 콜 오브 듀티에 라이선스되어 IW 엔진의 모태가 되기도 했다.

리턴 투 울펜슈타인 엔진과는 별개로 리추얼 엔터테인먼트의 ÜberTools for Quake III라는 퀘이크 3 엔진 개량판이 존재하는데, 이것은 오리지널 퀘이크 3 엔진에 없는 싱글플레이 관련 기능들을 추가하고 기술적으로도 많은 부분을 개조한 버전이다.

id Tech 3(퀘이크 3 엔진)은 id Tech 시리즈 중 가장 많은 외부 게임들에 사용되었으나 대부분 과거에 이드 소프트웨어의 엔진을 사용했거나 둠, 퀘이크 시리즈의 확장팩을 제작했던 개발사들이 대부분이다. 확장팩(스탠드얼론 포함), 소스 코드 공개 후 GPL 라이선스를 통한 제작 등을 제외하고(오리지널 게임들에 사용된 게임은 포함) 재발매 등을 제외하면 id Tech 3 엔진을 라이선스해 사용한 게임은 12개(이드 게임인 리턴 투 캐슬 울펜슈타인 포함)다.

그리고 리추얼 엔터테인먼트의 ÜberTools for Quake III라는 퀘이크 3 엔진 개량판이 리추얼 엔터테인먼트 자사의 두 작품인 헤비 메탈 F.A.K.K.2, 스타 트렉 엘리트 포스 2에 사용되었으며, EA에 라이선스되어 아메리칸 맥기의 앨리스, 메달 오브 아너 얼라이드 어썰트, 그리고 2개의 007 게임에 사용되었다.

퀘이크 3 엔진의 데이터 파일은 pk3 파일로 되어 있는데, 이것은 이드 소프트웨어의 자체 개발 포맷이 아닌, ZIP 압축 파일을 확장자명만 pk3로 바꾼 것이며, 퀘이크 3의 소스 코드를 보면 qcommon 중에 zip 압축 해제를 위한 무료 공개 소스 코드(unzip.h와 unzip.c)가 포함되어 있다. 기존에 사용하던 둠의 WAD 파일과 퀘이크 1, 2의 pak 파일은 압축 포맷이 아니라서 내부에 있는 파일을 그냥 로딩할 수 있었다. 하지만 pk3 파일은 ZIP 압축 파일이므로 데이터를 pk3 파일 내에서 직접 로딩할 수 없다.

퀘이크 3 엔진 게임들이 유독 로딩이 오래 걸린 이유가 이것 때문인데, 게임을 실행하면 pk3에 있는 파일 중 로딩할 파일을 임시 폴더에 압축을 해제한 후, 그 압축 해제된 파일을 로딩한다. 그래서 로딩 속도를 빠르게 하려면 baseq3 폴더(퀘이크 3의 경우)에 있는 pk3 파일들의 압축을 모두 그 자리(예: baseq3 폴더)에 해제하면 용량이 약 3배 늘어나는 대신에 로딩 속도는 약 3배 가량 빨라진다. 물론 퀘이크 3 엔진 기반의 게임들 출시 당시 기준이며, 지금 시점의 PC 성능으로 퀘이크 3 엔진 게임들의 로딩 정도는 압축을 해제하지 않더라도 1초 내외 밖에 걸리지 않으니 별 의미가 없다.

3.3.1. 퀘이크 3 아레나 엔진[편집]


퀘이크 3 아레나는 멀티플레이 전용 게임이라 소스 코드에 싱글플레이 관련 기능이 전혀 없다.

1999년작인 퀘이크 3 아레나의 소스 코드다. 해외 위키피디아 등지에서는 퀘이크 2 엔진에서 개량된 것으로 잘못 알려져 있으나, 퀘이크 3 엔진은 퀘이크 2 엔진을 바탕으로 개량된 게 아닌 완전히 처음부터 새로 작성된 코드로 어느 부분도 퀘이크 2에서 가져온 소스가 없는 순수 백지에서부터 작성된 코드다. 퀘이크 3 엔진(id Tech 3) 이후로는 둠 3 엔진(d Tech 4)을 거쳐, 레이지(id Tech 5), 둠 리부트(id Tech 6)를 거쳐 id Tech 7까지 개조되었으나, 그것들 또한 전체 소스 코드의 구조가 작은 편이고 견고한 기반의 구조를 가지고 있는 것이 아니기 때문에 사실상 퀘이크 3의 잔재가 전혀 없는 각자 다른 엔진으로 볼 수 있다.

퀘이크 3 아레나는 빠른 움직임의 데스매치 중심 FPS 게임이며 싱글플레이가 단순히 봇매치일 뿐인 멀티플레이 전용으로, 엔진의 기술적인 특성 역시 퀘이크 3 아레나에 필요한 기능으로만 구성되어 있어, 게임의 저장과 불러오기도 구현이 안되어 있고, 게임플레이상의 스크립트나 트리거 시스템도 전혀 구현되어 있지 않을 정도로, 구현된 기술과 기능이 매우 한정적이다.

예를 들면 퀘이크 3는 빠른 움직임의 데스매치 게임이므로 호러 게임처럼 어두운 곳에서 플래시를 켜서 일부분을 밝히는 기능 따위가 필요없다. 그래서 퀘이크 3 엔진은 실시간 동적 광원효과를 지원하지 않는 대신 라이트 맵의 컬러톤을 바꾸는 일종의 페이크로 동적 광원을 지원한다. 그렇기 때문에 광원이 아예 없는 부분에다가 로켓이나 총을 아무리 쏘아도 밝아지지 않는다.

퀘이크 3 엔진으로 개발된 게임들은 어두운 곳에서 아무리 총을 쏘거나 플래시를 비춰도 그 부분은 절대로 밝아지지 않는다. 아메리칸 맥기의 앨리스는 아예 동적광원을 퀘이크 2의 폭발효과처럼 폴리곤 처리해서 표현해버렸다. 다만, 메달 오브 아너: 얼라이드 어썰트는 자체 개량하여 동적 광원을 지원하며, 게임 메뉴의 옵션에서도 리얼 다이나믹 라이트를 체크할 수 있다. 그러나 색채가 들어간 광원은 지원되지 않고 퀘이크 1처럼 무색의 광원만 지원하는데, 그 이유는 퀘이크 3 엔진의 라이트맵 텍스처 블렌딩 방식과 라이팅 구현 방식에 색채 광원을 적용하면 그래픽상의 품질 오류를 일으키기 때문이다.

외형적으로는 퀘이크 2 시절 언리얼 1과의 비교에서 당시 언리얼의 압도적인 기술적 우수성에 영향을 많이 받은 모습을 보였는데 게임의 맵 자체가 이전의 이드 소프트웨어 게임들에 비해 매우 컬러풀해졌으며 기술적인 면에서도 지역 안개 효과, 곡면, 환경맵, 수면 효과 등, 기존의 id Tech 2(퀘이크 2 엔진)에 비해서 시각적인 기술면에서 크게 진일보하였다. 하지만 모든 기술들이 오로지 데스매치용 게임인 퀘이크 3에 특화되어 만들어졌기 때문에 당시 언리얼 1 엔진이 광원이나 특수효과면에서 여전히 더 우수함을 보였고 퀘이크 3 발매 당시 언리얼 1 엔진은 언리얼 토너먼트 엔진으로 업그레이드되면서 엔진 라이센스 시장에서는 언리얼 엔진의 강세가 계속되어 언리얼 엔진의 라이센스 수에 비해 퀘이크 3 엔진 라이센스 수는 더 적었다.

소스 코드는 여전히 객체 지향적 언어인 C++가 아닌 구조적 기반의 일반 C언어로 작성되었으며 렌더러, 게임플레이, 네트워크 클라이언트와 서버, UI, 파일 시스템, 봇 AI, 플랫폼 코드 등으로 구성되어 있다.

게임플레이 스크립트 작성부분 역시 DLL은 사용하지 않는 대신 C를 이용한 QVM을 이용하는데 QVM은 작업의 범위도 매우 좁고 해당 틀을 벗어날 수 없는 극히 제한적인 VM이다.[36]

이러한 이유들로 인해 퀘이크 3 엔진을 사용한 게임 중에는 언리얼 엔진에서 가능하던 기존의 게임방식을 완전히 탈바꿈한 핀볼 같은 모드나 뮤테이터 등의 적용을 찾아볼 수 없다.

이전의 이드 소프트웨어의 엔진들과 마찬가지로 엔진의 소스 자체가 퀘이크 3 소스이기 때문에 멀티플레이 전용 게임인 퀘이크 3 소스, 즉 id Tech 3을 사용한 게임들은 대부분 싱글플레이 파트와 멀티플레이 파트가 완전히 별개의 파일들로 구성된 별도의 게임으로 독립되어 있는 특징을 갖는다.

멀티플레이 파트는 퀘이크 3의 소스를 조금 수정해서 모드 수준으로 개발한 정도인데, '스타 트렉: 보이저 엘리트 포스 1"의 멀티플레이 파트는 퀘이크 3를 스킨만 바꾸어 놓은 수준이었다.

반면 싱글플레이 파트는 싱글플레이에 필요한 인공지능, UI, 스크립트 시스템 등 많은 부분들을 개발사에서 직접 개발해서 사용해야 했다.

인트로와 싱글플레이 티어 시작시 캐릭터 소개 영상, 그리고 마지막 티어 클리어시 나오는 짧은 동영상과 크레딧이 올라가는 장면은 동영상으로 제작되었는데 이 동영상의 포맷은 이드 소프트웨어가 자체 개발한 RoQ 동영상 포맷이다. RoQ 포맷은 당시 이드 소프트웨어에 재직했던 프로그래머 '그래미 디바인'이 개발한 것이며 이 RoQ 동영상 포맷만 일부 게임들에 라이센스되어 사용되기도 했다. 언리얼 엔진을 사용하는 게임들중에도 RoQ 동영상 포맷을 활용한 게 있으며 언리얼 엔진 2 당시의 UDN(언리얼 개발자 네트워크)에도 이드 소프트웨어의 RoQ 툴에 관한 토픽이 있다. RoQ 동영상 포맷은 id Tech 4 게임인 둠 3와 퀘이크 4, 프레이, 에너미 테리토리: 퀘이크 워즈에도 사용되었으나 id Tech 5인 레이지부터는 RoQ를 버리고 인게임 동영상 표준 포맷인 빙크 비디오 bik를 사용하고 있다. id Tech 4를 사용한 게임 중 2000년대 후반 이후에 발매된 울펜슈타인과 브링크는 RoQ를 사용하지 않고 빙크 비디오 bik를 사용하며, 2012년 리마스터된 둠 3 BFG 에디션과 2019년 재발매된 둠 3 역시 로고와 오프닝, 엔딩뿐 아니라 게임속 모니터나 PDA에 나오는 모든 동영상을 RoQ 대신 빙크 비디오 bik로 전부 교체했다.

버전 1.26부터는 퀘이크 3의 공식 확장팩이자 흑역사인 '퀘이크 3 팀 아레나'에 추가된 몇 가지 신기술이 포함되었다. 당시에는 '퀘이크 3 팀 아레나 엔진'이라고도 불렸다.

퀘이크 3 팀 아레나 엔진의 개선점은 다음과 같다.
  • 제한된 하이트맵 기능 추가 - 팀 아레나의 넓은 맵 3개에서 사용하였다.
  • 자체 개발 동영상 포맷인 RoQ 동영상의 게임 내 재생 기능 추가
  • 기존 MD3 모델 포맷의 개선 - 기존의 MD3은 상, 하체 2부분으로 구성
    • 개선된 MD3은 상체를 머리와 분리하여 총 3부분이 각각 별도의 애니메이션 수행 가능
  • MD4 스켈레탈 모델 포맷 추가 - MD4 모델 포맷은 엔진에 추가되었지만 팀 아레나의 추가된 캐릭터들은 모두 개선된 MD3를 사용하였으며 MD4는 쓰이지 않았다. 유저 모드나 퀘이크 3 엔진 라이센스 작품에서도 쓰인 적이 단 한번도 없는 흑역사인 기술(...).

2005년에 소스 코드가 공개된 이후로는 트루 컴뱃 등의 작은 인디 게임이 이 엔진을 기반으로 하여 스탠드얼론 게임으로 만들어지고 있기도 하다.

퀘이크 3 엔진의 모델 포맷 확장자명은 MD3이며 상하체가 구분되어 별도의 애니메이션 재생이 가능하다. 팀 아레나 엔진으로 버전업된 후에는 머리, 상체, 하체의 3부분으로 나누어져 각각 별도의 애니메이션 재생이 가능하도록 개선되었다.

팀 아레나 엔진으로 버전업되면서 MD4 모델 포맷도 새롭게 생겼는데 이는 기존의 버텍스 애니메이션이 아닌 스켈레탈 애니메이션 모델 포맷이다. 그러나 id Tech 3 엔진으로 나온 게임중 MD4 모델 포맷을 쓴 게임은 단 하나도 없다.

3.3.2. 리턴 투 캐슬 울펜슈타인 엔진[편집]


퀘이크 3 팀 아레나 이후의 버전을 기반으로 개량된 엔진이다. 리턴 투 캐슬 울펜슈타인(이하 RTCW) 엔진은 싱글플레이 개발에 필요한 여러가지 요소가 추가되고 개량된 것이 특징이다.

리턴 투 캐슬 울펜슈타인 풀 소스는 2011년에 GPL 라이선스로 공개되었다.

멀티플레이 버전은 싱글플레이와 분리되어 개발됐기 때문에 퀘이크 1 풀 소스와 비슷하게 RTCW-SP와 RTCW-MP 각각의 소스가 완전히 별도의 브랜치로 구분되어 있다. 그리고 무료 스탠드얼론 확장팩으로 공개된 에너미 테리토리 풀 소스도 별도의 브랜치로 함께 공개되었다.

멀티플레이 파트는 기본적인 퀘이크 3 소스를 거의 그대로 사용했으나 싱글플레이 파트는 퀘이크 3 엔진 자체가 싱글플레이에 필요한 코드가 전혀 마련되어 있지 않아서 스크립트 엔진과 인공지능 시스템의 추가 등이 새롭게 개발되었다.

모델 포맷은 버텍스 애니메이션인 MD3 포맷을 약간 개량해서 사용하고, 팀 아레나에 추가된 MD4 포맷은 사용하지 않는다. 대신 MDS라는 자체 스켈레탈 모델 포맷과 MDC라는 자체 모델 포맷도 함께 사용한다. 스플래시 데미지에서 개발한 스탠드얼론 무료 멀티플레이 확장팩 "울펜슈타인: 에너미 테리토리"는 MDM 포맷과 MDX 포맷도 추가로 개발해서 사용한다.

RTCW 엔진은 그레이매터 스튜디오에서 개발했으나 RTCW 개발 자체가 이드 소프트웨어에서 외주로 개발했으므로 RTCW의 소스 코드는 이드 소프트웨어가 소유하며, 퀘이크 3 엔진을 라이선스한 개발사에 제공했다. 콜 오브 듀티가 RTCW 엔진으로 개발되었다. 콜 오브 듀티의 메뉴나 로딩 화면 등에서 RTCW의 흔적을 쉽게 찾아볼 수 있다.


3.3.3. 우버툴스 포 퀘이크 3(ÜberTools for Quake III) <헤비 메탈: F.A.K.K.²>[편집]


리추얼 엔터테인먼트는 퀘이크 2 엔진 기반의 SiN 개발 후 자체 개발 엔진인 Über Engine을 개발했으나 회사 사정으로 완성하지 못한 대신, 개발 중단된 Über Engine의 코드 일부를 퀘이크 3 엔진으로 개발중이었던 신작 헤비 메탈: F.A.K.K.²와 병합하며 엔진을 크게 개조했고, 이것을 우버툴스 포 퀘이크 3(ÜberTools for Quake III, 이하 우버툴)라고 불렀다.

id Tech 계열 엔진은 언리얼 엔진 등 여타 전문적인 게임 엔진들과는 달리 엔진이 별도로 개발된 게 아닌, 해당 게임 자체의 소스 코드가 엔진으로 불렸으며 라이센스시 해당 게임의 소스 전체를 제공하는 식인데, 멀티플레이 전용인 퀘이크 3 아레나의 소스 코드에는 싱글플레이를 위한 개발툴 및 관련 기능들이 전혀 없어서 퀘이크 3 엔진을 사용해 개발하는 게임들은 많은 불편함과 다양한 어려움이 따랐다. 리추얼에서 싱글플레이어 전용인 헤비 메탈 F.A.K.K.2를 개발하며 자신들이 자체 개발한 기술들을 추가하고 엔진을 크게 개조하게 된 것이다.

우버툴은 맵 포맷도 기존 퀘이크 3의 bsp 포맷과는 상당히 다른 방식을 사용하여 확장자는 map으로 저장되며, 특히 캐릭터 모델과 애니메이션 부분은 원래 퀘이크 3 엔진의 MD3 모델 포맷과는 기반부터 다른 완전히 새로운 코드로 작성된 것으로, 페이셜 애니메이션과 립싱크도 지원한다.

라이팅 시스템도 일부 개량되어, 비록 퀘이크 3 텍스처 블렌딩 방식과 라이팅 구현 방식의 한계 때문에 리얼 다이나믹 라이팅은 지원하지 않고 여전히 페이크 다이나믹 라이트를 기반으로 하고 있지만, 원래 퀘이크 3 엔진에서 여러개의 페이크 다이나믹 라이트가 섞이면 콘트라스트와 컬러톤이 다 깨지면서 그래픽이 망가지는데, 그 부분을 손봐서 여러개의 페이크 다이나믹 라이트가 섞여도 자연스러운 광원이 표현될 수 있도록 했다.

우버툴은 리추얼이 퀘이크 3 엔진으로 헤비 메탈: F.A.K.K.²를 개발하면서 개선한 엔진이다. RTCW 엔진도 아니고, 팀 아레나 엔진도 아닌, 퀘이크 3의 완성전 개발중인 버전의 엔진을 바탕으로 해서 리추얼의 자체 기술이 융합된 것이지만, 그 결과물은 팀 아레나 엔진은 비교조차 할 수 없고, RTCW 엔진보다도 훨씬 뛰어난 진보를 이루어내었다. 하지만 팀 아레나에서 추가된 하이트맵 기능과 게임내 ROQ 동영상 재생 기능은 없다.

추가 및 향상점은 다음과 같다.
  • TIKI 애니메이션 - 확장명은 TIK를 사용하며 퀘이크 3의 MD3 모델 포맷을 대체한다.
    • 립싱크 - 입술 모양 립싱크까지는 구현되지 않았지만 하프라이프 1 수준의 립싱크를 구현한다.
    • 페이셜 애니메이션 - 안면근육 움직임으로 표정변화 지원
  • 3D 디지털 사운드 - EAX, A3D 지원, 서라운드 사운드 및 도플러 효과 등 각종 사운드 효과 지원
  • 싱글플레이 관련요소 추가(스크립팅 시스템, AI 시스템, UI 시스템 등)
  • 특수효과 개선(새로운 파티클 시스템, 새로운 스카이박스 시스템)
  • QVM 제거 후 C언어 기반의 DLL 게임 스크립트 시스템 추가
  • 개선된 맵 툴 Uber Tools Radiant - 개선된 엔진의 기능들의 사용하기 위한 여러가지 향상점과 더불어 툴의 편의성 자체가 기존의 퀘이크 3 Radiant와 비교할 수 없는 수준이다.

근본적으로 퀘이크 3 엔진 기반이기 때문에 리추얼이 타사에 라이센스하는건 불가능하다. 하지만 예외적으로, EA에서 퀘이크 3 엔진의 무제한 라이센스를 받은 후 퀘이크 3 엔진을 EA 내부 개발사나 서드 파티에 의해 외주개발로 개발을 하게 되었는데, 퀘이크 3 엔진의 근본적인 문제를 파악한 EA는 이드 소프트웨어와의 특별 협약하에 퀘이크 3 엔진의 라이센스 비용은 이드 소프트웨어에 지불하고, 리추얼에게 부가 비용을 지불한 뒤, 리추얼이 개선한 엔진을 받아서 개발하게 되었다.

그런 이유로, 리추얼 우버툴은 리추얼의 자체 개발작인 헤비 메탈: F.A.K.K.²와 '스타 트렉: 엘리트 포스 II' 외에 EA의 내부 스튜디오 또는 서드 파티에 의한 외주로 개발된 게임들인 아메리칸 맥기의 앨리스메달 오브 아너: 얼라이드 어썰트, 그리고 두 개의 007 게임에도 사용되었다.

메달 오브 아너: 얼라이드 어썰트는 개발사인 2015 Inc.가 자체적 개량을 통한 지형 시스템을 도입해서 좁은 실내맵 위주의 그래픽만 표현 가능했던 기존의 id Tech 3 게임들에 비해 비교적 넓은 환경의 맵인 오마하 비치 상륙작전 등을 2002년 당시의 기술수준에서 매우 실감나게 구현하였으며, 엔진을 더 개량해서 기존의 id Tech 3 엔진에서 구현할 수 없었던 리얼 다이나믹 라이팅을 구현하였다. 그러나 리얼 다이나믹 라이팅은 무색 광원밖에 지원되지 않는다.

EA에서 사용한 우버툴은 퀘이크 3 엔진에 기반한 헤비 메탈 F.A.K.K.2 엔진이었으나 리추얼이 헤비 메탈 F.A.K.K.2 이후로 개발한 '스타 트렉: 엘리트 포스 II'에서는 팀 아레나의 엔진을 기반으로 우버툴을 접목해서 팀 아레나 엔진에서 개선된 부분의 기능까지 사용하게 되었다.

메달 오브 아너 얼라이드 어썰트를 개발한 2015 Inc.의 주요 개발진이 나와 설립한 인피니티 워드가 콜 오브 듀티의 개발을 위해 리추얼 우버툴을 라이선스 못하고 리턴 투 캐슬 울펜슈타인 엔진을 라이선스했던 이유는 EA 외에는 라이선스가 제공되지 않은 것인지, 아니면 리추얼 우버툴의 추가 라이선스 비용이 만만치 않았던 것인지, 아니면 그냥 별 생각이 없던 것인지는 알 수 없으나 확실한 것은 리턴 투 캐슬 울펜슈타인 엔진보다 리추얼 우버툴이 모든 면에서 더 뛰어나다는 것이다.

3.3.4. id Tech 3 기반 게임 목록[편집]


개발사
제목
발매년도
장르
엔진 버전
이드 소프트웨어
퀘이크 3 아레나 / 팀 아레나 (확장팩) / 퀘이크 라이브
1999 / 2000 / 2010
FPS
퀘이크 3 v1.11 ~ v1.32[37]
레이븐 소프트웨어
스타 트렉: 보이저 엘리트 포스 (싱글 / 멀티 별도)[38]
2000
FPS
싱글: 퀘이크 3 v1.17 + 자체 개조(많이)[39] / 멀티: 퀘이크 3 v1.17
솔저 오브 포춘 II: 더블 헬릭스 (싱글 / 멀티 별도)[40]
2002
FPS
퀘이크 3 v1.31 + 자체 개조(매우 많이)
스타워즈: 제다이 나이트: 제다이 아웃캐스트 (싱글 / 멀티 별도)[41]
2002
TPS
퀘이크 3 v1.30 + 자체 개조(매우 많이)
스타워즈: 제다이 나이트: 제다이 아카데미 (싱글 / 멀티 별도)[42]
2003
TPS
제다이 아웃캐스트 + 자체 개조(약간)
그레이 매터 스튜디오
리턴 투 캐슬 울펜슈타인 (싱글 / 멀티 별도)[43] / 울펜슈타인: 에너미 테러토리[44] (스탠드얼론)
2001 / 2003
FPS
싱글: 퀘이크 3 v1.29 + 자체 개조(많이)[45] / 멀티: 퀘이크 3 v1.29 + 자체 개조(많이)
인피니티 워드
콜 오브 듀티 / 유나이티드 오펜시브 (확장팩) (싱글 / 멀티 별도)
2003 / 2004
FPS
리턴 투 캐슬 울펜슈타인의 엔진의 코드를 전면 재작성한 IW 엔진[46][47]
리추얼 엔터테인먼트
헤비 메탈: F.A.K.K.²[48]
2000
TPS
퀘이크 3 v1.05[49] + 우버툴(매우 많이)
스타 트렉: 엘리트 포스 II[50]
2003
FPS
헤비 메탈: F.A.K.K.²(우버툴) + 자체 개조(많이) + 퀘이크 3 v1.32 코드 일부[51]
로그 엔터테인먼트
아메리칸 맥기의 앨리스[52][53]
2000
TPS
헤비 메탈: F.A.K.K.²(우버툴) + 자체 개조(약간)
EA 레드우드 쇼어즈
제임스 본드 007: 에이전트 언더 파이어 (FPS 파트)[54]
2001
FPS
헤비 메탈: F.A.K.K.²(우버툴) + 자체 개조(약간)
제임스 본드 007: 에브리씽 오어 나씽 (FPS 파트)[55]
2004
FPS
헤비 메탈: F.A.K.K.²(우버툴) + 자체 개조(약간)
2015 Inc.
메달 오브 아너: 얼라이드 어썰트 / 스피어헤드 (확장팩 1)[56] / 브레이크쓰루 (확장팩 2)[57][58]
2002 / 2003
FPS
헤비 메탈: F.A.K.K.²(우버툴) + 자체 개조(많이)

  • GPL 소스 공개로 만들어진 상용 게임
    • 다크 샐베이션 (2009)

3.4. id Tech 4 <둠 3>[편집]


파일:attachment/idt4.jpg

2004년 출시된 둠 3의 소스 코드다. 2001년 2월 21일 도쿄에서 열린 맥월드 2001에서 처음 기술 데모를 공개했을 당시 비디오 게임 3D 그래픽 업계에 생소한 개념이던 노멀 맵과 실시간 그림자를 이용한 충격적인 그래픽을 보여주었다.

다만, 최초는 아니다. 둠 3 에 사용된 실시간 그림자 기법인 스텐실 버퍼 섀도우 볼륨(Stemcil Buffer Shadow Volume)언리얼 1220 특별패치에서 처음 적용되었고 그 시점은 1998년 11월이다. 스크린샷 1, 스크린샷 2, 스크린샷 3, 스크린샷 4

1999년 12월에 출시한 퀘이크 3 아레나에서도 "cg_shadows 2"라는 콘솔 명령어를 이용하면 비슷한 그림자를 볼 수 있었으나, 퀘이크 3의 그림자는 그림자가 카메라 안으로 들어가면 사라지는 문제점이 있었고 광원의 추적이 정확하지 않아 다양한 시각적 오류를 일으켜서 봉인해야할 콘솔 명령어였다. 그 이유는 스텐실 섀도우는 그림자가 카메라 안으로 들어가면 그림자가 사라지게 되는 문제점이 있었는데, 이것을 해결하기 위한 특별한 알고리즘을 사운드 블라스터 시리즈로 유명한 "크리에이티브"가 고안해서 특허를 등록는데, 언리얼은 그것을 사용했으나, 퀘이크 3는 그것을 사용하지 않고 문제점이 있는 상태 그대로 시범적으로 도입한 것이다. 존 카멕은 크리에이티브의 특허를 비판하며, 스텐실 섀도우의 문제점을 해결할 알고리즘을 크리에이티브와 전혀 다른 방식으로 고안하여 그것을 Carmack's Reverse라고 부르며 둠 3 엔진의 스텐실 섀도우에 사용하게 되며 그 시점은 2000년이다.

그러나 스텐실 섀도우의 문제점을 해결하는 알고리즘이 크게 복잡하고 어려운 문제가 아니었으므로, 크리에이티브나 Carmack's Reverse를 사용하지 않고도 또 다른 방법을 사용하는 다양한 알고리즘들이 나왔으며, 2001년 2월의 맥월드 2001에서 둠 3의 영상을 공개하기 이틀 전인 2001년 2월 19일에 출시한 Severance: Blade of Darkness에서 둠 3와 동일한 스텐실 버퍼 섀도우 볼륨 기술을 본격적으로 사용했다. 블레이드 오브 다크니스는 출시 당시 현란하고 역동적으로 움직이는 실시간 그림자에 놀란 게이머들이 많았다. 다만, 개발사가 유명하지 않고, 게임이 묻힌 탓에 화제가 되지 않았기 때문에 둠 3의 실시간 그림자를 사용한 게임이 둠 3 영상이 최초 공개도 되기전에 이미 출시되었다는 사실은 잘 알려지지 않았다.

2001년 출시된 언리얼 엔진 2에도 도입됐으며, 2001년 5월에 공개된 초기 언리얼 챔피언십의 스크린샷에서도 이 그림자를 볼 수 있었으나, 언리얼 챔피언십 게임 아트 스타일과 어울리지 않아서 최종 게임에는 사용하지 않았고, 언리얼 엔진 2를 사용한 게임 중 2003년 12월에 출시한 데이어스 엑스 2: 인비저블 워와 2004년 5월에 출시한 시프: 데들리 섀도우도 둠 3보다 스텐실 섀도우 볼륨을 먼저 사용하는 게임으로 출시되었다. 언리얼 엔진 3도 초기 버전에 도입했으나 PCM, VSM 등의 실시간 소프트 섀도우를 도입하면서, 비효율적이고 품질도 좋지 않은 스텐실 버퍼 섀도우 뷸룸을 더 이상 사용할 이유가 없어서 삭제했다.

그리고 둠 3 엔진의 그림자는 치명적인 단점을 안고 있었는데, 오브젝트의 셀프 섀도우에 적용 시, 노멀 맵 뒤에 숨어있는 로우 폴리곤의 각진 면이 드러나게 된다는 점이다. 유출된 E3 2002년 시연 버전의 영상에서 보면 주인공인 둠가이의 얼굴에 셀프 섀도우 문제가 드리워지면서 노멀 맵의 음영 뒤에 감추어진 로우 폴리곤 윤곽이 그대로 드러난다.

반면에 둠 3보다 먼저 출시한 데이어스 엑스: 인비저블 워시프: 데들리 섀도우는 스텐실 섀도우 볼륨을 사용하면서 둠 3와 같은 문제가 전혀 발생하지 않는다.

듐 3는 위와 같은 문제 때문에 등장하는 모든 인간형 캐릭터 및 오브젝트에 셀프 섀도우를 적용하지 않았고 몬스터형 캐릭터에게는 적용한 채로 출시되었는데, 몬스터형 캐릭터는 어차피 화면도 어두운데 움직임이 너무 빨라서 그 오류가 눈에 잘 띄지 않고, 또 죽으면 바로 시체가 사라지는 방법을 택했기 때문에 더욱이 눈에 띌 일이 없기 때문이다. 이 문제는 2012년에 리마스터된 둠 3 BFG 에디션에서도 고쳐지지 않았고, 2019년에 재출시한 버전에서도 여전히 해당 문제가 있는 상태로 출시되었다. 둠 3 엔진의 고질적인 문제라고 볼 수 있다.

그리고 노멀 맵은 1999년에 무료 공개로 출시한 3D 마크 2000[59]에서 Dot Product 3 Bump Mapping이라는 이름으로 이미 구현한 바 있고,[60] 크라이엔진의 초기 테크 데모로 2001년에 공개된 X-isle에서도 이미 노멀 맵을 구현했으며 실행가능한 데모가 배포되었다.

둠 3 엔진의 큰 특징인 두 가지 기술 모두 이미 둠 3 엔진이 처음 공개도 되기 전에 일반 대중들이 실행할 수 있는 프로그램과 게임으로 출시가 됐었던 것이며, 오히려 둠 3에서는 문제가 되었던 부분도, 둠 3 보다 일찍 출시한 게임에서는 문제가 없기까지 했다. 그럼에도 불구하고 그런 기술들이 둠 3에서 화제가 됐던 이유는, 당시 큰 스포트라이트를 받고 있던 존 카맥과 이드 소프트웨어의 작품이었다는 것, 그리고 PC 게임사에 큰 화제를 일으켰던 둠의 후속작이라는 점 때문이었다.[61]

그러나 그런 화제성도 정작 둠 3의 출시가 점점 늦어지면서 비슷하거나 능가하는 기술력을 가진 게임들이 이미 출시 및 공개가 되어버렸기 때문에, 둠 3 출시 시기에는 전혀 특출나지 않고 오히려 몇가지 기술적 결함이 발견되어 비판을 받게 되었고 그간 이드의 엔진들과 마찬가지로 코드의 구조적인 확장성의 한계, 개발 툴의 부족함, 기술의 단조로움으로 인한 표현력의 제한에 따라 타 개발사에 라이선스 계약도 거의 체결되지 않아서, 이드 소프트웨어의 프랜차이즈인 퀘이크 4, 퀘이크 워즈, 2009년작 울펜슈타인을 제외하면, 2개의 작품인 프레이와 브링크에만 사용되었다.

id Tech 3 엔진까지는 C언어를 사용하고 있었는데 id Tech 4부터는 드디어 C++를 사용하였다.

id Tech 3(퀘이크 3 엔진)을 바탕으로 렌더러부터 하나씩 새로운 코드로 재작성하는 방식으로 개발을 시작했는데, 개발 초기였던 2000년도 후반 인터뷰에서 존 카맥은 "퀘이크 3 엔진에서 렌더러가 완전히 새로 작성되었기는 하지만, 아직 나머지 코드가 퀘이크 3를 기반으로 하고 있으니, 이게 퀘이크 2에서 3으로 넘어갈 때처럼 완전히 새로운 엔진이라고 말하긴 힘들다"라고 발언하기도 했다. 하지만 몇 달 후에 다른 인터뷰에서는 모든 부분이 새롭게 작성되어 결국 완전히 새로운 엔진이라고 말했으며, 실제로 렌더러 뿐만 아니라, 게임플레이, 네트워크, 사운드, 파일 시스템 등 모든 부분의 코드가 일부분을 수정한 것이 아닌 완전히 새로 작성되었다. 작성된 언어까지도 기존의 C가 아닌 C++를 사용해 작성되었고, 결국 퀘이크 3 소스 코드의 어떤 부분도 남지 않았으며 새로 작성된 모든 코드는 퀘이크 3 소스 코드의 기본 틀도, 소스 구성도, 심지어 소스 파일의 코딩 타입조차도 완전히 다르다.

공개된 퀘이크 3의 소스 코드와 둠 3의 소스 코드를 비교해보면, 둠 3 엔진에 퀘이크 3 엔진의 아주 작은 잔재마저 조금도 찾아볼 수 없는, 둘은 정말 완전하게 다른 엔진인 것을 직접 확인할 수 있다. 둠 3 풀 소스 코드는 2011년 GPL 라이선스를 통해 공개되었으며 이듬해인 2012년에는 둠 3 BFG 에디션의 풀 소스 코드도 별도의 브랜치로 공개되었다. 둠 3 BFG 에디션의 경우 소스 코드를 살펴보면 렌더러는 거의 그대로지만, 파일 시스템이 상당 부분 재작성되었고, UI 코드도 속도 및 최적화를 위해 많은 부분이 새로 작성되었으며, 사운드 엔진 코드도 거의 새로운 코드로 대체되었다.

레이븐 소프트웨어에 라이센스되어 퀘이크 4가 개발되었고 휴먼헤드 스튜디오에 라이센스되어 프레이에 쓰이기도 했다.

기본적으로 4개의 텍스처(노멀 맵, 범프 맵, 스페큘러 맵, 디퓨즈 맵)을 사용하며, 라이트 맵이 아예 없고 100% 실시간 다이나믹 라이트와 실시간 그림자로만 모든 그래픽이 표현된다. 그러한 기술적 특성을 부각시키기 위해 둠 3의 맵들은 대부분 좁고 어두운 방과 복도 같은 작은 실내 위주로만 이루어져 있다.

둠 3 엔진을 사용한 퀘이크 4와 프레이도 엔진의 기술적 특성과 한계상 둠 3와 분위기가 비슷하다. 퀘이크 4는 게임플레이까지 둠 3와 크게 차이가 나지 않아서 둠 3의 모드 수준이라는 비판을 받았다. 둠 3 엔진을 사용한 프레이도 둠 3 엔진으로 개발을 하기 전의 오리지널 컨셉과는 분위기가 많이 달라졌는데 엔진의 기술적 특성과 한계로 인해 게임 분위기의 컨셉이 많이 변한 경우이다. 하지만 기존 FPS와는 다른 독특한 요소들로 게임플레이 자체는 둠 3와 판이하게 달랐다.

스플래시 데미지에서 개발한 에너미 테러토리: 퀘이크 워즈에는 id Tech 5의 주력 기술인 메가텍스처의 초기 버전이 포함되었다.[62]

id Tech 3(퀘이크 3 엔진)를 이용해 외주개발로 RTCW가 만들어진 것처럼 id Tech 4(둠 3 엔진)를 이용해 외주로 스플래시 데미지에 의해 퀘이크 워즈가 개발되었다.

퀘이크 워즈 엔진은 기존의 둠 3 엔진에 비해 여러가지 요소가 개량되었는데 모든 개량은 스플래시 데미지에 의해 자체적으로 개량된 것이지만, 메가텍스처 기술만은 이드 소프트웨어에 의해 지원을 받아 추가되었다. 본래 둠 3 엔진 코드에 메가텍스처 관련 코드가 약간 남아 있었으며, 퀘이크 워즈는 id Tech 5에서 본격적으로 사용될 메가텍스처 이전의 비교적 초기버전인 기술을 시범적으로 도입한 케이스라고 볼 수 있다.

퀘이크 워즈는 메가텍스처의 힘을 받아 기존 둠 3 엔진 게임에서 볼 수 없었던 광활한 대지를 표현했다. 하지만 퀄리티는 메가텍스처라는 이름이 무색할 정도로 매우 실망스러운 수준이었다.

퀘이크 워즈의 개발사 스플래시 데미지는 퀘이크 워즈 엔진에 기반해서 자체적으로 큰 개조를 거쳐 브링크를 개발하였다. 브링크는 스플래시 데미지가 자체적으로 추가한 가상 텍스처링 기술과, 멀티플랫폼 지원이 추가되었으며 렌더링 기술 부분에서도 다양한 최신 기술을 지원하도록 개선되었다.

레이븐 소프트웨어에서 개발한 2009년작 울펜슈타인은 레이븐 소프트웨어의 이전작 퀘이크 4(둠 3 엔진을 약간 개조) 엔진으로 개발을 시작했지만 렌더링 코드를 전부 재작성해서 오픈GL 대신 DX9를 API로 사용하고, 기본적인 월드 구현과 폴리곤 처리마저 둠 3와 완전히 다르고, 라이팅도 라이트 맵과 섀도우 맵을 사용하며, 소프트 섀도, 피사계 심도, 텍스처 스트리밍 등의 당시로서 현대적 렌더링으로 탈바꿈했다. 그렇기 때문에 레이븐 소프트웨어가 개발한 2009년작 울펜슈타인은 id Tech 3에서 코드가 전부 재개발된 IW 엔진처럼 보는 것이 맞다.

그리고 2009년작 울펜슈타인에는 이드 소프트웨어가 자체적으로 제작한 기존의 물리 엔진 대신 외부 미들웨어인 하복 물리 엔진을 접목해서 개발되었는데 존 카맥은 이런 움직임에 아쉬움을 나타냈다. 서드 파티 기술이 접목되면 향후 소스 코드를 공개하는 데 있어 어려움이 있기 때문이다. id Tech 엔진들의 공통사항인 특별한 구조적 프레임워크가 없이 규모도 작으며 유연성이 없는 형태로 작성된 소스 코드는 서드 파티의 소스 코드가 병합될 경우에는 분리도 힘들고 그 부분만 제외하고 공개하면 제대로 컴파일이 불가능하다.

잘 짜인 구조와 유연성을 겸비한 코드는 규모가 커도 전혀 그렇지 않다. 예로 언리얼 엔진 4.0 이후 버전은 기본적으로 소스 완전 공개 정책으로 개발되고 있으며 수 없이 많은 서드파티의 소스 코드가 접목되어 있으나 부분별로 별도로 분리되어 컴파일이 가능하기 때문에 소스 코드 공개에 전혀 제약이 발생하지 않고, 언리얼 엔진 1의 경우도 전체 소스 코드가 아닌 렌더링, 네트워크 등 각각의 모듈에 대한 헤더 소스만 공개했음에도 커뮤니티에 의해 퀘이크 시리즈의 풀 소스 코드 공개와 동일한 개선판이 나오고 있다. 단지 렌더링 모듈의 헤더 소스 공개만으로도 퀘이크 1의 각종 소스 포트처럼 새로운 그래픽 기술 추가 및 개선이나 DX8,9,10,11,12 지원 등과 함께 레이 트레이싱도 추가가 가능한데, 그것도 렌더링 드라이버의 헤더 소스만 공개했으므로 당연히 전체 컴파일이 아닌 렌더링 드라이버 DLL로만 가능한 것이다. 이미 언리얼 엔진 1에서도 그런 유연한 구조를 갖추고 있었는데, 오로지 개발하는 단 하나의 게임을 위해서만 작성되는 id Tech 엔진은 여전히 그런 구조를 갖출 필요가 전혀 없고, 당시에도 마찬가지였으니 서드 파티 소스 코드 병합에 존 카맥이 아쉬움을 나타낸 듯 하다.

위와 같은 이유로 2019년에 재발매된 둠 3는 외부 미들웨어인 FMOD가 포함되어 소스 코드를 공개하지 못했다.

2012년에 리마스터된 둠 3 BFG 에디션은 소스 코드가 공개되었는데, 외부 미들웨어 중 빙크 비디오 BIK도 둠 3 BFG 에디션부터 사용하고 있었으나 그것은 엔진 코드 내부에 병합되는 것이 아닌, 단순한 비디오 재생 모듈을 호출하는 것에 불과한 것이기 때문에 빙크 비디오 호출 부분만 간단히 제외하고 소스 코드 공개가 가능했다.

둠 3 엔진의 데이터 파일은 pk4 파일로 되어 있는데, 이것 역시 퀘이크 3 엔진의 pk3 파일처럼 그냥 zip 파일의 확장자명을 pk4로 바꾼 것이며, 둠 3 소스 코드를 보면 framework 중에 zip 압축 해제를 위한 무료 공개 소스 코드(unzip.h, unzip.cpp)가 포함되어 있다.

둠 3 엔진 게임들의 로딩 역시 상당히 긴 편에 속하는데, 퀘이크 3 엔진과 마찬가지로 pk4 파일은 압축되어 있으므로, pk4 파일 내부에 있는 파일을 직접 로딩할 수 없으니, pk4 파일에서 로딩을 위한 파일을 임시 폴더에 압축을 푼 다음, 그 압축이 풀린 파일을 로딩하는 방식이기 때문이다.

역시 퀘이크 3 엔진 게임들과 마찬가지로 pk4 파일들의 압축을 해당 폴더에 다 풀어 놓으면, 로딩 속도가 약 5에서 10배 이상 빨라지는 효과를 볼 수 있는데, 그 이유는 퀘이크 3보다 압축을 해제할 파일의 갯수도 많고 용량도 크기 때문이다. 파일 압축률에 따라 다르지만 맵 파일 같은 경우 약 5~8배 가량의 압축률을 보이기 때문에 pk4 파일들의 압축을 다 풀면 약 1.6Gb인 게임의 용량이 약 4Gb 정도로 늘어난다. 확장팩의 용량은 약 500Mb에서 pk4 파일의 압축을 다 풀면 약 1.6Gb가 된다. 둠 3와 확장팩을 합해 2.1Gb인 게임의 용량이 pk4 압축을 다 풀어 놓으면 약 2.8배 가량 늘어난 5.8Gb가 되니, 둠 3 출시 당시의 PC의 HDD 평균 용량을 고려하면 게임 하나의 용량치고는 약간 부담은 되는 정도의 용량이었다.

저 방식은 2020년대의 PC에서도 로딩이 느린데, 어찌됐든 일단 압축을 풀어야만 로딩을 할 수 있기 때문이다. 퀘이크 3처럼 용량이 작고 파일 갯수도 적으면 큰 문제가 안되지만, 파일의 용량이 크면 당연히 압축 해제 시간이 길어지고, 파일의 용량은 작지만 파일의 갯수가 많아도 압축을 해제하는 시간이 오래 걸린다. 둠 3의 경우 파일 갯수가 많고 지금 기준으로도 용량이 그렇게 작은 편이라고 할 수는 없다. 그래서 지금 기준으로도 오리지널 둠 3를 실행하면 대략 20년전 게임치고는 로딩이 상당히 길다.

2012년에 리마스터되어 출시된 둠 3 BFG 에디션은 pk4 압축을 사용하지 않고 id Tech 5를 사용한 레이지와 동일한, resources라는 확장자명을 가진 패키지 파일을 사용한다. 둠의 WAD 파일이나 퀘이크 1와 퀘이크 2의 pak 파일처럼 단순히 파일을 묶어주는 패키지 파일이며, 압축 포맷이 아니기 때문에 resources 파일 내부에 있는 데이터 파일들을 압축 해제과정 없이 직접 로딩할 수 있어서 pk4를 사용한 2004년작 오리지널 둠 3보다 로딩이 훨씬 빠르다. 대신 resources 파일은 내부의 파일들이 전혀 압축되지 않았으므로 게임 용량은 7Gb 정도인데, 오리지널 둠 3와 확장팩의 pk4 파일 압축을 다 풀어 놓은 5.8Gb보다 더 큰 이유는 리마스터된 텍스처나 모델 같은 데이터의 용량이 더 크기 때문이 전혀 아니며 BFG 에디션에 추가된 로스트 미션 때문에 약 1.2Gb 정도 늘어났기 때문이다.

'오리지널 둠 3의 메인 메뉴에서 NEW GAME을 누르고 난이도를 선택해서 시작되는 처음 맵 로딩 시간은 i7 3Ghz, 램 64Gb, GTX 3080 Ti[63]를 탑재한 최신 PC에서도 18초가 걸린다. 동일한 PC에서 둠 3 BFG 에디션의 처음 맵 로딩 속도는 3초다. 즉, 압축을 푸는 과정이 15초가 걸리고, 실제 로딩인, 데이터 파일을 램에 올려 놓는 과정은 3초라는 말이다.

둠 3 엔진을 사용한 게임들 중 둠 3 엔진 코드를 거의 수정없이 그대로 사용한 퀘이크 4와 프레이는 zip 압축 파일인 pk4를 데이터 파일 묶음으로 여전히 사용한다. 에너미 테리토리: 퀘이크 워즈도 데이터 파일을 pk4를 사용했으나 메가텍스처 파일은 압축하면 스트리밍 로딩을 할 수 없으므로, 별도의 megatextures 폴더에 압축하지 않은 상태의 mega 확장자 파일로 들어있는데, mega 확장자 파일은 그 자체가 여러 이미지 파일들의 묶음인 패키지 파일이기도 하다. 2009년작 울펜슈타인은 내부 소스 코드를 전부 새로 작성해서 거의 새 엔진에 가깝지만 데이터 파일을 pk4로 묶었다.

둠 3 엔진을 거의 모든 코드를 2009년작 울펜슈타인처럼 거의 새롭게 작성해서 2011년에 출시한 브링크는 pk4를 대신 sdpk2라는 파일 확장자를 사용하는데, 이 포맷은 LZX라는 생소한 압축 포맷이며, 그것을 확장자명만 sdpk2라고 바꾼 것이다.

둠 3 엔진의 모델은 버텍스 스키닝을 지원하는 스켈레탈 메쉬 모델 포맷인 md5mesh와 애니메이션 정보가 담긴 md5anim로 구분되어 있다.

소스 코드가 어느 정도 공개된 덕분에, DIII4A 등의 소스 포트가 나와있다. 소스 포트를 사용하면 안드로이드를 지원하는 기기에서 퀘이크 4, 둠 3, 울펜슈타인 2009 등을 돌릴수 있다.[64]

의외로 퀘이크 인핸스드는 둠 3 엔진의 소스 코드 일부가 사용되었다. 이는 퀘이크 2 인핸스드도 마찬가지다.

3.4.1. id Tech 4 기반 게임 목록[편집]


개발사
제목
발매년도
장르
엔진 버전
이드 소프트웨어
둠 3 / 악마의 부활 (확장팩) / BFG 에디션 / 둠 3 (2019)[65] / VR (PS4VR 전용)
2004 / 2005 / 2012 / 2019 / 2021
FPS
둠 3
레이븐 소프트웨어
퀘이크 4
2005
FPS
둠 3 + 자체 개조(약간)
울펜슈타인
2009
FPS
싱글: 퀘이크 4 + 자체 개조(사실상 새로운 엔진)[66] / 멀티: 퀘이크 4 + 자체 개조(거의 전부)[67]
휴먼헤드 스튜디오
프레이
2006
FPS
둠 3 + 자체 개조(약간)
스플래시 데미지
에너미 테러토리: 퀘이크 워즈 / 퀘이크 워즈 온라인
2007
FPS
둠 3 + 자체 개조(매우 많이)[68]
브링크
2011
FPS
퀘이크 워즈 + 자체 개조(거의 전부)[69]
허드슨(원청사)/파이스튜디오(개발원)
PC원인 ~거대 혜성 대접근~
개발취소
횡스크롤 액션
???? + 퀘이크 3?(추정)[70]

3.5. id Tech 5 <레이지>[편집]


파일:attachment/idt5.jpg

울펜슈타인, 둠, 퀘이크와 전혀 다른, 이드 소프트웨어의 새로운 IP인 레이지의 소스 코드다.

락스타의 게임 엔진인 RAGE와 같은 이름을 갖게 되어서인지는 몰라도 퀘이크 엔진, 둠 엔진에 비해 상대적으로 지명도가 약한 레이지 엔진이라고 불리지 않고 id Tech 5 엔진이라고 불리게 되었으며, 이로 인해 기존의 엔진들도 id Tech 시리즈로 개명을 하게 되었다.

소스 코드에 id Tech 5 또는 id Tech라고 작성된 함수명 같은 것은 전혀 없으며, 별도의 엔진으로 개발된 것이 아니고, 이전의 id Tech 시리즈와 같이 레이지의 소스 코드가 id Tech 5에 해당한다.

둠 3 엔진을 기반으로 메가텍스처 기술 중심의 새로운 렌더러를 개발했고, 개발 도중 나머지 모든 부분이 거의 재작성되어, 결국 둠 3의 코드는 거의 남지 않게 되었다. 파일 시스템, 게임플레이 코드, 사운드 엔진, 물리 엔진을 비롯해 둠 3 게임플레이에 적극적으로 사용됐던 인게임 UI 시스템도 최적화를 위해 거의 재작성되었다. 다만, 함수명이나 일부 코딩 타입 등(예를 들면 idEventLoop:GetRealEvent 같은 것들)은 둠 3 코드에서 정립한 스타일을 따르고 있으며, 극히 일부에 둠 3 코드의 몇 라인 정도가 남아 있기는 하다.

참고로 레이지에서 재작성된 파일 시스템, 사운드 엔진, UI 시스템 코드 등은 둠 3 BFG 에디션에도 활용되었다.

메가텍스처 기술에 중점을 둔 특성상 id Tech 5 엔진은 Global Dymanic Lighting(전체 씬에 대한 동적인 실시간 광원)을 지원하지 않으며 당연히 전체 씬에 대한 동적광원이 없으므로 전체 씬에 대한 실시간 그림자도 지원되지 않는다. 메가텍스처에 중점을 둔 엔진의 구조상 메가텍스처와 관련된 호환성 및 성능 문제 때문에 지원하지 않으며 동적 객체가 만들어내는 그림자 및 객체의 셀프섀도우만 지원한다.

이드 소프트웨어 게임들의 엔진은 항상 그 게임에 최적화된 기술들만 가지고 있어 범용적으로 개발되지 않았으며 이는 레이지도 마찬가지다. 레이지는 콘솔에서 60프레임 구현을 위해 모든 정적 객체의 그림자를 라이트 맵에 구워버려서 요구사양을 낮추고 프레임을 높이는 방향으로 개발되었기 때문에 굳이 전체 씬에 대한 동적 라이팅을 고려할 필요가 없었다.

레이지는 출시 당시의 동향에 따라 라이트 맵에 글로벌 일루미네이션을 사용했기 때문에, 정적인 모습 자체로만 보면 화사하고 사실적인 느낌의 퀄리티를 보여주지만 동적 객체에만 실시간 그림자를 사용하고, 정적 객체의 그림자는 상황에 따른 라이트 맵 교체도 없이 메가텍스처에 구워놓은 정적인 모습만 유지하고 있기 때문에 캐릭터 그림자는 빛의 방향에 따라 변하지만 배경의 그림자는 꿈쩍도 하지 않는 부자연스러운 모습을 보여준다.

"울펜슈타인 더 뉴 오더"는 레이지의 엔진으로 개발을 시작했으나 동적 광원에서 많은 개량을 거쳤고, "디 이블 위딘" 역시 레이지의 엔진으로 개발했으나 개발사인 탱고 게임웍스에 의해 자체적으로 많은 변형을 가했으며 특히 동적 광원 부분에서 많은 개량을 거쳤다. 울펜슈타인 더 뉴 오더는 존 카맥이 퇴사 전까지 개선한 엔진이 사용되었고, 디 이블 위딘은 존 카맥과 관련없이 탱고 게임웍스에서 자체적으로 개량된 엔진이다.

id Tech 5는 멀티플랫폼 지원 등 기존 이드 소프트웨어 엔진들에 비해 다소 향상되었다는 판단하에 'id eXtended Technology'라는 이름으로 발표를 하려고 했으나 이 이름은 공식적으로 외부에 발표되진 않았다.

원래 퀘이크 1, 2, 3 및 둠 3 엔진은 모두 'id Technology'라는 단일 명칭의 공식 라이센스 명칭을 가지고 있었으나 엔진 라이센스 시장에 본격적으로 진출을 준비하면서 버전을 재정립하기 위해 결국 둠 엔진부터 각 엔진 세대별로 id Tech에 숫자를 붙인 id Tech 시리즈로 개명을 했고 id eXtended Technology는 id Tech 5라는 이름을 갖게 되었다.

하지만 엔진 개발은 순조롭지 않았으며 레이지의 개발 및 출시도 오랫동안 지연되었고, 이드 소프트웨어가 베데스다의 모회사인 제니맥스에게 인수되어 더 이상 독립개발사로서의 입지를 잃자 엔진 라이센스 시장에서 철수하면서 더 이상 엔진을 외부 개발사에 라이센스해주지 않았다. 그렇지만 EA프로스트바이트 엔진처럼 베데스다 계열사 전용 엔진으로서 베데스다 산하의 스튜디오들은 사용이 가능하다.

프로스트바이트 엔진이나 유비소프트 및 바이오웨어에서 다수의 사내 전용으로 개발된 엔진들과 번지, 343의 자체 엔진 등이 외부에 라이센스를 하지 않는 이유는 해당 엔진들이 특정 게임에 완전특화되어 거의 변경이 불가능한 엔진이거나, 또는 범용적으로 사용이 가능하더라도 외부에 라이센스를 주기엔 개발 툴과 개발환경이 제대로 갖추어지지 않아서 사내에서 자체적 교육을 통해서만 사용될 수 밖에 없기 때문이다.

id Tech 5 역시 개발 툴인 id Studio를 접해본다면 "id Tech 5를 타사에 라이센스하지 않는 이유"가 명확하게 드러난다.

사실 id Tech 시리즈 중에 타사에서 가장 많이 사용되었던 id Tech 2, 3도 약 10여 타이틀 안팎이며 그마저도 대부분이 이드 소프트웨어 패밀리 계열이었던 레이븐 소프트웨어, 리추얼 엔터테인먼트와 그레이매터 스튜디오, 로그 엔터테인먼트 등의 작품이다.

id Tech 2는 레이븐과, 퀘이크 1 확장팩을 만들었던 리추얼의 SiN, 전 이드 소프트웨어 멤버였던 존 로메로의 다이카타나와 역시 전직 이드 소프트웨어 멤버였던 톰 홀의 아나크로녹스 등 이드 패밀리 계열에만 쓰였고, 킹핀을 개발한 개발사 재트릭스 역시 킹핀 개발시부터 이드 소프트웨어와 협력하다가 후에 이드 소프트웨어 패밀리가 되어 RTCW를 만든 그레이매터의 전신이다.

id Tech 3도 EA를 통해 메달 오브 아너 얼라이드 어썰트를 개발한 2015와 007 FPS 게임 두개를 제외하고는 레이븐, 리추얼 등 이드 소프트웨어 패밀리 계열사 작품들이며, EA에서 사용한 id Tech 3는 단순한 퀘이크 3 엔진이 아닌 리추얼에서 툴과 기능을 개선한 리추얼 우버툴을 사용했다. 콜 오브 듀티 역시 싱글플레이를 위해 개량된 RTCW 엔진을 사용해 2015에서 이미 id Tech 3를 사용한 개발진이 개발한 것이다.

당시까지는 엔진과 툴이 복잡한 수준까지 가지는 않던 시절이니 어느정도 사용은 가능했으나, id Tech 5가 출시된 시기는 개발과정과 절차가 퀘이크 3 개발 당시와는 비교도 못할만큼 복잡하고 방대하기 때문에 개발환경이 그만큼 많은 것을 뒷받침해줘야만 한다.

그러나 맵 에디터인 Radiant는 통합 툴을 표방하며 id Studio라는 이름으로 개명했지만 실상은 게임이 별도로 실행되는 탭과 메가텍스처를 덧칠하는 별도의 탭을 추가한 것에 불과하고 나머지는 Radiant를 그대로 사용하고 있다. 자세한 내용은 하단의 id Studio 참고

id Tech 5는 개발 툴의 구성, 개발작업의 편의성, 개발환경의 최적화에 있어 상용 엔진이 절대로 될 수 없는 퀄리티며, 개발 툴 인터페이스와 엔진 자체의 기능적, 구성적 한계가 명확하기 때문에 타사에서 만약 라이센스를 해도 개발자들이 엔진에 적응하는 것과 프로젝트에 맞게 엔진을 변경하는 데 많은 시간과 노력이 필요할 것이기 때문에, 정황상 타사에 라이센스를 판매하는 건 불가능하다고 자체 판단했을 것으로 보인다.

id Tech 5의 데이터 파일은 확장자가 resources라는 파일들로 되어 있는데, 이 파일은 둠 3 엔진에서 zip 파일을 확장자명만 pk4로 바꾼 것과는 다르게, 압축을 하지 않고 단순히 파일을 묶어 두는 패키지 파일이기 때문에 pk4 처럼 로딩을 할 때 압축을 풀 필요 없이 패키지 파일 내부의 실제 데이터 파일을 직접 로딩할 수 있다. 이 resources 파일 포맷은 이드 소프트웨어가 자체 개발한 패키지 파일 포맷이며, 2012년에 리마스터하여 출시한 둠 3 BFG 에디션도 pk4 파일 대신 resources를 사용해서 게임 용량이 약 3배 가량 늘어난 대신, 로딩 속도가 약 5 ~ 8배 가량 빠르게 향상되었다. id Tech 5를 사용한 울펜슈타인 더 뉴 오더와 디 이블 위딘도 동일한 포맷을 사용한다.

id Tech 5의 모델 포맷 확장자명은 MD6이다.

id Tech 5는 메가텍스처라는 기술을 주력으로 사용했다. 구글 어스나 비행 시뮬레이션 같은 데서 사용하는 방식과 동일하게 하나의 거대한 텍스처을 저장장치에서 스트리밍 로딩하는 기술이다. 일반적으로 사용되는 텍스처 타일링은 다양한 크기의 텍스처들을 각각 하나의 "타일"로 정의하고 비디오 메모리에 점유되어 격자무늬처럼 반복해서 사용하더라도 비디오 메모리에 점유된 텍스처는 각 텍스처(타일)의 용량만큼만 차지하게 된다. 그리고 부위별로 회전, 스케일링, 왜곡 등을 통해 몇 가지의 텍스처만으로도 동일한 타일이 반복되는 느낌을 어느정도 상쇄시킨다. 그리고 그 위에 또 다른 텍스처인 데칼을 덧씌워 추가적인 무늬를 꾸미기도 한다. 데칼 역시 타일과 동일하게 단일 또는 여러개의 텍스처로 구성된다.

타일의 갯수가 많으면 동일 텍스처를 반복해서 쓰는 경향은 적어지고 데칼도 많이 사용할수록 표현하고자 하는 다양성이 증가하겠지만 타일이던 데칼이던 사용하는대로 해당 텍스처의 용량만큼 메모리를 점유하므로 메모리 용량에 따라 사용할 수 있는 텍스처의 갯수(각 텍스처들의 용량에 따라)가 제한되어 아티스트가 원하는 모든 것을 완전하게 표현하기엔 제약이 따른다.

메가텍스처의 개념과 구현방법은 매우 단순하다. 타일링 방식 대신 맵 전체에 통째로 씌우는 단 하나의 거대한 메가텍스처를 사용하고 그것을 스트리밍 로딩을 통해 보여지는 부분만 메모리에 올려놓고 사용한다는 것이 기본 개념이다.

맵 에디팅 작업 시 1개 맵당 하나의 메가텍스처에 스탬프(데칼)를 마구 찍어서 다양한 무늬를 만들더라도 그것은 어차피 단 하나의 메가텍스처에 덧칠하는 것 일뿐, 별도의 데칼이 게임상에서 로딩되는 게 아니기 때문에 게임 실행시에는 단지 1개 맵에서 1개의 메가텍스처만을 보여지는 부분에 한하여 스트리밍으로 로딩한다.

이로 인해 텍스처 메모리의 제약에서 해방되고 아티스트가 추구하는 바를 그대로 표현할 수 있도록 한다는 것이 메가텍스처가 개발된 의도이다.

메가텍스처의 주요 개념은 다음과 같다.
  • 맵 전체에 단 하나의 거대한 텍스처를 통째로 씌운다. 이 하나의 거대한 텍스처를 "메가텍스처"라고 부른다.
  • 메가텍스처는 맵 상의 모든 정적 오브젝트를 포함한 맵 전체에 통째로 씌워진 상태에서 스탬프를 찍는 방식(데칼을 텍스처 위에 덧칠하듯이)으로 덧칠하는 텍스처 작업이 이루어진다.
  • 메가텍스처 위에 여러 종류의 스탬프를 마구 찍어서 저장하더라도 실제 게임에선 여러개의 레이어로 로딩되는 것이 아닌 단면 이미지로 로딩된다. 쉽게 말해서 포토샾에서 레이어가 수십가지 존재하더라도 그림파일로 저장하면 단순한 이미지로만 저장되는 것과 같은 이치이다. 그리고 당연한 얘기지만 디퓨즈 텍스처에만 사용되지 않고 노멀 맵, 라이트 맵, 섀도 맵 등 모든 텍스처 매핑이 메가텍스처 방식으로 구현된다.
  • 메가텍스처는 전체가 메모리에 로딩되지 않고(무지막지한 용량 때문에 당연히 전체를 한번에 로딩하지 못한다) 보여지는 부분만 스트리밍 로딩된다.

메가텍스처의 의도한 장점은 다음과 같으나, 장점이란 말이 무색할 정도로 실제 효용성에서 거의 이득이 없을뿐 아니라 결과적으로 단점만 생기게 되었다.
  • 의도한 장점 1: 정적 오브젝트를 포함한 맵 전체에 통째로 씌운 단 하나의 텍스처에 스탬프를 찍는 방식으로 작업하므로 아티스트가 표현의도를 반영하기가 용이하다. 쉽게 말해 이미 그림이 그려진 오브젝트들을 하나씩 배치하는게 아니라, 모든 오브젝트의 배치와 맵 모양이 먼저 완성된 상태에서 그 위에 그림을 그리는 것이다. 그로인해 아티스트의 표현의도를 반영하기가 용이하다.
    • 실제 효용성: 맵 전체에 걸쳐 단 하나라도 반복되는 무늬가 없으려면 스탬프로 찍는 텍스처 하나하나가 고유해야하며, 그렇기 위해선 텍스처 아티스트의 엄청 많은 작업 결과물들(동일 텍스처를 회전하던, 왜곡하던 스케일링하던, 모두 고유한 텍스처를 쓰던)이 필요하다. 이것을 의도한 존 카맥은 "맵 전체에 모두 유니크한 텍스처를 사용하는걸 강요하지는 않는다. 타일링을 쓰되 필요한 아티스트의 의도에 따라 필요한 부분에만 유니크한 텍스처를 사용하면 된다."라고 말했지만, 이렇게 작업한다면 애초에 의도한 메가텍스처의 의미가 없어진다. 맵 전체에 걸쳐 유니크한 텍스처를 사용하려한다면 아티스트의 엄청난 작업량이 필요하니, 아티스트의 작업량을 줄이기 위해 부분적으로만 유니크한 텍스처를 사용하라는 말인데, 메가텍스처 없이도 타일링으로 동일 텍스처의 스케일링, 회전, 왜곡 등을 통해 반복 무늬 느낌을 제거할 수 있으며 근래의 대부분의 게임들에서 그런 식으로 이미 개발되어있다. 가끔 타일링이 나타나는 경우가 있으나 일부러 뚫어져라 쳐다보며 반복 무늬를 찾으려고 하지 않는 이상 거의 눈에 띄지도 않기 때문에 메가텍스처가 의도한 이 부분은 결론적으로 아무런 효용성이 없는 것이다.
    • 발생된 단점: id Tech 5의 메가텍스처는 128000x128000 픽셀로 이루어진 메가텍스처를 맵 전체에 늘려서 사용하는데, 이는 맵이 크면 클수록 동일한 텍스처의 크기가 늘여지는 것이므로 맵이 커질수록 실제 게임에서 보여지는 텍스처는 저해상도화된다. 메가텍스처는 말 그대로 거대한 크기의 이미지를 저장한 파일이기 때문에 용량이 엄청나다. 일반적인 제작 방식에서 데칼을 예로 들자면, 텍스처의 스케일링, 회전, 왜곡을 하여 다양한 모양으로 타일 위에 덧씌우더라도 파일로는 해당 원본 데칼 텍스처만 필요하고 텍스처 메모리에 올라가는 것도 단 하나의 데칼 텍스처뿐이다. 그러나 메가텍스처는 일단 맵 전체를 무조건 하나의 거대한 텍스처 파일로 저장한 것이기 때문에 엄청난 용량이 필요하다. 레이지에서 하나의 맵에 사용되는 메가텍스처는 그 용량이 무압축 시 80GB에 달한다. 이는 압축을 거치며 1/250 수준으로 크게 줄어들긴 하지만, 압축으로 많은 손실이 발생되며 압축된 용량 또한 타 게임에 비하면 여전히 무지막지하다. 하지만 엄청난 용량과는 다르게 레이지를 통해서 보여준 결과물로는 레이지의 큰 맵을 맵 하나당 128000x128000의 해상도만으로 커버할 수 밖에 없기 때문에 오히려 "최근 게임들에 비해 턱없이 낮은 텍스처 해상도"를 보여준다. 그러면서 "맵 전체에 반복되는 텍스처가 단 한개도 없어서 가는 곳마다 새로워 보인다는 느낌을 주지도 못하는데" 이렇게 과도한 용량을 차지한다는 것은 실로 엄청난 단점이 아닐 수 없다.
  • 의도한 장점 2: 보여지는 부분만 스트리밍으로 로딩됨에 따라 게임에서의 텍스처 메모리 사용률은 고정적이므로 텍스처 메모리 관련 최적화는 레벨 디자이너가 별도로 신경쓰지 않아도 된다.
    • 실제 효용성: 보이는 부분만 스트리밍 로딩하므로 메모리 사용률은 고정적이다. 확실히 이 부분은 텍스처 메모리에 한해서 메모리 최적화를 신경쓰지 않아도 된다. 그러나 대부분의 최신 엔진들이 맵 에디팅 작업 시 텍스처뿐 아니라 다양한 부분에서의 최적화 프로파일링 툴이 실시간 작동하여 체크해주기도 하지만, 그것이 아니더라도 사실상 아티스트가 텍스처 메모리를 신경쓰며 작업하진 않고 한 화면에 과다한 용량의 고해상도 텍스처가 다수 들어가지 않는 이상(실제로 그렇게 될 경우는 전무하다) 퍼포먼스에도 거의 영향력을 미치지 않는다. 게다가 텍스처 스트리밍 로딩은 일반적인 텍스처를 사용한 제작방식에서도 지속 사용되어오던 부분으로, 맵 전체의 텍스처가 한번에 메모리에 다 로딩되지 않고 보여지는 부분만 부분적으로 로딩이 가능하며, 이는 메가텍스처에서 말하는 텍스처 가상화 스트리밍 로딩과 실질적으로 아무런 차이가 없는 것이다. 결론적으로 이 부분도 실제로는 아무런 효용성이 없다고 볼 수 있다.

메가텍스처는 그 이름으로 인해 많은 오해를 낳는데, 일반적으로 생각하는 것과는 다르게, 위에서도 언급되었지만 게임하면서 엄청난 해상도의 텍스처가 보이지는 않는다. 메가텍스처는 하나의 대형 텍스처를 맵 전체에 늘려 사용하기 때문에, 오히려 일반적인 텍스처를 사용한 제작방식에 비해 해상도가 떨어져 보이며 이 문제는 맵이 넓을수록 더욱 심화된다. 퀘이크 워즈의 경우, 지형에 디테일 텍스처를 사용함으로써 이 문제를 해결하려 했다. 하지만 디테일 텍스처는 여러가지 단점을 안고 있는 임시 해결 방편에 불과하며, 무엇보다 자연스러운 비주얼을 구현한다는 메가텍스처의 기술 방향과는 정면으로 충돌한다. 이런 이유들 때문에 레이지에는 쓰이지 않았으나, 게임 발매 후 텍스처 해상도에 대한 불만이 엄청났던 관계로 이후 패치를 통해 디테일 텍스처 옵션이 추가되었다.

메가텍스처는 화면에 보여지는 부분만 메모리에 불러오는 가상 텍스처링 방식이기 때문에, 이론적으로는 텍스처 해상도에 제약이 없지만 실제적으로는 미디어 용량에 의해 텍스처 해상도가 제한된다.[71] 메가텍스처 자체가 128000x128000 해상도의 이미지로 저장되기 때문에 용량이 엄청나며, 메모리에서는 가상화로 해결할 수 있다지만 미디어에는 어쨌든 어떤 방식으로든 통째로 저장해야 한다.

이로 인해 기종 싸움이 끊이지 않는 루리웹에서는 플빠엑빠들의 또다른 싸움의 빌미가 되기도 했다. PS3는 한 장의 블루레이에 최대 50기가를 담을 수 있고, PC는 하드 인스톨로 인해 딱히 제한이 없는 데 반해, 엑스박스 360은 하드가 존재하지 않는 아케이드 모델과, DVD 한 장에 최대 6.9기가까지만 사용 가능하다는 단점이 있어 레이지의 텍스처를 모두 온전히 담기에는 어려움이 있었다. 여기에 세 장의 DVD를 사용하는 게임에 대한 디스크 로열티 문제도 있어, 레이지는 결국 개발 도중에 게임 구조를 DVD 두 장에 맞게 수정해야 했다.[72][73] 이런 용량 문제로 인해 엑스박스 360용 레이지는 눈에 잘 보이지 않는 언덕 위의 텍스처 등이 타 기종에 비해 다소 압축될 것이라는 존 카맥의 말이 있었으나, 최종적으로는 세 기종 모두 동일하게 하향평준화되었다.

게다가, 레이지의 그래픽 문제 중 하나는 시야를 돌릴 때마다 텍스처 스트리밍 로딩 현상이 발생한다는 것이다. 이 현상은 울펜슈타인: 더 뉴 오더와 디 이블 위딘에서도 똑같이 일어나는 바람에 문제가 되었다.

비행 시뮬레이션 게임이나 구글 어스 등은 기본적으로 메가텍스처와 같은 기반의 기술을 사용한다.

결과적으로 메가텍스처는 실패한 기술이다.

존 카맥의 인터뷰 중 둠 3 개발당시 유니크한 텍스처를 구현하는 기술에 중점을 두려고 했으나, 그 당시로서는 그것보다 실시간 광원과 그림자에 초점을 두는 것이 맞는다고 판단하여 둠 3의 개발방향은 그쪽으로 흘러간 것이고, 그 사이에 누군가는 유니크 텍스처링을 구현할 것이라고 생각했으나, 아무도 하지 않아서 놀랐다고 한 적이 있다.

존 카맥이 유니크 텍스처링 관련 기술을 개발하려고 했던 이유는 그의 소수 정예에 대한 집착에서 파생되었을 가능성이 크다. 이드 소프트웨어는 둠 3 개발 당시에도 실 게임 개발인원 수가 채 20명이 안되는 소수 집단이었으며, 둠 3의 텍스처 상태는 당시로서도 심각한 저해상도로 비판을 받았고 텍스처의 다양성도 떨어졌다(배경이 화성기지와 지옥에 국한되어 있으니 다양할 것도 없지만). 그 이전의 퀘이크 1, 퀘이크 2에서도 텍스처의 다양성은 매우 떨어졌으며, 심지어 퀘이크 2는 듀크 뉴켐 3D보다도 배경에 사용된 텍스처 타일의 개수가 적었다. 퀘이크 3에선 그나마 이전보다 컬러풀해지고 배경의 다양함을 보여줬지만 같은 시기에 출시되어 경쟁한 언리얼 토너먼트는 고해상도 텍스처팩이 별도의 CD 1장으로 기본 탑재되어 있을만큼 크게 비교가 되었다. 언리얼 토너먼트 2003은 텍스처만 1GB 이상, 언리얼 토너먼트 2004는 텍스처만 3GB 이상의 용량을 차지했다.

이드 소프트웨어 게임들은 소수 개발체제의 한계로 게임에 쓰인 텍스처 종류의 한계가 명백했는데, 그나마 둠 3까지는 이드 소프트웨어 개발 게임들이 대부분 어둡고 칙칙한 탓에 타일링으로 인한 반복 무늬가 눈에 잘 띄지 않던 반면, 밝은 곳에서는 무늬가 일정하게 반복되면 눈에 쉽사리 띄게 되기 때문에 그것을 커버하기 위해 여러개의 데칼을 스탬프로 마구 찍어 유니크한 텍스처를 만든다는 것을 의도로 메가텍스처가 개발되었다고 볼 수 있다.

하지만, 레이지에서 보여준 결과를 놓고 보면 메가텍스처는 전혀 시대의 흐름을 읽고 따라가지 못한 결과물이다. 메가텍스처로 인해 환경의 역동성에 제한을 받았으며, 특히 레이지가 콘솔에서의 60프레임을 위해 실시간 그림자 처리 등의 효과까지 포기한 것은 시대적으로 기술 발전의 흐름을 역행한 것이나 다름없다. 애초에 이드 소프트웨어에 개발인원이 많아서 소수의 텍스처로 무늬를 반복하지 않아도 될 정도의 다양한 텍스처를 만들 여력이 있었다면 메가텍스처와 같은 발상은 나오지 않았을 것이다.

하지만 존 카맥의 생각은 변함이 없는 듯하다. 존 카맥은 퀘이크콘 2013에서 디스크 용량 제한으로 인해 레이지에서 고용량의 텍스처를 사용하지 못한 것에 대해 실망스럽다고 했고, 미래엔 클라우드 시스템을 통해 용량 제한을 극복하여 결국 메가텍스처 기술이 승리할 것이라고 주장했다. 그러나 10년이 지난 2022년 기준에서 돌아보면 그런 승리는 존재하지 않았다.

저장장치 속도가 비약적으로 향상되는 PS5, Xbox Series X에서 게임 개발의 패러다임이 빠른 저장장치의 이점을 최대한 활용하여 거대한 애셋 데이터를 저장장치로부터 실시간으로 스트리밍하여 퀄리티를 끌어올리는 방향으로 변화하게 되었다.

예를 들어 너티독이 PS3~PS4 시절에 개발한 게임들은 대부분의 애셋 데이터를 실시간으로 스트리밍하는 방식으로 높은 비주얼 퀄리티를 구현하고 있는데, HDD의 느린 속도 때문에 범용적으로 사용할 수 있는 방법은 아니었고 너티독처럼 일직선으로 진행되는 게임에서나 구현할 수 있는 기법이었다.

하지만 차세대기에서는 저장장치 속도가 충분히 빨라져서 범용적으로 취할 수 있게 된다. 언리얼 엔진 4에서는 버추얼 텍스처링을 도입했는데 이는 넓은 관점에서 보면 메가텍스처의 방향성과 약간 엇비슷하게 생각될 수 있으나 세부적으로 보면 구현 개념이나 기술적인 부분은 많이 다르다. 그리고 여기서 한발 더 나아가 언리얼 엔진 5에서는 가상 지오메트리 기술을 도입했는데, 이것도 빠른 저장장치 속도의 이점을 활용한 것이다.

id Tech 5의 메가텍스처 기술은 당대 게임기의 저장장치 속도의 제약에 묶여서 높은 퀄리티를 달성하지 못하고 심각한 팝인 현상과 더불어 광원이나 환경 등이 정적일 수 밖에 없는 한계가 발생하는 등 여러가지 면에서 시대를 역행하는 부작용을 낳았다. Xbox Series X와 PS5 세대에 와서야 차세대 게임기에서 빠른 저장장치 속도를 통해 메가텍스처가 추구했던 비전을 그나마 어느정도 구현할 수 있겠으나 결국은 여러가지 면에서 시대 상황을 적절하게 맞추지 못한 시대착오적인 기술이었다는 점은 변하지 않는다.

그 외에 메가텍스처가 가지는 소소한 장점으로는 로딩 시간 단축이 있다고 하나이 이는 일반적인 게임들도 맵 로딩시 전체 텍스처를 메모리에 전부 로딩하지 않고 일정지역에 도달하면 로딩을 하고 메가텍스처와 동일한 텍스처 스트리밍[74]을 사용하기 때문에 결국 메가텍스처가 가지는 이점은 없다고 봐도 무방하다. 일반적으로 텍스처 로딩보다는 메쉬 로딩에 시간이 오래 걸리며, 텍스처는 보여지는 부분조차도 다 로딩되기 전에 게임이 진행되고 텍스처 스트리밍으로 천천히 로딩되는 경우가 있지만 메쉬는 전체가 다 로딩되기 전에 시작되는 경우는 없다.


3.5.1. id Tech 5 기반 게임 목록[편집]


개발사
제목
발매년도
장르
엔진 버전
이드 소프트웨어
레이지
2011
FPS + 레이싱
레이지
머신 게임즈
울펜슈타인: 더 뉴 오더 / 디 올드 블러드 (스탠드 얼론 확장팩)
2014 / 2015
FPS
레이지 + 자체 개조 (많이, 광원 재작성)
탱고 게임웍스
디 이블 위딘
2014
FPS
레이지 + 자체 개조 (매우 많이, 광원 재작성)


3.6. id Tech 6 <둠(2016)>[편집]


2007년 id Tech 5를 공식발표하면서 id Tech 5의 뒤를 이어 새롭게 개발할 엔진으로 Sparse Voxel Octree라는 기술로 폴리곤 대신 복셀기법을 사용한 id Tech 6 계획이 존 카맥의 인터뷰나 여러 웹진의 기사에서 다뤄진 적이 있었다. 이드 내부에서는 id tech 666이라고 통칭되기도 한다.

하지만 2007년 당시에는 id Tech 5를 한창 개발중이던 시기였기에 복셀 기법을 사용한 id Tech 6는 단순한 구상에 그치고 말았다. "퀘이크콘 2008 존 카맥 키노트"에선 복셀 기반의 id Tech 6을 구동할 하드웨어가 없기 때문에 차세대에서도 여전히 폴리곤 기반일 것이라는 연설을 했고 2013년 11월 22일 밝힌 존 카맥의 완전한 퇴사로 인해 복셀 기반의 id Tech 6는 결국 개발되지 않았다.

따라서, 복셀 기법을 사용한 id Tech 6은 존 카맥의 차기 엔진 계획에 대한 희망사항이었던 것이지 연구단계에 들어갔다거나 실체가 있었던 것은 아니었다. 존 카맥의 퇴사와 관련하여 팀 윌리츠가 한 언급에 따르면 "존 카맥은 id Tech 5와 관련된 작업을 마무리하고 퇴사하였다."라고 하였는데 이는 곧 id Tech 6은 개발되지 않았음을 의미한다. 존 카맥의 퇴사도 그렇거니와, 현대 3D 게임의 그래픽의 트렌드가 폴리곤에서 복셀로 넘어갈 조짐은 조금도 보이지 않기 때문에 id Tech 6가 정말로 복셀 기반으로 개발되어 나왔다면 메가텍스처의 실패에 이어 시대의 흐름을 따라가지 못한 엔진이 나왔을지도 모른다.

파일:external/www.techspot.com/2016-05-15-thumb.jpg
2014년 7월 17일 퀘이크콘 2014에서 신작 "둠"의 정보가 공개되었으며 여기에 사용되는 엔진이 id Tech 6라고 발표되었다. id Tech 6는 복셀을 기반으로 한 엔진이 아니고 id Tech 5를 개조한 엔진이며 게임의 출시시기가 고려되어 PS4, Xbox One 플랫폼 지원, id Tech 5의 정적 라이팅 대신 동적 라이팅으로의 변경, 트렌드에 따라 물리기반 렌더링 지원 등의 개선이 적용됐다.

하지만 id Tech 5의 최대 단점인 메가텍스처가 여전히 사용되고 있으며 그에 따른 텍스처 대비 고용량과 텍스처 팝인의 문제점은 그대로 가지고 있다. 모델 포맷도 id Tech 5의 MD6을 사용한다.

id Tech 6 역시 기존의 id 엔진과 마찬가지로 신작 둠의 소스 코드가 곧 id Tech 6다. 여전히 PC에서도 OpenGL 기반이며 둠 출시 후 패치를 통해서 OpenGL의 차기 버전인 Vulkan을 지원한다.

존 카맥이 2013년 이드 소프트웨어를 떠남으로써 공석이 된 자리는 크라이텍에서 크라이엔진의 리드 R&D 엔지니어링을 담당했던 티아고 소사(Tiago Sousa)라는 개발자가 대체했고 렌더링 분야에서 리드를 맡는다. 존 카맥이 기존에 작업하던 코드를 상당부분 재활용했으나 존 카맥이 떠난 이후 엔진의 방향성이 결정되었다.


3.6.1. id Tech 6 기반 게임 목록[편집]


개발사
제목
발매년도
장르
엔진 버전
이드 소프트웨어
둠(2016) / 둠 VFR (VR 버전)
2016 / 2017
FPS
둠(2016)
머신 게임즈
울펜슈타인 2: 더 뉴 콜로서스 / 더 프리덤 크로니클즈 (DLC) / 영 블러드 (스탠드얼론 외전) / 사이버파일럿 (VR 외전)
2017 / 2019
FPS
둠(2016) + 자체 개조 (매우 많이)


3.7. id Tech 7 <둠 이터널>[편집]


파일:gallery8--doom-eternal2x.original.jpg
id Tech 6(둠 리부트 코드)를 바탕으로 렌더링 코드의 상당 부분을 거의 다 갈아 엎었다.

둠 리부트와 둠 이터널 게임의 그래픽으로 보면 크게 다른 점이 없어 보이지만 같은 하드웨어에서 프레임을 최대한 뽑아내기 위한 목표에 따라 기본 지오메트리 처리 구현부터 라이팅, 셰이더 등 모든 렌더링 코드 자체가 거의 완전히 새로운 엔진 수준으로 재작성되었기 때문에 버전 숫자를 올려 id Tech 7이라고 발표하였다.

렌더링을 제외한 나머지 부분은 id Tech 6의 나머지 코드 전부를 거의 비슷하게 그대로 사용하는 것처럼 보이긴 하지만 둠 이터널 게임 스타일에만 최적화되게 다듬고 줄이면서 전체 코드의 구조와 내부 코드 구성을 타이트하게 만들었는데, 퀘이크 1 코드에서 퀘이크 2 코드가 작성된 것처럼 완전히 새로운 구조로 작성된 것이라고 볼 수는 없다. 이것은 퀘이크 1과 퀘이크 2가 전체 소스 코드의 구조까지 다르지만 렌더링 코드가 거의 같아서 둘 다 id Tech 2의 넘버링을 유지한 것과는 정 반대의 상황이다. 코드 구조가 완전히 새롭게 개발되고 주요 파트가 거의 새로 작성되었으나 렌더링 코드가 퀘이크 1과 거의 똑같기 때문에 퀘이크 2도 id Tech 2의 넘버를 유지한 것과는 다르게, id Tech 6와 id Tech 7은 코드 구조가 특별히 둠 이터널 게임에 최적화되면서 타이트하게 줄어들었으나, 렌더링 코드가 거의 전부 새로 작성되어 완전히 다 바꼈기 때문에 id Tech 6에서 id Tech 7로 넘버링이 넘어간 것이라고 볼 수 있다.

목표는 둠 2016과 마찬가지로 가장 보기 좋은 60프레임 게임(콘솔 기준)을 만드는 것이었으며 개량된 성능은 id Tech 6보다 10배 많은 지오메트리 처리와 여러 부분에서 렌더러를 개선해 HDR을 지원하고 최대 1000 프레임[75]까지 가능하게 만들었다. 사실 1000 프레임 달성은 엔진에 어떤 특별한 기술이 있는게 아니며 하드웨어만 가능하면 어느 게임이든 가능한 조건이다. 1000 프레임 언급은 그만큼 둠 이터널의 프레임 안정 최적화에 신경을 많이 썼다는 의미로 받아들이면 된다.

코드를 1백만 줄 이상 줄여 엔진을 더욱 가볍게 만들었으며(그 과정에서 OpenGL 및 메가텍스처 코드를 모두 제거했다) 로딩 시간도 단축했다. 그런고로 PC 버전은 Vulkan API 전용이며, 둠 이터널 출시 후 업데이트를 통해 레이 트레이싱[76], DLSS[77], VRR/VSR[78]를 지원하게 되었다.

OpenGL을 지원하지 않고 하위 호환성을 배제한 후 Vulkan 전용으로만 구동하므로 하이폴리곤의 효율적 렌더링 등 최적화 향상과 광원 등 일부 비주얼 효과의 향상이 있는 정도인데 둠 이터널 게임 그래픽상으로는 둠(2016)에 비해 비주얼의 향상점은 미미하다. 대신 최적화가 크게 향상되어서 Xbox One S에서 둠 이터널 구동시 둠(2016)보다 더 뛰어난 해상도로 프레임 드랍 거의 없이 60FPS로 구동된다.

메가텍스처가 사라진 대신 텍스처 위에 데칼을 덧입히는 방식으로 텍스처 디테일을 올리는 방식을 취하고 있는데 워크플로우 자체는 메가텍스처와 비슷하나 텍스처 팝인과 같은 메가텍스처의 단점이 없다.

이전 id Tech 엔진들과 마찬가지로 둠 이터널의 소스 코드 자체가 곧 id Tech 7이다.

렌더링 파트를 비롯한 코드 전부가 오로지 둠 이터널 게임 스타일에만 최적화된 형태로 작성되어 코드 규모가 이전보다 확연하게 줄어들었으며, 그런 특정한 스타일에만 최적화되어 작아진 전체 소스 코드는 그 구조상으로도 당연히 전혀 범용성을 고려할 수 없어 코드를 변경하거나 확장하는 것이 매우 한정적이라서 엔진 자체의 확장성이 전혀 없다고 봐도 무방하며, 소스 파일과 그 소스 안의 코드 하나도 변경이나 확장이 거의 불가능에 가까워, 둠 이터널의 스타일을 벗어난 다른 형태의 게임을 아예 만들 수조차 없다.

그래서 그동안 id Tech 엔진을 사용하던 소수의 제니맥스 계열사들에게도 사용되지 않고 있으며, id Tech 5와 6로 울펜슈타인 시리즈를 개발한 머신 게임즈의 인터뷰에서도 이런 점과 관련하여 id Tech 엔진 사용에 대해 난색을 표명한 바 있다.

id Tech 5를 사용했던 디 이블 위딘 시리즈의 개발사 탱고 게임웍스는 디 이블 위딘 2에서 자체 개발 스템 엔진으로, id Tech 5를 사용하던 아케인 스튜디오도 스템 엔진처럼 내부를 다 새로 작성해 자체 개발 보이드 엔진으로 이미 다 넘어간 상태였기 때문에 id Tech 6부터 사용을 안한 상태였고, id Tech 5로 울펜슈타인 더 뉴 오더를 개발했던 머신 게임즈는 울펜슈타인 2 더 뉴 콜로서스에는 id Tech 6을 사용했다.

그러나 머신게임즈조차도 차기작인 인디아나 존스와 또 다른 미공개 신작의 개발을 위해서, id Tech 6를 바탕으로 울펜슈타인 2 더 뉴 콜로서스의 개발을 위해 상당 부분 개조한 엔진을 바탕으로 거의 모든 코드를 새로 작성하고 툴까지 전부 새로 개발하는 새로운 자체 엔진을 이미 만들고 있으므로, 처음부터 id Tech 7의 사용을 고려할 필요도 전혀 없었을 것이다.

3.7.1. id Tech 7 기반 게임 목록[편집]


개발사
제목
발매년도
장르
엔진 버전
이드 소프트웨어
둠 이터널
2020
FPS
둠 이터널


4. id Tech에서 포크된 독립 엔진[편집]


id Tech에서 포크로 개발됐으나 독자적인 엔진으로 독립되어 별개의 저작권을 가진 게임 엔진들이 있으며 그렇게 될 수 있는 이유가 있다.

일반적으로 어떤 소스 코드에서 포크된 소스 코드는 조건에 따라 원래 코드의 몇 %가 남았는지 또는 구조적으로 어떤 개조를 거쳤는지에 따라 다르겠지만, 대부분은 본래의 소스 코드에서 포크되어 새로운 기능을 갖게 되더라도 원 소유자의 저작권에서 자유롭지 못하다.

예를 들어 언리얼 엔진 2을 가지고 내부 기술을 거의 다 새롭게 만든 시프: 데들리 섀도스, 데이어스 엑스: 인비저블 워와 스플린터 셀: 컨빅션, 스플린터 셀: 블랙리스트는 언리얼 엔진의 저작권에서 자유롭지 못했는데, 그 이유는 내부 기술을 거의 다 새로운 것으로 교체했지만 언리얼 엔진이라는 견고하고 유연한 프레임워크와, 엔진 구조에 유기적으로 융합된 언리얼 에디터가 존재하고, 그 바탕에서 내부 모듈을 새롭게 교체한 것이기 때문이다. 그 유연하고 견고한 프레임워크를 여전히 유용하게 바탕으로 깔고 사용한 덕분에 새로운 기술을 쉽게 교체할 수 있었으며 언리얼 스크립트, 에디터, 기타 유틸리티도 자체 개량한 엔진에 맞춰 유연하게 적용할 수 있었기 때문에 여전히 언리얼 엔진의 저작권에 묶여 있는 것이다.

언리얼 엔진의 설계 구성은 다른 엔진에서도 볼 수 없는 독특한 방식인데 비유하자면 언리얼 엔진은 완성된 레고블록 같은 구조 내에서 하나씩 각 부분을 교체하는 방식이기 때문에 자체 버전업이나, 렌더링, 물리를 비롯해 전반적으로 기술적인 코드가 전부 교체된 세대 전환인 언리얼 엔진 1에서 언리얼 엔진 2로의 업그레이드도 같은 기반을 그대로 유지한 채 자연스럽게 버전업되었다. 하지만 렌더링 스타일이 완전히 변경되려면 렌더링 로직을 전부 들어내고 새로 개발해야 되는 한계가 있어 그럴 경우 원래 개발된 엔진의 다른 기능과의 호환성이 무의미해지고, 엔진 코드와 게임 코드의 불명확한 경계, 그리고 콘솔 등을 고려한 멀티플랫폼 동시 개발에 제한이 있는 등 그 구조상에도 한계가 있어서 같은 기반으로 변화하는 시대에 대응은 할 수 없었다. 언제까지나 같은 구조 기반으로 엔진을 업데이트할 수는 없는 노릇이었다.

어쨌거나 언리얼 엔진 1 기반으로 10년 이상 큰 개조를 거친 듀크 뉴켐 포에버도 여전히 언리얼 엔진의 견고하고 유연한 프레임워크를 바탕으로 언리얼 에디터와 언리얼 스크립트를 여전히 사용했고, 스플린터 셀 컨빅션과 블랙리스트는 오랜 기간에 걸쳐 이미 지원이 끊긴 오래된 엔진인 언리얼 엔진 2를 자체 개량을 통해 재사용했음에도 여전히 언리얼 엔진에 저작권과 라이선스료를 지불해야만 했다.

언리얼 엔진 3는 기존에 파악된 한계를 극복하기 위해 언리얼 엔진 2를 바탕으로 업그레이드가 아닌, 코드 설계를 처음부터 새롭게 작성하여 더 견고하고 유연한 모래상자 같은 구조를 갖게 됐다. 엔진 코드와 게임 코드 간의 명확한 경계로 개발간 엔진 업데이트의 용이함, 멀티플랫폼 개발 및 이식의 용이함, 렌더링 스타일 완전 변경시에도 부분적 코드 수정으로 가능하고 엔진의 모든 기능들과 호환성을 유지가 가능하여 약 10년간 같은 기반 내에서 엔진의 기능들이 크게 업데이트 되면서 수백여 게임들에 사용되었고 각 게임마다 다양한 렌더링 스타일을 보여주거나 변화를 위해 필요한 여러가지 개량이 유연하고 손쉽게 가능했다. 하지만 언리얼 엔진 3도 10년 정도가 흐르자 그 코드 구성에도 구조적 한계가 파악되었는데, 그 설계 구조의 일정 틀을 벗어나는 개량을 하기가 어렵고 오류 발생 가능성이 높으며, 또 기존에 구현된 기술과 완전히 다른 신기술을 도입시에는 기존의 기능과 융합하거나 필요없는 기능을 오류 없이 삭제하는데도 많은 작업이 필요했는데 그 자체가 유연함과는 거리가 있는 상황이 되어버렸다.

어쨌든 간에 언리얼 엔진 3를 사용하면서 많은 개량을 거쳤던 게임들도 구조적 견고함과 언리얼 에디터의 덕을 여전히 봤다.

언리얼 엔진 4에서 그 한계를 극복하기 위해 언리얼 엔진 3를 기반으로 업그레이드하지 않고, 또 다시 처음부터 새로운 코드 설계를 하여 완전히 유동유체 같은 구조를 구현한다. 언리얼 엔진 4의 구조는 모든 기술과 각각의 파트와 툴이 완전히 모듈화 및 컴포넌트화를 이루고 있어서 새로운 기술의 추가나 개량, 수정, 교체, 삭제가 매우 용이하며, 완전히 새로운 기술이나 외부 코드와 툴을 융합하는데도 구조적 문제 없이 매우 수월하게 가능하고, 어떤 개량을 적용하더라도 엔진의 모든 기능과 호환성을 유지하면서 코드를 지저분하게 만들지도 않고 각 파트별로 깔끔하게 구분되기 때문에 엔진 자체의 버전업이나 세대 전환 업그레이드도 자연스럽게 할 수 있어서 언리얼 엔진 4에서 언리얼 엔진 5로의 업그레이드도 부드럽게 전환됨은 물론이고 언리얼 엔진 4로 개발하던 게임이 언리얼 엔진 5로 전환하는 것도 매우 쉽게 가능하게 되었다. 그래서 언리얼 엔진 5를 비롯한 앞으로의 차기 버전들도 그 유연함 속에서 버전업한다고 한다.

위와 같은 이유로 언리얼 엔진 4 이상의 버전을 사용하는 게임들은 많은 개량을 거쳐도 완전 조립식 형태의 구조적으로 유연한 구성 덕택에 모든 코드를 다 교체할 상황은 거의 일어날 일이 없으며 그렇게 많은 개조를 거친 상황이라도 정식 엔진 업데이트를 적용할 수 있다.

만일 내부의 많은 모듈을 자체적으로 개량한 버전만을 사용하더라도 당연히 그 유연한 구성와 언리얼 에디터 및 툴의 덕을 여전히 보고 있기 마련이기 때문에 그것은 여전히 언리얼 엔진이며 저작권에서 자유로울 수 없다.

또 다른 엔진을 예로 들어보자면, 크라이엔진 1의 포크 듀니아 엔진, 크라이엔진 3의 포크 럼버야드→오픈 3D 엔진, 크라이엔진 3의 포크 스타시티즌의 스타 엔진 등이 있다. 크라이엔진은 일정한 틀을 가진 프레임워크가 있고 1에서부터 5까지 그대로 그 구조속에서 개선되었기 때문에 1부터 5까지 전체 틀이 크게 다르지 않고 발전된 기술로 일부 코드가 개선이나 대체, 그리고 추가된 기능, 새로운 툴 메뉴 추가 등에 필요한 새로운 코드만 덧붙이거나 삭제하는 방식으로 버전업 되었다. 다만 크라이엔진의 그 구조는 전혀 언리얼 엔진처럼 유연하지 못하고 제약이 크지만 그나마 장점인 것은 샌드박스 에디터가 언리얼 엔진처럼 엔진과 통합된 툴이라는 것이다.

럼버야드는 포크된 후 약 5년 이상의 상당한 기간동안 많은 부분을 새로운 코드로 대체했음에도 여전히 크라이엔진의 구조적 프레임워크를 가지고 있고 그것을 벗어날 수 없기 때문에 그에 따른 다양한 제약사항이 단점으로 따라왔다. 사실상 이런 경우는 새로운 저작권을 행사할 수 없고 여전히 크라이엔진에 종속되는 게 맞지만, 특별히 크라이텍의 재정상황이 매우 좋지 않아 직원들 월급이 몇 개월 이상 밀리고, 대부분의 스튜디오가 문을 닫고 본사마저 문을 닫을 위기가 닥치던 시기에 크라이엔진 3의 소스 코드와 모든 권한을 아마존에게 팔아 넘겼기 때문에 별개의 엔진으로 만들어지게 된 것이다. 럼버야드의 소스 코드를 확인해보면 전체 틀은 크라이엔진 그 자체며, 많은 부분이 크라이엔진의 코드를 그대로 활용하고 있다. 크라이텍은 크라이엔진 3에서 코드를 약간 버전업하면서 크라이엔진 5를 발표했는데, 럼버야드와 크라이엔진 5를 보면 결국 둘은 근본이 같고 시기상으로도 동일하므로 결국 그렇게 5년 이상이 지난 시점에서 보니, 그 틀에서 그 기간동안 추가할 수 있는 거의 비슷한 업데이트[79]를 하는 것으로만 제한이 되니, 결국 럼버야드나 크라이엔진 5나 시간이 지나도 비슷한 모습이 될 수 밖에 없었다. 럼버야드를 오픈 소스화 하고 이름을 바꾼 오픈 3D 엔진 역시 마찬가지다.

스타 시티즌의 스타 엔진도 내부 모듈의 대부분을 새로 개발했지만 크라이엔진의 큰 틀을 가진 프레임워크는 그대로 유지되고 있다. 그래서 여전히 크라이엔진의 저작권에 묶여 있어야 하지만, 스타 엔진이 크라이엔진의 저작권에서 벗어날 수 있던 이유는 크라이엔진 3를 사용한 럼버야드가 크라이엔진과는 별개의 저작권을 가지고 있으니, 구조가 완전히 동일한 럼버야드로 바꾸는 척하고 말만해도 저작권에서 벗어날 수 있다. 스타 엔진과 럼버야드 둘 다 크라이엔진 3의 포크로, 구조가 완전히 동일한데, 스타 엔진의 내부 모듈은 대부분 재개발되었으니, 사실상 크라이엔진 3에서 럼버야드로 바꾼다고 말하는 것 자체가 말장난에 가깝다. 스타 엔진이 크라이엔진 3에서 럼버야드로 포팅이 2일 밖에 안걸렸다고 주장하는 데 엔진 프레임워크가 완전히 동일하므로 전부 옮기는 데도 큰 제한이 없던 것으로 보인다. 아니면 실제로는 정말 아무것도 안했지만 포팅했다고 거짓말했을 수도 있다. 충분히 그럴 수 있는 일이다. 예를 들어, 동일하게 생긴 틀에, 빚어 놓은 반죽을 그대로 옮기는 것과 같기 때문이다.

듀니아 엔진은 비교적 코드 수가 적었던 크라이엔진 1에서 포크된 것이지만, 그 프레임워크는 그대로 유지되고 있어, 파 크라이 시리즈 박스 표지 뒷면에는 항상 based on Crytek's Original Far Cry directed by Cevat Yeliy. Powered by Crytek's Technology "CryEngine."이라는 문구가 표기된다. 파 크라이 1 개발 당시 유비소프트의 지원으로 제작됐고 계약 조건상 때문에 파 크라이 IP 자체 및 게임 소스 코드 및 개발된 게임 데이터 전체와 판권도 유비소프트 소유지만, 파 크라이 1 소스 코드 자체가 크라이엔진 1이며 크라이텍은 크라이엔진의 소유권자이므로 애매한 일이 발생하게 된 것인데 전후사정이 어떻든 간에 파 크라이 시리즈에 사용되는 듀니아 엔진은 크라이엔진의 저작권에 묶여 있는 것이 맞고, 듀니아 엔진이라는 이름은 단지 유비소프트 내부 스튜디오에서 부르는 이름일 뿐이다.

이처럼 크라이엔진은 일정한 프레임워크가 형성되어 있고 유니티 엔진을 포함하여 대부분의 상용/비상용, 공개/비공개 게임 엔진들이 그렇게 일정한 프레임워크 틀을 가진 형태로 구성되어 있다. 그 구조 자체가 유연하거나 유연하지 않거나는 별개의 문제로, 그 틀 내에서 코드가 수정되므로 어떻게 개조를 하더라도 저작권에서 벗어나기가 힘든 것이 사실이며, 특히 종합 툴이 엔진과 하나로 통합된 구성이라면 더욱 그 프레임워크에 강하게 묶여 있을 수 밖에 없는다. 그것을 다 버리고 새로 작성한다면 백지에서부터 새로 만드는 것과 다름 없으니 엔진 자체를 사용하는 의미가 전혀 없게 되므로 포크된 엔진이 별도의 저작권을 갖기 힘든 것이다.

유니티 엔진도 크라이엔진과 비슷하게 엔진에서 정해진 일정한 틀인 프레임워크가 자리잡고 있고 종합 툴이 엔진과 통합되어 있는데 유연하지 못한 구조에서 계속 새로운 기능만을 덧붙이고 플러그인 넣고 이것저젓 마구잡이로 바꾸고 있다 보니 최적화 문제가 자주 발생한다. 일반적으로 유니티가 유연하다고 알려진 경우가 많은데, 유니티는 유연하지 않은 프레임워크와 효율적이지 않은 코드 구조를 가지고 있지만,[80] 애셋 스토어의 수 많은 플러그인과 각종 애셋으로 유연성을 유지하는 것이다.[81]

그러나 id Tech 엔진은 구조적 유연함을 따지기 이전에 먼저, 위에서 언급된 다른 엔진들과 같은 견고한 바탕의 프레임워크를 아예 가지고 있지도 않다. 엔진에 일정한 틀을 가진 프레임워크가 없으니 언리얼 엔진과 같은 구조적 유연함은 당연하게도 전혀 있을 수조차 없으며, 그냥 작성된 코드 자체도 각각의 코드가 작성된 함수 등의 구조와 그 코드 간의 연결, 참조, 흐름의 구성이 범용성과는 거리가 매우 멀다. 구조적 유연함이 없으니 특정 코드를 고치려면 연관된 모든 코드를 건드려서 손보거나 새로 만들어야 하고, 범용성과 거리가 머니 특정 기능을 고치거나 추가하려면 그 부분을 새로 갈아 엎어야 하고, 그런 구조와 구성에서 견고한 바탕의 프레임워크도 없는데다가 코드의 규모가 너무나도 작다. 그렇게 규모도 작은 코드를 하나씩 고치다보면 결국 원본의 그 어떤 것도 남지 않는 완전히 새로운 프로그램이 될 수 밖에 없다. 거기에 더해서 맵 에디터를 비롯한 개발 툴과 유틸리티도 엔진과 유기적으로 융합된 구조가 아닌 모두 다 별개로 작동하는 프로그램이며, 그 툴 자체의 확장성도 없고 범용성을 고려하지 않은 모습이니 결국 툴도 새로 만들게 된다. 퀘이크 1 엔진을 시작으로 개발한 하프라이프도 전부 새로운 툴을 만들었고, id Tech 5 기반의 보이드 엔진과 스템 엔진도 id Tech 5의 id Studio가 아닌 자체 개발 툴을 보유하고 있다. 퀘이크 3의 Q3Radiant 기반인 리추얼 엔터테인먼트의 우버툴의 UberRadiant도 거의 새로운 툴 수준으로 개조되었고, 사골처럼 우려먹는 IW 엔진의 콜 오브 듀티는 비록 맵툴인 GTKRadiant를 계속 쓰고 있지만, id Tech의 공식 툴 그대로가 아닌 오픈 소스로 개량된 버전 바탕에 대부분의 기능을 새로운 수준으로 개량한 버전을 쓴다. id Tech 5와 id Tech 6을 개량해서 울펜슈타인 시리즈를 개발했던 머신 게임즈도 id Tech 6를 개량해서 만든 울펜슈타인 2에서 코드를 거의 다 갈아 엎어서 새로운 엔진을 만들고 있으며 툴도 모두 새로 만들고 있다.

간단히 정리해 보자면 견고한 프레임워크가 없고, 코드 구조가 유연하지 않고, 코드의 규모가 매우 작다는 것이다. 일정한 틀이 없고 유연한 구조도 아닌데 규모 마저 작으니 그것을 뜯어 고치다 보면 결국 원본은 하나도 남지 않는 완전히 새로운 것이된다. 그리고 그렇게 새로 만들어진 것은 기본 틀도 다르고, 구조적으로도 완전히 다르고, 세세한 코드마저도 모두 다르다.

그것은 이드 소프트웨어에서 직접 개발되는, 즉, 다음 세대의 id Tech 엔진을 개발하는 것에서도 똑같이 적용된다. 둠 3 엔진(id Tech 4)을 개발할 때 퀘이크 3 엔진(id Tech 3)을 바탕으로 개발을 시작하면서 렌더러를 새로 교체하고, 게임플레이 코드를 새로 작성하고, 사운드 엔진을 바꾸고, 그렇게 하나, 둘씩 새로 작성하면서 결국 모든 코드가 새롭게 작성되었다. 최종적으로 퀘이크 3 소스 코드와 둠 3 소스 코드 비교시 전체 코드의 틀부터 파일시스템, 렌더러, 네트워크, 사운드, 게임플레이, UI 처리 등 어떤 부분도 퀘이크 3의 소스 코드가 남아 있는 곳이 없다.

참고로 소스 코드의 규모가 얼마나 작냐면, id Tech 3(퀘이크 3 엔진)의 렌더러(BSP 월드, 곡선, 라이팅, 캐릭터, 텍스처링 등 모두 포함) 코드는 소스와 헤더 파일을 모두 합해 124개 밖에 되지 않으며 용량은 겨우 1.8Mb이고, 코드 라인수로 하면 고작 2만 라인 안팎이다. id Tech 4(둠 3 엔진)의 렌더러는 파일 83개에 용량은 2.3Mb이며, 코드 라인수는 대략 5만 라인 정도다. 이게 얼마나 적은 규모냐면, 무료 공개용 그래픽 엔진인 오우거 엔진(그래픽 엔진일 뿐이므로 렌더러와 동일하다)의 코드 라인수는 대략 50만 라인이며 보통 그래픽 렌더러가 이정도의 규모를 가진다.

이러니 id Tech 엔진에서 포크된 엔진들은 결국 본래 코드가 남지 않고 툴과 유틸리티도 완전히 교체되어 더 이상 id Tech 엔진이 아닌 새로운 엔진으로 인정받고 저작권을 행사할 수 있게 되는 것이다.

id Tech 엔진에서 포크되어 새로운 엔진으로 저작권을 행사하게 된 엔진들은 다음 굵은 글씨체로 ""안에 있는 엔진들이다.
  • id Tech 2 (퀘이크 1 엔진)→"골드 소스 엔진"→소스 엔진[82]→소스 2
  • id Tech 3 (퀘이크 3 엔진)→리턴 투 캐슬 울펜슈타인 엔진→"IW 엔진 1.0(콜 오브 듀티 1)"→IW 2.0(콜 오브 듀티 2)→IW 3.0(콜 오브 듀티 4: 모던 워페어 등)→...→IW 9.0(콜 오브 듀티 모던 워페어 II[83])
  • id Tech 3 (퀘이크 3 엔진)→리추얼 우버툴(헤비메탈 F.A.K.K.2)→메달 오브 아너 얼라이드 어썰트→"MOH Tech"(메달 오브 아너 퍼시픽 어썰트)
  • id Tech 5 (레이지 엔진)→"보이드 엔진"
  • id Tech 5 (레이지 엔진)→디 이블 위딘→"스템 엔진"(디 이블 위딘 2)
  • id Tech 6 (둠 리부트 엔진)→울펜슈타인 2: 더 뉴 콜로서스→"머신 게임즈의 새로운 자체 엔진"(이름 미정)

보이드 엔진, 스템 엔진, 머신 게임즈의 새로운 자체 엔진은 어차피 제니맥스 산하, 현재는 엑스박스 게임 스튜디오 산하에 다 같이 들어온 한식구라서 저작권을 따지는 게 무의미하지만 혹여라도 나중에 더 회사들 중 하나가 분리되거나 디 이블 위딘, 디스아너드 IP가 매각이라도 되는 경우에는 보이드 엔진이나 스템 엔진이 id Tech에 저작권이 묶여 있다면 복잡한 일이 발생할 수 있으나 별개의 저작권을 가진 엔진이므로 비교적 그런 문제 없이 수월할 수 있다.

별개의 저작권을 행사하지는 않았지만 레이븐 소프트웨어가 개발한 울펜슈타인(2009)의 싱글플레이어 모드 엔진도 IW 엔진, 보이드 엔진, 스템 엔진 수준으로 둠 3 엔진에서 렌더링을 포함한 거의 모든 코드가 전부 재작성되어 새로운 저작권을 행사[84] 할 수 있었으나 차기작인 싱귤레리티에 언리얼 엔진 3를 사용했다.[85]


4.1. 골드 소스 엔진 <하프라이프>[편집]


하프라이프 1편의 엔진인 골드 소스 엔진은 퀘이크 1 엔진을 기반으로 개발을 시작했으나, 개발 언어도 변경(C→C++)했고 엔진 코드의 전체적인 틀도 새로 만들었다. 퀘이크 1 소스 코드는 디렉토리도 구분되지 않고 하나의 폴더에 모든 코드를 구겨 넣은 단순한 통짜형 소스 코드며 규모도 매우 작은데, 그 퀘이크 1의 소스와는 구조가 완전히 다르고 규모도 훨씬 방대하다.

BSP 구현 코드의 일부를 사용했지만 그것도 거의 개량하고 코드도 C에서 C++로 변경했기 때문에 퀘이크 1의 원본 소스 코드는 사실상 남지 않았다고 봐도 무방하다.

렌더링 API도 모두 자체 개발로, 퀘이크 1 코드는 소프트웨어와 오픈GL(GLide, 베리떼 등 포함)만을 지원하지만 하프라이프는 Direct3D까지 지원하며 그것도 통짜로 컴파일되는 퀘이크와 다르게 C++를 사용한 모듈화로 훨씬 효율적인 코드가 구현되었으며, 라이팅도 전부 새로 개발해서 소프트웨어 렌더링에서도 색채가 들어간 광원효과를 지원한다.

캐릭터 구현은 퀘이크 1의 MDL 버텍스 애니메이션 코드를 모두 제거하고 스켈레탈 애니메이션 코드를 새로 작성했으며, 네트워크 부분은 퀘이크 월드의 네트워크 코드를 사용했으나 하프라이프 버전이 업데이트 되면서 밸브 자체 개발 코드로 모두 대체되었다.

그 외 나머지 모든 부분의 코드가 자체 개발한 것이라서 사실상 퀘이크 1 엔진으로 보기는 힘들고 자체 엔진으로 볼 수 있다.

정확히, 타 개발사에 라이선스를 주는 것이 가능하게 된 시점은 하프라이프가 발매되고 지속적인 패치를 통해서 퀘이크 1의 BSP 구현 코드와 네트워크 코드가 모두 제거되고 밸브의 자체 개발 코드로 완전히 대체된 후의 시점이다. 2000년도에 발매한 건맨 크로니클스가 퀘이크 1 엔진의 라이선스 표기인 id Technology가 아닌, Powered by The Half-Life Engine이라는 표기와 로고까지 달고 출시했으며 id 소프트웨어에 라이선스 비용을 지불하지 않은 이유가 된다.

자세한 것은 하프라이프골드 소스 엔진 항목 참고.


4.2. MOH-Tech <메달 오브 아너: 퍼시픽 어썰트>[편집]


EA에서 외주작으로 퀘이크 3 엔진 + 우버툴을 이용해 개발한 메달 오브 아너: 얼라이드 어썰트를 바탕으로 코드 전체를 거의 다 갈아 엎어서 거의 새 엔진으로 개조되어 2004년에 메달 오브 아너: 퍼시픽 어썰트라는 게임으로 출시한다.

퀘이크 3 엔진 코드는 완전히 삭제되어 흔적조차 남지 않았으며, 리추얼 우버툴 코드는 Tiki 애니메이션 잔재가 약간 남아 있다. DirectX 9에 기반한 완전히 새로운 렌더링 엔진, 하복 물리 엔진 도입 등으로 더 이상 퀘이크 3 엔진의 라이선스에 계약에 묶여 있지 않고, EA에서는 퍼시픽 어썰트의 엔진 이름을 MOH Tech라고 불렀다. IGN의 퍼시픽 어썰트 개발자 인터뷰

퍼시픽 어썰트 데이터 파일의 확장자명이 리스텍 엔진에서 주로 사용하는 "REZ"로 이름이 동일하다는 이유로 이 게임이 리스텍 주피터 엔진이라는 왜곡된 정보가 해외 위키피디아나 MODDB 및 각종 게임 포럼들에 기정 사실인마냥 퍼져 있으나, 이 게임은 리스텍 주피터 엔진과는 아무런 관계가 없다. 그 REZ 파일은 리스텍 엔진의 REZ와 확장자명만 같을 뿐, 리스텍 유틸리티 포맷이 아니며 파일 구조도 리스텍 엔진이 전혀 아니다. 그러나 해외 위키피디아나 게임 포럼에서는 아무리 근거를 대고 리스텍 주피터 엔진이 아니라고 해도 누군가가 계속 주피터 엔진이라고 우기면서 위키도 수정해 놓는 짓을 저지르고 있다.

이 게임의 실행 파일인 MOHPA.EXE 파일을 헥스 뷰어로 열어서 "Tiki"라고 검색해 보면 아래와 같이 리추얼 우버툴의 Tiki 스켈레탈 애니메이션 모델 관련 잔재가 매우 많이 나오며,

Initializing Renderer

models/ usage: tiki tikiname

quit

"Ritual"이라고 검색해보면 리추얼폰트라는 이름이 나오는데, 이건 리추얼 우버툴을 사용한 헤비메탈 F.A.K.K.2, 아메리칸 맥기의 앨리스, 메달 오브 아너 얼라이드 어썰트의 실행 파일에서 헥스뷰로 검색해보면 완전히 동일한 문구가 나온다.

WARNING: aspect decl must be before locations in font '%s' drawoffsets yspacing xspacing aspect locations indirections RitFont Font::Load: Couldn't load font %s

fonts/%s.RitualFont Font::Load: Not actual font %s

위의 검색 결과로 리추얼 우버툴의 잔재를 약간이나마 확인할 수 있고 이것은 리스텍 주피터 엔진과는 전혀 관계가 없으며, 기존 메달 오브 아너 얼라이드 어썰트에서 모든 코드를 다시 작성하며 개발됐다는 것을 증명한다.

MOH-Tech는 퍼시픽 어썰트에만 사용되었고 그 이후 시리즈에는 더 이상 사용되지 않고 버려졌으며 언리얼 엔진 3(에어본, 2010 리부트), 프로스트바이트 엔진(워파이터), 언리얼 엔진 4(어보브 앤 비욘드) 등이 사용되었다.

4.3. IW 엔진 <콜 오브 듀티 시리즈>[편집]


콜 오브 듀티의 첫 작품인 PC용 1편은 RTCW 엔진을 라이센스받고 그것을 상당 부분 개량해 개발되었다. 이 PC용 1편의 개발사인 인피니티 워드가 1편 개발 직후 개발에 들어간 후속작인 PC, Xbox 360용 콜 오브 듀티 2는 콜 오브 듀티 1의 엔진에서 지속적 개량을 통해 개발되었지만 Radiant 맵 툴과 파일 시스템을 제외하곤 id Tech 3 엔진 코드는 남아있지 않으며 실제로 콜 오브 듀티 2부터는 IW 엔진이라는 독자적인 이름을 사용하고 있다.

사실상 IW 엔진은 밸브의 소스 엔진에 퀘이크 1 엔진의 잔재가 아주 약간 남아 있듯이 퀘이크 3 엔진 코드의 잔재가 약간 남아 있는 것과 같으며, 그것을 퀘이크 3 엔진 또는 id Tech 3 엔진이라고 주장하는 건 무리가 있다.

그렇기 때문에 엔진의 라이센스 비용도 콜 오브 듀티 1 개발 때만 라이센스 비용을 지불했으며 콜 오브 듀티 2부터는 라이센스 비용을 지불하지 않는다. 다만 아직도 Radiant 맵 툴과 일부 파일 시스템 코드가 남아있는 이유로 크레딧에 매번 이드 소프트웨어를 언급해 주고 있다.

밸브의 소스 엔진의 경우는 맵 툴 및 모든 유틸리티를 밸브가 자체 개발했고 파일 시스템도 완전히 교체되었으며 그저 콘솔 명령어에서 남은 단 몇십 줄의 코드만 남아있었기에 사실상 소스 엔진이 id Tech 1(퀘이크 1 엔진)의 개량이라고 주장하는 것은 억지에 가깝다. 몇십 줄의 코드가 남아있던 것도 하프라이프 2 최초 발매시이고, 이후 엔진이 계속 개량되면서 퀘이크 1 엔진의 잔재는 완전히 사라졌다. 소스 엔진과 비슷한 경우로 크라이엔진 1에서 파생된 듀니아 엔진이 있다.

소스 엔진이나 듀니아 엔진과는 조금 다른 경우로서, 언리얼 엔진을 바탕으로 큰 개조를 거친 게임들은 예외적으로 다른 엔진들의 개량과는 성격이 매우 다르다. 데이어스 엑스 인비저블 워와 시프: 데들리 섀도스에 사용된 엔진과 스플린터 셀: 컨빅션 및 아이엠얼라이브에 사용된 LEAD 엔진의 경우에도 언리얼 엔진 2의 구버전에서 뼈대만 남기고 기술적인 부분은 모두 새로 개발했으며 듀크 뉴켐 포에버언리얼 엔진 1 기반에서 언리얼 엔진 2의 일부 기술을 접목하고 렌더링 부분을 새로 개발했다. 하지만 언리얼 엔진을 바탕으로 한 게임들은 어떻게 개조를 하더라도 언리얼 엔진 고유의 시스템인 언리얼 코어 시스템과 액터 시스템, 언리얼 스크립트 시스템 등에 기반해서 새로운 코드가 쓰여지며 개발툴인 UnrealEd 및 각종 에디팅 관련 시스템 등도 그대로 계승해서 개조가 되기 때문에 파일 시스템까지 바꾸더라도 여전히 그 바탕이 언리얼 엔진 자체인 것을 부정하기 힘들다. 그런 이유로 듀크 뉴켐 포에버나 스플린터 셀 컨빅션 등 언리얼 엔진을 크게 개조해서 사용한 게임들은 게임을 실행하면 시작시 항상 언리얼 엔진 로고가 나온다.

건축을 예를 들어 비유를 하자면 소스 엔진이나 듀니아 엔진의 경우는 기존의 건축물들 한부분 한부분을 다 부수고 새로 만들다보니 결국엔 건물 전체가 처음 형태를 전혀 찾아볼 수 없는, 결국 공터에다가 완전히 새로운 건축물을 지은 것과 다를 바가 없는 경우다.

반면 언리얼 엔진을 크게 개조한 듀크 뉴켐 포에버스플린터 셀: 컨빅션, 그리고 데이어스 엑스 인비저블 워와 시프: 데들리 섀도스에 쓰인 엔진의 경우는 언리얼 엔진이라는 일정한 틀과 규칙이 정립된, 마치 하나의 큰 도시 안에서 영역을 새롭게 확장하거나, 기존의 지역을 리모델링하거나, 아니면 일정 구역을 밀어버리고 새로 개발하거나 하는 것으로 비유할 수 있다. 사실 언리얼 엔진의 장점이자 다른 엔진들과 구별되는 가장 큰 특징 중 하나가 언리얼 엔진 고유의 시스템으로 구성된 틀을 갖추고 있다는 점이다.

id Tech 계열의 엔진들은 언리얼 엔진과 같은 고유의 틀이 정립된 엔진이 아닌 단순한 게임 소스 코드로 이루어진 엔진이기 때문에 id Tech 3의 개조로 시작된 IW 엔진 역시 소스 엔진이나 듀니아 엔진의 경우와 비슷하다. 파일 시스템의 잔재가 약간 남아있고 Radiant 맵 툴을 여전히 그대로 사용하고 있다는 점이 소스 엔진이나 듀니아 엔진과는 약간 다른 점이지만 그 부분을 제외한 기술적인 부분을 비롯한 나머지 모든 코드들은 인피니티 워드가 새로 작성한 코드이며 그 코드가 기존의 id Tech 3의 틀을 바탕으로 쓰여진 것도 아니기 때문에 사실상 인피니티 워드의 자체 개발엔진이나 다름없으며 IW 엔진을 id Tech 3(퀘이크 3 엔진)의 개량이라고 주장하는 것 역시 무리가 따르는 주장이다.

IW 엔진은 사실상 기술적으로나 일반적인 면으로나 최신 엔진이며 인피니티 워드의 자체 개발 엔진으로 볼 수 있지만 개발자 입장에서 봤을 때 한가지 큰 문제점을 가지고 있는데, 그 큰 문제점은 바로 구시대적인 Radiant 맵 툴을 아직도 쓰고 있다는 점이다.

Radiant 맵 툴은 id Tech 2(퀘이크 1 엔진)부터 id Tech 4(둠 3 엔진)까지 쓰인 맵 툴인데 엔진의 기술적 발전에 비해 Radiant 맵 툴의 발전은 거의 없었다고 해도 과언이 아니다. 그 결과 id Tech 4(둠 3 엔진)의 Radiant 맵 툴도 소스 엔진의 Valve Hammer Editor와 마찬가지로 작업 환경이나 GUI의 편의성, 그리고 WYSIWYG적인 측면에서 1998년에 나온 언리얼 엔진 1의 UnrealEd보다도 떨어지는 결과를 야기했다.

id Tech 3의 Radiant 맵 툴에 기반한 IW 엔진 역시 맵 툴이 여전히 매우 구시대적이며 콜 오브 듀티 시리즈를 개발했던 한 레벨 디자이너는 이 점에 불만을 토로하기도 했다. 이는 인피니티 워드가 새로운 엔진이나 맵 툴을 개발하기보단 기존의 엔진을 조금씩 개량해서 새로운 콜 오브 듀티 시리즈를 계속 내놓는 것에 중점을 두었기 때문으로 추측된다.

모든 콜 오브 듀티 시리즈가 IW 엔진 기반으로 개발된 것은 아니다. Xbox, PS2, GC로 나온 콜 오브 듀티: 파이니스트 아워와 콜 오브 듀티 2: 빅 레드 원은 렌더웨어 엔진으로 개발되었고 Xbox 360, PS3용으로 개발된 콜 오브 듀티 3도 id Tech 3와 관계가 전혀 없는 트레이아크의 독자적 엔진인 트레이아크 NGL 엔진으로 개발되었다. 그리고 모바일, 포터블 플랫폼으로 개발된 콜 오브 듀티 게임들도 당연히 별도의 엔진으로 개발되었다.


4.4. 보이드 엔진 <디스아너드 2 / 데스루프>[편집]


이드 소프트웨어의 소유주인 제니맥스가 2013년 11월 6일 "Void Engine powered by Id Tech"를 상표로 등록한게 알려지면서 둠 4의 엔진으로 추측됐었으나 제니맥스의 자회사 중 하나인 디스아너드 개발사 아케인 스튜디오의 새로운 엔진으로 밝혀졌다.

보이드 엔진은 2016년 7월 19일자 게임리엑터 기사의 디스아너드 2 아트 디렉터 세바스티앙 미통의 인터뷰에서 id Tech 6를 바탕으로 70%의 코드를 재작성했다고 했으나, 2016년 8월 12일자 게임플래닛 기사에서 같은 사람인 세바스티앙 미통의 인터뷰에서는 id Tech 5를 바탕으로 개조했다고 했고, 또 다른 인터뷰에서도 id Tech 5를 바탕으로 90%를 재작성했다고 했는데 결국 밝혀진 바는 id Tech 6 바탕이 아닌 id Tech 5 바탕이 맞는다. 프로그래머 아닌 프로듀서나 아트 디렉터의 인터뷰에서는 엔진을 잘 모르고 말하는 경우가 종종 있기 때문이며 바이오쇼크의 감독 켄 레빈도 언리얼 엔진 2를 사용한 바이오쇼크 1 인터뷰에서 언리얼 엔진 3를 사용했다고 말하기도 했었다.

보이드는 디스아너드 세계관의 배경 중 하나에서 따온 명칭이며 아케인 스튜디오 본사인 프랑스 리옹지부에서 개발한 디스아너드 2와 함께 개발됐다.

2016년에 출시된 디스아너드 2에서는 Void Engine Powered by id Tech라는 문구와 함께 보이드 엔진의 로고에서도 Powered by id Tech가 표기되었으나, 2017년에 출시된 스탠드얼론 확쟁픽 디스아너드 방관자의 죽음에서는 Powered by id Tech라는 문구가 사라지고 Void Engine이라는 문구만 남았으며 보이드 엔진의 로그에서도 Powered by id Tech라는 문구가 사라졌는데 이유는 개발하면서 id Tech의 코드가 완전히 제거됐기 때문으로 보인다. id Tech는 언리얼 엔진처럼 베이스로 쓸 수 있는 견고하고 유연한 어떤 프레임워크가 존재하지도 않고 단순한 코드 모음에 불과하므로 개발되면서 모든 부분이 전부 새로 쓰여지면 기존 구조나 코드도 남을 수 없기 때문이고 거기에 맵툴도 id Studio를 사용하지 않고 모든 툴과 유틸리티를 자체 개발해서 썼기 때문에 id Tech 5의 잔재가 조금도 남지 않아서 더 이상 id Tech 이름을 붙일 필요가 없기 때문으로 보인다. 소스 엔진과 비슷한 사례다.

디스아너드 2와 스탠드얼론 확장팩, 데스루프에 사용됐고 차기작에서도 보이드 엔진을 개량해서 사용하는 것으로 보인다. 그러나 아케인 스튜디오 텍사스 지부에서는 보이드 엔진이 있음에도 프레이(2017)에는 크라이엔진을, 2023년 출시 예정인 레드폴에는 언리얼 엔진 5를 사용한다.


4.5. 스템 엔진 <디 이블 위딘 2>[편집]


보이드 엔진과 거의 같은 사례에 해당한다. 스템 엔진은 먼저 id Tech 5를 상당부분 자체 개량해서 개발한 디 이블 위딘을 바탕으로 디 이블 위딘 2를 개발하면서 기존 id Tech 5의 거의 모든 코드를 대체했고 개발툴마저 전부 새롭게 만들었기 때문에 스튜디오 자체 엔진인 스템 엔진으로 부른다. 퀘이크 1 엔진이 하프라이프 (골드 소스 엔진)에서 소스 엔진으로 발전한 것과 거의 같은 양상으로 볼 수 있다.


4.6. 머신 게임즈의 새로운 자체 엔진[편집]


id Tech 6를 개량해서 울펜슈타인 2 더 뉴 콜로서스를 개발한 엔진을 바탕으로 내부의 모든 코드를 전부 다 갈아 엎어서 새롭게 만들고 있으며 스템 엔진처럼 툴도 전부 새로 만들고 있다. 스템 엔진과 거의 같은 사례로 볼 수 있다. 이 엔진으로 인디아나 존스 신작 및 또 다른 미공개 작품을 개발중이다.

5. 맵 에디터, 기타 툴, 유틸리티[편집]


id Tech 엔진은 소스 코드의 구성 자체도 단순하고 유연하지 않은 구조이며 범용성이 없다. 그래서 맵 에디터나 툴 및 유틸리티가 엔진의 소스 코드와 유기적으로 융합된 구조가 전혀 아니고 엔진과는 완전히 별개의 프로그램으로 작동한다.

보통은 맵 에디터를 별개의 프로그램으로 구동하더라도 엔진의 코드를 맵 에디터에 같이 포함하고 엔진에서 필요로 하는 것이 구동되어야 하나, id Tech의 맵 에디터는 그렇게도 구현하지 않은 원시적인 방식으로 엔진과 전혀 무관한 에디터가 엔진에서 읽을 수 있는 맵 파일을 생성해서 저장하고, 그렇게 저장된 맵 파일을 게임에서 불러오는 방식을 레이지 엔진인 id Tech 5까지 그대로 고수했다. id Tech 6, 7인 둠(2016)둠 이터널은 맵 에디터가 유저들에게 공개되지 않았고 내부에서만 사용됐으나 같을 것으로 추정된다.

레이지 엔진인 id Tech 5에서는 주요 기술인 메가텍스처 때문에 메가텍스처의 스탬프를 찍기 위한 작업을 해야 하니 맵에 입혀진 메가텍스처를 에디터 카메라 뷰로 볼 수 있으나 렌더링 엔진의 최종 뷰를 여전히 볼 수 없고 게임을 실행시켜서 볼 수 있다. 에디터 내부 탭에 엔진 뷰가 있으나, 그것은 에디터상에서 엔진이 도는 게 아니고 별개 프로그램이 에디터 내부 탭에 표현되는 것 뿐이며, 라이팅 뷰가 포함된 캐릭터 툴도 애다토 내부 탭에 표현되는 별개의 프로그램이다.

맵 파일을 구성하는 방식이 매우 단순하고 가볍기 때문에 엔진과 전혀 무관하게 작동하는 맵 에디터가 맵 파일을 생성할 수 있어, 맵 에디터도 엔진과 별개로 작동하는 방식으로 개발되었다. 둠의 공식 맵 에디터인 DoomEd는 유저들에게 공개하지 않았고 퀘이크 1이 출시한 시점에서도 공식 맵 에디터인 QuakeEd를 유저들에게 공개하지 않았다. 그 이유중 하나는 DoomEd와 QuakeEd가 당시 DOS나 Windows 3.x에서 구동되지 않는 NeXTSTEP이라는 워크스테이션용 OS 전용으로 오브젝티브-C 언어를 사용해서 개발됐기 때문이다.

그러나 다행히도 둠과 퀘이크 1, 2, 3의 맵 파일 구조가 단순하고 가벼워서 엔진이나 공식 맵 에디터의 소스 없이도 유저들이 둠과 퀘이크의 맵 에디터를 만들 수 있었고 둠과 퀘이크의 수 많은 비공식 맵 에디터가 등장했다. 둠 3부터는 약간 복잡해진 관계로 소스 코드 없이는 비공식 맵 에디터가 나오기는 힘들었고, 둠 3 소스 코드 공개 이후에는 DarkRadiant라는 유저 개선판 둠 3 맵 에디터가 등장했다.

퀘이크 2의 QE4부터는 윈도우에서 작동하는 버전으로 유저들에게 공개됐고 이후 퀘이크 3의 Q3Radiant와 둠 3의 DOOMEd 같은 공식 맵 에디터가 공개됐으나 오히려 id 소프트웨어의 공식 맵 에디터보다 유저들의 맵 에디터가 더 유용한 기능들을 담고 있거나 편의성도 좋은 것들이 많아서 비공식 맵 에디터들이 매우 많이 사용되었다.

퀘이크 1 당시 비공식 맵 에디터 중 하나인 WorldCraft를 개발한 개발자를 하프라이프를 개발하던 밸브 소프트웨어에서 영입하고 WorldCraft를 하프라이프의 공식 맵 에디터로 만들기도 했다. 나중에 WorldCraft는 Valve Hammer Editor라는 이름으로 변경한다.

유저들뿐만 아니라 id Tech 엔진 라이선스 게임에서도 맵 에디터로 가장 많이 애용되는 것은 GTKRadiant의 소스 공개에서 파생된 비공식 버전의 GTKRadiant다. GTKRadiant를 기반으로 하면서 QtRadiant나 NetRadiant 처럼 이름을 바꾼 비공식 에디터도 있으나 이름은 그대로 GTKRadiant로 하고 비공식판으로 개선된 버전들이 있다.

둠 3는 실행 파일 뒤에 +editor를 붙이거나 게임 콘솔창에서 editor를 입력하면 게임 대신 에디터가 실행되게 만들어놨지만 엔진 소스와 유기적으로 융합된 구조가 아닌, 그냥 여전히 별개로 작동하는 프로그램을 DOOM3.exe에 같이 포함시켜 +editor를 붙여서 실행하면 게임 프로그램 대신 에디터 프로그램이 실행되고, 콘솔창에서 editor를 입력하면 게임 프로그램을 완전히 종료 후 에디터 프로그램을 다시 구동하는 것에 불과하다. 최초에 출시한 둠 3 오리지널과 확장팩 악마의 부활에서만 저 에디터 모드가 게임에 포함되어 있고 2012년에 리마스터된 둠 3: BFG 에디션과 2019년에 출시한 둠 3 재발매판에는 게임에 에디터 자체가 포함되어 있지 않다.

id Tech 5에서는 id Studio라는 통합 툴을 내 놓았으나 둠 3와 같은 실행 파일에 별개의 프로그램을 구동하게 만든 것과 같고, 맵 에디터는 여전히 Radiant 그대로에 메가텍스처의 스탬프 기능 추가한 것, 그리고 캐릭터 같이 별개로 구동되던 기타 툴들이 스튜디오 메뉴로 들어갔다는 점 외에 기존과 차이점이 없다. 스튜디오 메뉴에 들어가 있는 엔진 뷰 탭에서 실행되는 게임이나 캐릭터 툴 같은 기타 툴들도 id Studio에 통합 툴로 구축된 게 전혀 아니고 메뉴에서 버튼을 누르면 완전히 별개의 프로그램이 구동되어 메뉴 탭에 실행되는 것일 뿐이다.

이렇게 엔진과 전혀 관계없이 완전히 별개로 구동되면서 엔진에서 로딩할 맵 파일만 생성하는 것은 고전 2D 게임 에디터에나 해당되는 방식이다. FPS 3D 게임 엔진 중 이런 방식을 채택한 맵 에디터는 id Tech 시리즈의 모든 공식 맵 에디터, id Tech에서 파생된 골드 소스 엔진의 WorldCraft, 소스 엔진의 Valve Hammer Editor, 리스텍 엔진의 DEdit 등이 있다.

에디터에 엔진의 소스를 포함하거나 또는 모듈화 된 구성으로 엔진 모듈을 로딩해서 엔진의 최종 렌더링 결과물을 에디터 뷰 모드에서 보는 방식은 빌드 엔진의 build 에디터, 언리얼 엔진 1 ~ 2의 UnrealEd, 시리어스 샘 시리즈의 Serious Editor, 월드 오브 탱크 등에 사용되는 빅월드 엔진, 소스 2의 Hammer Editor를 비롯해서 2020년대에도 수 많은 자체 엔진 에디터들이 이런 방식을 쓴다.

명확하게 상용 엔진의 개념을 추구하는 엔진들은 엔진의 에디터 자체에서 게임 엔진 전체가 구동되면서 게임을 에디터 내에서 즉석으로 돌려가면서 개발하고 프로젝트를 배포용으로 쿠킹시 에디터 전용 데이터들을 완전히 벗겨내거나 또는 유저 에디터 지원이 필요한 게임들은 유저 에디팅/모딩을 어디까지 허용할지에 따라 필요한 부분에 한해 에디터 전용 데이터들을 남기거나 할 수 있다. 이런 구성은 상용 게임 엔진의 기본 구성 요소 중 하나며 맵 에디터가 아닌 엔진 통합 에디터라고 볼 수 있다. 현대적인 통합 게임 엔진의 시발점인 언리얼 엔진 3를 대표적으로, 유니티 엔진, 크라이엔진의 Sandbox, MMORPG 개발 전용 엔진 히어로 엔진, 유니진 엔진, 토크 게임 엔진, 스텡레이 엔진, 젠코/스트라이더 엔진, 그리고 게임 엔진은 아니지만 로블록스 에디터 등 2000년대 중반 이후로 등장한 다양한 상용 엔진들이 이런 방식을 쓴다.

또 다른 방식으로는 게임 내 메뉴에 맵 에디터가 포함되어 있어 간단히 멀티플레이 맵이나 단순한 싱글플레이 맵 또는 레이싱 게임의 코스 등을 만드는 방식인데 게임과 별도의 프로그램으로 실행될 수도 있다. 대표적으로 헤일로 시리즈의 멀티플레이 맵 에디터처럼 콘솔에서도 맵 에디팅이 가능한 방식으로 게리 모드와 비슷하게 생각하면 된다. 그런데 이런것은 게임 엔진의 에디터로 보기는 힘들고 미니 맵 에디터 정도로 볼 수 있다.

종합 개발 툴로서 가장 완벽하게 발전한 방식은 에디터 툴이 엔진 그 자체로 실행되면서 에디터에서 게임의 스크립트를 포함한 모든 것이 실행되는 상태로 에디터 툴의 기능으로 데이터들을 관찰, 수정 작업, 디버깅 등이 모두 가능한 방식인데 현재 이러한 방식을 사용하는 엔진은 언리얼 엔진 4 이후 버전뿐이며 엔진, 에디터, 유틸리티 툴 등이 완전히 모듈화, 컴포넌트화를 이루고 있는 구성과 더불어 유연하고 견고한 기반 덕분에 프로젝트를 릴리즈 할 때 에디터 전용 데이터를 벗겨내거나 일부 남겨서 에디팅/모딩을 고려하는 것을 넘어서 미니 맵 에디터 같은 것을 만들 경우 엔진 에디터 툴 자체에서 원하는 부분을 포함하는 것도 가능하다. 유니티 엔진은 에샛 스토어서 판매하는 Runtime Editor 같은 비공식 유료 에셋 등이 있었으나 극히 제한적인 기능만 가지고 있었고, 유니티 엔진 2019.3에서 추가된 설정 가능한 플레이 모드라는 기능이 있으나 이것 역시 기능이 제한적이고 특히 유니티 엔진의 소스 코드 구조 자체가 유연하고 견고함과는 거리가 멀기 때문에 비교는 무리다. 그 외 다른 엔진들에서는 전혀 찾아볼 수 없다.


5.1. 공식 맵 에디터[편집]



5.1.1. DoomEd (둠 공식 맵 에디터)[편집]


NeXTSTEP 워크스테이션용 OS 전용이다. 일반적인 게임 유저들이 당시 고가의 워크스테이션을 구매할 가능성은 희박했고 이 에디터는 존 로메로가 개발했으며 유저들에게 공개되지 않고 id 소프트웨어 내부에서 둠을 개발할 때, 그리고 레이븐 소프트웨어에서 Hereic, Hexen을 개발할 때 사용했다.

5.1.2. QuakeEd (퀘이크 공식 맵 에디터)[편집]


퀘이크를 개발할 때 id 소프트웨어 내부에서 사용한 QuakeEd도 DoomEd처럼 NeXTSTEP 워크스테이션용 OS에서만 구동되며 게이머들에게 공개되지 않았다. 이 에디터 역시 존 로메로가 개발했고 존 카멕과 함께 버전업 시키면서 조금씩 개선했다.

5.1.3. QE4 Radiant / QERadiant (퀘이크 2 공식 맵 에디터)[편집]


1997년 당시 아직 id 소프트웨어의 직원이 아니었던 Robert Duffy가 NeXTSTEP 전용이며 거의 오브젝트 C로 작성된 QuakeEd의 소스 코드를 C++와 MFC로 전환했으며 약 20 ~ 30%의 새로운 코드를 추가해 윈도우용으로 개발했고 id 소프트웨어에서 공식 맵 에디터로 공인했다.

윈도우용이므로 유저들에게 공개됐다.

버전업하면서 숫자 4가 제외되고 QERadiant라는 이름이 되었다.

5.1.4. Q3Radiant / GTKRadiant (퀘이크 3 공식 맵 에디터)[편집]


QERadiant에서 크게 달라지지 않았으며 퀘이크 3 맵에 새롭게 사용된 베지어 곡선 등을 만드는 툴과 퀘이크 3의 셰이더 스크립트를 작성하는 기능이 추가되었다.

나중에 GTKRadiant로 버전업했다. GTKRadiant는 MFC로 작성된 부분을 GTK UI 툴킷으로 교체한 버전이다.

5.1.5. DOOMEdit (둠 3 공식 맵 에디터)[편집]


이름이 Radiant에서 DOOMEdit로 변경됐으나 새로운 툴이 아닌 GTKRadiant의 버전업이다. 커뮤니티에서는 퀘이크 3 맵 에디터 이름인 Q3Radiant를 본따 D3Radiant라고 부르기도 한다.

DOOMEdit는 둠 3 실행 파일에서 커맨드 라인 +editor 를 붙여서 실행하거나 둠 3 실행 중 콘솔창에서 editor라고 입력하면 DOOMEdit가 실행된다. 하지만 단순히 컴파일 빌드 시 실행 파일에 같이 넣어 놓은 것에 불과하며, 이전과 같이 엔진과 무관하게 완전히 별개의 프로그램으로 구동되는 게 맞는다.

둠 3의 렌더링은 빛과 그림자 요소의 영향이 매우 크기 때문에 게임에서 어떻게 보여지는지 최종 렌더링 상태를 계속 확인해가며 레벨을 디자인하는 게 기본인데, 여전히 맵 에디터가 엔진과 전혀 무관하게 별도로 구동되니까 맵 에디터상에서 최종 렌더링 상태를 확인할 수도 없어서 라이팅 배치 하나 바꾸더라도 둠 3 게임을 실행시켜 맵을 로딩하는 일을 반복해야 한다.

5.1.6. id Studio (id Tech 5 이후 공식 맵 에디터)[편집]


id Studio는 이름은 마치 통합 툴 세트로 인식되지만 실상은 기존의 Q3Radiant, DOOMEdit에서 버전업 한 툴에 불과하다.

레이지에서는 툴킷이 게임과는 전혀 별개의 폴더에 설치된다. 실행시키면 게임 런타임이 실행되며, 메뉴 중 id Studio를 누르면 기존의 Radiant 툴과 똑같이 생긴 맵 에디터가 나온다.

달라진 점이 있다면 상단과 좌우에 여러개의 탭이 있다는 점인데 각각의 탭은 별도의 프로그램을 실행한다고 보면 된다.

개별 구동되는 프로그램은 크게 상단에 나오는 탭 중 아래 3가지로 구분된다.

  • World Edit = 기존의 Radiant 맵 에디터
  • Engine = 레이지 게임 실행되고 있는 탭
  • MegaEdit = 3D 1인칭 시점으로 메가텍스처를 편집하는 모드

이 3개는 완전히 개별적인 프로그램을 각각의 탭에 넣어서 구동한 것에 불과하므로 하나의 통합 툴 세트가 아니며 실시간 편집 내용이 서로 간에 전혀 공유되지 않는다.

World Edit에서 맵을 편집하고 맵 파일로 저장한 뒤 MegaEdit에서 메가텍스처 스탬프를 찍고, Engine에서 게임 맵을 로딩해서 실제 게임에서 어떻게 보이나 확인하고, 다시 World Edit로 돌아와서 맵을 편집하고, 또 다시 게임에서 어떻게 보이며 스크립트 등이 작동을 제대로 하는지 확인하기 위해 Engine에서 맵을 로딩해서 확인하고, 또 다시 편집을 위해 World Edit에 돌아와서 편집하고...의 반복이다. 정말 비효율의 극치다.

World Edit의 World Camara에는 Render 모드 및 RadPreview 모드라는 게 있으며 노멀맵, 라이팅, 섀도우 등을 미리 볼 수 있으나 실제 게임 엔진의 렌더러로 보여주는 것이 아니고 Raiant 툴의 개별 렌더 모드로써, 3DS MAX, MAYA, 블렌더 같은 모델링 톨에서 보여주는 것과 같은, 툴 내부에 존재하는 자체 렌더러와 같은 개념으로 볼 수 있다. 즉, 실제 게임 엔진의 렌더러와는 출력 결과가 다르므로 게임에서 어떻게 보이는지 확인하려면 작업하던 맵을 저장하고 게임이 실행되는 Engine 탭에서 맵을 로딩해야 한다. 다만 메가텍스처는 렌더러와 크게 연관없이 단순히 텍스처를 입혀 놓은 것이므로 툴 내부 World Camera의 Redner 모드에서도 표현이 된다. World Camera의 Render 모드는 실제 게임 렌더러가 아니고 툴 내부 렌더 모드일 뿐이지만 이 모드에서조차 편집이 되지 않으며 Render 모드를 꺼도 World Camera 자체에서는 오브젝트 이동을 제외한 어떤 편집 기능도 없으며, 편집은 오로지 World Edit의 2D 뷰에서만 가능하다.

MegaEdit도 사실상 맵 에디터와 별개로 메가텍스처만을 편집하는 프로그램이므로 World Edit에서 볼 수 있는 맵 에디팅 기능이 전혀 없으므로 탑, 사이드, 프론트 뷰 등 맵 에디터 기본 시점도 당연히 사용할 수 없고 1인칭 뷰 모드 전용이다. 그리고 MegaEdit의 뷰 역시 실제 엔진의 렌더링 코드를 사용하는 게 아니라서 엔진의 셰이더 효과를 추가한 완전히 동일한 그래픽을 보려면 저장하고 World Edit에서 셰이더를 추가, 편집한 후 다시 저장하고 게임이 실행되고 있는 Engine 탭에서 작업 후 저장된 맵을 로딩해서 확인해야 한다.

이렇게 완전히 별개의 툴을 굳이 하나의 프로세스에서 실행되도록 탭에 넣어 두면 실행 파일 아이콘으로 직접 실행하는 것보다는 빠르며 편리하지만, 문제는 작업 중 하나의 툴에만 에러가 발생하면 프로세스가 종료되어 다 날아가 버리는 문제가 있으며, 맵 로딩이 매우 오래 걸리는데, 특히 메가텍스처 로딩은 시간도 오래걸리고 프리징이 걸리며, 메가텍스처를 작업하는 도중에도 프리징이 매우 자주 걸리는데 그 프리징 걸리는 시간에 다른 툴을 건드리지 못하는 경우가 잦다.

id Studio라는 이름으로 개명하고 마치 새로운 툴인 것처럼 나왔지만, 실상은 메가텍스처 관련 에디팅 기능이 추가되고 일부분의 변화 외엔 Radiant에 비해 개선된 점이 거의 없으며, 2010년대에 나온 엔진의 개발 툴답지 않게 매우 구시대적인 툴이다.

GUI나 에디팅 작업의 WYSIWYG적 측면에서 과장 안보태고 정말로 출시 시기가 13년이나 차이나는 1998~2000년에 나온 언리얼 엔진 1의 기반 게임들(언리얼 1, 언리얼 토너먼트 1, 데이어스 엑스 1 등)에서 볼 수 있는 UnrealEd 1, UnrealEd 2보다 확실하게 모든 면에서 뒤떨어진다.


레이지 개발 툴 킷(id Tech 5 id Studio) 기본 튜토리얼


데이어스 엑스 1(언리얼 엔진 1 UnrealEd 1.0) 기본 튜토리얼 1/2


데이어스 엑스 1(언리얼 엔진 1 UnrealEd 1.0) 기본 튜토리얼 2/2

위 영상들에서 볼 수 있는 맵 제작 기본 튜토리얼부터 이미 라이팅과 오브젝트 배치가 직관적이고 편리하며 빠르게 가능한 것에서부터 이미 많은 차이를 보인다.

이렇게 여러가지로 많은 문제점을 내포하고 있기 때문에 id Tech 5를 바탕으로 자체 엔진을 개발한 보이드 엔진과 스템 엔진은 툴도 새로운 자체 개발 툴로 전면 교체했으며 id Tech 6를 바탕으로 머신 게임즈가 만드는 자체 엔진 역시 새로운 툴로 전면 교체하고 있기 때문에 id Tech 6(둠 리부트)와 id Tech 7(둠 이터널)에서도 id Studio의 수준은 크게 나아지지 않았을 것으로 추정된다.

이드 소프트웨어 내부의 자체 개발작만 사용하다가, 결국 개발의 효율성을 위해서 향후에는 이드 소프트웨어도 id Tech 엔진을 버리고 MS 게임 스튜디오 내의 다른 엔진이나 언리얼 엔진 등으로 교체할 가능성도 있는데, 그렇게 된다면 가장 큰 이유는 다름 아닌 개발 툴의 낮은 수준에 따른 개발진들의 개발 작업 비효율성으로 인한 문제 때문이 될 것이다.

렌더링이나 엔진의 다른 기술력은 이제까지처럼 해당 게임에 최적화된 기술들만 한계치까지 뽑아내는 방법을 사용했기 때문에 큰 문제는 없을 것이지만 툴의 문제는 효율성을 최대한 끌어내어 개발진의 역량을 최대한 발휘할 수 있게 해주는 것과 직접적인 연관이 매우 크기 때문에 외면할 수 없는 문제다.

FPS가 본격적으로 등장하기 시작한 초창기 퀘이크 1, 2 시절부터 언리얼 엔진과 비교되어 언리얼 엔진이 압도적 우수성으로 인정받으면서 여러 게임에 채택된 이유가 언리얼 에디터 때문이고, 다른 이유가 아니었다. 초창기 시절부터 언리얼 엔진의 구조적 유연성이 좋기는 했지만 FPS 초창기 시절에는 엔진의 구조적 유연성은 그렇게 고려된 사항이 아니었으며 언리얼 1 게임 출시 전부터 지속적으로 외부에 공개되어 언리얼 에디터의 WYSIWYG 개발 환경과 통합 작업이 가능한 언리얼 에디터의 훌륭함 때문이었다는 점을 당시의 많은 기사들에서 찾아볼 수 있었다. 언리얼 1 게임 출시 후에는 그래픽적 우수성으로 인해서도 라이선스의 고려가 많이 됐지만, 대부분의 이유는 그래픽보다는 언리얼 에디터의 우수함 때문에 라이선스가 고려된 것이다. 심지어 언리얼 1 게임 출시 전에는 언리얼 에디터를 게임에 포함하지 않고 개별 판매까지 고려했었다. 그러나 언리얼 엔진이 수 많은 라이선스를 따내자 언리얼 에디터를 별도 판매할 계획을 철회하고 언리얼 엔진을 더욱 개량하여 상업용 엔진으로 거듭나게 할 계획으로 변경한 것이다. 언리얼 엔진은 개발하게 된 계기가 언리얼 에디터로부터 시작한 것이었고 id Tech 엔진은 엔진이 먼저 개발되고 맵 에디터는 나중에 맵을 만들기 위해 개발한 것이기 때문에 초기의 태생부터가 다르다고 볼 수 있지만, 결국 id Tech 엔진이 여러 방면에서 외면받게 된 것은 개발 툴의 향상에 투자하지 않았기 때문이다.


5.2. 공식 맵 에디터 소스 코드 기반 비공식 에디터[편집]


QuakeEd, QE4, Q3Radiant 등의 소스 코드가 공개 되었으므로 그것을 기반으로 한 수 많은 변형 맵 에디터들이 있다.

아래 목록 중 라이선스 게임의 변경된 에디터들은 제외한다. 예로, 퀘이크 3 엔진의 Q3Radiant를 리턴 투 캐슬 울펜슈타인에서 WolfRadiant로 이름을 변경하거나, 둠 3 엔진의 DOOMEdit를 퀘이크 4에서 QuakeEdit나, 프레이에서 PREDITOR[86]로 부른 것 등이 있다. 리턴 투 캐슬 울펜슈타인이나 퀘이크 4는 이드 소프트웨어의 외주작이지만, 이드 소프트웨어의 공식이 아닌, 외주 개발사에서 임의로 개조한 것이기 때문이다.


5.2.1. ÜberRadiant[편집]


ÜberTools for Quake III의 각종 유틸리티 모음인 ÜberTools Game Development Kit에 포함된 맵툴로 Q3Radiant의 크게 개조된 버전이다.

5.2.2. GTKRadiant의 비공식 버전업[편집]



5.2.3. QtRadiant[편집]


GTKRadiant의 소스를 바탕으로 GTK UI 툴킷으로 작성된 부분을 Qt UI 툴킷으로 교체한 버전이다.


5.2.4. DarkRadiant[편집]


커뮤니티에 의해 둠 3의 토탈 컨버전 형식의 MOD로 개발되던 Dark MOD를 둠 3의 소스 코드 공개 후 둠 3의 MOD가 아닌 별도 프로젝트로 분리되면서 맵 에디터도 개조를 거쳐 DarkRadiant라는 이름을 붙였다.

5.2.5. NetRadiant[편집]




5.2.6. QuakeEd 3.x (비공식 버전업)[편집]




5.2.7. QE5 Radiant (비공식 버전업)[편집]


퀘이크 2의 공식 맵 에디터인 QE4 Radiant 소스 기반의 비공식 버전업인 QE5 Radiant다.

5.3. 완전 비공식 에디터[편집]


공식 맵 에디터와 전혀 무관하므로 에디터 인터페이스, UI, 외형, 기능, 맵 에디팅 방법 등이 모두 완전히 다르다.


5.3.1. Doom Builder[편집]


Pascal vd Heiden라는 사람이 만든 비공식 둠 에디터로 Visual Basic으로 작성되었으며, C#으로 완전 재작성된 Doom Builder 2가 있다. Doom Builder 2는 Doom Builder X, Doom Builder 64, GZDoom Builder 등의 다양한 포크가 존재한다.

기본적으로 id Tech 1(둠 엔진)에 기반한 맵을 작성하는 에디터이므로 매우 단순하다. 하지만 id Tech 엔진의 툴이 다 그러하듯이, 그리고 비공식 툴이기도 하므로 엔진과는 전혀 무관하게 완전히 별도로 구동되는 프로그램이다.

또한 이러한 단순함에 최적화된 이유 때문에 둠 엔진을 전혀 사용하지 않고 유니티 엔진을 사용하는 2024년 출시 예정의 둠 같은 2.5D 그래픽의 FPS 게임 "폴른 에이스"의 맵을 제작할 때도 유니티의 기본 에디터 툴을 사용하지 않고 이 툴을 사용해서 먼저 레벨을 제작 후 유니티 에디터로 임포트 했다고 한다. 그리고 폴른 에이스는 애초에 GZDoom 기반의 프로젝트로 개발을 시작했다가 개발 도중에 유니티 엔진으로 갈아탄 케이스에 해당되므로 기존에 개발하던 맵 데이터를 새로 만들지 않고 그대로 활용하기 위해 저런 방식을 사용했을 가능성도 높다.

5.3.2. THRED[편집]



5.3.3. WorldCraft[편집]



5.3.4. NT-BRUSH[편집]



5.3.5. BSP[편집]



5.3.6. CraFTEr[편집]




5.3.7. QuArK[편집]



5.3.8. Quest[편집]



5.3.9. Qoole[편집]



5.3.10. Quiver[편집]



5.3.11. QuMa[편집]



5.3.12. ToeTag[편집]



5.3.13. TrenchBrooom[편집]


퀘이크 1, 2, 3 및 해당 엔진의 BSP 레벨을 제작할 수 있는 비공식 맵 에디터다.

다른 id Tech의 맵 에디터들과 마찬가지로 엔진과 전혀 무관하게 완전히 별도로 작동하는 프로그램이며, 단지 id Tech 2, 3에서 지원하는 BSP 포맷의 레벨을 저장할 수 있는 기능을 포함한 단순한 맵 에디터에 불과하다.

과거의 단순한 레벨 제작을 위해서, 2024년 출시 예정인 고전 지향 FPS "팬텀 퓨리"는 언리얼 엔진 4를 사용하지만 게임의 단순하고 고전적인 맵을 제작하기 위해서 맵의 기본적인 윤곽은 TrenchBroom로 제작하고 그것을 언리얼 엔진 4의 언리얼 에디터로 임포트하는 방식을 사용해 제작했다.
파일:크리에이티브 커먼즈 라이선스__CC.png 이 문서의 내용 중 전체 또는 일부는 2023-11-06 07:38:29에 나무위키 id Tech 엔진 문서에서 가져왔습니다.

[1] 둠 엔진, 퀘이크 3 엔진, 둠 3 엔진 등.[2] 당시 라이선스 관련 문건 정보에 따르면 id Tech 5 공식 발표전에는 내부적으로 id eXtended Technology, id Extend, id XT 등의 명칭도 고려됐던 것으로 보인다.[3] 퀘이크 3 엔진을 사용한 게임들 중에 RTCW 엔진과 Uber Tools를 사용한 콜 오브 듀티나 메달 오브 아너 얼라이드 어썰트 같은 일부 게임들은 Quake III Technology 대신에 id Technology로 표기되기도 한다.[4] 확장팩, 이드 소프트웨어의 외주작인 리턴 투 캐슬 울펜슈타인, 그리고 소스 코드 공개 후에 GPL 소스 라이선스를 사용한 인디작들 제외[5] 아메리칸 맥기의 앨리스[6] 2개의 콘솔로만 발매된 007 게임 2개와, 메달 오브 아너 얼라이드 어썰트. 엄밀히 따지면 로그 엔터테인먼트가 제작한 아메리칸 맥기의 앨리스도 EA가 체결한 퀘이크 3 엔진 단체 라이선스 및 리추얼의 우버툴 라이선스 포함에 해당한다.[7] 레이트레이싱의 단순화된 버전. 빛이 반사나 굴절을 하지 않기 때문에 추적이 아닌 단순 충돌 검사만을 수행하는 방식이며, 울펜슈타인 3D의 경우 가로 픽셀 수만큼만 검사를 수행한다.[8] 그러나 이러한 컨셉이 무색할 정도로 진행도중에 거대 시궁쥐, 슬라임, 거미로봇이 적으로 등장하기도 한다.[9] 다만 게임 자체는 3D가 맞다. 흔히들 하는 오해가 둠 엔진은 3D가 아니라는 점인데, 실제 게임 소스 코드를 보면 Z축이 제대로 정의되어 있다. 그래서 플레이어보다 높이 있는 적의 투사체가 플레이어 위로 날아가는 것도 가능하다. 영문 설명 영상[10] 엔진을 개조해서 가능하게 할 순 있지만 시야가 왜곡되며 이 때문에 자동 조준이 구현되어 있다.[11] 마비노기의 플레이오네 엔진 역시 층 위에 다른 층이 있을 수 없다. 물론 엔진의 수준이야 몇 년 차이가 나는 걸 비교할 수 있을 리가 없다.[12] 'Where's All the Data?'의 축약어로 모든 게임 데이터가 담겨진 파일이다. 하나의 WAD에는 최대 32개의 레벨이 존재할 수 있다.[13] 본편은 에피소드 1, 2, 3으로 이루어져 있고 에피소드 4 + 5가 포함된 새로운 패키지가 "헤러틱: 섀도우 오브 더 서펜트 라이더"라는 제목으로 발매되었다. 기존 패키지 구매자들을 위한 무료 다운로드를 제공했으며, 확장팩보다는 둠 1의 얼티밋 둠과 같은 무료 에피소드 추가 패치로 볼 수 있다.[14] 둠 2 최초 발매 버전이 v1.666이었다.[15] 1994년 아타리 재규어 이식판으로 분기, PSX 재이식 과정에서 개조된 엔진을 닌텐도 64로 가져와 다시 개조했다.[16] 바로 그 먹는 첵스가 주인공으로 등장하는 게임이다. 당시 첵스를 사면 박스에 딸려 제공되었다.[17] 사이버 펑크 분위기의 토탈 컨버전. 게임성은 기존 둠과 큰 차이가 없다. iOS로도 포팅되었다.[18] 상기했듯이 횡스크롤 액션이다.[19] 이쪽은 블랙 메사처럼 원래 둠2 전용 모드이자 WAD이나 이후 카코워드를 수상을 받고 업데이트를 거치면서 독자적인 상용화 게임이 되었다.링크[20] 동방 프로젝트 2차 창작게임[21] 브루탈 둠을 제작한 Sergeant_Mark_IV가 제작하는 게임이자 얼리 액세스로 발매되는 스탠드얼론 방식의 FPS. 당초 2021 얼리 개시후 2023년 완성 예정으로 발표했지만 2022년 끝나가도 얼리억세스 발매조차도 되지 않았다.[22] 캐나다의 뉴럴스톰에서 만들고 에픽 게임스에서 퍼블리싱한 게임. 참고로 이 게임의 리드 프로그래머는 직후 케이브독(=휴멍거스)으로 이적했는지 토탈 어나이얼레이션 및 그 정신적 후속작들에도 참여.[23] 이후의 예외라면 퀘이크 1 정도.[24] 2000년도 전까지 규모가 작은 게임들은 여전히 C로 많이 개발되었고 규모가 큰 게임들은 객체 개념을 사용한 C로 개발을 많이 진행하였다. 지금은 성능차가 없지만 당시에는 콘솔창에서 출력하는 것조차 C와 C++ 함수간에 성능차가 있던 시기였고, 더구나 퀘이크 같은 경우에는 렌더링 속도가 무엇보다도 중요했던 게임인데다 게임 코드의 규모 자체가 작아서 객체지향적 설계가 굳이 필요하지도 않았기 때문에 C++로 작성할 필요가 없었다.[25] 공식 확장팩 1의 개발사는 힙노틱(Hipnotic)이다.[26] 공식 확장팩 2의 개발사는 로그 엔터테인먼트다.[27] 공식 확장팩 1의 개발사는 후에 후에 킹핀 라이프 오브 크라임을 개발, 개발사 이름을 그레이 메터 스튜디오로 변경하고 리턴 투 캐슬 울펜슈타인을 개발한다.[28] 공식 확장팩 2는 퀘이크 1의 공식 확장팩 2 디쏠루션 오브 이터니티를 개발한 로그 엔터테인먼트다.[29] 퀘이크 1 공식 확장팩 1 스커지 오브 아르마곤을 개발한 힙노틱(Hipnotic)이 개발사명을 리추얼 엔터테인먼트로 변경했다.[30] 거의 하프라이프 골드 소스 엔진 수준으로 개량되었다. 신(게임) 항목 참조[31] 처음에는 골드 소스 엔진이라고 불리지 않고 그냥 퀘이크 1 엔진을 크게 개량해서 사용한다고만 언급되았으나 나중에 소스 엔진이 발표된 후 하프라이프 1의 엔진 이름을 골드 소스 엔진으로 부르게 되었다.[32] 후에 개발사 이름을 그레이 메터 스튜디오로 변경하고 리턴 투 캐슬 울펜슈타인을 개발한다.[33] 퀘이크 2의 표준 MD2 캐릭터 모델 대신 새로운 MDX 포맷, 대화 및 거래, 상점, 부하 고용 등을 위한 스크립트 및 새로운 AI 시스템 추가, 리버브 사운드 지원 등[34] 거의 BSP 렌더링 부분 제외하고는 거의 다 새로운 코드로 구성되어있다. 단순한 FPS 밖에 구현되어 있지 않은 퀘이크 2 코드 대신 RPG를 구현하는 게임플레이 완전히 새로운 코드가 작성되어 있고, 전반적인 코드의 구성과 파일 시스템까지 달라서 파일 구조도 퀘이크 2와 매우 많이 다르다. 퀘이크 1 소스→골드 소스 엔진의 변화보다 더 큰 수준의 변화지만 그래픽 렌더링 코드는 캐릭터를 제외하고는 거의 그대로 사용한다. 그렇기 때문에 게임이 출시된 2001년 시점에서 매우 낡은 수준의 기술력과 그래픽으로 비판받았다. 이 게임이 실패한 요인 중 하나가 뒤쳐지는 기술력과 그래픽이다.[35] 2019년에 얼리 액세스로 스팀에 출시했으며 2023년 완성 예정?[36] DLL로 하지 않은 이유는 전작들이 PC 윈도우 뿐만 아니라 수없이 많은 기기에 이식되었기 때문에 이 점을 고려한 것으로 보인다. DLL로 하게 되면 모드 제작자들이 각 OS나 CPU별로 일일이 컴파일을 해줘야 하므로...[37] 1.26부터 공식 확장팩 팀 아레나에 추가된 기술로 MD3 버텍스 모델 강화, MD4 스켈레탈 모델 및 하이트맵 지형 지원, 인 게임 비디오 재생 기능이 추가됐으며 팀 아레나를 설치하지 않아도 게임 버전을 1.26 이상으로 패치하면 팀 아레나에 추가된 모든 기능이 엔진에 포함된다.[38] 싱글과 멀티는 완전히 별개의 프로그램으로 구분이 되어 있다. 싱글플레이는 퀘이크 3 소스를 상당부분 수정하여 개발했으나 멀티플레이는 싱글플레이 소스 코드와 무관한 별도의 프로그램이다. 퀘이크 3 소스를 그대로 가지고 그림만 바꾼 수준으로 퀘이크 3의 무기 변경, 스킨 추가, 맵팩 수준이다.[39] 싱글플레이를 위한 스크립트 시스템 위주[40] 싱글과 멀티가 완전히 별개의 프로그램으로 구분되어 있다.[41] 싱글과 멀티가 완전히 별개의 프로그램으로 구분되어 있다.[42] 싱글과 멀티가 완전히 별개의 프로그램으로 구분되어 있다.[43] 멀티플레이는 너브 소프트웨어에서 제작[44] 스플래시 데미지에서 제작[45] 싱글플레이를 위한 스크립트 시스템 등 자체 개발, Nvidia Radial Fog 추가 등[46] 렌더링 부분, 오디오 코드 등 거의 전체를 새로 작성했으며 RTCW의 싱글플레이 스크립트 부분만 유용하게 사용했다.[47] 싱글과 멀티가 별도의 프로그램으로 분리되어 있으나 둘 다 리턴 투 캐슬 울펜슈타인의 코드를 전면 재작성했다.[48] 싱글플레이 전용으로, 멀티플레이 모드는 존재하지 않는다.[49] 테스트 버전의 엔진을 바탕으로 우버툴 개량을 적용했다.[50] 헤비 메탈: F.A.K.K.²개발시 우버툴이 퀘이크 3의 코드를 잘 정리해서 싱글플레이 기능을 추가한 덕분에 싱글과 멀티가 분리되어 있지 않고 하나의 프로그램에서 실행된다.[51] 팀 아레나에서 추가된 엔진 코드의 일부인 하이트 맵 지형 및 게임 내 ROQ 영상 재생 기능 사용[52] 헤비메탈 F.A.K.K.²와 같이 싱글플레이 전용으로, 멀티플레이 모드는 않는다.[53] EA의 지원으로 만들어진 게임이라서 EA의 퀘이크 3 엔진 다중 라이선스와 EA가 특별 계약한 우버툴 라이선스의 혜택을 받았다.[54] 게임은 FPS 파트와 레이싱 파트로 구분되어 있고, FPS 파트는 헤비 메탈 F.A.K.K.² 엔진 사용, 레이싱 파트는 니드 포 스피드 엔진 사용[55] 게임은 FPS 파트와 레이싱 파트로 구분되어 있고, FPS 파트는 헤비 메탈 F.A.K.K.² 엔진 사용, 레이싱 파트는 니드 포 스피드 엔진 사용[56] 확장팩 1 개발사는 PS로 발매된 원작 메달 오브 아너 시리즈를 개발하고 이후 후속작들을 개발한 EALA 스튜디오다.[57] 확장팩 2는 별개의 개발사에서 개발되었다.[58] 리추얼의 우버툴 덕분에 싱글과 멀티가 별도의 프로그램이 아닌 하나의 프로그램에서 모두 실행된다. 그러나 오리지널과 확장팩 1, 확장팩 2가 모두 각각 별도의 프로그램으로 이루어져 있어, 확장팩 1, 2를 모두 설치시 총 3개의 실행 파일이 존재한다.[59] 2001년도에 출시한 맥스 페인의 개발 엔진인 MAX-FX 엔진을 이용했다.[60] 당시에 수 많은 사람들이 돌려봤겠지만 짧은 영상으로 지나가서 그것이 노멀 맵인지는 뭔지는 잘 기억에 안남았을 것이다.[61] 그 때문에 일부 이드 소프트웨어의 충성팬덤이나, 존 카맥에게 (잘못된 방향으로) 크게 심취해 있는 팬들 중, 심할 경우에는 존 카맥이 노멀 맵과 실시간 그림자 기법을 만들었다고 믿고서, 그 잘못된 믿음을 커뮤니티에 퍼뜨렸고, 또 그것이 퍼지면서 기정 사실로 알려지기도 하는 등의 일이 발생하기도 했다. 이런 사람들 중에는 심지어 존 카맥이 컴퓨터 모니터에 3D 그래픽을 표현하는 기법 자체를 창조했다고 믿는 경우도 부지기수였고 2020년대에도 이렇게 믿고 있는 사람들이 있다.[62] 참고로 둠 3에도 메가텍스처와 관련된 코드가 약간 남아있으며 유저 모드로 구동 가능하다.[63] 그래픽 카드는 로딩 속도와 연관이 전혀 없긴 하다.[64] 둠 3의 소스 포트 에뮬레이팅은 Delta touch에서도 지원한다.[65] PS4, Xbox One, PC로 재발매, PC 버전은 베데스다.넷에서 판매했으나 베데스다.넷이 온라인 게임 판매를 중단하면서 구매할 수 없게 되었다. 2022년 8월 19일부로 에픽 게임즈 스토어에 등록되어 구매할 수 있으며 특이하게 2년이 넘는 기간인 2024년 9월 7일까지 60% 할인된 가격에 판매한다.[66] 렌더링 코드를 전면 재작성해서 원래의 둠 3 엔진 렌더링 코드는 조금도 남지 않았다. 라이팅부터 렌더링 전반이 둠 3의 렌더링 스타일과는 완전히 다르며 둠 3에 없는 라이트맵과 섀도우맵을 사용하며 여러가지 후처리 효과도 새로 개발했고, 캐릭터 모델과 애니메이션 시스템도 둠 3 엔진의 MD5메시와 MD5애니메이션을 사용하지 않고 자체 개발한 새로운 포맷을 사용하며, 월드 렌더링과 폴리곤 처리 및 기본 머티리얼 시스템까지도 전부 새로 개발됐고, 맵 파일 포맷까지 둠 3와 완전히 다르다. 렌더링 API도 오픈GL이 아닌 DX9를 사용하는 완전히 새로운 렌더링 엔진을 탑재했다. 렌더링을 넘어서 사운드 처리, 인게임 시네미틱 처리 등도 기존 코드를 다 대체했고 파일 시스템도 재작성되어 파일 base 폴더의 pk4 파일을 열어보면 파일 구조 조차도 다르다. 외부 미들웨어인 하복 물리 엔진도 사용한다. 울펜슈타인의 싱글플레이어 모드는 사실상 둠 3 엔진이라고 부르기 힘들며, 자체 개발 엔진으로 봐야하는 수준으로, 퀘이크 3 엔진→IW 엔진 수준의 변화다.[67] 멀티플레이어 모드는 별도의 프로그램으로 구성되어 있다. 레이븐 소프트웨어가 둠 3 렌더링 코드를 대체하는 도중의 버전을 바탕으로 만들었는데, 라이트맵과 섀도우맵을 사용하고 둠 3의 렌더링을 대부분 대체했지만 싱글플레이어 모드와는 다르게 멀티플레이어 모드는 상당 부분이 둠 3의 렌더링 코드가 여전히 남아 있고, 맵 파일 포맷이나 파일 시스템 등이 여전히 둠 3와 동일한 구조를 사용하고 있으며, 렌더링 API도 DX9를 사용하지 않고 둠 3 렌더링 API인 오픈GL을 사용하며 외부 미들웨어인 하복 물리 엔진도 사용하지 않는다. 이것은 멀티플레이어 모드를 본 개발사 레이븐 소프트웨어가 아닌 외주 개발을 이용했기 때문에 어쩔 수 없던 것으로 보인다.[68] 이드 소프트웨어에 의해 메가텍스처 기술 지원[69] 퀘이크 워즈의 엔진을 스플래시 데미지가 자체 개조하면서 렌더링 코드의 많은 새로 작성했고 특히 캐릭터 구현은 완전히 새로운 코드로 대체해서 둠 3와는 전혀 다른 라이팅과 머티리얼 및 소프트 섀도우를 구현한다. 그러나 울펜슈타인과는 다르게 둠 3 엔진 렌더링 코드가 일정 부분 남아 있으며 배경에는 라이트맵과 섀도우맵이 없고 여전히 오픈GL 렌더링을 사용한다.[70] 허드슨이 미국 회사에 줘서 개발했지만 출시가 취소된 게임으로, TCRF의 분석결과 모델링의 파일 포맷이 md3, md5로 되어있었고,이전 세대 엔진 게임이었던 퀘이크 3 관련 구문의 잔재가 발견되었다. #.[71] 존 카맥은 트위터에서 한 아티스트가 작은 주사위에 2048x2048 해상도의 텍스처를 붙여놨다고 한숨을 쉬며 말했다(...). 보여지는 부분만 스트리밍 로딩되므로 퍼포먼스에는 전혀 영향을 미치지 않지만, 용량을 줄이기 위해 작은 텍스처로 교체해야 했다고 한다.[72] 원래 게임은 총 여섯 파트로 구성되어 있었으나, 나중에 그것을 두 파트로 뭉뚱그려 다시 디자인했다. 다만 게임 볼륨이 적어진 것은 아니다.[73] 레이지의 개발에 있어 문제가 된 것은 엑스박스 360 뿐만이 아니었다. 플레이스테이션 3 또한 Cell 프로세서의 해괴한 구조 때문에 id Tech 5 엔진을 뒤늦게 대거 수정해야 했다.[74] 그렇기 때문에 메가텍스처에서 생기는 텍스처 팝인도 나타난다.[75] 제작시 1000FPS 구동이 가능하도록 했으나 실증되기 어려웠다. 그래서 게임 출시 후 오버클러커들을 초대해서 1000FPS를 시연하기도 했으며 1000FPS 도전 영상에서도 보듯이 오버클럭으로 인한 열을 빠르게 잡기 위해 액체질소까지 이용했다. 사실 그 전에도 일부 오버클럭커들이 둠 이터널 1000FPS 돌리기를 많이 도전했다.[76] PC, PS5, XSX[77] PC[78] XSX/XSS[79] 샌드박스의 MFC→Qt 프레임워크 이전, SVOGI의 추가 등[80] 소스 라이선스로 소스 코드를 살펴보면 가관이다.[81] 대신 최적화 문제가 많으며, 프로젝트 규모가 커질수록, 프로젝트의 프로그램이 복잡해질 수록 점점 더 그 문제가 심각하다 드러날 수 밖에 없는 심각한 결점이 있다.[82] 소스 엔진은 골드 소스 엔진을 바탕으로 개발을 시작했지만 골드 소스 코드도 거의 안남았다. 하프라이프 2 출시 약 1년 전에 개발 중이던 버전의 소스 코드가 유출되었고, 퀘이크 1의 소스 코드가 아주 약간(콘솔 명령어 정도) 남아 있던 것을 근거로 소스 엔진이 여전히 퀘이크 1 엔진이라고 주장하던 사례가 있었으나, 소스 엔진이 개발되면서 결국 퀘이크 1 엔진의 모든 잔여 코드가 완전히 제거되었으므로, 소스 엔진이 여전히 퀘이크 1 엔진을 바탕으로 하는 엔진이라는 주장은 전혀 적절하지 않다.[83] 리부트 2편[84] 2007년 id Tech 5 발표 이후 시점부터 id Tech를 사용한 게임은 id Tech 로고를 넣는 조건이 있음에도 울펜슈타인(2009)는 박스 표지에 Havok 로고는 있어도 id Tech 로고는 없다. 2011년에 발매된 브링크에는 id Tech 로고가 있으며, 2014년에 발매된 울펜슈타인 더 뉴 오더에는 id Tech 로고가, 2017년에 발매된 울펜슈타인 2 더 뉴 콜로서스에는 id Tech 로고와 Havok 로고가 같이 들어가 있다.[85] 레이븐 소프트웨어는 액티비전의 자회사였고, 이드 소프트웨어와 한솥받을 먹는 사이가 아니므로 자체 개발을 했더라도 툴이 부실한 id Tech를 굳이 고집해서 사용하지 않고, 게임 엔진의 대세인 언리얼 엔진 3로 가려던 것으로 보인다. 액티비전은 퀘이크 4, 울펜슈타인, 싱귤레리티의 연속적인 실패로 레이븐 소프트웨어를 콜 오브 듀티 개발 보조 스튜디오로 전락시켰으나 이드 소프트웨어를 인수한 제니맥스와 레이븐 소프트웨어를 소유한 액티비전 블리자드가 모두 MS 산하로 들어감에 따라 이제 다시 레이븐 소프트웨어가 이드 소프트웨어의 IP(울펜슈타인 또는 퀘이크)를 개발할 가능성도 적긴 하지만 다시 열리게 되었다.[86] 휴먼헤드 스튜디오에서 재개발 하기 전에 3D 렐름에서 직접 자체 엔진으로 개발했던 작품에서도 에디터의 이름이 동일한 PREDITOR였다.