Разработчик запустил культовую игру Doom в Microsoft Paint, простом графическом редакторе, который десятилетиями входит в состав всех версий Windows. Создателем этого необычного проекта является Марк Руссинович, технический директор Microsoft Azure. Источник: youtube.com/koz_tech Проект называется DoomPaint и выделяется среди множества онлайн-экспериментов по запуску Doom на необычных устройствах. Вместо имитации игрового процесса или отображения предварительно записанного видео, в проекте используется настоящий игровой движок ViZDoom и оригинальные shareware-файлы DOOM1.WAD. Microsoft Paint служит исключительно «экраном», на котором отображаются последующие кадры игры. Автор использует механизм буфера обмена Windows. Каждый кадр, сгенерированный игровым движком, сначала помещается в буфер обмена, а затем автоматически вставляется на холст Paint как стандартная операция редактирования изображений. Это заставляет Paint вести себя так, как будто пользователь постоянно вставляет изображения, даже если игра фактически запущена. Несмотря на такую необычную конструкцию, DoomPaint может работать со скоростью до 35 кадров в секунду. По словам Марка Руссиновича, плавность зависит от производительности компьютера и выбранного разрешения. Наилучшие результаты достигаются при классическом разрешении 320 x 200 пикселей, родном разрешении оригинального Doom, хотя проект также поддерживает более высокие настройки, такие как 640 x 400 и 640 x 480 пикселей. Проект сохраняет многие характерные элементы игры. Доступны звуковые эффекты, музыка и стандартные элементы управления, а геймеры полной версии Doom могут использовать свои собственные WAD-файлы для разблокировки оставшихся уровней. Руководство по запуску программы, а также список доступных параметров, опубликованы на GitHub. Одним из самых необычных побочных эффектов использования Paint является принцип работы функции «Отменить». Поскольку каждый кадр игры представляет собой отдельную операцию редактирования изображения, сочетание клавиш Ctrl+Z позволяет буквально отменить последующие моменты игры. После смерти персонажа можно «отмотать время назад», вернувшись к более раннему состоянию. Сохранение изображения из меню «Файл», с другой стороны, сохраняет текущий кадр как обычный файл PNG, поскольку Paint обрабатывает его как любое другое изображение. Марк Руссинович подчеркивает, что Paint не отвечает за какие-либо вычисления, связанные с игрой. Вся логика работает в фоновом режиме через движок ViZDoom, а редактор Microsoft просто отображает последующие изображения, прошедшие через системный буфер обмена. Проект находится в открытом доступе на GitHub, вместе с файлами, необходимыми для запуска бесплатной версии игры, и подробной документацией, описывающей принцип его работы.
Источник новости: overclockers.ru

