Стало известно, что ещё в 2023 году на хакатоне Европейского космического агентства (ESA) команда программистов под руководством исландского разработчика Олафура Вааге (Ólafur Waage) запустила легендарную игру Doom 1993 года на борту спутника OPS-SAT — компактной «летающей лаборатории» размером 10 × 10 × 30 см, предназначенной для тестирования систем управления и бортового ПО.
Источник изображения: ИИ-генерация Grok 4/3DNews
Спутник был оснащён компьютером, в 10 раз более мощным, чем у предыдущих аппаратов ESA, что сделало его идеальной платформой для эксперимента. И уж тем более он был мощнее компьютеров 1993 года, для которых в своё время создавалась эта игровая программа. Команда столкнулась с жёсткими ограничениями: закрытая среда ограничивала возможности по использованию программного обеспечения, а связь со спутником была непостоянной и не допускала работу в режиме реального времени.
Первая попытка запустить Doom прошла с использованием порта Chocolate Doom — максимально консервативной версии, которая опиралась на библиотеку SDL, идеальную для ограниченной среды спутника. Поскольку экрана на спутнике не было, пришлось ограничиться текстовым отчётом программы: во время очередного сеанса связи спутник сбросил отчёт о проценте пройденного в демо-режиме уровня игры и количестве уничтоженных врагов. Как пошутил лидер команды: «Даже если бы экран был, для просмотра с Земли понадобился бы по-настоящему хороший телескоп».
Работа игры подтвердила стабильность кода даже под воздействием космических лучей, способных вызывать сбои в электронике: игра не зависла и работала без ошибок. Для второй попытки разработчики перешли к порту doomgeneric, специально созданному для адаптации под разные системы. Они перенаправили графический вывод на виртуальную видеокарту с захватом скриншотов, чтобы зафиксировать результат. Чтобы сделать демонстрацию по-настоящему космической, команда интегрировала в игру изображения Земли, снятые камерой спутника: эти фото стали фоном для уровней.
Однако высококачественные снимки с высоким разрешением и глубиной цвета выходили за рамки возможностей движка Doom, поэтому был задействован ИИ, загруженный на бортовой компьютер спутника другой командой. ИИ сжал и привёл картинку к 8-битному формату с минимальными потерями. Кроме того, жёсткая 256-цветная палитра игры не содержала нужных оттенков синего, коричневого и зелёного для отображения Земли, так что пришлось «ломать игру через колено» — модифицировать палитру с выходом за пределы канонической версии.
В итоге всё закончилось хорошо: Doom запустилась в космосе, а скриншоты с Землёй в виде фонового изображения для битв стали хорошей иллюстрацией работы программистов-энтузиастов. Что же, на очереди — запуск Doom на межпланетных станциях и, в конечном итоге, на Марсе, где по сюжету всё и происходит. Но нам отчего-то представляется, что Doom будут запускать вечно — на всём, до чего только смогут дотянуться энтузиасты. Однажды, для разнообразия, порт игры могут запустить на датчике метеоритной опасности звездолёта, летящего в галактику Андромеда. Зачем? Потому что смогут!