Amazon10/19まで!プライム感謝祭開催中!セール会場へ

After EffectsのlookAtで対象の方向へ向ける|引数と使い方

After EffectsのlookAtは、3DレイヤーのZ軸を対象の位置へ向けるエクスプレッションです。対象に親がある場合は、位置をワールド座標にそろえて計算します。平面に描いた矢印の先端をそのまま向ける機能ではありません。

引数・戻り値をAdobe公式資料で確認し、2026年10月14日にWindows 11 Pro・After Effects 26.5(Build 89)で親付き対象を参照する式と適用条件を検証しました。

  • lookAt(fromPoint, atPoint) の形で書く
  • fromPointは向きを変えたいレイヤーの位置、atPointは向けたい先の点
  • 戻り値は3つの値で、レイヤーの向き(Orientation)に使う
  • カメラに使うときは、自動方向をオフにする

2026年10月3日にAdobe公式「Expression language reference」の本文を確認しました。

撮影したAfter Effectsの画面で、lookAtの式と平面の向きを確認しました。

仕様は、公式ページで確かめてください。

目次

lookAtの引数と戻り値

項目内容
fromPoint向きを変えたいレイヤーの、ワールド空間の位置(3つの値)
atPoint向けたい先の、ワールド空間の点(3つの値)
戻り値3つの値。Orientationのプロパティに使え、レイヤーのZ軸がatPointを向く
出典:Adobe公式「Expression language reference」(本文確認日 2026-10-03)

カメラとライトで、特に役立つとされています。

公式の例

スポットライトの向き(Orientation)に、次のエクスプレッションを書く例が載っています。

lookAt(position, thisComp.layer(1).position)

この短い公式例は、向ける側と対象側の位置をワールド座標として扱える場合の例です。親の異なるレイヤーでは、位置をそのまま比較すると座標が揃いません。レイヤー1が式を貼ったライト自身になっていないことも確認します。

3Dレイヤーの「方向」に、式を入れた画面です。

After Effectsの3D平面の方向にlookAtの式と評価角度を表示した画面
2026-10-13撮影。Adobe After Effects 26.5、Windows 11 Pro (10.0.26200)。実機画面、原寸保存。

式は「lookAt(position, thisComp.layer(“Target18751”).position);」で、評価された方向は141.3°・32.0°・208.0°でした。

左が方向を固定した平面、右がlookAtで対象(オレンジの点)に向きを変えた平面です。

固定した3D平面とlookAtで対象へ向きを変えた平面を比較するAfter Effects実プレビュー
2026-10-13撮影。Adobe After Effects 26.5、Windows 11 Pro (10.0.26200)。実機画面、原寸保存。

親子付けした対象を参照する練習

別名保存した練習プロジェクトで、向ける側は親なしの3Dレイヤーにし、X・Y・Z回転を0にします。

別の3Dレイヤーを「対象」と名付けます。向ける側を選んでRキーを押し、「方向」(Orientation)のストップウォッチをAltキーを押しながらクリックして、次の式を貼ります。「X回転」「Y回転」「Z回転」への貼り付けではありません。

親なしの向ける側はpositionを使い、対象のアンカーポイントはtoWorldでワールド座標へ変換します。対象の親に向ける側やその子を指定すると、向きと対象位置が相互に依存するため避けます。

var target = thisComp.layer("対象");
var result = value;
if (!hasParent && target.index != index) {
  var fromPoint = position;
  var atPoint = target.toWorld(target.anchorPoint);
  if (length(fromPoint, atPoint) > 0.0001) {
    result = lookAt(fromPoint, atPoint);
  }
}
result;

この式は向ける側に親があると元の向きを返します。

ワールド座標で求めた向きを、親の回転を含むローカルOrientationへそのまま使わないためです。

対象が自身、または両点が重なる場合も元の値を返します。

練習入力確認する結果適用条件
対象を別の場所へ動かすZ軸が対象の方向を向くAEでのプレビューが必要
対象に親を付けて親を動かす対象のワールド位置を参照位置の数値だけでは比較しない
向ける側に親がある・両点が同じ元の向きこの式の適用条件外

カメラは元のAuto-Orient設定を保存してオフにしてから試します。

方向が違うときは貼付先、親、他の回転、絵の軸を順に確認します。

戻すときは式を無効にし、保存した回転とAuto-Orientを戻します。

今回の実機確認は3D平面と3Dヌルの親子付けです。カメラ・ライト、親の非等方スケール、複雑な親子階層は今回の検証対象に含みません。

親付き対象のWindows実測

960×540・30fps・3秒のコンポで、向ける平面を[480,270,0]へ置きました。平面に親はなく、X・Y・Z回転は0、式を使う前の方向は[10,20,30]度です。対象は3Dヌル「対象の親」の子にし、対象のローカル位置と親ヌルのアンカーポイントを[0,0,0]にしました。親の回転は0、スケールは100%です。

親ヌルの位置=対象のワールド位置平面の方向(度)
[480,270,300][0,0,0]
[780,270,300][0,45,0]
[780,570,300][315,35.2644,30]

対象自身のローカル位置は変えず、親ヌルを移動すると平面の方向が変わりました。3条件とも、平面のZ軸をワールド座標へ変換した方向と、平面から対象へ向かう方向の内積は約1でした。見た目の傾きだけでなく、Z軸が対象へ向いていることも確認しています。方向の数値は今回の座標・回転条件での結果です。

対象に親ヌルを設定し平面の方向が0度45度0度になったAfter Effects画面
オレンジ色の対象は3Dヌルの子です。親を[780,270,300]へ置くと、[480,270,0]の平面の方向は[0,45,0]度になりました。平面側の親は「なし」、X・Y・Z回転は0です。 2026年10月14日、Windows 11 Pro・AE 26.5(Build 89)で撮影。

対象を平面と同じ[480,270,0]へ移すと、方向は式を使う前の[10,20,30]度に戻りました。向ける平面に親を付けた場合と、参照先を平面自身へ変えた場合も元の値を返しました。式を無効にした場合も[10,20,30]度です。条件外で止まるのは、この練習用コードのガードによる動作です。

「対象」という名前のレイヤーがない場合は、冒頭のレイヤー参照でエラーになります。このガードは名前の入力間違いを処理するものではありません。式とタイムラインのレイヤー名を一致させてから、親子関係と方向を確認してください。

使うときの注意

  • カメラに使うときは、自動方向(Auto-Orient)をオフにする
  • OrientationのプロパティにlookAtを書く
  • 向ける先のレイヤーが動けば、向きもそれに合わせて変わる

式は3Dレイヤー・カメラ・ライトの「向き(Orientation)」に貼ります。2Dレイヤーの回転へ3要素の戻り値をそのまま貼る例ではありません。

lookAtはレイヤーのZ軸を対象へ向ける関数です。矢印の絵がX軸方向を向いている場合、絵の向きとZ軸の向きは一致しません。

Adobe公式「Expression language reference」のlookAt(2026年10月14日確認)では、2つの引数をワールド空間の点とし、戻り値をOrientationへ使用してZ軸を対象へ向けると説明しています。カメラでは自動方向をオフにする指定もあります。

次に学ぶ・作業環境を選ぶ

学習を続けたい方や、作業環境を整えたい方は、目的に合うガイドをご覧ください。

After Effectsのおすすめ書籍

必要なPCスペック

周辺機器の優先度

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次