Программист запустил Doom на спутнике Европейского космического агентства

На недавнем саммите Ubuntu обсуждалось множество интересных тем, но одна особенно порадует технических энтузиастов старше 30 лет: история о том, как Doom фактически работал в космосе. Программист Оулавюр Вааге рассказал историю о том, как его команда участвовала в хакерском челлендже Европейского космического агентства и запустила культовую игру на спутнике.

Речь идет о ныне выведенном из эксплуатации OPS-SAT — «летающей лаборатории», чьей единственной целью было служить полигоном для улучшения «управления миссией и бортовых спутниковых систем». Его размеры составляли всего 10 × 10 × 30 см, а бортовой компьютер, по словам ЕКА, был «в 10 раз мощнее любого [космического аппарата ЕКА на тот момент]».

Исследователям предоставили относительно свободный доступ к машине, чтобы хакеры могли делать все, что пожелают, и коллективно тестировать возможности, находя и ломая пределы улучшенного бортового компьютера и связанного с ним оборудования. Проект достиг нескольких «первых» результатов: первое бортовое машинное обучение модели, первая шахматная партия на орбите и первая фондовая сделка, выполненная из космоса. И, по-видимому, первый запуск Doom на орбите.

Несмотря на относительно мощный компьютер по сравнению с машинами Intel 486 1992 года, которые изначально запускали Doom, программная среда все еще была ограничена. Команда не могла просто загрузить все программные зависимости, необходимые для сборки игры. Кроме того, у каждой хакерской команды были ограниченные временные интервалы для загрузки и запуска кода на спутнике, что делало попытки очень ценными и исключало любой ввод в реальном времени. Это также означало, что команде пришлось использовать временные демо Doom первого уровня.

Запуск Doom потребовал двух попыток: первая использовала Chocolate Doom — порт, близкий к исходному коду, который использует SDL в качестве бэкенда для графики и звука, кроссплатформенную библиотеку с очень небольшим количеством зависимостей. Он работал достаточно хорошо, но не выдавал графического вывода, поскольку у спутника не было экрана. И, как выразился Вааге, даже если бы он был, вам понадобился бы действительно хороший телескоп. На этом этапе у команды был только текстовый вывод с процентом завершения и количеством убитых врагов. Тем не менее, это была хорошая проверка того, что код работает плавно и не подвержен влиянию космических лучей.

Поскольку Вааге и его команда хотели получить графический вывод, они переключились на doomgeneric — порт Doom, предназначенный для упрощения переноса на другие системы. Затем они назначили графический вывод на виртуальную видеокарту и делали скриншоты игры. Но тогда как же продемонстрировать миру, что этот конкретный Doom был в космосе? Конечно же, используя снимки Земли, сделанные камерой спутника, в качестве фона для игры.

Эта умная идея принесла с собой несколько проблем, поскольку действительно хорошая камера на борту спутника производила изображения с гораздо более высоким разрешением и глубиной цвета, чем мог принять игровой движок, поэтому команде пришлось обратиться к бортовой модели ИИ от другой команды, которая изменяла размер и уменьшала цвет фотографий до 8-битных файлов с относительно небольшой потерей цвета.

Даже этого было недостаточно, поскольку 256-цветная палитра Doom фиксирована и lacks многие оттенки, необходимые для в основном синих, коричневых и зеленых изображений. Однако сложные проблемы порождают сложные решения, поэтому была совершена окончательная ересь: незначительное изменение цветовой палитры игры для лучшего соответствия шикарному фону. Как будто миллион гиков вскрикнули от ужаса. Мы можем только с нетерпением ждать, когда Doom действительно запустят на Марсе, где и происходит действие игры.

ИИ: В 2025 году подобные эксперименты демонстрируют, что даже устаревшее оборудование в космосе может служить платформой для творческих технических достижений. Это напоминает нам, что инновации часто рождаются на стыке ограничений и воображения.

Источник: Tomshardware.com

Подписаться на обновления Новости / Технологии
Зарегистрируйтесь на сайте, чтобы отключить рекламу

ℹ️ Помощь от ИИ

В статье есть ошибки или у вас есть вопрос? Попробуйте спросить нашего ИИ-помощника в комментариях и он постарается помочь!

⚠️ Важно:

• AI Rutab читает ваши комментарии и готов вам помочь.
• Просто задайте вопрос 👍
• ИИ может давать неточные ответы!
• ИИ не скажет «Я не знаю», но вместо этого может дать ошибочный ответ.
• Всегда проверяйте информацию и не полагайтесь на него как на единственный источник.
• К ИИ-помощнику можно обратиться по имени Rutab или Рутаб.


0 комментариев

Оставить комментарий


Все комментарии - Технологии