エクスプレッションでレイヤーを指定する(アフターエフェクツ)

レイヤーを指定する

エクスプレッションで作業を行う場合にレイヤーを参照することはよくあります。いくつかの種類があるのでおさらいしておきましょう。大きく分けてこの2つです。

  • layer()
  • thisLayer

layer()

thisComp.layer(“ABC”).transform.position

現在開いているコンポジションの中にあるABCというレイヤーの位置を参照しています。

特定のレイヤーを指定する

layer()を使うと、レイヤーを指定することがで可能ですが、どのコンポジションないのレイヤーなのかを指定することはできません。そのためコンポジション名を指定するcompなどを先に記述する必要があります。

※compの詳しい話はこちら

っまた、カッコの中はいくつかの記入方法があるので違いをみてみましょう。

layer(name)

カッコ内がnameの場合はレイヤー名(文字列)を基準に参照します。一番シンプルな方法ですがレイヤー名は文字として認識させる必要があるので””(ダブルクオーテーション)で挟む事を忘れずに行いましょう。例えばMotionという名前のレイヤーであればlayer(“Motion”)というふうに書きます。もちろん文字は日本語でも使えるのでlayer(“モーション”)というふうに日本語のレイヤー名も使うことが可能です。名前で固定するので絶対パスになります。

layer(index)

カッコの中がindexの場合はレイヤーのインデックスを使って参照することができます。インデックスはタイムラインパネルのインデックス順序が使われます。例えば上から3つ目のレイヤーであればlayer(3)という感じになります。タイムラインのレイヤー順序に依存する形になるのでレイヤーの階層順序を変えてしまうと参照先が変わってしまうので注意しましょう。

layer(otherLayer, relIndex)

カッコの中がotherLayer, relIndexの場合は指定したレイヤーから数えて幾つの目のレイヤーを参照するか指定できます。otherLayerは指定レイヤー。relIndexはその指定レイヤーからどのくらい離れてているかを決定します。常に相対的に指定ができるというメリットがあります。

thisLayer

現在作業しているレイヤーを参照します。今使っているのでcomp指定を省略することができます。このレイヤーは参照できますが後でわかりやすいように敢えて使うことも可能です。thisLayer.widthと書いてもいいですしwidthと書いても大丈夫です。

レイヤーの指定を理解して快適なAe生活を^^