Мопас демо: Теория, практика, сакральный смысл.
Приветсвтую всех любителей, а также ненавистников запилятора!
В этом топике я расскажу как создавалась дема Мопас, с какими трудностями мы столкнулись и как оно вообще было.Сначала John Norton Irr нарисовал картинку. Рисует он так: ставит определённую музыку и она задаёт настрой, под неё и только под неё происходит весь процесс рисования. В данном случае была музыка Siril4d — 216 cycles of moon. Она же и вошла в дему.
Дальше надо было её анимировать. К тому времени уже была готова программа Fitcha, которая выделяет из анимации только движущуюся часть. Было решено использовать эту программу на максимум.
Делать анимацию в ZX-Paintbrush'е оказалось достаточно сложно, поэтому мы сохранили картинку в чб формате как bmp, чтобы анимировать в Paint'е.
Следующим шагом мы создали 3 папки, в каждую положили эту картинку под названием 1.bmp. Каждая папка отвечала за анимацию.
Теперь следовало анимировать. Брался первый кадр, чуть редактировался, сохранялся как 2, потом опять редактировался, сохранялся как 3 и так далее. После нескольких изменений анимация смотрлась и если были скачки, то редактировалось. И так для всех трёх анимаций. У Джона ушло на это с перерывами около 2-х дней.
Анимация 1.
Анимация 2.
Анимация 3.
Итак, анимация готова, теперь её надо отделить от фона. Берём мою программу Fitcha и получаем облом — она работает с scr, а не с bmp. Что-ж, конвертируем используя bmp2scr.
Теперь самое главное, как отделить задник от трёх анимаций. Берём первую папку с кадрами (в scr), прогоняем её через Fitch-у, получаем серию bmp и zadnik.scr. Далее, берём zadnik.scr и ставим его вместо 1.scr во второй папке. Прогоняем теперь вторую папку через фичу. Смотрим выход. Ой, что это? В кадрах помимо выделенной анимации находится статичный кусок из предыдущей папки? Да, это недоработка, вручную убираем из каждого кадра этот ненужный кусок. Всё, вторая анима готова, переходим к третьей. Опять берём zadnik.scr уже из второй папки и копируем вместо первого кадра. Прогоняем по третьей анимации, опять вырезаем лишнее из кадров и всё, анимация готова!
Делаем из кадров гифки.
1.
2.
3.
Гифки готовы, теперь нужен фон. Смотрим, что у нас в Zadnik.scr (Последний, полученный из 3-ей анимации)
Он чб, а ним нужен цвет. Я долго думал какой метод переноса цвета самый быстрый и остановился на таком: Открываем zadnik.scr в текстовом редакторе (Я использую akelpad, он показывает смещение в байтах от начала и бережно относится к байтам-несимволам), находим место, где начинаются аттрибуты 768 одинаковых идущих подряд байтов в конце, и удаляем эту область. Дальше, идём в цветной оригинал, тоже его открываем в блокноте, находим эту область, копируем её и вставляем на место удалённой. Сохраняем, смотрим:
Ура, сработало! Грузим всё в запилятор, смотрим, ага, пара аттрибутов клеширует, подправили, грузим, всё отлично!
Вот по такому алгоритму создавалось Мопас демо. Но почему-то крому Джона, меня и моего виртуала никто до него не додумался. Может ААА в пикселе его и юзал, но не уверен, там видно что анимация и фон рисовались отдельно друг от друга.
18 комментариев
Можно считать это первым запилом.
Даром, что лицо заинтересованное =)
Выявили что хотите анимировал, удаляете все лишнее с экрана и анимируете ветку, папер и инк сходите к одному. Потом следующий кусок… Потом все куски соединяете в единый гиф. Фон вытирается под аниму.
Программа какоса недоделанная. На кой лёд в бмп сохранение, весь мир в пнг 8 битку рисует. Остальное всё адилово. Вы пошли по пути как замучить самих себя)) Я читал статью и слезы наворачивались…
один на 48 к и два по 16к, типа того.
и периодически ему то-то не нравилось и он показывал хз что хз почему ))