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

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 грубых ошибок в приготовлении шашлыка

Что говорят про шашлык современные повара и мясники

Playboy
Александр Иванов. Явление любви Александр Иванов. Явление любви

История жизни русского художника Александра Иванова

Караван историй
Как сейчас выглядят модели, которых называли самыми красивыми девочками в мире Как сейчас выглядят модели, которых называли самыми красивыми девочками в мире

Юные модели повзрослели и заметно преобразились

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

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

Cosmopolitan
Самые опасные животные: топ-15 смертоносных созданий (угадай, кто самый страшный) Самые опасные животные: топ-15 смертоносных созданий (угадай, кто самый страшный)

Список животных, которые чаще других становятся причиной смерти людей

Playboy
Он сказал «Поехали!»: самые захватывающие фильмы о космосе Он сказал «Поехали!»: самые захватывающие фильмы о космосе

Фильмы о космосе. Мы выбрали несколько, чтобы посмотреть в День космонавтики

Cosmopolitan
Светлана Бронникова: «Питаться осознанно – не означает выбирать гречку, а не пончик» Светлана Бронникова: «Питаться осознанно – не означает выбирать гречку, а не пончик»

Есть все и худеть? Запросто, если овладеть наукой интуитивного питания

Худеем правильно
8 вожделенных хотелок советских детей 8 вожделенных хотелок советских детей

Мы желали счастливое детство и всяких расчудесных штук

Maxim
Почему Skoda Octavia — это настоящий народный автомобиль Почему Skoda Octavia — это настоящий народный автомобиль

Нужно сказать спасибо тем людям, кто утверждал оснащение Octavia для России

Maxim
Любимые мужчины Ветлицкой, Овсиенко и других солисток группы «Мираж» Любимые мужчины Ветлицкой, Овсиенко и других солисток группы «Мираж»

Браки и интрижки солисток группы «Мираж»

Cosmopolitan
Это перебор: в Ираке родился младенец с тремя пенисами Это перебор: в Ираке родился младенец с тремя пенисами

Иракские медики вперыве столкнулись трифаллией

Cosmopolitan
«Сожалений нет»: сооснователь YouDrive Борис Голиков попрощался с брендом, сделал выводы и ушёл в обустройство дворов «Сожалений нет»: сооснователь YouDrive Борис Голиков попрощался с брендом, сделал выводы и ушёл в обустройство дворов

Он делал один из первых каршерингов, который поглотили Mail.ru Group и «Сбер»

VC.RU
Каким получился «Чернобыль» Данилы Козловского Каким получился «Чернобыль» Данилы Козловского

Почему «Чернобыль» Данилы Козловского не спорит с сериалом HBO, а дополняет его

РБК
Запретить нельзя разрешить. Как относиться к романам на работе Запретить нельзя разрешить. Как относиться к романам на работе

Запрещать служебные романы бессмысленно, но и пускать дело на самотек не стоит

СНОБ
Сезон ЕГЭ. Как развить у ребенка желание учиться Сезон ЕГЭ. Как развить у ребенка желание учиться

Мотивация ребенка играет важную роль при его подготовке к экзаменам

СНОБ
С VHS-кассет на Netflix: зачем стриминговые сервисы закупают аниме и создают собственные тайтлы С VHS-кассет на Netflix: зачем стриминговые сервисы закупают аниме и создают собственные тайтлы

Сегодня главным оружием Netflix и конкурентов стало японское аниме

Forbes
Шато и фортификация Шато и фортификация

Что общего у древней крепости и современного винного бренда?

Forbes
«О героях помнят, но землю наследуют выжившие» «О героях помнят, но землю наследуют выжившие»

Екатерина Шульман о «Властелине колец» Толкина и Джексона

Weekend
21 21

Рома Либеров: «Проборматывать все, что там проборматывается…»

Seasons of life
Девятая планета Солнечной системы может скрываться вовсе не там, где мы думали Девятая планета Солнечной системы может скрываться вовсе не там, где мы думали

Возможно, Девятую планету все это время искали не там, где нужно

Популярная механика
Депрессию и биполярное расстройство предложили диагностировать по анализу крови Депрессию и биполярное расстройство предложили диагностировать по анализу крови

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

N+1
Противозачаточные таблетки: пить или не пить — разбираемся с врачом Противозачаточные таблетки: пить или не пить — разбираемся с врачом

Можно ли пить гормональные контрацептивы и кому они не подходят?

Cosmopolitan
Science Art Science Art

Три года в Университете ИТМО работает магистерская программа Art & Science

Собака.ru
CAR-Т-лимфоцитам предложили давать отдых CAR-Т-лимфоцитам предложили давать отдых

При смене активности и отдыха CAR-Т-клетки эффективнее сдерживали рост опухолей

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

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

Inc.
2010-е: архивация 2010-е: архивация

Знаковые вещи, определившие облик эпохи 2010–2020 годов, уходят со сцены

Maxim
Музыка, которую можно положить в карман пиджака: история аудиокассет и их создателя Лу Оттенса Музыка, которую можно положить в карман пиджака: история аудиокассет и их создателя Лу Оттенса

Как инженер Philips сделал революцию в музыкальной индустрии

VC.RU
Природа переезжает. Как дикие животные учатся жить в городах Природа переезжает. Как дикие животные учатся жить в городах

Изменениях животных и растений в городских условиях

СНОБ
Открыть в приложении