Как работает doom
id Tech 1 , также известный как движок Doom , - это игровой движок, который используется id Software в играх Doom и Doom II: Hell on Earth . Он также используется в Heretic , Hexen: Beyond Heretic , Strife: Quest for the Sigil , Hacx: Twitch 'n Kill , Freedoom и других играх, выпущенных лицензиатами. Он был создан Джоном Кармаком , а вспомогательные функции написаны Майком Абрашем , Джоном Ромеро , Дэйвом Тейлором и Полом Радеком. Первоначально разработанный на компьютерах NeXT , он был перенесен на DOS для первоначального выпуска Doom, а затем был перенесен на несколько игровых консолей и операционных систем .
Исходный код для Linux версии Гибели был выпущен для общественности в соответствии с лицензией, предоставленным правом некоммерческого использования на 23 декабря 1997 года, а затем версии Linux от Doom II примерно через неделю 29 декабря 1997 года исходный код был позже переиздан под лицензией GNU General Public License v2.0 или более поздней версии, 3 октября 1999 года. Десятки неофициальных исходных портов Doom , которые были созданы с тех пор, позволяют Doom работать в ранее неподдерживаемых операционных системах, а иногда и радикально расширять функциональность движка с новыми функциями.
Хотя движок визуализирует трехмерное пространство, это пространство проецируется с двухмерного плана этажа . Линия обзора всегда параллельна полу, стены должны быть перпендикулярны этажам, и нельзя создавать многоуровневые конструкции или наклонные участки (полы и потолки с разными углами). Несмотря на эти ограничения, движок представлял собой технологический скачок по сравнению с предыдущим движком id Wolfenstein 3D . Думы позже двигатель был переименован в «ид Tech 1» для того , чтобы классифицировать его в списке длинной линии ID Software в игровых системах .
Игры на движке Doom
Дум двигатель достиг большую часть своей известности в результате питания классический шутер от первого лица Гибели , и он был использован в нескольких других играх. Обычно считается, что к «большой четверке» движков Doom относятся Doom , Heretic , Hexen: Beyond Heretic и Strife: Quest for the Sigil .
Тактическая сторона вопроса
Если говорить об одиночном режиме, то Doom — это хорошо продуманный и сбалансированный классический шутер. Оружие выдают оперативно и всегда под стать новым опасным монстрам, кроме того, разработчики не забывают увеличивать количество и качество врагов. Уже к середине игры вас оснастят всеми видами «стволов» и останется только переключаться между ними.
Что до монстров, то можно было сделать их «тоньше», но больше, хотя с такими геймплейными проблемами проку от этого мало, сойдет и так, как есть. Влияние сложности хорошо чувствуется и каждая сложность соответствует своему описанию — совершенно неудивительно, что разработчики не смогли пройти собственное творение на максимальной сложности.
Локации интересные и запоминающиеся, набитые не только секретами и пасхалками, но и интересными моментами — придется пылесосить каждый уровень, если хотите узнать и собрать их все. Например, по уровням раскиданы аргент-ячейки для улучшения базовых характеристик преторианского костюма, вроде здоровья или количества брони, а также преторианские модули, с помощью которых можно получить бонус к ведению боя — сканер местности, устойчивость к воздействию среды и так далее.
Аналогичная ситуация и с оружием, только там возможностей для прокачки больше, поскольку вы сначала открываете модуль, а затем уже усиливаете оружие вместе с той или иной модификацией при помощи улучшений.
Кстати говоря, Doom внимательно следит за вашими успехами, выдавая новые задания на каждый уровень — успешно проходя их вы заработаете улучшения для брони и оружия. Перфекционистам придется сложно, но это еще не все — чтобы не было совсем скучно, можно проверить себя в режиме рун. От вас требуется быстро выполнить определенное задание. За это вы получите руну — она может усилить сбор предметов или увеличить урон. При этом руна, которой вы пользуетесь, со временем автоматически получит усиление.
В итоге это позволяет перестроить геймплей под свой стиль игры в любой момент — достаточно просто открыть свой мини-компьютер и покопаться в его вкладках.
Из минусов можно отметить только чертов паркур, как в Mirror's Edge. Добрую четверть игры вы будете перепрыгивать с уступа на уступ, не забывая отстреливаться от толстых пачек врагов и смотря себе под ноги — а то можно свариться в жидком металле или раствориться в кислоте. Некоторые уровни сплошь состоят из перепрыгиваний, а для людей, у которых паталогические проблемы с перепрыгиваниями в компьютерных играх, это станет очень большой проблемой.
Doom почти 30 лет. Вспоминаем, как она создавалась и что привнесла в индустрию видеоигр
10 декабря легендарной Doom исполняется 27 лет. Вклад этой игры в индустрию трудно переоценить, ведь она принесла с собой кучу вещей, которые мы сейчас считаем обыденностью. По случаю знаменательной даты мы решили рассказать о создании первой части Doom.
Началось все с двух друзей — Джона Кармака и Джона Ромеро. Кармак был очень талантливым программистом и полностью отдавал себя работе. Ромеро был более развязным и общительным, любил находиться на виду.
Первое время ребята разрабатывали игры для журнала Softdisk. Под крылом Softdisk Кармак создал известный платформер Dangerous Dave. Изучая код, он вывел новую систему прогона изображения для 2D-игр, благодаря ей графика в компьютерных играх грузилась в несколько раз быстрее.
Впоследствии вышло еще три части Dangerous Dave. А с демоверсией Dangerous Dave in Copyright Infringement Кармак пытался продать свою технологию Nintendo. Демка состояла из лицензированной графики Super Mario Bros 3, но главным героем там был Дэйв.
Nintendo хоть и впечатлили технические наработки Кармака, но выходить на компьютерный рынок они не планировали. Зато этой демкой и новой системой прокрутки уровней заинтересовался Скотт Миллер, основатель Apogee Software, и предложил Кармаку, Ромеро и их команде разработать для него новый платформер.
Так появилась серия Commander Keen — про паренька, путешествующего во времени. Серия жива до сих пор, последняя часть вышла в 2019 году.
Команда работала над Commander Keen в офисе Softdisk параллельно с основными задачами. В итоге разработчики покинули Softdisk и основали собственную студию id Software.
В 1992 году id Software выпускает легендарный Wolfenstein 3D, где главный герой бегает по запутанным уровням и уничтожает нацистов. Шутер от первого лица смотрелся потрясающе, а геймплей ощущался очень плавным и динамичным.
У Wolfenstein 3D была интересная модель распространения. Игрок мог бесплатно скачать версию с несколькими уровнями, пройти их, и если ему понравилось, то покупатель просто звонил в магазин и заказывал полную версию.
Игра стала настоящим хитом, и Кармак решил дальше развивать идею с шутерами. Первым делом для создания следующего проекта он снова сел за программный код, стал изучать новые технологии.
Благодаря усердию Кармака удалось решить проблему со слишком высоким требованием к мощности компьютеров. Для железа тех лет на уровнях Doom было чересчур много всего того, что приходилось прогружать системе. Поэтому объекты в «Думе» загружаются только тогда, когда на них смотрит персонаж. Сейчас это называется подгрузкой текстур.
Само названием Doom выбрали из-за фильма Мартина Скорсезе «Цвет денег», там герой Тома Круза произносит фразу «Your Doom» («Твоя смерть»). Общий визуальный стиль и атмосферу подбирали, вдохновляясь франшизой «Чужой».
Специально написанный движок позволял игроку подниматься и опускаться на возвышенности. Полноценного 3D в «Думе» не было, скорее 2.5D. Зато именно в Doom впервые появилось динамическое освещение.
Один из сотрудников id Software, Том Холл, придумал для игры масштабный и эпичный сюжет, который записал в книгу под названием «Библия Дум». Но написанная история так и не пошла в дело. Кармак считал, что в шутере сюжет нужен лишь для галочки, главное — сам геймплей.
Поэтому сценарий Doom рассказывает о безымянном морпехе на космической станции, расположенной на Марсе, которую захватили чудовища. Появились монстры после того, как из-за неудачного эксперимента с телепортацией открылся портал в Ад. Теперь морпеху предстоит перебить всех отродий бездны, что так жадно и яростно хотят его убить.
Образы персонажей сначала вылепляли в объемных моделях из глины и пластилина, а затем фотографировали с разных сторон и оцифровывали. Игра все-таки от первого лица, поэтому большую часть времени игрок видит только руки своего протагониста, Думгаю их подарил художник id Software Кевин Клауд.
Джон Ромеро же занимался созданием уровней. Именно ему игроки обязаны запутанным лабиринтом, а не просто обычным коридором.
Помимо всего прочего Кармак убил кучу времени на разработку мультиплеера. Тогда не было даже модемного интернета, сеть можно было найти в университетах, корпорациях или научных заведениях. В компьютерных клубах же обходились локальным соединением.
Провозившись с разными сетевыми протоколами, Джон Кармак все-таки сумел добавить в игру возможность сражаться против реальных соперников. Вся команда id Software с головой ушла в сетевой режим, не забывая вести на отдельной бумажке счет по фрагам.
Тогда Джон Ромеро и придумал название всем известного режима Deathmatch. Позже, после выхода Doom, многие университеты и компании вводили запрет на игру из-за того, что она была слишком популярной и затягивающей.
В игре был отличный звуковой дизайн, много оружия, от пистолета до знаменитой BFG, и красивые анимации смерти врагов. Одним словом, все, что нужно для веселой стрельбы.
Игра распространялась по той же системе, что и Wolfenstein: сначала любой желающий мог получить бесплатное демо, а затем купить полную версию. Разработчики решили не сотрудничать с розничными магазинами, а принимать заказы на игру самим. Позже id Software все же начала сотрудничать с магазинами ради дополнительной рекламы. Они не брали денег с розничных продаж, а любой продавец мог нарисовать свою обложку для игры. В личной коллекции Ромеро больше десятка таких.
Игра вышла в 1993 году. Ранее загружали в сеть тестовую сборку, и Doom был уже на слуху. В день выхода интернет-сети испытывали колоссальную нагрузку. Ажиотаж дошел до того, что сами авторы не могли подключиться и залить игру в сеть, пришлось просить фанатов уступить им место.
С каждым днем популярность Doom росла, игра своим жестоким геймплеем привлекла внимание властей, из-за чего был принят закон об обязательном присвоении возрастного рейтинга для каждой видеоигры.
Джон Кармак выложил исходный код «Дума» в открытый доступ, чтобы любой желающий мог попробовать написать что-нибудь сам. Вокруг игры быстро сформировалось сообщество фанатов, которое делало свои собственный карты и модификации. В некоторые из них играли и сами разработчики оригинала.
Пресса осталась в восторге от Doom, а Кармак и Ромеро стали настоящими звездами. Интервью, общение с фанатами и различные мероприятия по большей части брал на себя Ромеро, так как Кармак все же был более закрытой личностью.
В дальнейшем при разработке Doom II Ромеро настолько сильно увлечется славой, что позабудет о разработке карт. Такое отношение к делу приведет к конфликтам с Кармаком. Но это будет потом.
Первый Doom навсегда останется эталонным шутером старой школы. Сейчас каждая новая игра подобного жанра взяла что-то от «Дума», пускай и самую малость.
Игровой мир
Дум двигатель отделяет рендеринг от остальной части игры. Графический движок работает с максимальной скоростью, но игровой мир работает со скоростью 35 кадров в секунду независимо от оборудования, поэтому несколько игроков могут играть друг против друга, используя компьютеры разной производительности.
Прогулка в ад и обратно
Если говорить о сюжете, то… в общем, эм… у них там что-то взорвалось, а дальше пдыщ-бабам-бадабух, мы должны спасти мир от демонов! На самом деле тут все стандартно для серии — сюжет вспоминается, когда кто-то начинает что-то бубнить в роликах и забывается с выходом из игры.
Если говорить серьезно, то сюжет в новом Doom похож на сюжет в Doom 3. Даже очень похож — сходное начало, сходное развитие и конец, те же UAC, Марс, подача информации и диалогов. При этом id Software поленились делать кинематографические CGI-ролики или хотя бы вставки с технологией захвата движений на движке. Основная часть сюжета, если вам так интересно, вообще спрятана в информационных записках и досье. А все то, что нам говорят — это лишь для галочки.
При этом в Doom 3 был хороший сюжет, с достаточным количеством вставок и диалогов. В новой Doom с этим по минимуму и лишь от ваших ожиданий зависит, разочарованы вы будете, али нет. Но, не трудно согласиться с тем, что сюжет тут играет не самую важную роль. Причем его хватает на 14 часов прохождения без провисаний за счет динамичной смена обстоятельств и обстановки — поверхность Марса, лаборатории под землей, ад, и снова в другой последовательности, и так несколько раз.
Радует и локализация: тут без вопросов, актеры озвучки отыгрывают аутентично, с душой и достаточно естественно. Результат на уровне игр от Blizzard и это на самом деле замечательно, ведь русскую речь мы все реже слышим в проектах ААА-класса. А ведь есть еще качественный, полный, корректный перевод всех субтитров, информационных и справочных текстов и другой информации. Это просто прелесть, на фоне других проектов.
Немного пресным может показаться звук, тут даже среди фанатов нет единого мнения. Выстрелы и взрывы звучат приглушенно, без басов и никак не увеличивают общее вовлечение в игровой процесс. Зато враги орут аутентично и сразу запоминаются. Звуки окружения также добавлены по минимуму, они есть только там где нужны. Саундтрек состоит из одной основной композиции, которая приедается уже на втором часу, а важные моменты проигрываются 1-2 минутными трэками, пусть и не плохими, но они шибко короткие, чтобы их как-то оценить.
Крылышко или ножку?
Стрельба в шутерах — превыше всего. И Doom Eternal не исключение. Игра не заставляет долго бродить по пустынным локациям в поисках врагов, выслушивая монотонные диалоги малознакомых NPC. После запуска не проходит и десяти минут до первой схватки со злом. Главное, что палить не скучно до самого конца. Почти в каждой миссии Думгай находит новые виды оружия, которые требуют дополнительной сноровки и ощущаются по-своему. Разнообразие стволов впечатляет: только экипировка начинает надоедать, как нам сразу же подкидывают свежую пушку.
Может, мы и не получаем уникальных ощущений от взаимодействия с вооружением. Но быстрыми перемещениями, рывками и безумной стрельбой достигается та самая динамика, которая не позволяет отложить Nintendo Switch в сторону.
СОДЕРЖАНИЕ
Контрольный
Резюмируя все вышесказанное, можно сказать, что Doom — это просто качественный шутер, с закосом под «олдскул», для тех, кто устал от «гребанных игр про будущее», устал от джетпаков, экзоскелетов, боевых роботов и другой техники, укрытий, перекатов, точной стрельбы, контроля над расходом патронов, реализма и физики.
Doom: обзор — они забыли сделать все самое важное
Судьба проекта была противоречивая, долгое время ходили слухи, что id Software начала разработку Doom с самого начала. Основную информацию нам представили во время Е3 2015 и тогда игра казалась эталоном. Впрочем, она была таковой и до самого момента релиза — трейлеры стыдливо умалчивали ее проблемы. Попробуем же в них разобраться.
Забудьте про «мясо» и брутальность
Самый большой вопрос, который возникает к разработчикам после первого же боя — зачем вы сделали «уборщика»? Нет, серьезно, уже через 5 секунд после убийства, труп врага исчезает. Когда вы закончите перемалывание пачки монстров, локация будет идеально чистой, как будто ничего и не было. Кровь и останки тел будут только там, где об этом позаботились авторы уровней.
Понимаете, во многих обзорах говорят, что Doom это невероятно брутальный и «мясистый» шутер. Эти люди вообще играли?
В Doom нет кусков мяса, летающих по локации от разорванных в клочья демонов, кровь не брызжет из них, не остается на стенах и не заливает пол. Вы не можете поиграть оставшимися кусками в футбол или заглянуть внутрь манкубуса, а ошметки не загадят мониторы и клавиатуры местных компьютеров. Сожженные враги не будут догорать и дымить некоторое время после смерти. Да что уж там, даже ваш шлем и руки всегда будут стерильно чистыми.
По колено в крови? Это определенно не про новую Doom. Когда ходишь по этим абсолютно стерильным локациям не возникает ощущения собственной гордости от количества и размеров убитых врагов, а без этого Doom и не «дуум» никакой, а так, шутерок от польской конторы.
Я согласен, добивания хороши, отлично анимированы и действительно подходят под термины «мясо» и «расчлененка». Но шутерная часть? Попадание из «супердробовика» выбивает из любого врага небольшое облако красной пыли, а трупик затем растворяется в воздухе. Никаких тебе фонтанов крови из оторванных конечностей, как и самих разорванных на части тел — все это спешит испариться. Магия id Software.
Стреляй-беги-стреляй
Хорошо знакомая формула по первой Doom мало изменилась в новой. И это действительно хорошо. Перестрелки ненавязчивые, не сильно сложные и не сильно простые. Толпы мобов расстреливать весело и увлекательно, по крайней мере, после тяжелого трудового дня. Тупо стоять на месте не получится, надо двигаться, метко стрелять, уходить от атак и ни в коем случае не подставляться под удар. А еще надо правильно подбирать оружие для каждого врага — благо колесо выбора ставит игру на паузу. Надоесть может только если вы совсем эстет.
Враги хорошо чувствуются, сразу становится ясно, кто респаунулся и в подкорке головного мозга уже начинает зудеть нужное оружие, напрягает только респаун врагов прямо за спиной — опять же, надо смотреть по сторонам! Добивания являются важной частью игрового процесса, без которой вы далеко не уйдете — ведь именно так можно получить немного патронов и много аптечек. Советуем вам чаще орудовать бензопилой и не игнорировать добивания.
В общем, через 2-3 часа в Doom вы уже будете делать все на автомате, и этот навык сохраняется длительное время.
Не всем понравилось то, что в Doom вообще нет перезарядки оружия, а сами «стволы» из-за отсутствия отдачи не чувствуются. Это действительно так, решение справедливо назвать шагом в сторону полной оказуаленности, не хватает только автоприцеливания и Press X to Win. Казуальность чувствуют даже игроки в Call of Duty (!) что уж говорить про тех, кто любит шутеры по серьезней — Wolfenstein или Battlefield.
С другой стороны, когда мы хотим получить заряд хороших эмоций, это не так важно — важно как можно быстрее убить очередную порцию врагов. Вот бы они еще и сохранялись на карте, эх, мечты, мечты…
Но если говорить с точки зрения фана, будет уместно сказать, что не хватает счетчика очков убитых врагов и комбо-приемов, как в Bulletstorm, чтобы можно было помериться успешностью среди друзей, а может и переиграть уровень ради серии более эффектных убийств. Вдобавок, разработчики могли сделать добивания не только единичными, но и массовыми, с видом от третьего лица!
Толкотня в уборной
Самое время поговорить о сетевом режиме Doom. Многочисленные альфа- и бета-тестирования разочаровали геймеров по всему миру и мы можем только согласиться с ними. Каждый остался чем-то не доволен, но тонкость в том, что все эти недовольства разные и вот почему.
Играть в Doom после прорывных геймплейных решений той же Titanfall очень трудно, чувствуется, что твоего протеже намеренно умалили по сравнению с бойцами из других игр. Хочется бегать по стенам, облачаться в непробиваемую броню, а порой очень не хватает удара по площади ускорителями. Без всего этого Doom кажется отсталой и казуальной, и да, после нее в других играх будешь дико тупить и долго соображать.
Честно говоря, я и сам уже привык убивать врагов, свешиваясь с потолка, как в Titanfall, а также пользоваться возможностями своего силового экзоскелета, как в Advanced Warfare, для маневрирования и перемещения. И тут нет щита и авторегенерации здоровья, как в Halo 5, приходится бегать за здоровьем и аптечками!
Окей, допустим вы не из тех, кто любит фантастику и ненавидите современные игры про будущее. И тогда первые 5-6 часов вы будете просто плакать от счастья — ведь мультиплеер Doom покажется отличным олдскульным шутером, который получился таким же ненавязчивым и простым, как одиночный режим. Играете себе спокойно, убиваете врагов, не обращаете внимания на неприятности — и вот уже матч завершен, поехали в следующий. Никакой регенерации здоровья, сумасшедших скачков по карте и гребанного будущего — казалось бы, идеальный вариант.
И так будет до тех пор, пока вы не осознаете, что в кастомизацию и насмешки разработчики вложили больше сил, чем в проработку сетевого режима. Это важная часть любой игры, да, и получилась она отлично — вариантов настроить своего бойца, оружие — воз и маленькая тележка. Различные зоны, раскраски и текстуры для них, куча цветов и окрасов, рисунки и сетки для всех участков, износ как модель повреждений — голова кружится от всего этого.
Но, блин, почему так мало режимов? «Командный бой» и «Превосходство» — пара самых заурядных, которые мы видели уже в миллионе интерпретаций и они не отличаются разнообразием — в первом нужно убить 75 врагов, в другом захватывая три точки успеть набрать 250 очков раньше соперников. Да, тут можно хватать более мощное оружие, вроде BFG 9000 или бензопилы, улучшающие руны, а также становиться демоном — в общем, все то, что нам показывали в трейлерах. Но кроме этого нет ничего.
Чуть лучше и заметно динамичнее «Жатва душ», «Тропа войны» и «Клановая арена». Тут можно блеснуть тактикой и знанием карт, поможет общение по сети и совместная работа. Но четыре режима — это все, на что вы способны, пусть даже сетевой частью занималась команда Certain Affinity, а не id Software?
Другие шутеры на старте предлагают по 10-12 режимов — там нужно штурмовать базы, захватывать инициативу, или играть со временем и телепортами, и так далее, Где смелые идеи и неординарные режимы, это же Doom, неужели нельзя было придумать что-то действительно оригинальное?! Вы даже на банальный «демоны против преторианцев» не сподобились.
И вполне может так статься, что единственным интересным режимом станут «Салки». Тут вы не умираете, а замораживаетесь, а будучи в движении стоя рядом с замороженным союзником — размораживаете его. Простой и самый веселый игровой режим одновременно. Раунды летят один за другим, матчи проходят молниеносно. Пусть между командами не всегда сходится баланс, но победы тут возбуждают, как ни в каком другом режиме, а уж когда две стороны идут на равных и все решается в пятом раунде — адреналин прямо чувствуется в крови!
Как видите, причин быть недовольным мультиплеером Doom очень много и купив игру, вы наверняка найдете свою уже к десятому часу игры.
Ах да, чуть не забыл, все действо происходит на крошечных картах 5 на 5 шагов, пусть и неплохо проработанных с точки зрения игрового баланса, и в режиме 4 на 4 или аж 6 на 6 игроков! Как будто не было ни одной Battlefield…
Рендеринг
Рисуем стены
Все стены в Doom нарисованы вертикально; именно из-за этого невозможно правильно смотреть вверх и вниз. Можно выполнить вид поиска вверх / вниз с помощью «Y-сдвига» , и это делают многие современные порты исходного кода Doom , а также более поздние игры, использующие этот движок, такие как Heretic . По сути, это работает путем перемещения линии горизонта вверх и вниз по экрану, по сути, обеспечивая «окно» в более высокой видимой области. Перемещая окно вверх и вниз, можно создать иллюзию взгляда вверх и вниз. Однако это будет искажать вид по мере того, как игрок смотрит вверх и вниз.
Дум двигатель делает стены , как она обходит дерево BSP, рисунок подсектор по заказу расстояния от камеры , так что самые близкие SEGS втягивается в первую очередь. По мере рисования сегментов они сохраняются в связанном списке. Это используется для обрезки других сегментов, отображаемых позже, для уменьшения перерисовки. Это также используется позже для обрезки краев спрайтов.
Как только двигатель достигает твердой (односторонней) стены в определенной координате x, больше не нужно рисовать линии в этой области. Для отсечения движок хранит «карту» областей экрана, где были достигнуты сплошные стены. Это позволяет полностью вырезать удаленные части уровня, которые не видны игроку.
В графическом формате Doom текстуры стен хранятся в виде наборов вертикальных столбцов ; это полезно для средства визуализации, которое по существу визуализирует стены путем рисования множества вертикальных столбцов текстур.
Пол и потолок
Система для рисования полов и потолков («квартир») менее элегантна, чем для стен. Квартиры нарисованы с использованием алгоритма, похожего на заливку . Из-за этого иногда возможно, если плохой конструктор BSP используется для получения «дыр», где пол или потолок спускаются до краев экрана, визуальная ошибка, обычно называемая «слизистым следом». Это также причина, по которой, если игрок выходит за пределы уровня, используя чит noclip, полы и потолки будут казаться вытянутыми с уровня на пустое пространство.
Пол и потолок изображены в виде «виспланов». Они представляют собой горизонтальные проходы текстуры от пола или потолка на определенной высоте, уровне освещенности и текстуре (если два соседних сектора имеют точно такой же пол, они могут быть объединены в одну виплоскость). Каждая позиция x на визплоскости имеет определенную вертикальную линию текстуры, которую нужно нарисовать.
Из-за этого ограничения рисования одной вертикальной линии в каждой позиции x, иногда необходимо разделить visplanes на несколько visplanes. Например, рассмотрите пол с двумя концентрическими квадратами. Внутренний квадрат будет вертикально разделять окружающий пол. В том горизонтальном диапазоне, где нарисован внутренний квадрат, необходимы две висспланы для окружающего пола.
По мере рендеринга сегментов также добавляются виплоскости, идущие от краев сегментов к вертикальным краям экрана. Они расширяются, пока не достигнут существующих визпланов. Из-за того, как это работает, система зависит от того факта, что сегменты отрисовываются по порядку всем движком; сначала необходимо приблизить висспланы, чтобы они могли «отрезаться» от других, находящихся дальше. Если его не остановить, пол или потолок «растекутся» до краев экрана, как описано ранее. В конце концов, visplanes образуют «карту» определенных областей экрана, на которых можно рисовать определенные текстуры.
В то время как визпланы состоят в основном из вертикальных «полос», реальный низкоуровневый рендеринг выполняется в виде горизонтальных «промежутков» текстуры. После того, как все виспланы построены, они преобразуются в пролеты, которые затем отображаются на экране. Похоже, это компромисс: легче построить вископланы в виде вертикальных полос, но из-за характера того, как выглядят текстуры пола и потолка, их легче нарисовать в виде горизонтальных полос.
Вещи (спрайты)
Каждый сектор на уровне имеет связанный список вещей, хранящихся в этом секторе. По мере рисования каждого сектора спрайты помещаются в список спрайтов для рисования. Если они находятся вне поля зрения, они игнорируются.
Края спрайтов обрезаются путем проверки списка ранее нарисованных сегментов. Спрайты в Doom хранятся в том же формате столбцов, что и стены, что опять же полезно для средства визуализации. Те же функции, которые используются для рисования стен, используются и для рисования спрайтов.
В то время как подсекторы гарантированно находятся в порядке, спрайты внутри них - нет. Doom хранит список отрисовываемых спрайтов («висспрайты») и сортирует его перед рендерингом. Далекие спрайты отрисовываются раньше близких. Это вызывает некоторое перерисовку, но обычно это незначительно.
И последняя проблема со средними текстурами на двухсторонних линиях, которые используются, например, в прозрачных полосах. Они смешиваются и рисуются со спрайтами в конце процесса рендеринга, а не с другими стенами.
Руби или умри
Давайте представим, что вы не знакомы с сюжетом Doom Eternal, и вспомним здешнюю историю ещё раз. Учёные из «Объединённой аэрокосмической корпорации» не смогли сделать правильные выводы после событий на Марсе и продолжили попытки выкачать энергию из Ада. Само собой, демоны из преисподней в очередной раз захотели выбраться наружу — и у них получилось. За два года отсутствия Думгая твари растоптали людскую оборону и вырвались на свободу, захватив большую часть Земли. Где-то мы это уже видели, не правда ли?
К сожалению, никаких эпичных событий и неожиданных поворотов можно не ждать, а конечная цель максимально упрощена: очистить все планеты от демонов и предотвратить уничтожение человечества. Причём в истории игрок обычно должен разбираться сам, да и нужна она больше для того, чтобы создать некую иллюзию целостности, как-нибудь оправдать и связать действия героя между собой. В итоге мы получаем не банальную, но очень простую сюжетную линию, которой даже не нужно развитие как таковое. Учитывая жанр проекта, это совсем неплохо. Игра не про сюжет — она про эффектное расчленение монстров. Именно динамичный геймплей, несмотря на некоторое однообразие, заставляет продвигаться по локациям всё дальше и дальше.
Doom Eternal не пытается придумать что-то новое. Проект идёт проверенным путём, намеченным ещё в 2016 году. При полном отсутствии какой-либо сюжетной нагрузки, шутер погружает игрока в самую гущу событий. Здесь не нужно задумываться о сущности бытия: мы просто поднимаем новую пушку и крушим вражеские черепа. Скучно? Конечно нет!
Структура уровней
Простая установка, демонстрирующая, как Doom представляет уровни внутри
Если смотреть сверху вниз, все уровни Doom на самом деле являются двухмерными, что демонстрирует одно из ключевых ограничений движка Doom : невозможно перемещаться по комнате . Это ограничение, однако, имеет положительную сторону: можно легко отобразить «режим карты», который представляет стены и положение игрока, как и на первом изображении справа.
Основные объекты
Базовая единица - это вершина , которая представляет одну 2D-точку. Затем вершины (или «вершины», как они называются внутри) объединяются в линии , известные как «определения линий ». Каждый linedef может иметь одну или две стороны, которые известны как «sidedef». Затем боковые определения группируются в многоугольники ; они называются «секторами». Секторы представляют собой определенные области уровня.
Секторов
Каждый сектор содержит ряд свойств: высоту пола, высоту потолка, уровень освещенности, текстуру пола и текстуру потолка. Например, чтобы иметь другой уровень освещенности в определенной области, необходимо создать новый сектор для этой области с другим уровнем освещенности. Таким образом, односторонние линейные определения представляют собой сплошные стены, а двусторонние линейные определения представляют собой линии моста между секторами.
Sidedefs
Sidedefs используются для хранения текстур стен ; они полностью отделены от текстур пола и потолка. Каждый sidedef может иметь три текстуры; их называют средней, верхней и нижней текстурами. В односторонних линейных определениях для текстуры стены используется только средняя текстура. В двусторонних определениях строк ситуация более сложная. Нижняя и верхняя текстуры используются для заполнения промежутков, где соседние секторы имеют разную высоту пола и потолка: например, нижние текстуры используются для ступенек. У sidedefs также может быть средняя текстура, хотя у большинства этого нет; это используется для того, чтобы текстуры висели в воздухе. Например, когда видно, что прозрачная текстура полосы образует клетку, это пример средней текстуры на двустороннем linedef.
Разделение двоичного пространства
Doom использует систему, известную как разделение двоичного пространства (BSP). Инструмент используется для предварительного создания данных BSP для уровня. Этот процесс может занять довольно много времени для большого уровня. Именно из-за этого в Doom невозможно перемещать стены ; в то время как двери и лифты двигаются вверх и вниз, ни один из них никогда не двигается в сторону.
Уровень разделен на двоичное дерево : каждое место в дереве представляет собой «узел», который представляет определенную область уровня (с корневым узлом, представляющим весь уровень). На каждой ветви дерева есть разделительная линия, которая разделяет область узла на два подузла. В то же время разделительная линия делит определения строк на сегменты, называемые «сегменты».
На листьях дерева расположены выпуклые многоугольники , где дальнейшее деление уровня не требуется. Эти выпуклые многоугольники называются подсекторами (или «SSECTORS») и привязаны к определенному сектору. Каждый подсектор имеет список связанных с ним сегментов.
Система BSP сортирует подсекторы в правильном порядке для рендеринга. Алгоритм довольно простой:
- Начните с корневого узла.
- Рекурсивно нарисуйте дочерние узлы этого узла. Дочерний узел, ближайший к камере, сначала рисуется с использованием алгоритма Scanline . Это можно найти, посмотрев, на какой стороне разделительной линии узла находится камера.
- Когда подсектор достигнут, нарисуйте его.
Процесс завершен, когда весь столбец пикселей заполнен (т. Е. Больше не осталось пробелов). Такой порядок гарантирует, что время не будет тратиться на рисование невидимых объектов, и в результате карты могут стать очень большими без каких-либо потерь скорости.
Как работает Doom Eternal на Nintendo Switch? Крутая игра — посредственный порт
Разработчики из id Software с уважением относятся к фанатам, поэтому посвятили созданию полноценного продолжения Doom целых четыре года. Ещё восемь месяцев заняло портирование Eternal на Nintendo Switch. Эта версия игры получилась весьма необычной, поэтому сегодня мы поговорим только о ней — со всей её многогранностью и обновлённым геймплеем. Всё ли хорошо у Doom Eternal на Switch? Не тесно ли ей на портативной консоли? Так просто и не ответишь.
Проблемы движка
Кто-то может сказать, что я слишком многого прошу. Что технологии еще не доросли до такой стадии. Вы будете не правы и вот почему. Практически все вышеперечисленное мог idTech 5 — и расчлененку устраивать, и кровь по стенам, и фонтанирующих конечностями врагов, а еще сжигание, сваривание, обваривание кислотой, даже удары током. Достаточно вспомнить перестрелки в RAGE или в недавней Wolfenstein: The New Order. То есть, по сути, разработчики еще в 2011 году обладали запасом технологий для того, чтобы реализовать такие геймплейные требования к битвам.
Для Doom был разработан idTech 6 и, похоже, это очень плохой движок. Судите сами — коридорные локации, никакой физики разрушений, ее вообще нет, никаких особых эффектов, которые мы пожелали выше. И для комфортной игры вам требуется очень производительный компьютер. По современным меркам idTech 5 вообще не потреблял ресурсов и выдавал практически тот же уровень графики (средне-высокий в 6-й версии равен ультра в 5). Может, есть какая-то разница на техническом уровне, но она совершенно не чувствуется.
Бесспорно, визуальная сторона Doom сработана на отлично. Качественные текстуры практически везде, отличная игра света и тени, особенно в тех местах, где есть плотный дым или туман, декораторы вложили свою душу в проработку уровней и множество участков насыщены различными деталями, хорошо влияющих на создание атмосферы. За счет правильной конструкции локаций не возникает ощущения, что идешь по коридору, напротив, чувствуется, что это настоящий объект, во многие места можно заглянуть.
Художники хорошо поработали над монстрами, пусть те в основной своей массе и не вызывают страха или отвращения. Порой они своим внешним видом даже вызывают смех, а ближе к концу игры и зевоту, хотя какая нам с вами разница, как выглядит груша для битья? Но, как уже упоминалось выше, нет никакой интерактивности, вы видите статику, где налили кровь, там она и остается, где разместили трупы или их части — там они и будут все время.
В целом можно констатировать незначительные графические улучшения по сравнению с idTech 5 и куда заметно возросшее потребление ресурсов. И тогда становится понятно, почему разработчики убирают трупы врагов и режут эффекты — их новый движок просто не оптимизирован в достаточной степени и консоли, вместе с РС, брутальность не потянут.
При этом многие игроки, и я тоже, отметили технические проблемы Doom. Касаются они произвольных вылетов в самых разных местах и проседаний FPS там, где этого быть не должно. Пару раз игра зависла и пришлось ее снимать — не очень приятно, хотя часто расставленные чекпоинты особых нареканий не вызывают, работают как надо и практически не позволяют потерять прогресс. Но сохранений все равно не хватает.
Адовые цвета, бесячие платформы и демоническое управление
К сожалению, с графикой у разработчиков порта для Switch не особо получилось. Заметен явный недостаток цветов в палитре, всё смотрится тусклым и блёклым. Игру оптимизировали до стабильных 30 кадров в секунду, поэтому нехватка мощности не так заметна, но невооруженным глазом видна низкая чёткость изображения. В итоге картинка выглядит устаревшей и не такой сочной, как на PC, PlayStation или Xbox.
Зато отдельного упоминания достоин дизайн уровней. Если в предыдущей части все локации были одинаковыми, то Doom Eternal пестрит разнообразием. Земля, Аргент Д'Нур, Урдак, Гебет — каждый мир заметно отличается от других, и двух похожих мест здесь просто нет.
В перерывах между безумными сражениями нам предстоит прыгать по платформам через пропасти. И тут всё не так хорошо, как со стрельбой. Персонаж категорически отказывается цепляться за некоторые площадки, порой врезается в невидимые препятствия и падает в бездну, из-за чего весь маршрут приходится преодолевать заново. Всю систему прыжков на Nintendo Switch гробит плохой контроль персонажа. И всё обилие настроек управления и чувствительности стиков не спасает.
Версия Doom Eternal для Switch оставляет приятное впечатление, хотя некоторые механики здесь явно не доработали. Выпускать такой шутер на портативную платформу — смелый, но не самый удачный шаг. Игра смогла сохранить свою динамику, но заметно потеряла в графике, поэтому даже многие более старые проекты выглядят гораздо эффектнее.
К сожалению, Doom Eternal нельзя рекомендовать каждому хозяину Nintendo Switch, но заядлые любители бодрых FPS смогут получить массу удовольствия от крышесносных добиваний и невероятного драйва. Конечно, если справятся с не очень удобным управлением и кривым платформингом.
Читайте также: