目次 [ Contents ]
よくある、「3D空間にたくさんの写真が無造作に並んでいる」映像を作ってみたいと思います。普通に考えると、一個一個3D空間上に画像を配置していく事になりそうですが、お手軽(テキトー)に配置出来る「ノード操作」ならではの手法でやってみます。
ボリュームが大きくなってしまいましたが、説明が多いのと、別アプローチも書いてしまったためなので、やる事自体はそんな多くはありません…。
準備
素材として使う写真(jpeg)を50枚用意します。
画面サイズはバラバラで大丈夫ですが、ファイル名は連続している必要があります。なので、思い出がグチャグチャにならないよう、使いたいファイルを選別して一箇所のフォルダにコピーし、リネームソフトでナンバリング(連番ファイル名に)して素材としてまとめてください。0000.jpg、0001.jpg…という具合です。
ちなみに、メインに持ってきたい写真が最初(0番)になるようにしておくと都合がいいです。
時間設定
タイムルーラーの総尺を「90フレーム」に設定。
写真の配置
画像ファイルを3D空間に配置していきます。
Loader Tool
Loaderツールで写真素材を読み込みます。Fusionではフォルダ内に連番名のファイルがあると、1枚だけでも連番ファイルとして読み込まれます。再生すると、フォルダ内全部の写真が1フレームづつ割り当てられた1つの動画になっているのが分かります。
この連続を振り分ける方法は後述していくので、とりあえずこの状態のまま配置を進めます。
- Loopにチェック
素材がタイムラインの総尺に足りてないと、エラーが出る事が多々あります。なので、ここにチェックを入れて「繰り返し」にし、素材が最後まで続くようにしておきます。「Hold Last Frame」でもいいんですが、後述のやり方がちょっと変わってきてしまうので、とりあえずLoop素材にしておくという事だけ覚えておいてください。
ImagePlane3D Tool
Loader Toolの出力を、このToolへ接続。
このToolは「Shape3D Tool」の“Plane”とは違い、フレームサイズ・縦横比を自動で合わせてくれます。単純にポンとイメージ素材を3D空間に載せたい時、又は、今回みたいに画像サイズがバラバラの素材を一手に扱う場合はImagePlaneの方が都合いいです。
Duplicate3D Tool
以前も使った、このToolで画像を複製していきます。
Controlsタブ
LastCopy:49(今回の画像使用枚数が50枚なので)
Duplicate3Dには「Controls」「Jitter」というタブがありますが、複製のされ方が違います。
「Controls」での変更は、複製されるものが順当に変化していきます。例えば、“Translation X”をずらして、“Scale”を縮小していくと、段々と小さくなった画像が横並びで増えていくのがわかります。
対して「Jitter」での変更は、数値がランダムで複製されます。バラけた感じにする場合は、こちらを使います。
ちなみに“Random Seed”スライダーを動かすことで、そのランダム具合を変更することが出来ます。
具体的な数値は書かないので、適宜数値をいじっていい具合に空間を埋めてください。
連番画像を振り分ける
現状、写真が一連の動画となっているので、同じ画像が並んだ状態になっています。これを直すために、Toolの追加と設定をしていきます。
上記のDuplicate3Dツールの「Controls」タブに“Time Offset”というパラメータがあります。これを「1.0」にすると、複製したオブジェクトの画像参照先が1フレーム毎先になるので、パッと見思ったような状態になります。
ただし、これだとタイムルーラーで時間を動かした時に、その都度元素材に沿って全部が入れ替わってしまうので、目まぐるしくなります。狙い通りではありません。
これは「起点の動画フレームから何フレーム先」という事で複製しているので、起点のコマが進めば、複製したほうもそれに沿って基準点が進んでしまうからです。
そこで、素材1コマの再生速度をタイムライン目一杯に伸ばし、再生上は「1枚の静止画が続いている」状態にします。その分、“Time Offset”も総尺毎飛ぶようにすれば、再生設定内では綺麗に収まるようになります。
TimeStretcher Tool
このToolは素材の再生速度をキーフレームで設定できるツールです。動画再生を止めたり、逆回転させたりと「可変」が出来ます。
2D用ツールなので、「ImagePlane3D」の手前に追加します。
Controlsタブ
- Interpolation Mode:Nearest
“Blend”だと、フレームの切り替わりを馴染ませるために、オーバーラップがおきます。今回はさせたくないので、単純な切り替わりの“Nearest”にしておきます。
- TimeRulerで「91フレーム」に移動。
全体表示尺を90フレームにしているので、タイムルーラーをドラッグしてもそこに飛べませんが、直接数字を入力すれば、そのフレームへ移動する事が出来ます。
- 「Source Time」1.0を入力してキーフレーム作成。
この状態で「Spline」ウインドウに切替えます。
上図のようにグラフが表示されていなければ「Source Time」にチェックを入れ、「Zoom to Fit」ボタンでキーフレーム全体を見れるようにします。
この状態だと、0フレームから1フレームまで段階的に変化するアニメーショングラフになっているので、2つのキーフレームをドラッグで複数選択し、
「Step in」ボタンを押して、キーフレームグラフを階段状にします。
これで「90フレーム間はずっと同じ写真」という状況になりました。ただし、最初の1枚目だけしかそうなっていない状況です。なので、90枚ごとに次の写真へ切り替わるようキーフレームをループさせます。
まず、グラフ表示を縮小します。左上にある縦横の「+-」の「-」を使うか、目盛り上で直接ドラッグするかして、表示範囲を広げます。
2つ以上のキーフレームが選択されていると、反復設定出来るので、“Set Relative”にして、2つのキーフレーム関係が保たれたまま、増加させるようにします。
Duplicate3D Tool
Flowウインドウに戻り、再度Duplicate3D Toolの設定をします。
Controlsタブ
- Time Offset:91.0
これでようやくやりたかった「無数の写真が空間に浮いている」状態が出来ました。
Merge
後は、今までのチュートリアルと同じように2Dイメージとして落とし込んでいきます。
Camera3D Tool(+Merge3D)
3Dツールを選択中にCamera3D Toolを追加すると、Merge3Dもセットで追加してくれます。
カメラのZ位置に動きのアニメーションをつけます。
Translationsタブ
- 0フレーム:Translation Zを後(9.0程度)
- 90フレーム:Translation Zを後(2.0程度)
0番の写真はX0.0、Y0.0、Z0.0に配置されているので、Duplicate3Dで特殊な部分を触っていなければ、その写真に近づくようなアニメーションに出来るハズです。
Renderer3D Tool
Merge3Dの出力を接続。
Controlsタブ
- Camera:Camera3D1
- Renderer Type:OpenGL Renderer
Background Tool
透明範囲を埋めるため、グラデーション背景を作ります。
Colorタブ
- Type:Vertical – 配色は任意
Merge Tool
上記の背景を“BackGround”として、3D出力イメージを“ForeGround”としてMerge。
追加のカメラ効果
連番写真を振り分けるところ以外は、今までのチュートリアルと変わりないので、もう少し踏み込んだ設定をしてみます。
被写界深度を設定する
被写界深度自体は以前もやりましたが、今回はカメラの動きがある中で、ExpressionとUser Controlを使い、特定のオブジェクトに追従しつつ手軽に操作できる方法をやります。
Renderer3D Tool
このツールの設定を再度いじります。
Controlsタブ
- Enable Accumulation Effects:チェック
- Depth of Field:チェック
カメラのフォーカス値が合っていないので、画面全体がぶれた状態になっています。
これを中心の0番写真に合うようExpressionを書きます。
Camera3D Tool
フォーカスのパラメータは「Controls」タブの“Plane of Focus”です。これのExpressionを有効にします。
数値を0番写真へ合わせるために必要な事は、写真とカメラの距離を導き出すことです。ただ、今回、カメラ移動はZ方向の1次元しかしていない事と、目標の0番写真の位置は「0.0」ということから、単純に「カメラのZ位置=焦点距離」という事になります。+でリンク付けするか、直接参照先を書きます。
カメラが動いても、常に0番写真へピントが合うようになりました。
ここでもうひとつ。カスタムコントロールを使って「最初は遠景にピントが合っていて、近寄るに連れて中心に合う」ような“ピント送り”アニメーションを作ります。
右クリックで「Edit Controls…」を選択。
Add Controlウインドウ
- Name:Focus_Shift
- Type:Number
- Page:Controls
- Range:0.0 to :7.0
- Input Ctrl:Slider Control
下部に作ったスライダーパラメータが出来ます。これをリンクするよう「Plane of Focus」のExpressionを書き足します。
このスライダーを調整する事で、基本は中心写真を追っていながら、フォーカス位置をシフトさせる事が出来ます。また、カスタムコントローラー自体もAnimationがつけられるので、キーフレームを作れば「ピント送り」を簡単につけることが出来ます。
ボケの調整は、Renderer3Dツール「Depth of Field」の“Quality”と“Amount of DoF Blur”で出来ます。
“Amount~”でボケの度合い、“Quality”でボケ足が綺麗になりますが、その分処理に時間がかかるので、自分の環境に合わせて設定して下さい。
また、そんな理由から、こういった類の調整は最後に設定する事をオススメします。
モーションブラーを設定する
モーションブラーは、いわゆる動きの激しい箇所で生じる「ブレゴマ」を作るものです。2D Toolごとに設定出来るようになっています。「General」タブ内にON・OFFのチェックボックスがあります。
3Dコンポジットの場合は、最終的な2Dイメージ生成先であるRenderer3Dでその設定をします。タイムルーラーで動きの激しいフレームに移動してから“Motion Blur”を有効にすると、調整結果が確認しやすいかと思います。
“Shutter Angle”でブレ度合い、“Quality”でブレの品質が変わりますが、処理が格段に重くなるので注意です。また、あまり効果が分からなければ、カメラの移動アニメーションを激しくしてみてください。
ちなみにモーションブラープレビューの一括ON・OFFは「MB」ボタンで操作できます。
今回は、こんな感じです。
備考
と、Fusionでは色んなアプローチ方法があるので、「これが正解」とも言い切れないのが大変なところです。なので、「補足」と、更には「上記と違うやり方」も軽く説明しておきます。
Toolの振り分け
Duplicate3Dで写真位置を配置するのに、思ったように並ばない場合もあるかと思います。50枚をまとめて1つのJitter(乱数)で処理しようとしたためです。
そんな時は、Dublicate3Dをコピペ分割して、「少し後ろ」「もうちょっと後ろ」「スゴい後ろ」みたいなレイヤーで振り分けをすると、制御しやすくなると思います。「Fast Copy」と「Last Copy」で振り分けたい枚数を分離し、レイヤー別に配置・調整していくという、やり方です。
Fusionで、こういったやり方は常套手段みたいなので、こんな発想が自然にパッと出てくるようになれば、いいんですけど…。
パーティクルによる別アプローチ
パーティクルを使うと、同様のシーンをより早く作れます。
まずは、今までの作業をハジに避けておきます。Flowウインドウ上で写真素材Tool以外を複数選択し、右クリックで「グループ化(又はCtrl+g)」します。
ノードで作ったプロセスが1セットになるので、レンダリング処理をさせないよう停止させておきます(“Pass Through”ボタン、又はCtrl+p)。
Toolは、有効になっていると全部レンダリング処理に組み込まれてしまう仕様になっています。なので、関係ない部分を一時的に停止させておく事が多々あり、そんな時はこうやってまとめておくと、一括で扱えて楽になります。
「pEmitter」Toolと「pRender」Toolを作ります。
pEmitterの「Controls」タブで“Number”を「1.0」にします。パーティクルが1フレームごとに1つづつ増えていくという形になります。
写真は50枚なので、“Number”が49フレーム目で0.0になるようキーフレームアニメーションを作ります(0フレームは1.0で)。そして、キーフレームがスロープにならないよう、Splineウインドウで“Step In”しておきます。
「Style」タブでStyleを“Bitmap”にすると、Toolに入力が出来るので、写真素材Toolをつなげます。
パーティクルの「点」が写真素材へ差し代わりました。しかし、このままだと同じ写真なので、Animateを“Particle Birth Time”に変更。
これで、「フレーム毎に違う写真が1枚ずつ増えていき、49フレームで完結する」という形になります。
後は、「Region」タブでRegionを“Cube”にして、適当な大きさにします。
このやり方だと、写真が全部揃うまで50フレーム必要なので、使いどころはそれ以降になります。もし、前述のカメラワークのアニメーションをつけるとしたら、ルーラー設定は+90フレームでそれぞれのOUT点を140。使いどころとして、再生In点を50に設定することになるかと思います。
ちなみに、写真が途中で消えてしまうのなら「Controls」タブで“Lifespan”を増やし、写真に正面を向かせたくないなら、Rotation Controlsで“Always Face Camera”のチェックを外してください。
Person of Interestという海外ドラマではFusionを使っていたようです。確かに劇中の監視映像は、まさしくこれらを複雑にしていった感じだし、「この映像エフェクトはあのToolを使って…」みたいな場面も多々ありました。
海外ドラマだとコストパフォーマンスの面で、Fusionが使われる事が多いんではないでしょうか?興味がある人はそういう切り口から研究するといい勉強になるでは、と。
参考リンク