【ハウツー】
After Effects自動化作戦 - Expressionで自動化してみよう
1 Adobe After Effects自動化作戦 - After EffectをJavaScriptで制御する
2007/07/19
Adobe After Effectsとは?
Adobe After Effectsは、映像にさまざまな効果をかけることができるソフトウェアで、PhotoshopやIllustratorなどで有名なAdobe Systemsが販売するソフトウェアです。映画や3DCG、WEBなどでも活用されています。ソフトウエアの概要や無料の体験版などはここから閲覧/ダウンロードすることができます。
Expression(エクスプレッション)とは?
Expression(エクスプレッション)はAdobe After Effects(*1)で利用できる機能で、Expressionは式(計算式)の意味で使われます。After Effectsでは、この式の部分にJavaScript(ECMA Script)を使用できます(*2)。After EffectsのExpressionで利用できるJavaScriptは、ブラウザで使用されるJavaScriptと基本的には同じですが、乱数生成関連のメソッドが異なっていたり、専用メソッドが用意されていたりする点が異なっています。また、一般的なJavaScriptのプログラムを作成するのとは異なりJavaScriptで処理した結果がAfter Effectsにパラメータとして渡されるようになっています。例えば、どのくらいレイヤーを回転させるかを指定する場合、
45
とすると45度レイヤーが回転します。45がプログラムなのか?と言われると困りますが、AfterEffectsでは結果の値を、そのまま使用するだけなので、これでよいのです。また、以下のような計算式でも問題ありません。
10+35
この場合は、10+35が計算された結果である45が値として使用されます。AfterEffectsのExpressionでは、この計算式の部分にJavaScriptのオブジェクト/関数などを使用することができます。通常のJavaScript(ECMA Script)以外に、どのようなメソッドが使えるかはヘルプの「エクスプレッション」→「After Effectsエクスプレッション要素リファレンス」で参照できます。
Expressionは手作業では難しいランダムな動きや計算式に基づく動きを実現するのに適しています。Expressionの利点としては手作業と組み合わせることが可能なことです。レイヤーの動きは手作業(キーフレーム)で行い、スケール処理はExpressionを利用して計算式に基づいて動かすことができます。さらに便利なのはExpressionで計算した結果を手作業で処理できるようキーフレームに変換できる点です(*3)。これにより計算と手作業の組み合わせで、より細かい調整が可能になります(キーフレームからExpressionへの変換はできません)。
*ここでは、AfterEffects 7.0を基準としていますが、ExpressionはAfterEffects 5.0以降のバージョンであれば利用することができます。また、今回説明しているサンプルは5.0以降であれば全てのバージョンで動作します。*2AfterEffectsではExpression上で利用できるJavaScriptだけでなく、AfterEffects自体を制御するためのJavaScriptも搭載されています。ソケット通信などもできるので、処理が終わったらメールで通知する、RSSデータを取得してレンダリングさせる、といった処理も可能です。 *3変換したいExpressionが適用された項目を選択し、メニューから「アニメーション」→「キーフレーム補助」→「エクスプレッションをキーフレームに変換」を選択します。
AdobeのAfterEffectsトップページ
Expressionを使って角度を変える
それでは実際にExpressionを使ってみましょう。Expressionはレイヤーに対して設定できます。まず、最初にExpressionを使ってレイヤーを45度傾けるサンプルを作成してみます。ここでは、すでに配置済みのテキストレイヤーを使います(テキストレイヤーでなく他のレイヤーでも同じです)。
トランスフォーム、の左の▲をクリックして展開します。すると「回転」という項目が現れるのでクリックして選択します。
次に「アニメーション」メニューから「エクスプレッションを追加」の項目を選択します。
するとExpressionが適用されたことを示す項目が表示され、Expressionの欄が入力可能な状態になります。この状態ではtransform.rotationの文字がハイライト表示されています。この状態で45と入力します。
入力し[Enter]キーを押か、他の場所をクリックするとExpressionが適用されます。この時にExpressionが間違っているとアラートダイアログが表示され、修正するように促されます。
ヘッドライン
- アップル「Aperture 3」発表、プロ向けの性能にiPhotoの容易さを融合[02:28 2/10]アップル
- Appleの「A4」プロセッサとは何か? - エンジニアらの意見[01:54 2/10]アップル
- 医療ソリューション企業Epocrates、iPadは医療現場で人気と報告 - 臨床医2割が購入意向[21:00 2/9]アップル
- 米Apple CEOジョブズ氏がNYで秘密の会合 - 大手新聞社幹部らを訪問[21:00 2/9]アップル
- コーレル、「Corel WinDVD 2010」のアップデートを公開[20:46 2/9]ソフト
- Microsoft、Windows 7の「バッテリ交換」警告問題に回答[20:33 2/9]Windows 7
- ネットユーザーがキーボードでこだわるポイント - アイシェアが調査[19:53 2/9]周辺機器
- クレオ、"ブライダル"に欠かせないソフト「筆まめ Braidal 6」2製品を発売[19:42 2/9]ソフト
- ドスパラ、ドイツ「ROCCAT」製ゲーミングマウスとキーボードを販売開始[19:39 2/9]ドスパラ
- 米Micron台湾とNanya、42nmの2GビットDDR3を共同で開発[18:47 2/9]自作















