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

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-дерева в игре обнаруживались столкновения с поверхностями.

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

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

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

Чем нам грозят социальные сети и мобильная связь Чем нам грозят социальные сети и мобильная связь

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

Популярная механика
Как оценить свое критическое мышление Как оценить свое критическое мышление

10 признаков, что вы думаете эффективно

Reminder
Знакомьтесь, коллекционер Знакомьтесь, коллекционер

Виталий Аксенов-Шабловский создает новое медиа

Собака.ru
«Капли воды»: сатирический рассказ Курта Воннегута, опубликованный в Esquire «Капли воды»: сатирический рассказ Курта Воннегута, опубликованный в Esquire

Рассказ Курта Воннегута

Esquire
«Он очень талантливый, но его взгляды не выдерживают критики»​: главное из фильма Родиона Чепеля про Павла Дурова «Он очень талантливый, но его взгляды не выдерживают критики»​: главное из фильма Родиона Чепеля про Павла Дурова

Однокурсники, коллеги и партнеры Павла Дурова о его работе и жизни

VC.RU
Что такое безуглеводная диета и чем она опасна Что такое безуглеводная диета и чем она опасна

Стоит ли придерживаться безуглеводной диеты для улучшения здоровья?

РБК
Что делать, если не помогает психотерапия? Записаться на бокс Что делать, если не помогает психотерапия? Записаться на бокс

Ничего не хочется? Нужно записаться на бокс

GQ
Последние слова преступников перед казнью Последние слова преступников перед казнью

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

Cosmopolitan
«Таких очень много». Стало известно о машинах, которые не штрафуют камеры «Таких очень много». Стало известно о машинах, которые не штрафуют камеры

Чтобы не платить штрафы с камер, водители ставят подложные номера

РБК
Практики каменного века: как улучшить работу мозга, следуя образу жизни пещерных людей Практики каменного века: как улучшить работу мозга, следуя образу жизни пещерных людей

Зачем гуру продуктивности месяц спал, ел и двигался как древние охотники

Reminder
Как любят короли: секреты счастливой жизни в браке Елизаветы II и принца Филиппа Как любят короли: секреты счастливой жизни в браке Елизаветы II и принца Филиппа

Елизавета II прожила с Филиппом 73 года. В чем секрет таких крепких отношений?

Cosmopolitan
Иисус против Сатаны: как дизайнеры из Бруклина продают подделки за тысячи долларов и судятся с Nike Иисус против Сатаны: как дизайнеры из Бруклина продают подделки за тысячи долларов и судятся с Nike

Зачем стартап из Нью-Йорка выпускает очевидные подделки?

Forbes
«Мудрые» советы из интернета, которым не стоит следовать «Мудрые» советы из интернета, которым не стоит следовать

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

Psychologies
«Я руководила мужским коллективом в Арабских Эмиратах» «Я руководила мужским коллективом в Арабских Эмиратах»

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

Psychologies
Кнут без пряника: звезды, которые заставляют худеть своих детей Кнут без пряника: звезды, которые заставляют худеть своих детей

Детское ожирение становится всё более тревожной проблемой

Cosmopolitan
«Дети — детекторы лжи»: как помочь ребенку научиться признавать ошибки и контролировать эмоции «Дети — детекторы лжи»: как помочь ребенку научиться признавать ошибки и контролировать эмоции

Как научить детей переживать свои поражения и признавать ошибки

Forbes
Григорий Добрыгин — о долготерпении, молчании и телефонных звонках Григорий Добрыгин — о долготерпении, молчании и телефонных звонках

Режиссер Григорий Добрыгин о фильме Sheena667

РБК
5 причин посмотреть фильм про российскую Арктику и отправиться на край света 5 причин посмотреть фильм про российскую Арктику и отправиться на край света

Главные особенности фильма «Фьюжн» и почему на него стоит обратить внимание

Cosmopolitan
Воспоминание о будущем. О «Новой Москве», которую запретили Воспоминание о будущем. О «Новой Москве», которую запретили

Воображаемая столица будущего

СНОБ
Не только «Золушка»: главная сказочница советского кино Надежда Кошеверова Не только «Золушка»: главная сказочница советского кино Надежда Кошеверова

История главной советской киносказочницы Надежды Кошеверовой

Cosmopolitan
Как внедрять в жизнь полезные навыки, полученные на тренингах Как внедрять в жизнь полезные навыки, полученные на тренингах

Что делать, чтобы не отказываться от наполеоновских планов после тренингов

Psychologies
Опасный, плохой, злой: как менялся образ bad russians в голливудском кино с 1960-х по настоящее время Опасный, плохой, злой: как менялся образ bad russians в голливудском кино с 1960-х по настоящее время

Галерея русских злодеев отлично иллюстрирует историю отношений США и России

Esquire
Флекситарианство: что нужно знать о вегетарианстве со стейками и бургерами Флекситарианство: что нужно знать о вегетарианстве со стейками и бургерами

Гибкое вегетарианство – диета, неоднократно признававшаяся самой здоровой

Cosmopolitan
Верной дорогой Верной дорогой

Самые интересные маршруты для путешествий по России и за границей

Добрые советы
Стартап Валерия Мифтахова ZeroAvia привлек $24,3 млн от Билла Гейтса, Ли Ка-шина и других инвесторов Стартап Валерия Мифтахова ZeroAvia привлек $24,3 млн от Билла Гейтса, Ли Ка-шина и других инвесторов

Американский стартап ZeroAvia привлек $24,3 млн от Horizons Ventures

Inc.
Правда и мифы о глютене и лактозе Правда и мифы о глютене и лактозе

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

Лиза
Тогда и сейчас: как изменились Пелагея, Ёлка и другие артистки, игравшие в КВН Тогда и сейчас: как изменились Пелагея, Ёлка и другие артистки, игравшие в КВН

Как за эти годы изменились артистки из КВН

Cosmopolitan
Топ-10 причин, почему религия полезна для здоровья Топ-10 причин, почему религия полезна для здоровья

Заповеди религий чем-то похожи на советы из стенгазет в поликлиниках

Maxim
«Нам с самого начала повезло»: как создать компанию стоимостью $900 млн без венчурных инвесторов «Нам с самого начала повезло»: как создать компанию стоимостью $900 млн без венчурных инвесторов

Как стартап Cloudinary был прибыльным с первого дня работы

Forbes
Как работать меньше, но эффективнее Как работать меньше, но эффективнее

Наши далекие предки тратили на работу 4 часа в день. Мы можем так же

Reminder
Открыть в приложении