2010-01-03

3D空間を進む光線 without Particular

3D空間を進む光線の作り方を紹介します。まずは完成動画から。




主なポイントはCC ParticleWorldの特性と、エクスプレッションによる操作です。

はじめに

光線の表現にはパーティクルを用います。パーティクルは粒子を散らすような表現にはもちろん、粒子を密集させることによって線を引くような表現にも用いることができます。

AfterEffectsの場合「Trapcode Particular」プラグインがよく用いられているのですが、高価なので手を出しにくいのも事実でしょう。今回は標準プラグイン「CC ParticleWorld」を用いた方法を紹介します。

エクスプレッションで放出点をヌルオブジェクトに追随させる

まずは新規コンポを作成します。今回は出力が640×480、尺は15秒としました。コンポができたら新規平面を置いて「CC ParticleWorld」を適用します。青いグリッドは邪魔なので、Grid>offで消しておきます。また、ParticleWorldと通常の画角を揃えるため、新規カメラレイヤーを初期値のまま追加しておきます。

img1この放出点を動かすことで光線の先端を動かすことになります。しかしParticleWorldの座標単位はコンポの座標単位と異なるので、扱いやすくするためにエクスプレッションで座標を補正し、ヌルオブジェクトに追随させます。

新規ヌルオブジェクトを作成(名前を”producer”としています)し、3Dスイッチを入れます。これに放出点を追随させるため、ParticleWorldのProducer>Position Xに以下のようなエクスプレッションを追加します。ParticleWorldの座標はコンポの中央を(0, 0, 0)、コンポの横幅を1として扱っているので、それを逆に補正しています。

(thisComp.layer(“producer”).transform.position[0]-thisComp.width/2)/thisComp.width


これをY,Zについても同様に行います。分母が常に”thisComp.width”であることに注意してください。

(thisComp.layer(“producer”).transform.position[1]-thisComp.height/2)/thisComp.width
thisComp.layer(“producer”).transform.position[2]/thisComp.width

先端の動きは自由ですが、今回はwiggleを使用します。位置に以下のようなエクスプレッションを追加します。

wiggle(2,300)


ここまでで、エクスプレッションの状態はこのようになります。

img2

この時点でプレビューすると、producerに合わせてパーティクルが動いているのが確認できると思います。img3

CC ParticleWorldのパラメータ調整

放出点の大きさ、初速を0にし、パーティクルを手前に向かって「落とす」ことによって光線を表現します。

最初にParticleWorldのオプションで重力方向の設定をします。ParticleWorldのエフェクトコントロール>オプション>Gravityを選択。

img4値をX: 0, Y: 0, Z: -1に変更します。ついでにOpacity MapでPresetsの”Constant”を選びパーティクルの不透明度を一定に、Renderingから”Force Motionblur”にチェックを入れてモーションブラーをそれぞれ設定しておきます。

img5次にParticleWorldのパラメータを調整します。初期状態から変更したパラメータは以下の通りです。Radiusなど、初期値0に見えても実際は正確に0になってないものもあるので注意してください。

img6
ここまででメインの線の動きができました。

仕上げにパーティクルを重ねます。ParticleWorldを適用したレイヤーを複製し、パラメータを変更します。この辺りは好みなので試行錯誤してみてください。Velocityを少し与えると火花のような印象を与えることができると思います。また光の粒子に影があっては違和感があるので、両レイヤーのモードを「加算」「スクリーン」等にしておくと良いでしょう。

img7

レンズフレアを連動させる

光線の先端にレンズフレアをつけます。光源の位置は2Dでしかないので、Z座標についてはフレアのレイヤーそのものを動かすことで擬似的に追随させます。

まずは黒い新規平面を作成します。このときフレアがZ方向に動くことを考え、平面を大きめの解像度で作っておきます。今回は出力が640×480なのでその倍の1280×960にしました。その後「レンズフレア」を適用。3Dスイッチを入れ、モードを「加算」に設定します。その後、以下のようなエクスプレッションを追加します。

レンズフレア>光源の位置

[thisComp.layer("producer").transform.position[0]+320, thisComp.layer(“producer”).transform.position[1]+240]


トランスフォーム>Z位置(「次元に分割」すると簡潔です)

thisComp.layer(“producer”).transform.position[2]


img9

光源の位置の合わせ方は色々あると思いますが、今回は単純に平面の大きさの差分だけオフセットしています。producerの動き次第では見切れてしまうこともあり得るので、その場合平面の大きさとエクスプレッションを調整する必要があります。

背景をつける

適当につけます。今回はカラーカーブで放射状のグラーでーションを敷き、Particleを複製してパラメータをいじったものを置いてみました。あまり本質的ではないので説明は割愛します。

img8

おわりに

今回はCC ParticleWorldを用いて光線の表現を紹介しましたが、もちろんこれは土台となるパターンでしかありません。ParticleWorldの紹介なども目的の一つですが、特に初心者の方がパラメータの多さに戸惑わなくなれば幸いです。

パラメータをいじり慣れてきたら、せっかくなのでカメラを動かしたりすると面白いと思います。サンプルaepファイルはCS4ですが、内容的には古いバージョンでも十分再現可能だと思いますので是非試してみてください。

ダウンロード

Licence: Free for all
AE Version: CS4


タグ : CC ParticleWorld, TUTORIALS, エクスプレッション, デフォルトプラグインのみ[タグを追加する]

関連する投稿


この記事の投稿者について:yama_ko
MotionGraphicsが好きです。センスよりロジックが好きです。音楽と調和した映像が好きです。 この投稿者のTwitter @yama_ko

フィードバック

1 Star2 Stars3 Stars4 Stars5 Stars
(評価回数:10 , 平均:4.70)
Loading ... Loading ...

コメントをどうぞ!




特集