Сообщество энтузиастов продолжает искать все более необычные способы запуска культового Doom, и очередной эксперимент оказался весьма неожиданным. Автором проекта DoomPaint стал технический директор Microsoft Azure Марк Руссинович, который сумел заставить оригинальную условно-бесплатную версию игры работать прямо внутри Microsoft Paint.
В основе проекта лежит нестандартное использование механизма буфера обмена OLE. Сам игровой движок ViZDoom запускается отдельно в фоновом режиме и обрабатывает оригинальный файл DOOM1.WAD, а каждый сформированный кадр копируется в буфер обмена Windows и вставляется в холст Paint как обычное редактирование изображения. Благодаря такому подходу игра может работать с частотой до 35 кадров в секунду при разрешении 320×200 пикселей, а на некоторых системах — даже в режиме 640×400. При этом DoomPaint поддерживает не только графику, но и звук с музыкальным сопровождением.
Сам Руссинович с юмором отмечает, что Microsoft Paint не занимается вычислениями и не запускает игру самостоятельно. По его словам, редактор лишь отображает кадры, поступающие из игрового движка, и именно в этом заключается главная идея проекта. Исходный код DoomPaint опубликован на GitHub под лицензией MIT вместе с инструкциями по запуску.
Марк Руссинович работает в Microsoft с 2006 года и известен как создатель набора утилит Sysinternals, а сегодня занимает должность технического директора Microsoft Azure, отвечая за архитектуру, безопасность и надежность облачной платформы. Поэтому его участие в столь необычном проекте стало неожиданностью даже для опытных энтузиастов. Впрочем, история Doom уже давно превратилась в своеобразное соревнование программистов, которые регулярно находят новые и порой весьма экзотические способы запустить легендарный шутер.







