Как сделать анимацию плавающих рыбок

  Про анимацию летящей птицы рассказывалось тут - http://www.proza.ru/2019/11/26/610
Расскажу ещё о том, как делалась анимация «рыбки» (посмотреть эту анимацию можно здесь - http://yadi.sk/i/hn_-5to-bOsglw ).
   Так же, как и изображения летящей птицы, изображения рыбок были нарисованы акварелью на одинаковых листах бумаги с привязкой их положения к краям листов. Листы были отсканированы и переведены в файлы формата jpg. Далее делалось следующее.

  Открываем сразу две программы - mspaint и MA_Paint. В первой программе считываем рисунок, поворачиваем его на 90 градусов и уменьшаем в размере в два раза. Затем заключаем изображение листа бумаги в рамочку, стремясь к тому, чтобы рамочка совпадала с краями листа, и запоминаем изображение в буфере.
  Переходим в окно программы MA_Paint и, кликнув оранжевую полоску вверху-справа на краю окна, считываем изображение из буфера. Кликаем розовую кнопку и запоминаем изображение, как первый кадр анимации.
  Поступаем точно так же со всеми другими рисунками.

  У нас получилась вполне годная к просмотру анимация, правда, она прижата в угол окна, что для дальнейшего неудобно. Поэтому нажимаем кнопки «Cls» и «1=>2», заполняем тем самым поле(2) серым фоном и, используя опцию 3, реконструируем анимацию, передвигая её в более удобное место.
  Затем двигаемся по анимации пошагово и, используя кнопку «У», выбеливаем каждый кадр.
  Если выбеливание кадров покажется недостаточным, то можно доделать эту работу вручную. Переходим в режим рисования кистью №3 и устанавливаем на кнопке «Градиент» цифру 3. Делаем цвет фона для рисования серым, а активный цвет – белым. В текстовое поле над кнопкой Paste записываем букву «п». Теперь мы можем закрашивать все дефекты рисунков белым цветом, не трогая при этом окружающего их серого фона. С установленной опцией «п» краска к этому фону не пристаёт.
  Почистив все рисунки мы запоминаем их в папке 0, как первый вариант анимации на прозрачном фоне.
  Теперь, размножим эти кадры в буфере, скопировав их два раза.
  Для этого, двигаясь пошагово, установим поинтер на 12-й кадр, в текстовое поле запишем 1_22 и нажмём клавишу «э» на клавиатуре компьютера. В результате получим 33 кадра, которые мы запомним в папке 1.

  Теперь у нас есть три совершенно одинаковых цикла анимации. И хорошо бы их как-то разнообразить. Пусть в каждом цикле рыбки заплывают с другой стороны и движутся по-другому.
  Это легко сделать, используя копирование с отражением того окна, в котором движутся рыбки. Применим такое копирование, чтобы переписать кадры с 12-го по 22-й включительно. Поменяем для них стороны право-лево и стороны верх-низ одновременно.
  Сделаем мы это, используя реконструкцию кадров с опцией №2.
Чтобы показать, какие кадры мы реконструируем, установим поинтер на 22-й кадр и кликнем красную точку. Кадр окрасится в розовый цвет, и точка очередной записи переместится на него.
  Вновь зайдём в буфер пошагово и установим понтер на 12-м кадре. Кадры реконструкции таким образом показаны.

  Теперь нужно указать папку, из которой мы будем брать кадры для считывания, вырезать из них фрагменты, изменять масштаб этих фрагментов и налагать эти фрагменты поверх кадров нашей анимации.
  Укажем это в текстовом поле, записав туда 1% -1. Первая единица это номер папки, то есть наши же кадры для наложения мы и будем брать. Вторая единица, это масштаб, то есть ни уменьшать, ни увеличивать мы ничего не собираемся, и если бы перед единицей не стоял бы знак минус, то ничего нового мы не получили бы.
  Сделанная нами запись эквивалентна такой записи: 1% -1к-1
Здесь «к» знак копирования в масштабе. Перед этой буквой стоит масштаб копирования по оси X (ось направлена слева направо), а следом за буквой стоит масштаб копирования по оси Y (эта ось направлена сверху вниз). Однако, если второй масштаб явно не указан, то он полагается равным масштабу, указанному первым. А вот знак минус перед числом масштаба означает зеркальное отражение поперёк этой оси. И буква «к» тоже дописывается автоматически, если её не написать явно.
  Таковы общие правила копирования в масштабе. Но символ % во второй позиции текстового поля, связан с копированием особым образом – он указывает на то, что источником копирования является поле(2).
  Короче говоря, при реконструкции анимации с опцией 2 и таким знаком, кадры из указанной папки будут считываться на поле(2) и оттуда уже браться для наложения на наш рисунок, находящийся на поле(1).

  Но это не всё. Для операции копирования мы должны обозначить диагональными кликами по углам область копирования и указать вектор переноса, кликнув последовательно две совпадающие при переносе точки.
  Поэтому кликаем по диагонали белое поле нашей анимации и нажимаем кнопку Copy. А потом задумываемся – а какие точки будут соответствовать друг другу при проводимом нами преобразовании?
  При двойном отражении по X и Y соответствовать друг другу будут тоже диагональные точки. Но мы их только что указали! Поэтому, не кликая других точек, просто нажимаем кнопку Paste.

  Реконструкция однако у нас выполняться не будет, если мы не активизируем буфер «д». Он в данном случае в реконструкции не участвует, потому задаём его формально – кликаем по диагонали где-нибудь в сторонке небольшой прямоугольник и нажимаем кнопку «д». Она окрашивается в розовый цвет, и теперь мы можем проводить реконструкцию.
  Выставляем опцию 2 и жмём на кнопку «R».
 
  Третий цикл анимации можем реконструировать аналогично – выставляем в текстовом поле 1% -1к1 а в буфере анимации задаём кадры 23 и 33, как начало и конец процесса реконструкции. Кликаем верхний левый и верхний правый углы кадра и кнопку Paste. Затем нажимаем на «R».

  Теперь у нас есть полноценная анимация из трёх циклов с разнообразным движением рыбок на прозрачном фоне. Осталось, используя опцию 0, подложить под рыбок задний фон, и чуть-чуть украсить движение, немного двигая камешки операцией копирования кругами, а также проложить тени от рыбок, используя полупрозрачную кисть.
В заключение нужно выровнять края поля, по которому плавают рыбки, чуть сузив это поле путём реконструкции с опцией 3.
__________
28.11.2019

скачать этот текст в формате Ворд можно тут - http://yadi.sk/i/oGO5ZPvrMCPacQ


Рецензии
Спасибо, Дмитрий за подробное описание работы по созданию анимации. Мне эти рыбки очень понравились!

С уважением,

Ирина Петал   29.11.2019 08:27     Заявить о нарушении
И Вам спасибо за оценку моей деятельности. Хотя действия всех кнопок исчерпывающе разъяснены в разделе Help, но эти действия можно комбинировать, что создаёт многочисленные возможности, о которых коротко не расскажешь. Потому и пишу так подробно. Внучка (а именно она рисовала рыбок, а её подружка рисовала фон) тоже просит меня описывать всё подробно.

Дмитрий Маштаков   29.11.2019 11:58   Заявить о нарушении
Да, правильно. Описания нужны. Вы в своей программе, как рыба в воде (сами же разрабатывали). А чужаку среда непонятная, трудно без подробного описания понять что к чему.

Ирина Петал   29.11.2019 12:16   Заявить о нарушении
Я поискал в интернете и нашёл несколько мест, а которых рассказывается об анимации на современном её уровне -
анимации от Дорогова - http://dorogov-mentor.com/ru/work
необычные техники анимации - http://arzamas.academy/materials/1620
анимация в 2019 - http://videoinfographica.com/animation/
откуда видно, что мои достижения весьма скромные. Но вместе с тем я заметил, что некоторые технические эффекты можно повторить и в моей программе, и для этого я опять чуть-чуть улучшил её.

Дмитрий Маштаков   11.12.2019 08:46   Заявить о нарушении
Спасибо за обзор и Ваш труд. Я анимацией ещё не занималась (пробовала только картинку из двух кадров).

Ирина Петал   11.12.2019 08:54   Заявить о нарушении