Quake переписали на безопасном Rust и запустили в браузере
На Hacker News представили проект quake-SRP: шутер Quake от id Software, вышедший в 1996 году, портировали на Rust и научили запускаться прямо во вкладке браузера. Автор подчёркивает, что код написан на безопасном Rust, а картинка рисуется программно — без обращения к видеокарте и без внешних зависимостей.
Основа портирования — открытые исходники Quake, выпущенные id Software под лицензией GPL. Движок собран в WebAssembly, поэтому для игры не нужно ничего устанавливать. Вместе со сборкой поставляется условно-бесплатный первый эпизод — тот самый оригинальный архив quake106.zip размером 9,1 МБ. Исходный код проекта опубликован на GitHub.
Своя копия — полная игра
Если у пользователя есть легальная копия Quake, он может перетащить на страницу собственные файлы: pak-архивы для эпизодов со второго по четвёртый, дополнения Scourge of Armagon и Dissolution of Eternity, а также музыкальные дорожки с диска. Файлы остаются в хранилище браузера и никуда не отправляются. Выбор дополнения перезагружает страницу с нужным параметром, а сохранения при этом не теряются.
Управление и настройки
Порт поддерживает современное управление — WASD, обзор мышью и геймпад, — но при желании можно включить аутентичные раскладки 1996 года (стрелки, без мыши и без автоматического бега). Доступна и классическая консоль с командами и чит-кодами: неуязвимость, проход сквозь стены, режим полёта, выдача оружия и быстрый переход между уровнями.
Отдельно автор развёл два режима. Пресет «classic» воспроизводит движок WinQuake от id Software ровно так, как он работал тогда. Пресет «slop» включает собственные доработки порта — показ кадров в секунду, настройку частоты обновления и прочие опции. Переключиться между ними можно как из меню, так и через параметры в адресной строке.
Источник: Hacker News
Комментарии
Войдите, чтобы комментировать.