Показать HN: Я воссоздал эффекты демосцены Mode X 90-х годов в JavaScript и Canvas ( jdfio.com ) После 25 лет написания программного обеспечения я чувствовал ностальгию по тем вещам, которые изначально привели меня в программирование: старая демосцена DOS. Я провел выходные, пытаясь понять, смогу ли я воссоздать часть этой магии INT 13H VGA с помощью современных веб-технологий, но с ограничениями старой школы, связанными с созданием всего с нуля.
Результатом стал этот портфель из десяти классических эффектов, запущенных в одном HTML-файле. Это все чистый JavaScript, записываемый в элемент
* Циклическая смена цветовой палитры и плавное затухание в демонстрации Plasma. * Алгоритм усреднения буфера для эффекта Fire, делающий пламя более естественным. * Плавное затухание текстуры в зависимости от расстояния в Tunnel для создания иллюзии полета через разные секции. * Двумерное скалярное поле для Metaballs для расчета нормалей поверхности для этого классического смешанного металлического вида (я сделал все, что мог, с учетом заданных ограничений).
Это было отличным упражнением по возвращению к первоосновам и напоминанием о том, как много могли достичь ранние демо-программисты с таким малым. Надеюсь, это вернет хорошие воспоминания тем, кто вырос на этом.
Мне бы хотелось услышать о ваших любимых классических демо-версиях или о других культовых эффектах, которые, по вашему мнению, было бы интересно добавить.
Ваше здоровье!

пентафоб 35 минут назад | следующий [–] Здорово! Ностальгия ощутима.
Не по теме: мы всегда называли варианты mode-x MCGA, TIL, но это скорее разговорный термин, чем технически точный [1]
[1]: https://en.m.wikipedia.org/wiki/Многоцветный_графический_массив 
guiambros 18 минут назад | предыдущая | следующая [–] ух ты, молодец! Довольно солидная реализация, действительно достойная Future Crew 🙂
cluckindan 20 минут назад | предыдущая [–] Какую модель ИИ вы использовали? Дизайн очень хорошо это выдает.

Рассмотрите возможность подачи заявки на набор в YC на осень 2025 года! Заявки принимаются до 4 августа
Source: news.ycombinator.com