В эту пятницу команда Dos.zone и автор проектов JS‑DOS и DosZone, Александр «caiiiycuk» Гурьянов, рассказали о грандиозном технологическом достижении: полная эмуляция старой-доброй 3dfx-графики (Glide) теперь работает в браузере — без плагинов, без сложной настройки и с поддержкой WebGL!
Почему это важно?
Видеокарты 3dfx Voodoo и API Glide стали символами золотой эры 90‑х, когда такие игры, как Need for Speed и Turok, впервые раскрывали красоту 3D-графики. До сих пор Glide-эффект в браузере выглядел приглушённо — эмуляция в DOSBox-X шла на мощности CPU и не давала тех визуальных ощущений. Александр поставил задачу — соединить Glide с WebGL через DOSBox‑X, GL4ES и Emscripten, и довёл её до блестящего результата. Сегодня мы можем запускать Glide‑игры прямо в браузере: с аппаратным ускорением, с плавной графикой и высокой производительностью.
Как это работает?
Low‑Level Glide через GPU
Рендеринг Glide-команд теперь идёт не ПО в CPU, а через GPU через GL4ES + WebGL, что призвано сохранить точность оригинала и ускорить работу.
- Работа через WebAssembly + Web Worker
Эмулятор работает в фоновом потоке, получает WebGL-контекст от канваса, и это позволяет добиться стабильной 60+ fps работы Glide‑игр. - Преодоление багов
— Проблемы с мерцанием кадров решены через использование Frame Buffer Objects.
— Отключение текстур и некорректный fog исправлены через донастройку GL4ES.
— Некоторые UI‑эффекты, например меню Carmageddon, работают немного медленнее — но это дело будущих улучшений.
Что уже можно поиграть?
В течение последнего месяца команда протестировала больше 50 Glide‑проекта. И уже готовы к запуску:
- Recoil
- GTA 2
- Turok
- Sub Culture
- Carmageddon 3Dfx
- Hard Truck (Дальнобойщики: Путь к Победе)
- Future Cop LAPD
- Need for Speed 2
Кроме этого, доступны технологические демки:
- Valley of Ra
- Grand Bleu
- The Wizard of Tower
Разработчики уже объявили о выпуске первой игры:
Первая игра которую мы хотели бы представить на свежей технологии WebGL3Dfx - Recoil. Аркадный танковый симулятор с очень динамичным и прорывным гемплеем для своего времени.
Что дальше?
В следующих публикациях команда начнёт добавлять больше игр на новую Glide/WebGL платформу — разработка только набирает обороты. А сама статья Александра содержит интереснейшие технические детали: как работают FBO, Web Worker’ы, GL4ES‑патчи и что ещё предстоит оптимизировать
Очередной вайпер теперь Glide->OpenGL. В свое время вапперы были Glide->DX. Интересно другое этот вайпер поддерживает ли 4 версию Glide или только более старые
Не совсем так, глайд был быстрей ДХ в разы, интерпретаторы появились где то в районе ДХ2.1 если смне скоероз не изменяет и работали как г*вно
смешно учитывая что глайд был онли 16 бит а dx 32 бита. Где то под конец глайд стал кое-как 24 битным но все равно уменьшали до 16 бит. Но лапшу вешали что качество лучше чем обычные 16 бит.
Да глайд 16 но рисовал он быстрей чем ОпенГЛ и ДХ мы тогда на Q3 сравнивали
ох уж эти ретрограды. так фанатично относиться к старым временам и технллогиям что пихать их везде и всюду и хвалиться хвалиться хвалиться что они это смогли ее. это ненорнмально.
Как давно это было...
И давно - и как будто недавно. А прошло ох ёпт... 30 лет 🤯
я с 90х в гараже храню комп с 3дфх с установленной Суб Культурой :) Крутая была игра :)
А где кровь?
Кровь будет точно! И kiss будет. Кровь кстати первая вроде в дос.зон есть уже давно.
Я хочу с глайдом.
Воооу.
Очень надеюсь, на поддержку POD Planet of Death (1997) и King's Quest: Mask of Eternity (1998).
Маска вечности -- одна из самых сложных вещей по эмуляции, т.к. без Glide там 15 кадров будет. А с ним, если криво сделать, не больше 20-25.
Ну и POD (1997) без шаманств не выдаёт больше 20 рванных кадров.
И 3dfx на Mageslayer! Только не говорите про геимплейные баги -- можно сделать attention на странице игры, что в какой-то момент придётся воспользоваться читами, чтобы пробежать дальше.