Hacker News

Descent, портировано в сеть

Descent, портировано в сеть Этот комплексный анализ происхождения предлагает подробное изучение его основных компонентов и в более широком смысле — ОС Mewayz Business.

1 минута чтения

Mewayz Team

Editorial Team

Hacker News

Descent, легендарный космический шутер с шестью степенями свободы 1994 года, был успешно перенесен в Интернет с использованием современных браузерных технологий, и последствия для того, как мы создаем и развертываем мощное программное обеспечение, выходят далеко за рамки игр. Эта веха демонстрирует, что даже самые требовательные и сложные устаревшие приложения могут быть переработаны для браузера — принцип, который дальновидные платформы, такие как Mewayz, использовали для предоставления бизнес-инструментов корпоративного уровня полностью онлайн.

Что такое Descent и как он был перенесен в Интернет?

Descent — новаторский 3D-шутер, выпущенный Parallax Software в 1994 году, известный своим дезориентирующим шестиосным движением по шахтным шахтам и коридорам космических кораблей. В отличие от большинства шутеров того времени, Descent предлагал настоящую трехмерную свободу — крен, наклон, рысканье — что делало его технически сложным даже по современным стандартам. Для переноса его в Интернет инженерам потребовалось использовать WebAssembly (Wasm), двоичный формат инструкций, который позволяет коду C и C++ выполняться в браузере со скоростью, близкой к исходной. Такие инструменты, как Emscripten, компилируют исходную кодовую базу C в модули Wasm, а WebGL обрабатывает конвейер 3D-рендеринга в реальном времени, который требуется движку Descent. В результате мы получили полностью играбельную игру Descent, доступную из любого современного браузера и не требующую установки.

Какие технические проблемы пришлось преодолеть веб-порту?

Перевод игрового движка эпохи DOS для работы в браузере обманчиво сложен. Команде инженеров пришлось решить несколько уровней совместимости и производительности, прежде чем игроки смогли провести свой корабль Pyro-GX по одному коридору:

Управление памятью: оригинальный движок Descent осуществлял прямые вызовы памяти, которые браузеры помещали в изолированную среду по соображениям безопасности, требуя тщательных уровней абстракции.

Аудиоконвейер: MIDI-системы и цифровые аудиосистемы игры требовали переназначения на API веб-аудио, который работает на совершенно других моделях потоков.

Обработка ввода: ввод с клавиатуры, мыши и джойстика ведет себя по-разному в контекстах браузера, особенно в отношении событий блокировки указателя и фокуса.

💡 DID YOU KNOW?

Mewayz replaces 8+ business tools in one platform

CRM · Invoicing · HR · Projects · Booking · eCommerce · POS · Analytics. Free forever plan available.

Начать бесплатно →

Сохранение состояния: хранилище браузера (IndexedDB или localStorage) заменило исходные вызовы файловой системы для сохранения хода игры и конфигурации.

Политики перекрестного происхождения: ресурсы, шейдеры и файлы данных должны были обслуживаться в соответствии со строгим соответствием CORS, что добавляло уровень инфраструктуры, отсутствовавший в исходной версии.

«Настоящий прорыв веб-портирования Descent — это не ностальгия, а доказательство концепции. Если насыщенная физикой 3D-игра в реальном времени 1994 года может безупречно работать на вкладке браузера, то практически любое программное обеспечение можно переосмыслить для Интернета, не жертвуя при этом глубиной и производительностью».

Как порт Descent отражает более широкие тенденции в веб-программном обеспечении?

Веб-порт Descent является частью гораздо более масштабного движения, переопределяющего возможности браузеров. WebAssembly, широко представленный примерно в 2017 году и теперь поддерживаемый во всех основных браузерах, разрушил представление о том, что Интернет подходит только для легких приложений. Сегодня профессиональные видеоредакторы, инструменты САПР, рабочие станции цифрового аудио и полноценные платформы в стиле операционной системы полностью работают в браузере. Этот сдвиг устраняет трудности при установке, снижает зависимость от устройства и позволяет разработчикам мгновенно отправлять обновления, не требуя от пользователей устанавливать какие-либо исправления или переустанавливать. Для бизнеса это означает, что команды могут получить доступ к полнофункциональным инструментам с любого устройства и в любом месте — та же философия используется в таких универсальных платформах, как Mewayz, которая предоставляет 207 интегрированных бизнес-модулей через единый браузерный интерфейс.

Чему бизнес может научиться из того, как Descent был перестроен для Интернета?

Архитектурные решения, лежащие в основе порта Descent, несут в себе прямые уроки того, как следует создавать современное программное обеспечение для бизнеса. Инженеры не пытались воссоздать Descent с нуля для браузера — они сохранили исходную логику, слой за слоем транслировали системы и использовали в качестве среды выполнения собственные API браузера.

Ready to Simplify Your Operations?

Whether you need CRM, invoicing, HR, or all 207 modules — Mewayz has you covered. 138K+ businesses already made the switch.

Get Started Free →

Try Mewayz Free

All-in-one platform for CRM, invoicing, projects, HR & more. No credit card required.

Start managing your business smarter today

Join 30,000+ businesses. Free forever plan · No credit card required.

Нашли это полезным? Поделиться.

Ready to put this into practice?

Join 30,000+ businesses using Mewayz. Free forever plan — no credit card required.

Начать бесплатный пробный период →

Готовы действовать?

Начните ваш бесплатный пробный период Mewayz сегодня

Бизнес-платформа все-в-одном. Кредитная карта не требуется.

Начать бесплатно →

14-day free trial · No credit card · Cancel anytime