Какие технические уловки помогали создавать видеоигровую классику

N+1События

Это вам не игрушки

Какие технические уловки помогали создавать видеоигровую классику

Богдан Сиротич

id Software

Разработка видеоигр — это искусство. Когда так говорят, чаще всего имеют в виду сочетание сюжета, геймплея, геймдизайна и сеттинга. За кадром остается титаническая работа: написание кода и оптимизация видеоигр. Не трудись разработчики над требованиями своих проектов к железу, на консолях нового поколения мы бы играли в игры уровня первой Silent Hill. В совместном материале с образовательной компанией «Нетология» N + 1 рассказывает, как менялся подход к созданию видеоигр от эпохи Марио до нашего времени.

Кто прочистил засор в индустрии видеоигр

История усатого водопроводчика началась не с Super Mario Bros. — впервые он появился в видеоигре Donkey Kong 1981 года, которая разрабатывалась для аркадных автоматов. Однако именно благодаря домашней консоли NES/Famicom, появившейся в 1983 году, Марио не только проник в гостиные игроков, но и помог индустрии видеоигр пережить кризис, связанный с перенасыщением рынка консолей и растущим интересом к персональным компьютерам.

Шутка ли: Nintendo выпустила консоль NES на американском рынке максимально похожей на проигрыватель видеокассет, чтобы она не напоминала покупателям о провалившихся приставках.

По меркам своего времени NES была консолью нового поколения, но разработчики сталкивались с огромными аппаратными ограничениями. В их распоряжении находилось всего 2Кб оперативной и 2Кб видеопамяти. Консоль использовала в качестве носителя картридж, стандартный размер которого составлял всего 48Кб. Таким образом, скриншот с игрой Super Mario Bros. может весить больше, чем сама игра.

Графика сложных движений в NES была реализована через спрайты — заранее заданные пиксельные изображения, размерность которых составляла 8 на 8 либо 8 на 16 пикселей. Из-за этого изображения движущихся объектов приходилось разбивать на 4, а то и на 8 спрайтов. А ведь их максимальное количество на экране ограничивалось 64 единицами.

Кадр из Super Mario Bros. Nintendo

Создатели ранних игр по-разному выходили из этой ситуации. Присмотритесь: облака и кусты в Super Mario bros. имеют один и тот же контур. Это сделано для экономии памяти: если на экран нужно было добавить больше движущихся врагов, чем это позволяла консоль, спрайты попеременно подгружали и удаляли из памяти. Враги при этом «мигали». Такое решение не назовешь самым комфортным для игроков, но зато оно делало игры даже более динамичными, чем представляли создатели NES.

Помощь пришла откуда не ждали. Вставленный в консоль картридж, в отличие, например, от CD-диска, образует с ней единую систему. Издатели быстро поняли, что с помощью техники смены блоков можно увеличить размер игр и продавали разработчикам картриджи с необходимыми расширениями: картридж сам переключал нужное ПЗУ во время игры, и консоль каждый раз получала новые 48Кб. Некоторые игры таким образом весили и по 1Мб (Metal Slader Glory).

В другие картриджи добавлялись усовершенствованные звуковые чипы (Castlevania 3) или батарейки для возможности сохранения игрового процесса (The Legend of Zelda). К сожалению, игрокам, знакомым с NES по ее тайваньскому клону Dendy, это не было доступно: китайские пираты не утруждали себя копированием продвинутых картриджей. Их предпочтения были на стороне сборников «999999 игр в 1».

Девкит NES, появившийся на eBay в 2011 году.

Кроме того, девкиты (devkit), специальные наборы оборудования и программ для разработки игр, во времена NES (на картинке) сильно отличались от профессиональных, отлаженных машин, на которых создают игры для Playstation 5. Собственно говоря, чаще всего девкитов, как и хорошей документации, у разработчиков не было вовсе. Им приходилось самим создавать устройства для отладки игр. И хотя, с одной стороны, это было сопряжено с трудностями в разработке, иногда они обнаруживали такие возможности консоли, о которых не догадывались даже ее создатели.

IDDQD

Doom, великий и ужасный хит 1993 года, стал в свое время настоящим system seller’ом для персональных компьютеров. И хотя его портировали на большинство актуальных консолей того времени, там он выглядел почти как Cyberpunk 2077 на Playstation 4.

Команда разработчиков во главе с Джоном Кармаком и Джоном Ромеро не стала уделять особого внимания сюжету. Кармаку принадлежит известная (и относительно плохо сохранившаяся) цитата: «Сюжет в игре — как сюжет в порнофильме. Он должен быть, но совершенно не важен». Таким образом, наибольшее внимание разработчики уделили движку игры и атмосфере. Некоторые демоны лепились из пластилина, фотографировались и позже переносились в игру после обработки в графической программе, а отдельные виды оружия (бензопила) или руки, которые видны в кадре, принадлежали самим разработчикам или их друзьям.

Кадр из Doom (1996). id Software

В отличие от создателей игр для приставок предыдущего поколения, разработчики Doom могли использовать язык Си (англ. C) и его преимущества. В первую очередь, гораздо более простой в сравнении с языком ассемблера синтаксис. При этом, поскольку основным носителем игры являлась магнитная дискета, требования к оптимизации памяти оставались существенными. Отсюда — мнимая трехмерность в игре: движок устроен таким образом, что если в игрока выстрелит враг, находящийся перед ним этажом выше, протагонист получит урон.

Вычисления в Doom проводились с частотой 35 раз в секунду. Чтоб сэкономить такты процессора, управление монстрами было оптимизировано: если из одного сектора не была видна ни одна точка другого, в соответствующей ячейке матрицы ставилась единица, а в противном случае — 0. Таким образом, если в ячейке, связывающей сектор протагониста и сектор демона стоит 0, проводится проверка, видит ли демон игрока. Если же стоит единица, игра считает, что игрок в безопасности.

Для ускорения построения изображения использовалось BSP-дерево — метод рекурсивного разбиения евклидова пространства в выпуклые множества. Движок игры поочередно отрисовывал стены от ближних к дальним, и только когда этот процесс был окончен, отрисовывал полы и потолки. Джон Кармак оптимизировал алгоритм: он учел, что для набора полигонов дерево имеет невырожденную структуру, если для каждого полигона из набора все остальные расположены с передней или задней стороны. Также при помощи BSP-дерева в игре обнаруживались столкновения с поверхностями.

Авторизуйтесь, чтобы продолжить чтение. Это быстро и бесплатно.

Регистрируясь, я принимаю условия использования

Рекомендуемые статьи

Как устроен мир: 5 книг для тех, кто хочет знать больше Как устроен мир: 5 книг для тех, кто хочет знать больше

Книги о квантовая механике, генетике, устройстве микромира…

Популярная механика
8 признаков по-настоящему хорошего друга 8 признаков по-настоящему хорошего друга

Чек-лист для проверки того, насколько вы хороший друг

Psychologies
Устройство мозга древнейших людей оказалось ближе к обезьяньему Устройство мозга древнейших людей оказалось ближе к обезьяньему

Это не помешало им стать первыми людьми, покинувшими Африку

N+1
Минус 50 и даже 100 кг: фото российских звезд в максимальном и минимальном весе Минус 50 и даже 100 кг: фото российских звезд в максимальном и минимальном весе

Звезды, которые взяли себя в руки и скинули всё лишнее. Ну или почти всё

Cosmopolitan
Они сделали это: 5 красоток, женивших на себе звездных бабников Они сделали это: 5 красоток, женивших на себе звездных бабников

Знаменитые девушки, которые построили семью с неисправимыми ловеласами

Cosmopolitan
Почему некоторые люди путают право и лево? Почему некоторые люди путают право и лево?

Почему некоторым людям сложно отличать право и лево

Psychologies
Лучшие российские сериалы про большую (и не очень) любовь Лучшие российские сериалы про большую (и не очень) любовь

Хорошие, смешные и порой страшные российские сериалы про отношения

Cosmopolitan
Бытовая магия: какие ароматы привлекают деньги, здоровье и любовь Бытовая магия: какие ароматы привлекают деньги, здоровье и любовь

Ароматы могут помочь тебе получить как что-то отдельное, так всё и сразу

Cosmopolitan
Дела на аутсорс: как индустрия «помощников» поможет развить бизнес и карьеру Дела на аутсорс: как индустрия «помощников» поможет развить бизнес и карьеру

Как делегирование задач помогает развивать компании и карьеры

Forbes
Революция Z Революция Z

Зендая — та редкая актриса, героини которой взрослеют вместе с ней

Grazia
Как потомки Грейс Келли из княжеской семьи Монако захватывают моду Как потомки Грейс Келли из княжеской семьи Монако захватывают моду

Что нужно знать об аристократках Монако, которые связаны с индустрией моды

РБК
«Я бросила детей, но люблю их»: как живут россиянки, ставшие матерями в детстве «Я бросила детей, но люблю их»: как живут россиянки, ставшие матерями в детстве

Истории нескольких несовершеннолетних мам

Cosmopolitan
Полные карманы воспоминаний Полные карманы воспоминаний

Помните свои детские путешествия? Они как камушки в карманах

Seasons of life
От золота до экопрокладок: кто вошел в список самых перспективных предпринимательниц Азии От золота до экопрокладок: кто вошел в список самых перспективных предпринимательниц Азии

Рассказываем о самых интересных и успешных проектах, созданных женщинами

Forbes
Секреты похудения звезд сериала «Друзья» Дженнифер Энистон, Кортни Кокс и Кудроу Секреты похудения звезд сериала «Друзья» Дженнифер Энистон, Кортни Кокс и Кудроу

Актрисы, сыгравшие главные роли в «Друзьях», до сих пор остаются иконами красоты

Cosmopolitan
Дроны научились синхронно летать в жесткой сцепке Дроны научились синхронно летать в жесткой сцепке

Разработан алгоритм управления несколькими дронами, объединенными в один модуль

N+1
Как авторитетно разруливать конфликты cвоих детей Как авторитетно разруливать конфликты cвоих детей

Yесколько техник, которые помогут установить относительный мир и покой в доме

Maxim
Отрывок из книги Кадзуо Исигуро «Клара и Солнце» Отрывок из книги Кадзуо Исигуро «Клара и Солнце»

«Клара и Солнце» — первая работа Кадзуо Исигуро после получения Нобелевки

СНОБ
Рыцарь счастливого образа Рыцарь счастливого образа

Сэр Энтони Хопкинс в драме «Отец»

GQ
Вдохновители и реализаторы Вдохновители и реализаторы

Как собрать сильную команду, используя знания о человеческих психотипах

Лиза
Экадаши Экадаши

Религиозный пост для стройности

Худеем правильно
По спецзаказу По спецзаказу

Пример персонализированного городского пространства

SALON-Interior
Нам жизненно необходимы объятия и прикосновения Нам жизненно необходимы объятия и прикосновения

Психологи: как на человека влияет тактильный контакт с другими людьми?

Psychologies
Как выглядели звездные красотки Муцениеце, Асмус и другие в своих первых фильмах Как выглядели звездные красотки Муцениеце, Асмус и другие в своих первых фильмах

Чтобы добиться популярности, им пришлось сыграть много ролей

Cosmopolitan
В Северном Йоркшире обнаружены остатки большого римского дома с неизвестной ранее планировкой В Северном Йоркшире обнаружены остатки большого римского дома с неизвестной ранее планировкой

Новая страница в архитектуре Римской империи

N+1
Эволюция образов Эдриана Броуди Эволюция образов Эдриана Броуди

Эдриан Броуди может и на рояле сыграть, и быка на ходу остановить

GQ
7 способов испортить любой разговор 7 способов испортить любой разговор

Семь типичных ошибок, которые могут испортить беседу

Psychologies
«Клуб 5 утра»: в Кремниевой долине появился новый «биохак», увеличивающий эффективность «Клуб 5 утра»: в Кремниевой долине появился новый «биохак», увеличивающий эффективность

Новый необычный способ активировать скрытые возможности человеческого организма

Maxim
Бодишейминг: как перестать критиковать себя и других за размер талии Бодишейминг: как перестать критиковать себя и других за размер талии

В чем причины бодишейминга, чем он опасен и как ему противостоять

РБК
Вера Брежнева ― о дочерях, мягкой силе и собственном бренде косметики Вера Брежнева ― о дочерях, мягкой силе и собственном бренде косметики

Певица и и предпринимательница Вера Брежнева

РБК
Открыть в приложении