Выражения. Свойство pointOfInterest After Effects
В After Effects свойство pointOfInterest (точка интереса) используется в выражениях для управления ориентацией двухузловой камеры (Two-Node Camera). Это свойство определяет точку в 3D-пространстве, на которую направлена камера. Оно представлено в виде массива [x, y, z], где указаны координаты точки интереса в композиции.
Список эффектов и не только After Effects
Выражения After Effects список
Оно позволяет динамически управлять направлением камеры, связывая его с другими объектами в сцене, например, с положением слоя или null-объекта.
Если у вас выбрана одноузловая камера (One-Node Camera), это свойство отсутствует, так как такая камера ориентируется только по своей позиции и вращению.
Если точка интереса совпадает с позицией камеры, могут возникнуть проблемы с ориентацией (gimbal lock). В таких случаях рекомендуется использовать null-объект для управления. Горячая клавиша «А»
———
1
Если вы хотите, чтобы камера всегда смотрела на определённый слой (например, null-объект), можно использовать выражение для свойства pointOfInterest камеры
thisComp.layer(«Пусто 1»).transform.position;
//Выражение для свойства Положение null-объекта. Анимация движения
x = transform.position[0] + Math.sin(time) * 500;
y = transform.position[1] + Math.sin(time) * 500;
z = transform.position[2] + Math.sin(time) * 500;
[x, y, z];
thisComp.layer(«Пусто 1») — обращение к слою с именем «Пусто 1».
transform.position — получение позиции этого слоя в 3D-пространстве.
Камера будет автоматически ориентироваться на позицию указанного слоя.
——-
1
Если вы хотите, чтобы точка интереса камеры плавно следовала за движущимся объектом, можно добавить сглаживание с помощью функции smooth():
thisComp.layer(«Пусто 1»).transform.position.smooth(0.5, 5);
smooth(0.5, 5) — сглаживание позиции с параметрами: время сглаживания (0.5 секунды) и количество выборок (5).
———
2
//Выражение для анимации свойства Точка интереса Камера 1
x = transform.pointOfInterest[0] + Math.sin(time) * 300;
y = transform.pointOfInterest[1] + Math.sin(time) * 300;
z = transform.pointOfInterest[2] + Math.sin(time) * 300;
[x, y, z];
//Выражение для свойства Положение слоя Пусто 2
thisComp.layer(«Камера 1»).transform.pointOfInterest;
//Можно написать и вот так для свойства Положение слоя Пусто 2
x = thisComp.layer(«Камера 1»).transform.pointOfInterest[0];
y = thisComp.layer(«Камера 1»).transform.pointOfInterest[1];
z = thisComp.layer(«Камера 1»).transform.pointOfInterest[2];
[x, y, z];
//Или вот так. Точка интереса будет смещена
var point = thisComp.layer(«Камера 1»).transform.pointOfInterest;[point[0] + 250, point[1] — 300, point[2] + 200];
var point = thisComp.activeCamera.transform.pointOfInterest;[point[0] + 250, point[1] — 300, point[2] + 200];