Статьи

JavaScript Doom

Прошу простить за откровенное звание приманки. JavaScript в порядке. У самого популярного в мире языка программирования безопасное будущее — особенно теперь Doom от id Software был преобразован для работы в браузере!

Если вас одолела эйфория, прекратите читать дальше и нажмите на ссылку:
developer.mozilla.org/demos/detail/doom-on-the-web/

Игра доступна в демонстрационной студии Mozilla ; ресурс, который демонстрирует технологии HTML5, CSS3 и JavaScript в Firefox и других браузерах.

примечание: куда это делось?

В ту минуту, когда появился этот пост, Mozilla запустила демо Doom. Я не уверен, почему, и это может быть только временным — я подозреваю, что это перегружало их серверы. Видео JavaScript Doom можно посмотреть на YouTube, пока мы ждем его возвращения.

Я осознаю, что SitePoint привлекает читателей, которые намного моложе меня. Если вы никогда не слышали о Doom, это игра-стрелялка от первого лица, которая была выпущена для ПК в 1993 году. Хотя это не был первый FPS — Wolfenstein 3D от id Software может заявить, что корона — Doom произвела революцию в жанре. Это новаторская 3D-графика, многопользовательские игры и графическое насилие с бензопилой послужили вдохновением для многих современных блокбастеров.

По современным меркам Doom показывает свой возраст. Он имеет устаревшую блочную графику VGA, 2D-карты (проходы не могут проходить через другую) и ограниченный контроль (без прыжков или вертикального прицеливания). Но игра остается поразительной, и Doom был преобразован для ряда консолей и карманных устройств. Теперь он портирован на JavaScript и может воспроизводиться в браузере без плагинов.

К сожалению, JavaScript Doom мучительно медленно работает в Chrome и не работает в IE. Сообщается, что некоторые версии Safari работают, но это не мой опыт работы с версией 5.0.5. Тем не менее, он хорошо работает на Firefox 4 и Opera; ПК среднего диапазона должен достигать 20-30 кадров в секунду — вероятно, лучше, чем старый 486, который я играл в Doom еще в 1993 году! Есть несколько графических глюков, но это играбельно.

Удивительно, но игра была скомпилирована из C в JavaScript с использованием Emscripten и Clang, а затем оптимизирована с помощью Google Closure Compiler . Видео выводится на стандартном элементе HTML5 canvas Звук обрабатывается с использованием нестандартного API аудиоданных Mozilla, но эффекты настолько неприятны, что вы их не захотите! Если вам интересно, исходный код можно скачать, хотя JavaScript минимизирован и не читается.

Если вы думаете, что это впечатляет …

Фабрис Беллард разработал эмулятор ПК для x86 на JavaScript. Ради забавы.

Он работает во всех последних браузерах, поэтому он установил ядро ​​Linux 2.6.20 и выпустил браузерный эмулятор . Да, он работает под управлением Linux на веб-странице.

Демонстрация ограничена выводом терминала, отображаемым в таблице HTML, но последствия этого поражают. Меня беспокоит только то, что кто-то добавит X11, установит браузер и рекурсивно взорвется в Интернете!

Вы видели другие замечательные примеры передового JavaScript?