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

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

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

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

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

Новый главный Новый главный

Самый большой, сложный и мощный космический телескоп в истории

Популярная механика
Тогда и сейчас: как выглядят актеры любимого россиянами сериала «Дикий ангел» Тогда и сейчас: как выглядят актеры любимого россиянами сериала «Дикий ангел»

Что случилось с актерами из любимого сериала россиян «Дикий ангел»

Cosmopolitan
Очаровательные девушки! Как выглядят дочери Деппа, Лоу, Касселя и других актеров Очаровательные девушки! Как выглядят дочери Деппа, Лоу, Касселя и других актеров

Дочери Джонни Деппа, Джуда Лоу и других актеров выросли красивыми и талантливыми

Cosmopolitan
Медина Дитц: «Многое зависит от поведения правительства в период пандемии» Медина Дитц: «Многое зависит от поведения правительства в период пандемии»

Как изменился рынок премиальной коммерческой недвижимости в России и в мире?

Forbes
История роторной энергетики: как изобретали колесо. Заново История роторной энергетики: как изобретали колесо. Заново

Когда появились простейшие варианты роторных устройств установить невозможно

Популярная механика
«Я весила 100 кг»: читательница рассказала, как похудела после резекции желудка «Я весила 100 кг»: читательница рассказала, как похудела после резекции желудка

Честная история о своей борьбе с лишним весо

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

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

Cosmopolitan
Режиссер Семен Серзин — об «Общаге-на-Крови». Общага как пример антиутопии по-русски Режиссер Семен Серзин — об «Общаге-на-Крови». Общага как пример антиутопии по-русски

Какое место общага занимает в российской культуре

СНОБ
«Фотография берется, по сути, из ниоткуда» «Фотография берется, по сути, из ниоткуда»

Оператор Ксения Середа — зачем снимать кино на пленку, сколько денег в индустрии

Esquire
О чем мы скрипим зубами во сне О чем мы скрипим зубами во сне

От чего возникает «скрежет зубовный» и как от него избавиться?

Psychologies
Ночная смена Ночная смена

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

Лиза
Громкий стереозвук Громкий стереозвук

Какой бизнес строит миллиардер Андрей Андреев

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

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

Cosmopolitan
«Физика и жизнь. Законы природы: от кухни до космоса» «Физика и жизнь. Законы природы: от кухни до космоса»

Как немецкая домохозяйка помогла ученым исследовать поверхностное натяжение

N+1
Сногсшибательные актрисы, о которых все забыли Сногсшибательные актрисы, о которых все забыли

Когда-то им поклонялись миллионы, но сейчас о них почти ничего не слышно

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

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

Cosmopolitan
«Вынь руки из-под одеяла!»: когда родители вторгаются в интимную жизнь детей «Вынь руки из-под одеяла!»: когда родители вторгаются в интимную жизнь детей

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

Psychologies
Сервис доставки продуктов за 15 минут в Калифорнии с российскими корнями привлек $2 млн Сервис доставки продуктов за 15 минут в Калифорнии с российскими корнями привлек $2 млн

Как россиянин Виталий Александров основал сервис доставки продуктов Food Rocket

Forbes
Витрувианский хипстер Витрувианский хипстер

Биография Леонардо да Винчи, которую сценаристы превратили в детектив

Weekend
Тогда и сейчас: как изменились Самбурская, Хилькевич и другие звезды «Универа» Тогда и сейчас: как изменились Самбурская, Хилькевич и другие звезды «Универа»

Что нового произошло в личной жизни популярных актеров «Универа»

Cosmopolitan
Секреты похудения Мерьем Узерли и других актрис сериала «Великолепный век» Секреты похудения Мерьем Узерли и других актрис сериала «Великолепный век»

Звезды сериала «Великолепный век» нашли свои секреты стройной фигуры

Cosmopolitan
Инфаркт, отит, усталость: что будет со здоровьем, если не ходить к зубному Инфаркт, отит, усталость: что будет со здоровьем, если не ходить к зубному

Несовершенная гигиена и невнимание к состоянию зубов грозят не только кариесом

Cosmopolitan
ALMA отыскала 43 протозвезды в центре Млечного Пути ALMA отыскала 43 протозвезды в центре Млечного Пути

Это означает, что процессы звездообразования более устойчивы, чем считалось

N+1
Петр I: коллекционер, исследователь, художник Петр I: коллекционер, исследователь, художник

Где Петр I обучался искусству графики и как отправился в Европу инкогнито?

Культура.РФ
Любимая женщина Юрия Гагарина: Валентина сыграла две свадьбы и родила дочерей Любимая женщина Юрия Гагарина: Валентина сыграла две свадьбы и родила дочерей

Они прожили как супруги всего 10 лет

Cosmopolitan
Четвертая промышленная революция: как биотехнологический стартап Benchling подошел к IPO с оценкой в $4 млрд Четвертая промышленная революция: как биотехнологический стартап Benchling подошел к IPO с оценкой в $4 млрд

Саджит Викрамасекара вошел в число основателей компаний-единорогов

Forbes
Секреты похудения Леры Кудрявцевой, Регины Тодоренко и других телеведущих Секреты похудения Леры Кудрявцевой, Регины Тодоренко и других телеведущих

Секреты стройности звезд российского телевидения

Cosmopolitan
Используйте этот психологический прием, чтобы эффективно решать проблемы Используйте этот психологический прием, чтобы эффективно решать проблемы

Когда мы пытаемся решить проблему, обычно думаем, что нам что-то нужно добавить

Inc.
Снять стресс за минуту: 6 коротких медитаций Снять стресс за минуту: 6 коротких медитаций

Медитация — один из самых эффективных и доступных способов борьбы со стрессом

Psychologies
7 изобретений, за которые нужно благодарить войну 7 изобретений, за которые нужно благодарить войну

Почему-то во время войн люди умудрялись изобретать кучу полезных вещей

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