After Effectsで表現力をアップ!ループ表現式と条件付き表現式を使いこなすテクニック

After Effectsで動画編集を行う際、表現式を使うことで効率的にアニメーションを制作できます。表現式は、プロパティの値を自動的に計算するためのスクリプト言語で、複雑なアニメーションを簡単に作成することができます。この記事では、表現式の基本から応用までを解説し、プロパティのリンクやタイムリマップの活用、ループ表現式や条件付き表現式の使い方、さらにカスタムエクスプレッションコントロールの作成方法までを学びます。これらのテクニックをマスターすることで、After Effectsでの動画編集がよりスムーズになり、クリエイティブなアニメーションを手軽に実現できるでしょう。

表現式の基本

表現式とは

表現式(Expression)とは、Adobe After Effects(以下、AE)でアニメーションを制作する際に使用する、JavaScriptベースのスクリプト言語です。表現式を使うことで、アニメーションの動きやプロパティの値を自動化し、効率的に制作を進めることができます。また、表現式を使うことで、複雑なアニメーションや動的なデザインを実現することが可能になります。

表現式の適用方法

AEで表現式を適用する方法は以下の通りです。

アニメーションを適用したいプロパティ(例:位置、回転、不透明度など)を選択します。

選択したプロパティのタイムライン上で、Altキー(Macの場合はOptionキー)を押しながら、プロパティのアニメーションストップウォッチアイコンをクリックします。これにより、表現式エディタが表示されます。

表現式エディタに、適用したい表現式を入力します。入力が完了したら、Enterキーを押して表現式を適用します。

表現式を適用することで、プロパティの値が自動的に計算され、アニメーションが生成されます。表現式を使うことで、キーフレームを手動で設定することなく、効率的にアニメーションを制作することができます。また、表現式を使うことで、複雑なアニメーションや動的なデザインを実現することが可能になります。

プロパティをリンクする

After Effectsでは、表現式を使って異なるプロパティをリンクさせることができます。これにより、一つのプロパティの変化が他のプロパティにも影響を与えるようになり、効率的なアニメーション制作が可能になります。

ピックウィップツールを使う

プロパティをリンクする最も簡単な方法は、ピックウィップツールを使うことです。ピックウィップツールは、表現式エディタ内にある小さな円形のアイコンで、これを使ってプロパティをドラッグ&ドロップすることでリンクを作成できます。

リンクさせたいプロパティを選択し、Altキー(Windows)またはOptionキー(Mac)を押しながらクリックして表現式エディタを開きます。

ピックウィップツールをクリックし、リンクさせたい他のプロパティにドラッグ&ドロップします。

表現式エディタに自動的にリンク用のコードが生成されます。

プロパティリンクの例

例として、テキストレイヤーの不透明度をスライダーコントロールにリンクさせてみましょう。これにより、スライダーを操作するだけでテキストの不透明度を簡単に変更できるようになります。

新しいテキストレイヤーを作成し、不透明度プロパティを選択します。

表現式エディタを開き、ピックウィップツールを使ってスライダーコントロールにリンクさせます。

スライダーコントロールの値を変更すると、テキストレイヤーの不透明度も連動して変化します。

このように、プロパティをリンクさせることで、複数のプロパティを一括で操作できるようになり、アニメーション制作の効率が大幅に向上します。また、リンク先のプロパティを変更すれば、リンク元のプロパティも自動的に更新されるため、手間が省けます。

タイムリマップを活用する

タイムリマップは、Adobe After Effectsでアニメーションのタイミングを制御するための強力な機能です。この機能を使うことで、アニメーションの速度を変更したり、逆再生させたり、繰り返し再生させたりすることができます。タイムリマップを活用することで、より効果的なアニメーションを作成することができます。

タイムリマップとは

タイムリマップは、レイヤーのタイムライン上でキーフレームを設定し、そのキーフレーム間でアニメーションの速度やタイミングを調整する機能です。タイムリマップを適用することで、アニメーションの再生速度を変更したり、特定の部分を繰り返し再生させたり、逆再生させたりすることができます。

タイムリマップの活用例

以下に、タイムリマップを活用した具体的な例をいくつか紹介します。

アニメーションの速度を変更する

タイムリマップを使って、アニメーションの速度を簡単に変更することができます。例えば、アニメーションの途中で速度を倍にしたい場合、タイムリマップのキーフレームを設定し、そのキーフレーム間で速度を倍にすることができます。

逆再生させる

タイムリマップを使って、アニメーションを逆再生させることができます。例えば、アニメーションの最後から最初に向かって再生させたい場合、タイムリマップのキーフレームを設定し、そのキーフレーム間で逆再生させることができます。

繰り返し再生させる

タイムリマップを使って、アニメーションを繰り返し再生させることができます。例えば、アニメーションの一部を何度も繰り返し再生させたい場合、タイムリマップのキーフレームを設定し、そのキーフレーム間で繰り返し再生させることができます。

これらの例からもわかるように、タイムリマップを活用することで、アニメーションのタイミングや速度を自由に制御することができます。Adobe After Effectsでアニメーションを制作する際には、ぜひタイムリマップを活用して、効果的なアニメーションを作成しましょう。

ループ表現式を使う

ループ表現式とは

ループ表現式は、After Effectsでアニメーションを繰り返し再生するための表現式です。これを使用することで、アニメーションを手動で複数回コピーすることなく、簡単に繰り返し再生させることができます。ループ表現式には主に種類あります。

`loopOut()`: キーフレームの最後からアニメーションを繰り返します。

`loopIn()`: キーフレームの最初からアニメーションを繰り返します。

これらの表現式は、さまざまなオプションを指定することで、繰り返しの方法をカスタマイズできます。

ループ表現式の活用例

以下に、ループ表現式を使用した具体的な例を示します。

ロゴの回転アニメーションを繰り返す

ロゴが度回転するアニメーションを作成し、それを無限に繰り返す場合、次の手順でループ表現式を適用します。

() ロゴのレイヤーを選択し、回転プロパティを表示します。

() 回転プロパティのキーフレームをつ作成し、最初のキーフレームでは度、次のキーフレームでは度に設定します。

() 回転プロパティの時計アイコンをAltキーを押しながらクリックし、表現式エディタを開きます。

() 表現式エディタに`loopOut(“cycle”)`と入力し、Enterキーを押して確定します。

これで、ロゴの回転アニメーションが無限に繰り返されます。

テキストの点滅アニメーションを繰り返す

テキストの不透明度を%から%に変化させる点滅アニメーションを作成し、それを繰り返す場合、次の手順でループ表現式を適用します。

() テキストレイヤーを選択し、不透明度プロパティを表示します。

() 不透明度プロパティのキーフレームをつ作成し、最初のキーフレームでは%、次のキーフレームでは%に設定します。

() 不透明度プロパティの時計アイコンをAltキーを押しながらクリックし、表現式エディタを開きます。

() 表現式エディタに`loopOut(“pingpong”)`と入力し、Enterキーを押して確定します。

これで、テキストの点滅アニメーションが繰り返されます。

ループ表現式を使うことで、簡単にアニメーションを繰り返すことができ、作業効率が向上します。さまざまなアニメーションに応用して、効果的な表現を作成しましょう。

条件付き表現式を使う

条件付き表現式は、特定の条件が満たされた場合にのみ、特定のアクションを実行する表現式です。After Effectsでは、`if`文を使って条件付き表現式を作成することができます。この章では、条件付き表現式の基本的な使い方と、実際の活用例について説明します。

`if`文を使う

`if`文は、以下のような構文で条件付き表現式を作成します。

“`

if (条件) {

// 条件が真の場合に実行されるコード

} else {

// 条件が偽の場合に実行されるコード

}

“`

条件は、比較演算子(`==`、`!=`、`<`、`>`、`<=`、`>=`)や論理演算子(`&&`、`||`、`!`)を使って表現できます。また、`else`ブロックは省略することもできます。

例えば、以下の表現式は、レイヤーの不透明度が%以上の場合に%に、それ以外の場合に%に設定します。

“`

if (thisLayer.opacity >= ) {

;

} else {

;

}

“`

条件付き表現式の活用例

条件付き表現式は、様々なシーンで活用できます。以下に具体的な例を示します。

テキストレイヤーの表示/非表示を切り替える

以下の表現式をテキストレイヤーの不透明度に適用することで、コンポジションの再生時間が秒を超えた場合にテキストを表示し、それ以外の場合に非表示にすることができます。

“`

if (time > ) {

;

} else {

;

}

“`

オブジェクトの位置を条件に応じて変更する

以下の表現式をオブジェクトの位置に適用することで、オブジェクトの不透明度が%以上の場合にオブジェクトの位置を[, ]に、それ以外の場合に[, ]に設定することができます。

“`

if (thisLayer.opacity >= ) {

[, ];

} else {

[, ];

}

“`

このように、条件付き表現式を使うことで、状況に応じて動画の挙動を柔軟に変更することができます。プロジェクトのニーズに合わせて、条件付き表現式を活用してみてください。

カスタムエクスプレッションコントロールを作成する

エクスプレッションコントロールとは

エクスプレッションコントロールは、After Effectsでアニメーションを制作する際に、表現式を使ってプロパティの値を動的に変更するためのツールです。これにより、複雑なアニメーションを簡単に作成したり、複数のレイヤーのプロパティを一元管理することができます。エクスプレッションコントロールは、スライダーコントロールやカラーコントロールなど、さまざまなタイプがあります。

エクスプレッションコントロールの作成方法

カスタムエクスプレッションコントロールを作成する手順は以下の通りです。

コントロールを適用するレイヤーを選択します。

[エフェクト]メニューから[エクスプレッションコントロール]を選択し、適用するコントロールタイプを選びます(例:スライダーコントロール)。

エフェクトコントロールパネルに表示されたコントロールの名前をダブルクリックして、わかりやすい名前に変更します(例:「スピード」)。

コントロールしたいプロパティ(例:ポジション)の表現式エリアを開き、ピックウィップツールを使って先ほど作成したコントロールをリンクします。

具体例:スライダーコントロールを使って、オブジェクトのスケールを制御する場合

オブジェクトのレイヤーを選択し、[エフェクト] > [エクスプレッションコントロール] > [スライダーコントロール]を選択します。

エフェクトコントロールパネルでスライダーコントロールの名前を「スケール」に変更します。

オブジェクトの[スケール]プロパティの表現式エリアを開き、ピックウィップツールを使って「スケール」コントロールをリンクします。表現式は以下のようになります。

“`

scaleValue = effect(“スケール”)(“スライダー”);

[scaleValue, scaleValue]

“`

これで、「スケール」コントロールのスライダーを操作することで、オブジェクトのスケールが変更されるようになります。同様に、他のプロパティもエクスプレッションコントロールで制御することができます。

都内の中小企業でCTOを務めています。
Webサービス、アプリなどを開発して15年以上になります。
ここでは、現在運用しているサービスやアプリなどから得た知見をもとに、好き勝手に自分の見解を残していく予定です。

なお、ここでの発言はすべて個人の見解であり、所属組織とは関係ありません。

関連記事

コメント

この記事へのコメントはありません。

最近の記事

  1. タイトル案: アンデファインドを克服!変数のスコープと関数定義のベストプラクティスでバグを防ぐ方法

  2. タイトル案: アンデファインドを克服!変数のスコープと関数定義のベストプラクティスでバグを防ぐ方法

  3. タイトル案: アンデファインドを克服!変数のスコープと関数定義のベストプラクティスでバグを防ぐ方法

  4. タイトル案: アンデファインドを克服!変数のスコープと関数定義のベストプラクティスでバグを防ぐ方法

  5. タイトル案: アンデファインドを克服!変数のスコープと関数定義のベストプラクティスでバグを防ぐ方法

TOP