Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

3D-художник Аарон ван де Вейенберг дает пошаговый урок создания бесшовной анимации падающего снега.

Аарон ван де Вейенберг — американский 3D-художник, специализирующийся на создании изометрических диорам. Одна из его последних работ — уютная лесная хижина в снежную ночь. Он поделился пайплайном создания плавной анимации падающего снега. Процесс состоит из трех основных шагов:

  • блокинг основных объектов и анимация снегопада;
  • добавление реалистичности с помощью настроек Force Fields;
  • настройка цикличности для бесшовной анимации снежинок.

Но обо всем по порядку.

Статья — пересказ этого видео.

Блокинг основ

Первым делом Аарон сделал три простых основы. Первая — плоский куб, на который будет падать снег. Как только первый объект создан, художник установил изометрический вид с помощью аддона Isocam.

Я всегда устанавливаю нужный мне вид заранее, чтобы понимать, как объекты взаимодействуют друг с другом с нужного мне ракурса.

Аарон ван де Вейенберг, 3D-художник
Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

Затем художник создал имитацию облака, из которого будет идти снег. Этот объект не попадает в поле зрение камеры, он расположен выше.

Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

Третий объект — снежинка: простой цилиндр со скругленными гранями.

Совет:

Очень важно задать уникальные имена всем объектам, которые вы создаете. Это не только не дает запутаться при большом количестве элементов, но и сокращает время при создании анимации. Аарон назвал объекты в сцене просто: Cloud, Ground, Snow.

Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

Анимация снегопада

Для этого художник использует меню Particle System Panel. Он выделяет испускающую поверхность — имитацию облака — и создает новый элемент “snow 1”.

Первичный вариант анимации готов, теперь ее нужно дорабатывать.

Обратите внимание на меню Velocity, а именно — значение пункта Normal. Normal — это перпендикуляр к нашей поверхности. Все, что выше, положительное значение, ниже — отрицательное.

Аарон ван де Вейенберг, 3D-художник
Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

По дефолту стоит 1 м/сек, поэтому снежинки как будто выпрыгивают из основы и падают вниз. Аарон меняет значение на -2. Теперь снежинки падают точно вниз.

Следующая проблема — скорость. В реальной жизни снег не падает настолько быстро.

Сейчас анимация больше похожа на дождь. Есть несколько способов снизить скорость снежинок. Одна из них — добавить сопротивления. В реальной жизни это воздух, ветер. Давайте добавим немного ветра.

Аарон ван де Вейенберг, 3D-художник

Для этого в параметре Force Field художник выбирает Wind. На вьюпорте появилось гизмо, указывающее направление ветра — против движения снега. В настройке Strength [сила] Аррон установил значение 7,5.

Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

Снежинки замедлились, но появилась новая проблема: из-за низкой скорости они не успевают долететь до земли в рамках анимации.

Чтобы исправить это, Аарон увеличил продолжительность анимации до 6 секунд — 180 кадров. Но этого недостаточно, так как «продолжительности жизни» самих снежинок не хватает до конца анимации. В блоке Emission меню Particle System он увеличил значение Lifetime [продолжительности жизни] и End [конец] до 180 кадра. Теперь снежинкам хватает времени долететь до поверхности земли в нужный промежуток времени.

Форма снежинок

После того, как Аарон настроил динамику снегопада, он занялся непосредственно снежинками. На данном этапе это объекты по умолчанию — сферы. Чтобы подставить под них рендер, который он сделал в самом начале, в блоке Render меню Particle System он изменил значение c Halo на Collection с использованием объекта Snow.

Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

Scale [размер] снежинок — 1. Аарон также включил параметр Scale Randomness, чтобы снежинки были разного размера. Стихийности объектам добавит меню Rotation и параметры Randomize и Dynamic.

Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

Теперь каждая снежинка и снегопад в целом выглядят реалистично.

Но в реальной жизни снег никогда не падает ровно сверху вниз, поэтому последним штрихом Аарон добавил хаотичности с помощью второго Force Field — Turbulence.

Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

В настройках эффекта художник увеличил параметр Field до четырех, за счет чего каждая снежинка закручивается по спирали и пересекает путь всех остальных. Вот как это выглядит.

Настройка цикличности

Обычно анимацию легко зациклить: вы просто заканчиваете и начинаете ее в одном и том же месте, чтобы шов не был заметен. Но в нашем случае это невозможно. В первом фрейме нет ничего, в последнем мы видим множество движущихся частиц. Нам нужно начать анимацию с кадра, где уже много частиц и закончить ее этим же фреймом.

Аарон ван де Вейенберг, 3D-художник

Первым шагом Аарон увеличил количество кадров в два раза: до 360. Но жизненный цикл снежинок все еще 180 кадров. На скрине ниже видно, что со 181 кадра возникает пустое пространство, которое нужно заполнить.

Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

Для этого Аарон продублировал существующую Particle System. Теперь их две: Snow 1 и Snow 2.

Обратите внимание, что сейчас обе эти системы привязаны к одному эмиттеру, Snow 1. Поэтому я дублирую его и даю другое название — Snow 2. Если этого не сделать, все изменения будут происходить с первой системой тоже, и сделать бесшовную анимацию не получится.

Аарон ван де Вейенберг, 3D-художник

У второго эмиттера Аарон изменил параметры Frame Start [Начало] и End [конец]. Он должен начинаться со 181 кадра и заканчиваться на 360.

Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

Теперь после окончания действия первой Particle System сразу начнется вторая, и зритель не увидит склейки.

Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

Чтобы зациклить именно этот момент, Аарон использовал The preview range [иконку часиков в панели инструментов Timeline]. Он выставил нужный промежуток: start — 181, end — 360.

Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

Ненужные кадры Blender заблокировал, и теперь воспроизводит только тот отрезок, который указал художник. Бесшовная анимация готова.

Последняя рекомендация автора

Единственная функция, которую я не рекомендую использовать, это настройка Noise Amount в любом из выбранных Force Fields. Это интересная функция, дающая больше стихийного хаоса в анимацию. Но я почти гарантирую, что из-за дополнительного шума последний кадр будет отличаться от первого. Это серьезно усложнит задачу сделать качественную бесшовную анимацию.

Аарон ван де Вейенберг, 3D-художник
Как сделать бесшовную анимацию снега: на примере изометрической 3D-сценки в Blender

Готовый рендер

Перевела и адаптировала: Юлия Хлебко, автор Smirnov School. Мы готовим концепт-художников, левел-артистов и 3D-моделеров для игр и анимации. Если придёте к нам на курс, не забудьте спросить о скидке для читателей с DTF.

#blender #анимация #советы #3d

227227
13 комментариев

Чет гифка не бесшовная

32

Вот бы ещё снег на гифке был бесшовным...

12

Дергающаяся превьюха сходу настраивает на недоверие к материалу :)

10

Каеф статья, просто 90% воды про азы партикл систем чтобы в конце сделать не бесшовную гифку

7

Но я почти гарантирую, что из-за дополнительного шума последний кадр будет отличаться от первого. А там разве нельзя руками выставить одинаковый random seed для обоих эммитеров, чтобы шум и там и там был идентичный?

5

Я пока ещё пончик никак не могу научиться делать без туториала

4