id Tech 6 — многоплатформенный игровой движок , разработанный id Software . Он является преемником id Tech 5 и впервые был использован для создания видеоигры Doom 2016 года . Внутри компании команда разработчиков также использовала кодовое имя id Tech 666 для обозначения движка. [1] ПК-версия движка основана на Vulkan API и OpenGL API.
Джон Кармак начал рассказывать о своем видении движка, который должен прийти на смену id Tech 5 , за несколько лет до его дебюта в Rage , но после его ухода из id Software в 2014 году на его место ведущего программиста рендеринга в компании был нанят Тиаго Соуза.
24 июня 2009 года id Software была приобретена ZeniMax Media . Позднее, в 2010 году, было объявлено, что технология id Software будет доступна только другим компаниям, также принадлежащим ZeniMax Media. [2] За ней последовала id Tech 7 .
В 2008 году, когда id Tech 5 ещё не был полностью сформирован, Джон Кармак сказал, что следующий движок id Software будет смотреть в направлении, где будут смешаны трассировка лучей и классическая растровая графика . [3] Движок будет работать, транслируя лучи геометрии, представленной вокселями (вместо треугольников), хранящимися в октодереве . [4] Кармак утверждал, что этот формат также будет более эффективным способом хранения 2D-данных, а также данных 3D-геометрии, из-за отсутствия проблем с упаковкой и границами. [3] Целью движка будет виртуализация геометрии таким же образом, каким id Tech 5 виртуализировал текстуры. [5] [6] Это будет изменением по сравнению с предыдущими движками, которые по большей части используют системы на основе сеток. Однако во время QuakeCon 08 он также объяснил , что аппаратное обеспечение, которое было бы способно поддерживать id Tech 6, в то время ещё не существовало. [7]
В июле 2011 года Кармак объяснил, что id Software начала исследования для разработки id Tech 6. [8] Неизвестно, было ли видение движка Кармаком в то время тем же, что он описал в 2008 году.
В конечном итоге планы по рендерингу с использованием воксельного рейкастинга были отклонены в пользу традиционной растеризации на основе сеток.
Ранняя версия четвертой основной игры Doom создавалась на id Tech 5, но id Software возобновила разработку в конце 2011 — начале 2012 года после того, как Bethesda выразила обеспокоенность по поводу ее творческого и технологического направления. Когда разработка была возобновлена, было решено начать с кодовой базы Rage на основе id Tech 5, но сделать «большие скачки назад в определенных областях технологий» и «[объединить] функции Doom с Rage». [9]
Doom был впервые показан публике на QuakeCon 2014 , где было подтверждено, что он работает на ранней версии id Tech 6. [10] Цели разработчиков при создании движка были описаны как возможность управлять красивыми играми, работающими в разрешении 1080p при 60 кадрах в секунду, а также повторно ввести динамическое освещение в реальном времени, которое было в значительной степени удалено из id Tech 5. [11] Движок по-прежнему использует виртуальные текстуры (названные «MegaTextures» в id Tech 4 и 5), но они более высокого качества и больше не ограничивают появление освещения и теней в реальном времени. [12] [13] Также был подтвержден физически обоснованный рендеринг . [14] Технический анализ Doom показал, что движок поддерживает размытие движения , глубину резкости боке , HDR-расцветку , теневое отображение , карты освещения, объемы освещенности, освещение на основе изображения , FXAA , объемное освещение /дым, разрушаемое окружение , физику воды, подповерхностное рассеивание кожи , сглаживание SMAA и TSSAA , направленную окклюзию , отражения в пространстве экрана , карты нормалей , частицы с ускорением GPU, которые правильно освещены и затенены, вертикальную синхронизацию с тройным буфером, которая действует как быстрая синхронизация, единый объемный туман (на него влияет каждый свет, тень, непрямое освещение, включая водную каустику/подводное рассеивание света), мозаичную поверхность воды (на лету без тесселяции GPU . [ требуется ссылка ] Каустики динамически генерируются и выводятся из поверхности воды) и хроматическую аберрацию . [15] 11 июля 2016 года id Software выпустила обновление для игры, которое добавило поддержку Vulkan. [16]
После ухода Кармака из id Software, Тиаго Соуза, работавший ведущим графическим инженером R&D нескольких версий CryEngine в Crytek , был нанят для руководства разработкой рендеринга. [17] [18] Пит Хайнс из Bethesda прокомментировал, что, хотя id Tech 6 повторно использует код, написанный Кармаком, большинство решений о направлении движка были приняты после его ухода. [13]
Джон считает, что трассировка лучей полезна для очень специфической модели данных, которую он создал, называемой "разреженные воксельные октодеревья", которая позволяет ему хранить огромные объемы данных таким образом, чтобы к ним было легко получить доступ с помощью методов трассировки лучей (...). Эта новая модель данных и алгоритм, над которыми сейчас работают для id Tech 6, позволят, по словам Джона, почти бесконечное количество геометрических деталей в мире без проблем, наблюдаемых с движками тесселяции или попытками локального хранения гигабайт данных.
Я все еще думаю, что будет еще одно поколение, в котором мы виртуализируем геометрию с id Tech 6 и сделаем некоторые вещи, которые действительно революционны. (...) Я знаю, что мы можем дать толчок следующему поколению, если мы сможем виртуализировать геометрию так же, как мы виртуализировали текстуры; мы можем делать вещи, которые никто никогда не видел в играх раньше.
новая модель данных и алгоритм, над которыми сейчас работают для id Tech 6, позволят, по словам Джона, создать практически бесконечное количество геометрических деталей в мире без проблем, наблюдаемых с движками тесселяции или попытками локального хранения гигабайт данных.
id Tech 6, например, вероятно, не будет написан на Java или каком-либо защищенном языке. Он также будет разработан для оборудования, которого сейчас не существует. С выходом на рынок новых игроков на дискретной графике (Larrabee, Fusion и т. д.) Кармак знает, что ПК-пространство актуально, и именно там он будет искать, когда будет думать о кодировании своего следующего движка.
«И мы занимаемся исследованиями для графики id Tech 6, разработкой контента... да, я очень занят», — сказал он.