Bezier path after effects что это

Обновлено: 06.07.2024

Что это такое

Временная интерполяция в AE отвечает за изменение значения(value) свойства между ключами/кейфреймами (key/keyframe) по времени.

Всего есть 3 вида интерполяции:

  1. Линейная (LINEAR);
  2. Безье (BEZIER);
  3. Скажем так, интерполяция задержки или удержания (HOLD).

Для линейной интерполяции характерна постоянная скорость изменения значения свойства, в данном случае позиции.

Интерполяция удержания вообще не имеет скорости, она удерживает одно и то же значение вплоть до непосредственного его изменения на следующем ключе.

Но линейная интерполяция и интерполяция удержания нам не интересны, не так ли? Так что пропускаем их.

BEZIER Interpolation

Обычно, с помощью скриптов типа Motion 2 , Animation Composer Keyframe Wigman , DUIK и других мы изменяем только influence , speed при этом автоматически устанавливается равной нулю, и графики скорости(сверху) и значения(снизу) изменяется с линейного на безье как на гифках.

Но мало кто знает, что скорость не обязательно должна быть равна нулю.

Работаем со скоростью

То есть, после того как вы задали influence с помощью скрипта, для особого шика стоит залезть в графики и поколдовать со скоростью.

С теорией, думаю, все понятно. А теперь давайте напишем скрипт, который будет задавать рандомный influence и speed ключам.

Пишем скрипт

keyState и рандомное значение

В начале мы создаем переменную keyState, в которой записывается окружение клавиатуры. Т.е. какое состояние было у всех клавиш клавиатуры в момент начала исполнения скрипта. И затем, если были зажаты разные клавиши, мы будем определять, с какими скоростями работать. Важно помнить, что если вы одновременно зажмете все 3 клавиши, Alt, Shift и Ctrl/Cmd ( Command Key в After Effects обозначена как metaKey ), то за истину примется идущая самой первой в этой проверке, т.е. Alt.

Затем мы задаем функцию getRandomInt, которая позволит нам получить рандомное значение между Min и Max, аргументами этой функции.

Отмена в одно нажатие

Далее открываем beginUndoGroup, чтобы все множество произведенных скриптом действий можно было отменить одним-единственным нажатием Ctrl+Z.

Задаем активную композицию и в переменную selProps закидываем все выбранные свойства этой композиции. Задаем параметр speedRange. Сюда можете ввести любое значение. Я не думаю, что рандомное изменение скорости можно использовать всерьез, мы его добавляем только для эксперимента и расширения понимания работы со скриптами, но м.б. вам действительно это пригодится.

Проверка на конечность

Запускаем цикл по выбранным свойствам, и если текущее свойство является конечным свойством (т.е. у него больше нет никаких внутренних подсвойств) и у этого свойства есть ключи, идем дальше. Конечные свойства имеют тип PropertyType.PROPERTY, и есть еще 2 вида, PropertyType.INDEXED_GROUP(для свойств-групп, члены которых могут менять свой индекс и имя, вроде Masks, Effects ) и PropertyType.NAMED_GROUP(для свойств-групп, члены которых неизменны, вроде Transform ). Проверка, является ли это свойство конечным, нужна, потому что у свойств-групп (вроде Transform или Contents ) отсутствует параметр selectedKeys и если бы мы попробовали его запросить, программа бы выдала ошибку. Вы спросите, что разве мы такие тупые, чтобы выбирать неконечные свойства? И я отвечу, что некоторые конечные свойства выбираются только со своими родителями, как, например, параметры масок вроде Mask Path, Mask Feather выбираются только с маской, которая их содержит, или же параметры эффектов выбираются только с самими эффектами, и вот эти самые родительские свойства нам и необходимо пропустить.

Если проверка пройдена, то текущее свойство мы записываем в переменную prop, чтобы не надо было каждый раз добавлять квадратные скобки с индексом.

Цикл по ключам

После этого создаем два объекта KeyframeEase и передаем им в качестве параметров наши скорости и влияния. А дальше проверяем, какие у нас свойства. Если это не spatial свойства и значение представлено массивом из двух или трех чисел, мы передаем им массивы объектов keyframeEase. Вообще-то, это не сработает с цветом, так как значение цвета представлено массивом из 4-х значений, и если вы хотите это учесть, нужно будет написать еще одну проверку для value.lenght == 4 и передать туда массив из 4-х keyframeEase объектов.

Для того, чтобы задать ключу Interpolation, используется встроенная в AE функция setTemporalEaseAtKey с 3-мя параметрами, индексом ключа свойства, массивом входящих KyeframeEase объектов и массивом исходящих.

Закрываем undoGroup, и все)

Копируем скрипт в ftToolbar или в keyBar или просто сохраняем его в папку со скриптами.

Welcome to the Community!

We have a brand new look! Take a tour with us and explore the latest updates on Adobe Support Community.

Adobe Support Community

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
  • Home
  • After Effects
  • Discussions
  • Where is the "Convert To Bezier Path" option?
/t5/after-effects-discussions/where-is-the-quot-convert-to-bezier-path-quot-option/td-p/8630990 Oct 25, 2016 Oct 25, 2016

Copy link to clipboard

(Actually what I really need to do is "Convert a shape path to a mask path by copying the shape’s path to the Mask Path property" but I've tried this eight billion different ways and it just doesn't work. from what I've gathered from extensive Googling, these need to be bezier paths and not parametric paths? Is that what's preventing me from converting shape paths into a mask path?)

You can convert a parametric path to a Bezier path after the parametric path has already been created by context-clicking (right-clicking or Control-clicking on Mac OS) the property group for the parametric path (e.g., Rectangle Path 1) and choosing the Convert To Bezier Path command from the context menu.

No I can't! I've right clicked everything everywhere (and CTRL+clicked, and Option+Clicked, and CMD+Clicked), I can't find any "Convert To Bezier Path" option anywhere. I feel like I'm taking crazy pills, this is a huge road block that I've been fighting for months. I just keep finding the same answers - the ones that don't work for me. Can I assume I keep finding outdated information and the command has moved elsewhere?

In After Effects CC 2015 version 13.8.1.38, where is the "Convert To Bezier Path" option?

What are all the conditions that need to be met in order for this option to be available?

Are there any other secret tricks or conditions that need to be met in order for me to be able to " Convert a shape path to a mask path by copying the shape’s path to the Mask Path property"?

Welcome to the Community!

We have a brand new look! Take a tour with us and explore the latest updates on Adobe Support Community.

Adobe Support Community

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type. /t5/after-effects-discussions/where-is-the-quot-convert-to-bezier-path-quot-option/td-p/8630990 Oct 25, 2016 Oct 25, 2016

Copy link to clipboard

(Actually what I really need to do is "Convert a shape path to a mask path by copying the shape’s path to the Mask Path property" but I've tried this eight billion different ways and it just doesn't work. from what I've gathered from extensive Googling, these need to be bezier paths and not parametric paths? Is that what's preventing me from converting shape paths into a mask path?)

You can convert a parametric path to a Bezier path after the parametric path has already been created by context-clicking (right-clicking or Control-clicking on Mac OS) the property group for the parametric path (e.g., Rectangle Path 1) and choosing the Convert To Bezier Path command from the context menu.

No I can't! I've right clicked everything everywhere (and CTRL+clicked, and Option+Clicked, and CMD+Clicked), I can't find any "Convert To Bezier Path" option anywhere. I feel like I'm taking crazy pills, this is a huge road block that I've been fighting for months. I just keep finding the same answers - the ones that don't work for me. Can I assume I keep finding outdated information and the command has moved elsewhere?

In After Effects CC 2015 version 13.8.1.38, where is the "Convert To Bezier Path" option?

What are all the conditions that need to be met in order for this option to be available?

Are there any other secret tricks or conditions that need to be met in order for me to be able to " Convert a shape path to a mask path by copying the shape’s path to the Mask Path property"?

Shape Layer in Adobe After Effects

Shape Layer in Adobe After Effects

Shape Layer in Adobe After Effects запись закреплена

При необходимости, полная автономность проекта .aep достигается за счет возможности переводить текстовые слои в кривые shape layer. Запекая шрифт уходит проблема отсутствующих шрифтов при открытии проекта, или необходимость установки шрифтовой гарнитуры.

Конвертация текстового слоя в слой shape layer.

Чтобы перевести текстовый слой в слой Shape Layer необходимо, нажатием правой клавиши мыши по слою,
в выпадающем меню выбрать пункт "Create Shapes from Text" или проследовать
Layer > Create Shapes from Text

После конвертации видимость исходного текстового слоя отключается, а сам слой остается на месте.
Вновь созданный переведенный в кривые слой будет помещен на самый верх, а к имени слоя добавится "Outlines".

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

Для примера, создайте текстовый слой, выбрав соответствующий инструмент Text Tool,
воспользовавшись комбинацией клавиш Ctrl+T,
или нажав на пиктограмму с изображением буквы T (Horizontal Type Tool) на панели инструментов.

Наберите на клавиатуре текст "Ae". Произведите конвертацию созданного текстового слоя в shape layer.
Раскрыв свиток Contents, вновь созданного шейпового слоя, можно обнаружить,
что каждый символ слова "Ae" будет представлять из себя отдельную Группу с соответствующим символу именем.
Имена Групп можно менять, для этого произведите однократное нажатие в имя Группы,
а затем нажмите клавишу Enter, изменив имя нажмите в любое пространство экрана или Enter.
Или по нажатию правой клавиши мыши по имени Группы, в выпадающем меню выберите пункт Rename.

Атрибут. Группа. Меню атрибутов Add.

Группа представляет из себя атрибут контейнера со свитком трансформации (Transform),
раскрыв который можно обнаружить, что кроме стандартных настроек,
есть возможность настраивать Skew (Перекос) и Skew Axis (Ось Перекоса) Группы.

Transform:
Anchor Point (Точка вращения)
Position (Положение)
Scale (Масштаб)
Skew (Перекос)
Skew Axis (Ось Перекоса)
Rotation (Поворот)
Opacity (Непрозрачность)

Вы можете самостоятельно добавить атрибут пустой Группы - Group (empty), или любой другой атрибут,
через меню атрибутов Add, которое появляется на панели инструментов когда шейповый слой выделен,
а так же, меню атрибутов Add доступно напротив свитка Contents любого шейпового слоя.

Чтобы самостоятельно сгруппировать необходимые атрибуты имеющиеся во вкладке Contents,
выделите их и нажмите комбинацию клавиш Ctrl+G, а для разгруппировки Ctrl+Shift+G.

Атрибут объединения путей Merge Paths.

Раскрыв свиток Группы "A" или "e", помимо атрибутов заливки Fill 1 и обводки Stroke 1,
можно обнаружить по две маски Path ниже которых располагается атрибут Merge Paths.

Обратите внимание, на то, каким образом работают маски вычитания.
Первой в иерархии располагается маска контура, ниже маска внутрибуквенного просвета,
затем модификатор Merge Paths в режиме Merge,
который был установлен автоматически при конвертации текста в шейпы.
Во всех остальных случаях для корректного вычитания необходимо использовать режим вычитания Subtract.
Если по каким-то причинам после перемещения масок режимы стали работать некорректно,
маски необходимо перенести во вновь созданную Группу и заново добавить Merge Paths.

Merge Paths Объединение Путей
Merge Объединение
Subtract Вычитание
Intersect Пересечение
Exclude intersections Вычитание пересечений

Вычитаем маску из Группы. Вычитаем Группу из Группы.

В качестве маски вычитания можно использовать как несколько отдельно взятых Path так Группу масок,
важно правильно разместить атрибут Merge Paths.

Группа 1, в качестве маски контура, содержит только атрибуты путей Path и располагается выше всех в иерархии.
Затем идет Группа 2, в качестве маски вычитания, так же содержащая только атрибуты путей Path.
Далее располагается атрибут Merge Paths в режиме вычитания Substract, а ниже всех атрибуты Обводки и Заливки.

Group 1
Group 2
Merge Paths 2 (Substract)
Stroke 1
Fill 1

Читайте также: