Поделиться
Портирование DOOM на разные платформы — это своеобразное соревнование. Легендарный шутер уже запускали на калькуляторах, часах и даже тесте на беременность.
Но разработчики из Cloudflare опубликовали пост, в котором сообщили о свежем порте. Они запустили творение id Software прямо в браузере, используя для этого воркеры.
А для того, чтобы показать скорость работы технологии, разработчики из Cloudflare добавили в свой порт мультиплеерный режим на несколько игроков.
С какими проблемами столкнулись разработчики при переносе игры?
-
В веб-страницах невозможно запустить цикл main(). Решили её просто — заменив цикл на функцию emscripten_set_main_loop().
Использование в сетевом коде игры UDP-протокола. В итоге разработчики написали новый сетевой модуль Chocolate Doom. С его помощью они использовали протокол TCP и WebSockets вместо UDP.
О полном процессе переноса DOOM на рельсы воркеров можно почитать в блоге Cloudflare. Там команда, занимавшаяся портированием, максимально подробно расписала весь процесс.
Отметим, что Cloudflare Workers — очень удобный инструмент. Но у него есть и свои недостатки. Главный из них — вендор лок.
То есть разработчики, использующие воркеры компании, будут вынуждены постоянно платить именно Cloudflare. Просто потому что их инструмент не стандартизирован. К тому же есть определённые сложности с переносом своего проекта на сторонние воркеры.
Источник: Блог Cloudflare
Источник: