Демосцена как искусство. Часть I
Асы программирования - те же художники, только вместо кистей и красок - компьютер.
В компьютерной среде существует интересная субкультура с богатыми традициями, называемая демосцена. Она представляет собой синергетическую связь визуального искусства и программирования. Творить в этом направлении могут только асы программирования. Все остальные пользователи могут лишь созерцать плоды их труда и восхищаться. Что же в демосцене такого интересного и впечатляющего?
Суть
Демосцена – относительно новое направление в искусстве. Она сводится к созданию специальных демонстрационных или игровых программ, которые, как правило, занимают очень мало места, но при этом обладают шикарным графическим оформлением и музыкальным сопровождением. Смысл подобных демонстраций состоит в том, чтобы создать большую впечатляющую программу, которая бы занимала как можно меньше места.
Вообще-то, демонстрации очень малы по объему, но при этом могут длиться несколько минут. Имея среднестатистический объем картинки в JPEG, современные демонстрации по содержанию могут быть равны целому музыкальному видеоклипу.
Здесь, как и в любом виде искусства, есть свои жанры. На данный момент их два. Первый жанр - собственно «Демо» (demo). Это довольно длительное графическое представление, сопровождаемое музыкой. Весят такие демонстрации обычно до нескольких мегабайт. Второй жанр – предмет особой гордости сценеров. Он называется «Интро» (intro). В этом жанре проводятся различные соревнования и конкурсы, суть которых заключается в ограничении объема, занимаемого готовой работой. Так, в этом жанре существует несколько классов, по которым проводятся различные соревнования: 64 КБ, 4 КБ, 512 Б, 256 Б и даже 128 Б. Казалось бы, что можно вместить в 128 байт? Оказывается, что можно многое. Наиболее популярным является класс до 64 КБ.
Также частью демосцены является трекерная музыка, используемая для сопровождения работ. Хрестоматийный пример игры – шутер .kkrieger., занимающий 96 КБ и выпущенный в начале 2000-х годов. В игре есть несколько уровней, а графическое оформление (особенно освещение) вполне может соперничать с современными 3D-шутерами. Ранее существовал еще жанр «Мегадемо», к настоящему времени канувший в Лету. Мегадемо - это сборник нескольких демонстраций, эффектов или трекерных композиций, между которыми пользователь может переключаться.
Как такое возможно?
И в самом деле, если можно создать игру с отличной графикой и музыкой, которые занимают при этом пару сотен килобайт, то почему тогда объем современных коммерческих игр исчисляется гигабайтами?
Подобный минимализм стал возможен благодаря использованию исключительно низкоуровневого программирования. Как правило, все демо пишутся на языке «Ассемблер». Смысл такого языка - в прямых командах для процессора, но в более удобной для написания человеком форме. Именно на этом языке можно написать наиболее компактный код, который при этом будет исполняться на порядок быстрее, чем работы, сделанные с использованием языков среднего и высокого уровня. Программы, созданные на «Ассемблере» (который вообще-то используется для написания драйверов различных устройств), могут сполна реализовывать все аппаратные возможности той или иной платформы. Именно поэтому демо выглядят столь впечатляюще по графике. Конечно, у данного языка есть и масса недостатков: программирование требует очень высокой квалификации, а созданные программы будут работать только на такой же аппаратной архитектуре. Впрочем, последнее, в свете стандартизации компьютеров, стало некритично.
Еще одна ключевая особенность демонстраций – отсутствие базы данных с текстурами, музыкой и другими заранее созданными частями, использование которых является неотъемлемой частью почти всех прикладных программ. Все эти элементы создаются процессором в реальном времени, и именно по этой причине вы никогда не увидите в демо фотореалистичных элементов и не услышите настоящих музыкальных инструментов или вокал. Весь облик любой демонстрации является абстрактным. Именно благодаря этой особенности они и занимают так мало места.
История
Демосцена появилась в конце 70-х годов, когда домашние компьютеры только-только набирали популярность. Своим появлением этот вид компьютерного искусства обязан хакерам и пиратам того времени. Именно они создавали программы для взлома ПО и, чтобы выделиться, снабжали их собственными заставками. Так родился соревновательный момент, когда каждый хотел сделать более эффектную, чем у других, заставку.
Наиболее популярные в начале 80-х годов для демосцены платформы – домашние компьютеры Commodore 64 и ZX Spectrum. Несмотря на слабую аппаратную часть этих компьютеров, демонстрации буквально выжимали из них все соки и зачастую выглядели на порядок лучше, чем имеющийся для них другой софт.
В 1985 году появился компьютер Amiga, обладающий невиданными ранее графическими и мультимедийными возможностями. Конечно, сценеры не могли пройти мимо него. Наиболее эффектные демонстрации создавались для этой платформы до начала 90-х годов, когда эра домашних ПК уже заканчивалась. После этого наиболее популярными для демо стали IBM-совместимые компьютеры, которые оснащались графическими адаптерами VGA и приличным по тем временам звуком Gravis Ultrasound. А вот компьютеры Apple, несмотря на хорошие мультимедийные характеристики, никогда не пользовались популярностью в этой среде.
Демонстрации всегда использовали аппаратные возможности компьютеров по максимуму. С развитием «железа» они становились все более изощренными и красивыми. Единственное, что оставалось неизменным, – маленький размер.
Особенности
В отличие от современных компьютеров, домашние ПК 80-х годов не могли выполнять операции с плавающей точкой. Из-за этого, а также по причине низкой производительности, ни о каком 3D не могло быть и речи. Как правило, ранние демо представляли собой красиво оформленный текст, пестрящий различными дополнительными эффектами. Вполне подходящее сравнение – заставки для игр, которые выходили на игровой приставке NES.
Демонстрации сопровождались трекерной музыкой, которая создавалась (и продолжает создаваться) без использования записанных заранее фрагментов. Она представляет собой прямые команды для каждого канала звукогенератора, где заложена лишь частота звука и временные промежутки, когда этот звук должен прозвучать. За счет смешивания нескольких каналов и получается электронная музыка.
Именно трекерная музыка безраздельно властвовала в компьютерном мире, пока аппаратные возможности не позволили воспроизводить музыкальные записи, и не набрал популярность MIDI.
Создание такой музыки совсем не похоже на то, чем занимаются композиторы. Вместо написания партитур создатель пишет команды на «Ассемблере». Примечательно, что среди сценеров не принято каким-либо образом защищать свои произведения от копирования. Более того, при создании музыки используются куски кода, написанные кем-то ранее и являющиеся определенным электронным инструментом с уникальным звучанием.
ВИДЕО
Комментарии
0 комментариев
Комментировать