Интересное

Голландский программист воссоздал Doom целиком на CSS и HTML без графического движка

Нидерландский разработчик Нильс Линхеер, известный по созданию сайта HTML5test.com, провернул необычный эксперимент – он воссоздал классическую Doom так, что все стены, полы, бочки и враги отрисовываются браузером через обычные HTML-элементы и CSS-стили. По сути, JavaScript в этой версии отвечает только за игровую логику (перемещение, стрельбу, поведение врагов), а всю визуальную часть берет на себя CSS – язык, который изначально придумали для оформления веб-страниц, а не для построения 3D-сцен.

Работает это так. Данные из оригинальных файлов Doom превращаются в тысячи HTML-блоков (так называемых div-элементов), каждый из которых получает свои координаты из оригинальной игры. Дальше браузер с помощью CSS-трансформаций и математических функций вроде вычисления углов и расстояний сам размещает эти блоки в трехмерном пространстве. Полы, например, представляют собой div-элементы, повернутые на 90 градусов, а их форма вырезается через специальные CSS-функции для создания сложных контуров.

Если вам хочется разобраться в этом подробнее, то можно прочитать статью на сайте Нильса. Она довольно дотошная.

Камеры в CSS не существует, поэтому Линхеер придумал обходной путь – при движении игрока двигается весь мир в противоположную сторону. JavaScript передаёт координаты и угол обзора игрока через CSS-переменные, а стили сами пересчитывают смещение сцены. Враги и снаряды всегда повёрнуты лицом к игроку благодаря так называемой технике “билборда”, а анимации спрайтов прокручиваются через CSS-анимации.

Освещение, двери, лифты – все реализовано через CSS. Уровень света в каждом секторе хранится в переменной, которая применяет фильтр яркости ко всему содержимому, так что темные комнаты затемняются автоматически. Открытие двери – это просто CSS-переход по пользовательскому свойству, а JavaScript лишь переключает атрибут состояния. Линхеер даже сделал игру адаптивной для разных размеров экрана через Flexbox и добавил режим наблюдателя с камерой от третьего лица.

Разумеется, у подхода есть ограничения – на больших картах с тысячами 3D-элементов браузеры начинают тормозить, а мобильный Safari и вовсе может упасть. Некоторые визуальные приемы оригинальной Doom, например отрисовка неба, не переносятся в CSS напрямую и требуют дополнительных хитростей. Сам Линхеер признает, что это не замена полноценным графическим технологиям вроде WebGL.


Источник: https://shazoo.ru/2026/04/04/182000/gollandskii-programmist-vossozdal-doom-celikom-na-css-i-html-bez-graficeskogo-dvizka

Межтекстовые Отзывы
Посмотреть все комментарии
guest

Дроны, байки с миниганами и новые задания — 26 июля GTA Online получит обновление The Criminal Enterprises

Rockstar Games официально анонсировала летнее обновление для GTA Online, которое получило название The Criminal Enterprises. В свойственной для...

Star Wars Jedi: Survivor возглавляет список самых скачиваемых игр в PS Store для PS5 второй месяц подряд

Sony представила подборку самых скачиваемых игр в PS Store для консолей PlayStation за прошедший месяц. Star Wars Jedi:...

В GTA Online празднуют Хэллоуин с новыми режимами и машиной-убийцей

Rockstar Games сообщила, что в GTA Online снова стартовало ежегодное празднование Хэллоуина. Ничего выдающегося в игре не появилось,...

Утечка по GTA 6 указывает на поведение NPC нового поколения – даже лучше RDR 2

Очередная предполагаемая утечка по GTA 6 описывает систему взаимодействия с NPC, которая может значительно превзойти всё, что было...

Игрок Baldur’s Gate 3 сделал скрипт, чтобы все спутники презирали его персонажа с первой встречи

Большинство игроков в Baldur's Gate 3 тратят массу усилий, чтобы завоевать одобрение спутников. Совершишь что-то плохое – Карлах...

В сети появились новые фейковые скриншоты GTA 6 с ночным Вайс-Сити

Информационный голод вокруг Grand Theft Auto VI продолжает порождать всё новые волны поддельного контента. На этот раз в...

Некстген-версия GTA V, Exoprimal, Insurgency: Sandstorm — очередная подборка Xbox Game Pass

Microsoft выкатила список тайтлов, которые станут доступны подписчикам Xbox Game Pass до 18 июля. В этот раз пользователей...

Улучшенная версия GTA 5 на PS5 получит 4K и 60 FPS

Немецкий блог PlayStation в заметке про игры 2021 года сообщил, что улучшенная версия GTA V будет идти в разрешении...

Считаем деньги Take-Two Interactive: Замедление продаж GTA 5 и 87 тайтлов до 2025 финансового года

Компания Take-Two Interactive опубликовала финансовый отчет за второй квартал 2023 финансового года. Стало известно, что выручка T2 за...

Вот как выглядит GTA 5 с отражениями при помощи трассировки лучей

Недавно консольная версия GTA V получила апдейт, добавляющий поддержку трассировки лучей. Новое улучшение не нацелено на улучшение всего...

Игроки Crimson Desert обнаружили, что NPC в реальном времени строят дома и вырезают статуи, пока вы занимаетесь своими делами

Один из игроков в Crimson Desert записал таймлапс того, как NPC-соратники из лагеря Серых Грив выполняют порученные задания...

Получивший пожизненный срок преступник плакал из-за того, что пропустит релиз GTA 6

35-летний житель Оксфорда Роберт Риченс расплакался, говоря полицейским о том, что пропустит релиз GTA 6, пока его задерживали...

FIFA 21, три DualSense и PS5 — лидеры британского чарта за июнь

Стали известны цифры по продажам игр, консолей и аксессуаров в Великобритании в прошедшем июне. За этот месяц в стране...

Как заработать 28 долларов в GTA Online или реальность современной Америки

GTA V вышла во времена, когда в американском обществе вопрос реформ полиции еще не стоял так остро, как...

Ютубер запустил GTA 5, Days Gone и Cyberpunk 2077 в разрешении 72p

Ютубер RandomGaminginHD решил показать, как могут выглядеть известные игры в разрешении 72p на очень слабых видеокартах. Для этого...

Steam-chart: Баттл-рояль Naraka на первом месте

Опубликованы данные о продажах в Steam за прошедшую неделю, которая закончилась 15 августа. На первом месте Naraka: Bladepoint —...

Take-Two подтвердила дату выхода GTA VI – маркетинговая кампания начнется летом 2026 года

Компания Take-Two Interactive в свежем финансовом отчете официально подтвердила: релиз Grand Theft Auto VI намечен на 19 ноября...

UK-чарт: LEGO Star Wars The Skywalker Saga на первой строчке благодаря бандлу с PS5

Аналитическая фирма GfK обнародовала отчет по продажам игр в Великобритании за прошедшую неделю. Лидером в этот раз стала...

Считаем деньги Take-Two Interactive: 185 млн GTA 5 и убытки в размере 200 млн долларов

Компания Take-Two Interactive представила квартальный отчет за первый квартал 2024 финансового года. Материнская компания Rockstar Games и пачки...

Просмотры Twitch за август ниже июльских — Baldur’s Gate 3 посмотрели 45 млн часов

Аналитики из StreamElements опубликовали очередной отчет по просмотрам Twitch. В этот раз собрана статистика за август, из которой...