Демо - сокращение от слова демонстрация. В компьютерных играх под этим термином выходят «сырые» версии, привлеченные ознакомить пользователей с будущей игрой. Конечная версия (релиз) порой имеет очень далекое сходство с демонстрационной версией.
Совсем другое значение слово демо приобретает в демомейкинге. Это вид компьютерной искусства уходящий своими корнями во времена первых персональных компьютеров. Трехмерные миры, развивающиеся в реальном времени, сочетаются со стильной рисованной графикой, музыка органично сочетается с происходящим на экране монитора - все это демо. Программа занимает на жестком диске 64 kb. И в эти минималистические объемы помещаются целые мирки придуманные человеком. Трудно поверить в реальность происходящего, завораживающая красота не отпускает. Начинаешь гордиться своим компьютером, это именно на нем происходит сия феерия. Но железо без человеческой мысли груда металла. Программисты, музыканты, дизайнеры на голом энтузиазме создают настоящие шедевры. Всех их называют демомейкерами, конечный продукт демо, а все вместе - демосценой. >>>
История зарождения демосцены
В начале 80-х годов компьютеры по-настоящему становятся домашними. Клайв Синклер изобретает компьютер «ZX-SPECTRUM». Стоимость новинки едва покрывает себестоимость производства. Но благодаря этому миллионы людей по всему миру обзаводятся своими собственными компьютерами. Вплоть до 90-х годов господство английской платформы непоколебимо. Ради справедливости стоить отметить существование на тот период компьютеров «Atari», «Amiga», «Commodore 64». В техническом плане они были более совершенны, но большая стоимость не добавляла им популярности. На «народной» платформе, как окрестили компьютеры семейства «ZX» и произошло зарождение демосцены. Первой весточкой были «кракеры» (взломщики). По сути, они занимались «пиратством», взламывали защиту игр и софта. Быть инкогнито их не прельщало, поэтому они показывали свое имя во время загрузки игры. Позже показ имени стал сопровождаться красивым эффектом. Компьютеры в то время имели очень слабые ресурсы, поэтому изучение программирования считалось естественным делом. Программисты хотели понять, на что способен компьютер и они сами. Увидев красивые заставки взломщиков, они решили сами попробовать сделать нечто подобное. Так постепенно, шаг за шагом набирая мастерство стали появляться отдельные программы - демо. Сообщество программеров нуждалось в общении, им хотелось поделиться своими наработками, обсудить приемы программирования. Так и возникли первые демовечеринки. Главным считалось искусство программиста, визуальные эффекты были второстепенны. В настоящем времени акценты уже смещаются в сторону визуализации, красивых картинок и атмосферной музыки.
Демо-фестивали
Демо-фестивали, они же демовечеринки (по-английски «demo party»). Проводятся на регулярной основе. Самыми известными являются «Assembly» (проходит в Финляндии), «Gathering» (Норвегия, см. screen 1), «Breakpoint» (Германия), «0A000H» (Германия), «Chaos Construction» (Россия, Санкт-Петербург).
В Европе признанными лидерами демо-вечеринок являются скандинавские страны. Не отстает и Германия. На них собирается несколько тысяч человек. Крупнейшие демопати проходят более трех дней. Помимо всеобщего признания победители получают солидные денежные призы. Фестивали проходят в больших залах, крытых стадионах. Все чаще на них кроме непосредственно конкурса проходят семинары разработчиков, видных компьютерных специалистов, представляются новинки компьютерного мира.
Среда демомейкеров крайне негативно относится к геймерам. Организаторы, пытаясь привлечь большую аудиторию, проводят соревнования по компьютерным играм. Данные начинания практически полностью игнорируются участниками. Игры расцениваются демомейкерами лишь как отдых перед серьезным делом.
В России фестивали проходят, конечно, с меньшим размахом. Основной упор на них сделан на «народной» платформе «ZX-SPECTRUM». «Спектрумисты» чувствуют себя вольготно. Появляются новые эмуляторы под привычные OS «Windows» и заканчивая диковинками в лице OS «Symbian». Пишутся игры, недавно вышла новая звуковая плата. В ней целых восемь каналов и куча других улучшений. Т.е. с данной платформой проблем нет. Большое сожаление вызывает низкое представительство демок, написанных на «виндовс» платформе. За редким исключением, качество российских работ не дотягивает до уровня «западных» коллег. Фестивали проходят в два дня, субботу и воскресенье.
Даты проведения демопати заранее объявляются организаторами на своих сайтах. Информацию можно получить и на ведущих сайтах о демосценерстве. Самыми известными из них являются www.demoscene.ru и www.democoder.ru. Подкаст о демосцене находится по адресу www.scene.rpod.ru.
Хорошим тоном является заблаговременное оставление информации о посещении фестиваля. Организаторы на основе этих данных выбирают размер помещения, количество техники и т.д. Предварительное расписание конкурсов редко совпадает с реальным. Думаю, к этому уже все привыкли и мало обращают внимания на такие организационные мелочи. Главное на фестивалях это общение, сравнение своего уровня с другими участниками. Кто-то приходит просто насладиться великолепным зрелищем.
Жанры демо (конкурсы)
На демо-вечеринках представлены различные платформы. Доминирующую роль занимает PC, но стороной не обходят и старые платформы («zx-spectrum», «amiga», «atari».)
Конкурсы отличаются разнообразием, здесь есть место всем показать свой талант.
Наиболее известными и популярными жанрами демосцены являются:
демо (demo) - длительные представления, сопровождаемые музыкой. Размер файла свыше 64 кб. Некоторые экземпляры достигают 10-15 Мб. Столь большой размер объясняется качественной музыкой в формате mp3 и более лучшей прорисовкой графики.
интро (intro) - демо, с жестким ограничением по размеру файла. Самой популярной является интро размером 64 кб. В такой объем разместить полноценную демо достаточно трудно, поэтому они программно «пакуются» (сжимаются). В процессе загрузки происходит распаковка, продолжительностью от нескольких секунд до минуты. Данное интро является вершиной искусства для демосценеров, и победить в данной номинации является мечтой всех участвующих.
Стоит отметить и интро размером 4 кб (screen 2). В этой программе происходит «рисование» изображения. Оно строится по алгоритму, заложенному в программе. Жалко только, что из-за ограничения по размеру, авторы не предусматривают их запуск на различных конфигурациях компьютера. Поэтому во многих случаях интро просто не запускаются.
Проявить и выставить на всеобщее обозрение свое мастерство может и «одиночка». Для них существуют различные конкурсы по графике и музыке. Дизайнеры участвуют в следующих дисциплинах: «рендеренная» графика - изображение, построенное с помощью любой программы 3d моделирования; «пикселизированная» графика - изображение построено исключительно из точек (пикселей); свободный стиль - без каких либо ограничений, в качестве исходного изображения может использоваться цифровое фото, вставлены 3d элементы и т.д.
Музыка разделяется на трекерную и «обычную», в формате mp3. Трекерная музыка не требует больших ресурсов и используется помимо демо в простых играх, как на PC, так и на консольных приставках. MP3-музыка делится на инструментальную и вокальную. На некоторых фестивалях существует жесткое ограничение композиции по времени.
Отметим также анимацию и ASCII/ANSI графику. Первая представляет анимацию, сделанную в 3d программе без использования дополнительных средств. Вторая - это изображение, построенное из псевдографики (screen 3).
Демогруппы
Среднестатистическая демогруппа состоит из двух-четырех человек. Роли распределяются следующим образом: лидер - придумывает сюжет, концепцию демо, реализует определенные эффекты. Как правило, он не является основным программистом, хотя бывают и исключения. Музыкант пишет фоновую музыку и звуки. Активно участвует в финальной сборке, именно от него зависит синхронизация звука с происходящим на экране. На плечи кодера ложится вся черновая работа. Но, прежде всего, он отвечает за взаимосвязь отдельных эффектов и процедур. Не всегда сам придумывает эффекты, частенько воплощает в жизнь идеи лидера.
Назовем самые известные коллективы и их работы. Наверно самой популярной является немецкая группа «Farbrausch». Она выпускает демки с индексом «fr-0N», где N - номер демы в порядке возрастания. На screen 4 представлен эпизод из «fr-013:FlyBye». В 2004 году коллектив выпускает полнофункциональную игру от первого лица «Kkrieger». Игра представляет собой шутер от первого лица. В ней всего один уровень, но не это главное, программа занимает всего лишь 96 килобайт! Мне лично очень нравится творчество венгерской группы «Conspiracy». Интро имеют сюжет и смысл. Тема будущего затронута в «Prophecy» и «Project Genesis» (screen 5). Интересна история группы «Fairlight», она плавно переходила с платформы на платформу добиваясь призовых мест и признания. С 1990 по 1996 года парни работали с платформой «Amiga». В 2000 году они снова заявляют о себе, но уже работая на PC платформе и параллельно с компьютером «Commodore 64». Побеждают на крупнейших демопати «Assembly» и «Breakpoint». Судьба группы печальна, благодаря действию ФБР и полиции, но это уже другая история.
С каждым годом появляются новые группы и отдельные авторы. Жажда славы и признания «молодых» не дает застояться известным демомейкерам. Благодаря такому круговороту и происходит постоянный прогресс вперед, совершенствование кода и человеческой мысли.
Инструментарий демомейкера
В демомейкинге присутствует графика, музыка и сама программа. Соответственно необходимо минимум три различных программы.
Музыка пишется на специальных трекерных программах, называемых трекерами. Объем файла получаемой композиции в разы меньше, нежели музыка, написанная в mp3 формате. Это имеет огромное значение в интро, где каждый килобайт на вес золота. Самыми известными трекерами являются «Impulse Tracker 2», «Fast Tracker», «Sun Vox» (screen 6) и другие. Легко отличить композицию, написанную в трекере по ее расширению, как правило, это XM, IT, MOD. Многие проигрыватели, в частности «AIMP», имеют изначальную поддержку данных форматов.
Для рисования трехмерных сцен используются известные 3d пакеты - «Blender», «3D Max», «Maya». Специально для 64 кб интро написана программа «Plasticator». Она предназначена для визуального подбора параметров различных функций, отображающих анимацию.
Основной код программы пишется на языке C/C++. Наиболее быстродействующие процедуры написаны на ассемблере. «Fasm» - известный и хорошо себя зарекомендовавший ассемблер. Большое значение имеют и используемые компиляторы, отличную скорость исполняемого кода показывает компилятор от фирмы «Intel».
Для облегчения себе работы демогруппы пишут особенные программы - «демосистемы» (демо движки). С их помощью нельзя написать полноценное демо, но они для этого и не предназначены. Главной их задачей является состыковка анимации с музыкой. Есть возможность простой работы и с самой анимацией (установка света, местоположения объекта и т.д.).
Готовая программа упаковывается (сжимается) либо по собственному алгоритму, либо используется специальная программа - упаковщик. Для этих целей служат «Kkrunchy» от известной группы Farbrausch, «Ultimate Packer for eXecutables» и ряд других.
Влияние демо
Новаторские технологии, применяемые в демостроении, перенимаются разработчиками игр с большой охотой. Многие выходцы из компьютерного демомейкинга играют ведущие роли в игровой индустрии. Особенно это заметно по композициям к играм, написанным ведущими музыкантами демо. Приведем конкретные примеры: в самом известном движке «Unreal» из демомейкинга перекочевали эффекты процедурного текстурирования. Компания разработчик «Remedy Entertainment», автор серии игр «Max Payne», состоит из бывших демомейкеров. Александр Брэндон, Эндрю «Necros», Питер «Skaven» - авторы музыки к играм «Unreal», «Unreal Tournament», «Deus Ex». Не отстают и российские музыканты. Объединение «The Sands» приняло участие в написании музыки к играм «Магия Крови», «Смерть Шпионам». Парни замечены и на консолях («Nintendo DS»). В 2008 году группа устраивали живые концерты на демо-вечеринках. Многие производители игр и фильмов привлекают демосценеров для создания заставок и специальных эффектов.
Послесловие
Демомейкинг - это действительно искусство. Искусство отдельного программиста, художника, музыканта. А при их союзе получаются шедевры, которые услаждают наш взор и слух. Стоит окунуться в этот фантастический мир, и вы уже не сможете без него. Проверено на себе!
(Опубликовано в газете "Мой друг компьютер", № 11, май 2009 года. Здесь дана авторская редакция.)
///2011/// 12 декабря. Новый рекорд: 812 посетителей (по данным счетчика "liveinternet.ru"). Апрель. Еженедельные горячие десятки анекдотов теперь не выкладываются на главной странице. ///2010/// 27 января. Новый рекорд: 560 посетителей (по данным счетчика "mail.ru"). 25 января. Перешел на более мощный тарифный план. Теперь сайт работает в 1,5-2 раза быстрее. ///2009/// 19 ноября. Новый рекорд: 312 посетителя (по данным счетчика "mail.ru"). 15 апреля. Закрылась почтовая рассылка "Лучшая десятка анекдотов от Дяди Зорыча". Сам раздел продолжит существование. ///2008/// 21 октября. Новый рекорд: 102 посетителя (по данным счетчика "mail.ru"). 26 июня. Сайт переехал на собственное доменное имя www.zorych.ru (спасибо Алексею Радченко).
01 июня. День рождения сайта. В этот день начал заливать информацию на локальный сайт.