Quake engine


Quake engine («движок Quake») — игровой движок, разработанный в 1996 году американской компанией id Software для использования в шутере от первого лица Quake. Quake engine стал одним из первых движков, способным обрабатывать в реальном времени полностью трехмерную графику. Наработки движка были применены компанией при разработке игровых движков следующего поколения — id Tech 2 и id Tech 3, которые были созданы для игр Quake II и Quake III Arena соответственно.

Согласно традиции id Software, спустя некоторое время после успешного коммерческого лицензирования движок стал доступен для бесплатного использования по условиям лицензии GNU General Public License, которая подразумевает под собой право копировать, модифицировать и распространять его содержимое. Это оказало большое влияние на развитие мира открытого программного обеспечения, а также породило большое количество форков — сторонних игровых движков, основанных на Quake engine.

Подобно движку Doom, Quake engine использует систему BSP-деревьев. Движок также использует затенение по методу Гуро для подвижных объектов и карт освещения — для статических.

Первоначальной версией движка поддерживаются операционные системы DOS и Windows, однако открытый исходный код и использование стандарта OpenGL обеспечивают широкие возможности для переноса программы на другие операционные системы или платформы (например, на игровую приставку).

Движок был написан американским программистом Джоном Кармаком (англ. John Carmack) в 1996 году на языке Си специально для игры Quake. К разработке также был причастен Майкл Абраш (англ. Michael Abrash), который помогал Кармаку с алгоритмами и оптимизацией кода на ассемблере[1].

Разработка движка оказала влияние на развитие индустрии компьютерных игр. Фактически, это был один из первых движков, имеющих открытую архитектуру. Это подразумевает то, что разработчики могут гибко использовать и модифицировать игры, потому что все используемые ресурсы содержатся в отдельных архивах с расширением .PAK. Кроме того, движок содержит консоль, в которой используется своя система команд. Примечательной возможностью является также использование специальных конфигурационных файлов для настройки, которые пользователь может открыть в любом текстовом редакторе. Такие текстовые файлы содержат параметры игры, касающиеся как обработки графики, так и управления. Посредством изменения параметров в текстовом файле пользователь может настроить игру по собственному усмотрению.