Канадский гармонист Gerard Lajoie
Настоящий король гармошки. Гармошка в его руках не играет, а разговаривает. Великолепно.
Настоящий король гармошки. Гармошка в его руках не играет, а разговаривает. Великолепно.
Похожая на Яндекс Маркете, на Али
И это было офигенно. Обучаюсь программированию для блокчейн ethereum , набрел на челлендж https://ctf.buidlguidl.com/ и на 5 дней пропал. 12 квестов для кодера-хакера указывающих на стандартные и не очень уязвимости допускаемые при написании контрактов на solidity.
Где-то тут был пост про разные виды наслаждений, так вот я ментально кончил от этого челленджа.
Сразу вспомнился универ, 1 курс и мне друг принес на дискете набор .exe-шек с видео и музыкой. И решил я вам рассказать о небольшом феномене мини-демороликов, где музыка и видео в реальном времени помещались в несколько килобайт:
Представьте, что вы запускаете .exe файл размером 64 килобайта — меньше, чем одна фотография с вашего смартфона. А дальше… на экране разворачивается полномасштабное 3D-шоу под электронную музыку, как трейлер к футуристическому фильму.
Музыка звучит объемно и сочно.
Камера летит сквозь процедурные ландшафты, тоннели, фрактальные формы.
И всё это — не видео, а в реальном времени, прямо сейчас создаётся на вашем компьютере.
Это — демосцена. А точнее — её жанр интро: автономные визуально-звуковые демонстрации, созданные с жёстким лимитом по размеру файла (обычно 4КБ, 64КБ, иногда даже 256 байт!).
Чтобы уложить визуальный и звуковой опыт в столь крошечный объем, разработчики использовали целый арсенал нестандартных приёмов:
1. Процедурная генерация графики
Вместо хранения текстур и моделей, они генерировались из формул. Например:
Поверхности — из синусоидальных функций.
Горы и облака — через фрактальные алгоритмы (например, Perlin noise или midpoint displacement).
Архитектурные объекты — построены L-системами и булевыми операциями над примитивами (CSG).
Даже цветовые текстуры не хранились в памяти — они создавались по формулам (например, смешение RGB в зависимости от координат, времени и частоты).
2. Музыка из синтезатора
Вместо WAV или MP3 использовались алгоритмические синтезаторы, встроенные прямо в код. Один из самых известных — 4klang (для 4К интро), который позволяет создавать сложные композиции из простых волн:
синус
пила
квадрат
шум
Звучание достигалось за счёт программной генерации огибающей, фильтров, эффектов (реверберация, delay).
3. Генерация моделей и анимаций
3D-модели не хранились как файлы, а собирались в коде:
float sphere = length(position - center) - radius;
Такие функции описывали "signed distance fields" (SDF), из которых рендерилась сцена через ray marching — метод трассировки лучей до ближайшей поверхности, использующий математику вместо мешей.
4. Минимизация и упаковка
Чтобы сжать наш .exe до предела, использовались специальные инструменты:
Crinkler — компилятор/пакер, оптимизирующий код и данные под 4k/64k лимиты.
UPX — упаковщик исполняемых файлов.
Reasmon, Kkrunchy и другие кастомные пакеры.
Размер файла: 64 КБ
Сцена: процедурный 3D-город, вращающиеся объекты, туннели
Музыка: насыщенный трек с драм-машиной и синтами
Ссылка на Видео: YouTbe (HD)
Этот демо стало легендарным. Оно не использует ни одного внешнего изображения или аудиофайла. Всё — результат генерации: от текстур стен до электронного бита.
Демосцена — это не только ностальгия по 90‑м и 2000‑м. Это:
искусство алгоритма, где творчество рождается в ограничениях,
демонстрация мастерства программиста, дизайнера, музыканта,
предшественник procedural graphics, которые сегодня используют в играх и VFX.
Кстати, в 2020 году демосцена была официально признана нематериальным культурным наследием ЮНЕСКО в Германии, Финляндии и Польше.
Сайт с архивом демок: https://www.pouet.net
История и новости: https://demozoo.org
Хочешь сделать свою демку? Посмотри фреймворки:
ShaderToy (идеален для генеративной графики)
Мини резюме - Когда вы в следующий раз смотрите на 2‑гиговый mp4 с TikTok — вспомните, что кто-то однажды уместил целую Вселенную в 64 килобайта. Не с помощью нейросетей, а голыми руками, формулами, синусами и хардкорным C++.
Это была настоящая магия эпохи, где искусство и инженерия сливались в одно целое.
Смотрю в новостях про сегодняшних студентов в Питере да и по всей стране. Какие они молодцы. Камеры не боятся, мысли выражают хорошо. Хоть где-то и запинаются. Ибо я в свое время …
К нам маленький городок в годах 2000-х приезжал зеленый шар от НТВ. И в этом шаре давали прокатиться. Ну как прокатиться, его просто поднимали вверх и спускали вниз. Но для нашего города это целое событие. И вот настал мой черёд для этого аттракциона. Поднялись, спустились. И ко мне подходит репортер нашего местного ТВ. Рядом ещё стоят ребята, им задают вроде обычные вопросы, на которые я и сам бы ответил ( как мне казалось) , но у меня тут спрашивают - « С чем можете сравнить этот полёт на воздушном шаре?» И все. Я в стопоре. Не знаю, что ответить. Обычно запоминающиеся события наоборот сравнивали с полетом на воздушном шаре, а тут бац и сам полёт.
В общем, я ответил- « Это можно было сравнить в полетом на воздушном шаре»
Тупняк, конечно. В эфир это естественно не вышло, ибо нефиг.
Пишу очередную сцену — главный герой стоит перед антагонистом, тот на троне из мрамора, в руках скипетр, за спиной статуи предков. Молчит грозно, глядит сурово.
И тут меня озаряет: да это же мой батя… только в тоге и с перстнем семейным на руке!
Ну а что, всё по классике:
Вечно напоминает про долг перед домом, родом и «честью фамилии» (которая, видимо, прописана у них на гербе и на двери отхожего места).
На семейном совете вещает длиннее любого сенатора.
Если ты не выполнил поручение, ждёшь наказания.
Любимая фраза: «Пока ты живёшь в этом доме, слушайся!»
И вот он, вроде бы архизлодей, а по факту всё те же детские комплексы и желание доказать, что ты не худший в семье. Просто теперь вместо ремня, божественные молнии и семейные проклятия на латыни.
Так что, если твой главный антагонист:
Считает, что честь семьи важнее свободы,
Не понимает, зачем тебе эта дурацкая «индивидуальность»,
Периодически грозит выгнать тебя из дома (или из пантеона),
И каждый разговор заканчивает так, что хочется сбежать в ближайший лес к кентаврам…
…Возможно, ты просто списал персонажа с бати.
Ну или списал с себя, если ты сам батя.
Пойду ещё пару сцен перепишу.