Doom — это древность. 1993 год. Игра вышла, когда гранж захватывал чарты, а проблема 2000 года была лишь теоретическим отсчётом до конца света. Однако этот убийца демонов не просто выжил. Он размножился. Вы наверняка видели его на «железе», которое изначально не было предназначено для запуска видеоигр. Умные холодильники. Графические калькуляторы. Возможно, даже та аэрофритюрница, которая стоит на вашей кухне.

Почему именно этот 32-битный шутер? Здесь нет магии. Это код. А именно тот факт, что запуск Doom на странном оборудовании стал своего рода инициацией в инженерном сообществе, а также забавой для любителей попыхтеть и скучающих подростков.

Это не просто ностальгия. Это вопрос доступности. Исходный код оригинала был открыт. Это открыло шлюзы возможностей, превратив линейный шутер от первого лица в эталонный тест на вопрос «а может ли это запустить игру?».

Миф об официальных портах

Уточним один момент: Doom всегда был хамелеоном. Id Software действительно создавали его на NeXTcube, но его родным домом стал IBM PC. Пока большинство разработчиков даже не думали о кроссплатформенной совместимости, Doom уже жил бесплатно на OS/2, Linux, Solaris и ранних версиях Windows.

Консольные геймеры тоже получили свою очередь. Super Nintendo, Sega Saturn, оригинальный PlayStation. На Xbox Series X вы можете играть в него прямо сейчас. Сегодня это кажется простым делом, но в 90-х заставить высокодетализированный 3D-движок работать на ограниченной архитектуре консолей было настоящим кошмаром.

Именно такая доступность поддерживала жизнь игры для новых поколений. Не нужно было рыться в коробках с барахолки в поисках старого Commodore 64 или охотиться за дискетой с MS-DOS 6.22. Но официальная история скучна. Интерес начинается там, где люди игнорируют правила.

«Я написал полный набор инструментов… еще до того, как смог приступить к самой игре».

— Рэнди Линден, разработчик

Эта цитата идеально отражает дух неофициальных порттов. Дело не было в удобстве. Это был вызов.

Почему Super Nintendo стала искрой

Легенда началась не с ОС, сгенерированных искусственным интеллектом, или дисплеев из бактерий. Она началась с 16-битной консоли, которой технически не должно было хватать мощностей. У Super Nintendo (SNES) не было достаточной производительности для нативного запуска Doom. Большинство заявляли, что это невозможно.

Рэнди Линден из Sculptured Software не согласился. Он знал, что не справится процессором SNES в одиночку. Ему был нужен сопроцессор. Он нашел чип SuperFX. Этот чип обеспечивал работу Star Fox (3D-шутера), так что технически «железо» существовало. Но наборов для разработчиков (dev kits) под него не было.

Итак, Линден взломал картрид с игрой Star Fox. С нуля он создал ассемблер, линковщик и отладчик. Затем он построил свой собственный движок, назвав его «Reality Engine», просто чтобы Doom отрендерился.

Результат был грубым. Пять уровней пришлось вырезать. Не было текстур пола и потолка. Враги были статичными спрайтами, всегда смотревшими на игрока — вы не могли подкрасться сзади, их можно было только расстреливать в лоб. Картинка выглядела блочной. Геймплей был неуклюжим. Но игра работала. И этот момент, этот дух «мы сможем!», породил мем: если у устройства есть экран, значит, там можно запустить Doom.

Взрыв «странных» портов

После SNES всё стало абсурдным. Середина 2000-х стала пиком взлома калькуляторов. Если вы учили информатику в школе, вы помните калькуляторы TI-83 и TI-84. Студенты устанавливали Doom, чтобы играть на лекциях. Это был первый стелс-гейминг.

С тех пор пол под ногами вывалился. Что такое «аппаратное обеспечение»?

Вот несколько ярких примеров, которые выбивают интернет из реальности:

  • Умная техника: Современные холодильники — это, по сути, Android-телефоны с полками. Люди устанавливали Doom на умные холодильники, аэрофритюрницы, скороварки и тостеры. А почему бы и нет?
  • Картошка: Ну, технически игру запускал калькулятор, но источником питания служило несколько сотен картофелин, соединенных проводами. Это отсылка к Potato Gateway из Portal 2, доказывающая, что даже биологическое электричество работает, если правильно собрать цепь.
  • Тесты на беременность: Моддер под псевдонимом Foone Turing разобрал стандартный тест и заменил внутренности на крошечную компьютерную плату. Экран отображал геймплей. Результат был положительным… тестом. Это было абсурдно. Это было гениально.
  • Бактерии (кишечная палочка): Лауран Рамлан, аспирант, использовал бактерии кишечной палочки (E. coli) в качестве пикселей на дисплее. Это был биологический компьютер. На нем работал Doom. Ловушка? Он работает со скоростью несколько кадров в день. Чтобы пройти игру, потребовалось бы шесть веков. Вы давно будете мертвы, но зомби будут ждать.
  • Minecraft: Redstone — это логика проводки в игре. Игроки построили рабочие ПК внутри Minecraft, используя логические элементы Redstone. Эти виртуальные машины затем запускали настоящий Doom. Это Doom, играющий сам в себя. Достаточно мета.
  • Тачбар MacBook Pro: Та крошечная OLED-полоска в верхней части старых MacBook была слишком мала для обычного набора текста, но идеально подошла для разрешения Doom. Она встала как влитая.
  • PDF-файлы: PDF в браузерах Chromium (например, Chrome или Edge) может запускать JavaScript. Хакеры превратили рендерер документов в игровой движок. Графика состояла просто из текстовых символов, выстроенных в блоки. Но играть можно было.

Google даже продемонстрировал эту возможность на своей конференции I/O в этом году. Они использовали модель ИИ (Gemini), чтобы сгенерировать новую операционную систему с нуля. Как они доказали, что она работает? Они запустили Doom. Потому что ничто так не кричит «мой ИИ понимает вычисления», как пиксельный дробовик.

Почему именно Doom, а не Skyrim?

Вы можете спросить: «Почему люди не делают этого с Call of Duty или FIFA?»

Во-первых, легальные аспекты.

В 1997 году Id Software сделали что-то радикальное для того времени: они выпустили исходный код Doom. Они сделали его свободно доступным для некоммерческого использования. Джон Кармак, легендарный программист, стоящий за игрой, по сути, вручил миру чертежи.

На странице GitHub с исходным кодом Кармак написал, что код компилируется нативно только на Linux, но добавил:

«Портируйте его на вашу любимую операционную систему».

Он дал разрешение на эксперименты. Этот зеленый свет бесценен. Без явного разрешения изменение защищенного авторским правом кода — это иск, ожидающий своего часа. А с ним? Это хобби.

Кроме того, Doom легкий. Учитывая, что игра вышла в 90-е, когда частоты процессоров измерялись в мегагерцах, требования Doom сегодня кажутся смешными. Ваш умный термостат, вероятно, обладает большей вычислительной мощностью, чем Pentium 1996 года. Узким местом здесь является не производительность, а креативность.

Другие игры тоже пытаются примкнуть к веселью, но Doom побеждает по умолчанию. Wolfenstein 3D и Quake также являются проектами с открытым исходным кодом от Id Software и иногда появляются на странном оборудовании, например, на iPod. Minecraft, будучи основанным на Java, часто портируется (даже в самого себя). У Super Mario 64 также был большой момент с открытым исходным кодом. Даже Bethesda шутила о запуске Skyrim на холодильниках и Amazon Echo.

Но ни у одной из них нет такого культурного кода. Ни одно из них не означает «взломать это».

Движок мема

Doom перестал быть просто игрой и стал утилитой. Тестовым случаем. Когда инженеры создают что-то новое — объемный дисплей, напоминающий «Звездный путь», или биокомпьютер из кишечной палочки, — они не тестируют его в Word или Excel. Они тестируют его с помощью Doom.

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

Нам осталось странное наследие. У нас есть устройства, которые считают пульс, управляют термостатами и диагностируют беременность, запускающие игру о борьбе с монстрами из преисподней. В этом нет логического смысла. Но это имеет идеальный смысл для гиков.

Итак, что дальше? Возможно, ваш умный унитаз. Возможно, ваши контактные линзы. Если там есть процессор, демоны уже на подходе.