В последнем посте я использовал вращение и пару ключевых кадров для создания анимированного андроида. Вы можете многое сделать с парой хорошо продуманных ключевых кадров. Но ключевые кадры — это только часть истории. В Blender есть еще одно мощное средство анимации: ключи формы.
Ключи формы позволили мне создать эту анимацию. Вот эталонный файл Blender, который я использовал (и другие файлы, на которые есть ссылки из этого поста).
Ключи формы позволяют вам хранить альтернативные позиционные данные для вершин в сетке, не затрагивая исходные данные сетки. Вот плоскость с парой ключей формы, каждый из которых деформирует одну вершину.
Ключи формы похожи на ключевые кадры, которые позволяют вам интерполировать между начальной и конечной точкой, но они различаются по трем основным параметрам.
- Ключевые кадры привязаны к определенному времени на временной шкале. Ключи формы привязаны к сетке.
- Для определенного атрибута одновременно может быть активен только один ключевой кадр. Несколько ключей формы могут влиять на сетку одновременно.
- Конкретный кадр либо является, либо не является ключевым кадром. В дополнение к тому, что несколько ключей формы могут действовать одновременно, вы также можете установить степень влияния каждого ключа формы на исходную сетку.
Создание ключа формы
Начиная с плоскости в сцене, перейдите в меню данных, обозначенное треугольником. Сначала нам понадобится базовый ключ или состояние меша без какой-либо деформации. Нажатие кнопки «плюс» на панели «Ключи формы» создаст базовый ключ. Повторный щелчок по плюсу создаст новый ключ формы, который мы можем настроить. Выбрав нужный ключ, войдите в режим редактирования (Tab), и вы сможете перемещать вершины. Когда вы выходите из режима редактирования, он должен вернуться к позициям основы. Это потому, что ключ по умолчанию не влияет на сетку.
Создание ключей формы для дерева
Чтобы анимировать дерево, я начал с масштабированной плоскости, которая была разделена несколько раз, чтобы дать мне достаточно вершин для перемещения. Я переместил их в грубую форму сосны.
Одна небольшая особенность создания в Blender и экспорта в AVD заключается в том, что Blender с радостью позволит вам применять разные материалы к разным частям сетки. Чтобы AVD уважал мой выбор материалов, я заставил свои ключи формы работать так, как я хотел, а затем назначил новый материал основанию дерева и разделил его по материалам. Разделение автоматически создало ключи для вершин, которые ранее были в более крупном объекте.
Создание ключевых кадров
После создания всех необходимых ключей формы остается только создать ключевые кадры, чтобы определить, когда ключи формы будут влиять на сетку. Вы делаете это, переходя к нужному кадру, устанавливая значение ключа формы и нажимая клавишу I, чтобы установить ключевой кадр, полоскание, повтор.
Чтобы анимировать орнаменты, я установил ключевые кадры на альфа-значения всех материалов.
Вероятно, вы не будете создавать или использовать новогоднюю елку одиннадцать месяцев в году, поэтому вот более практичный пример преобразования кнопки воспроизведения в кнопку паузы. Поскольку компоненты симметричны, я усовершенствовал преобразования на одном полигоне, а затем продублировал его.
Собираем все вместе
Попытка экспортировать все в один слой приводит к тому, что Android не отображает все правильно. Возможно, это потому, что есть перекрывающиеся и конфликтующие геометрии. Поэтому я переместил орнаменты на отдельный слой, экспортировал каждый как отдельный файл SVG и преобразовал их в отдельные файлы Shape Shifter/AVD.
В проекте Android вы можете наслаивать AVD, создавая LayerDrawable в коде или файл XML <layer-list>
. Вам придется обрабатывать запуск обеих анимаций.