РАЗРАБОТКА

CTO Microsoft Azure превратил Paint в монитор для Doom

До 35 FPS в окне Paint: Марк Руссинович выпустил DoomPaint, где оригинальный Doom работает через буфер обмена Windows.

✍️ Редакция iTech News | 03.08.2026 | ⏱ 3 мин | Источник: Tom's Hardware
💻

Doom снова запустили в неожиданном месте, но в этот раз трюк собрал не анонимный энтузиаст, а Марк Руссинович, CTO Microsoft Azure. Его проект DoomPaint выводит кадры игры в Microsoft Paint и, по данным автора, на части систем держит до 35 FPS.

Сама новость важна не только из-за мемной оболочки. Проект показывает, что старые механизмы Windows вроде буфера обмена и OLE до сих пор можно использовать вполне всерьез, пусть и для намеренно абсурдной задачи.

Как устроен DoomPaint

DoomPaint не «запускает Doom внутри Paint» в буквальном смысле. Настоящий движок ViZDoom работает отдельно, загружает shareware-версию DOOM1.WAD, а для недостающих эпизодов использует WAD-файлы Freedoom с BSD-лицензией. Paint здесь выступает только экраном: каждый кадр попадает в буфер обмена Windows и вставляется в холст как обычное редактирование документа.

Именно поэтому проект выглядит странно, но технически он честный. В README Руссинович прямо пишет: Paint «рисует игру, но не вычисляет ее». По его словам, нативное разрешение 320x200 вставляется быстрее всего, а среди доступных режимов есть и 640x400. Звук и музыка тоже работают, так что речь не о ролике или фальшивой анимации, а о полноценной игровой сессии.

Отдельная деталь, из-за которой проект и попал в новости: вместо наивной перезаписи буфера обмена для каждого кадра автор использовал OLE-механизм с объектом данных, который Paint читает по мере готовности. Иначе приложение могло бы ловить ошибки при вставке, потому что Paint обрабатывает содержимое буфера не мгновенно, а асинхронно.

Почему это выделяется на фоне других портов Doom

Doom запускали уже почти везде: в PDF, на калькуляторах, через регулярные выражения и в браузерах. Но DoomPaint выбивается из этой коллекции не только площадкой, а уровнем автора. Руссинович пришел в Microsoft в 2006 году вместе с Sysinternals и давно остается одной из самых заметных фигур для администраторов и системных разработчиков Windows.

Поэтому история читается в двух слоях. На поверхности это аккуратный инженерный абсурд. Чуть глубже — напоминание, что люди, отвечающие за облачную платформу масштаба Azure, по-прежнему не прочь копаться в низкоуровневых механизмах Windows просто потому, что им интересно, где у системы еще есть запас по совместимости и изобретательности.

Что из этого следует разработчикам

Практический вывод здесь не в том, что кому-то срочно нужен Doom в Paint. Гораздо полезнее другое: старые слои Windows, которые многие списали в архив, никуда не делись. Буфер обмена, OLE, автоматизация интерфейса, headless-рендеринг и странные обходные пути по-прежнему всплывают в корпоративных приложениях, RPA-сценариях, VDI-средах и поддержке легаси-софта.

Для русскоязычной аудитории это хороший повод вспомнить, что «легаси» в больших компаниях редко умирает красиво. Если ваша команда поддерживает внутренние Windows-инструменты, интеграции или автоматизацию рабочих мест, DoomPaint выглядит не просто шуткой, а демонстрацией того, насколько живучими остаются старые API и сколько сюрпризов они еще хранят.

Значение для рынка

Для Microsoft это еще и аккуратный репутационный сигнал. Вместо стерильной презентации про инновации компания получила вирусный инженерный кейс с открытым кодом под MIT-лицензией, инструкциями и воспроизводимым результатом. Такие проекты работают на бренд сильнее многих официальных анонсов: они показывают живую техническую культуру, а не отдел маркетинга с красивыми слайдами.

Следующий шаг здесь предсказуем: DoomPaint разберут по косточкам, а заодно кто-нибудь попробует протащить тот же подход в другие старые приложения Windows. Первоисточник с деталями и ссылкой на репозиторий опубликован у Tom's Hardware.

Поделиться: Telegram X LinkedIn