2015年7月13日月曜日

モーションブラー メモ 03 ~AEでモーションブラー


前回の項で VrayVelocity の設定に触れました。
今回はそのパスを利用してAEでモーションブラーをかける方法です。

まず VrayVelocity のパスの保存に関してですが、レンダーエレメントに追加していれば Beauty のレンダリング時に一緒に保存されます。保存時に気にすることと言えばOpenEXRの場合格納するとかしないとかでしょうか。これは VrayVelocity に限ったことではないですが。
それから、後述するAEのプラグインが8bitでのパスの保存を推奨していません。(マニュアルより)
16bit int、16bit half float、32bit full float の三択がいいでしょう。

---------------------------------------------------------------------------------
追記

32bit int もありましたね。なので四択ですね。
でも、殆どの方は16bit int か 16bit half float を選んでいるのではないでしょうか。(データ量などの関係で。)

---------------------------------------------------------------------------------

今回は Beauty と VrayVelocity を別で出しました。どちらも 16bit half float です。
あとこれも後ほど詳しく説明しますが、ウサギと床を別に出しています。それぞれFG(ForeGround)、BG(BackGround)と呼ぶことにします。


格納した場合はAEの標準?(現在僕はCS6を使用しています)で付いている「EXtractoR」を使用すれば抜き出すことが出来ますが、これ重くないですか?
あとネーミング。 extract(引き抜く)とEXRを見事に掛けていますね~。流石ですね~。
流石なので使っていませんw

あとは有料で「ProEXR」とかありますね。僕は持っていませんが使い勝手はいいのでしょうか?

その他気にすることというか絶対注意が必要なのは、
「レンダリングするフレームの範囲外もアニメーションはつけておくこと」です。

Velocity はフレーム前後の移動値から算出されます。
開始フレームより前、終了フレームから後に何フレームかアニメーション(使いのアニメーションを崩さなければざっくりなアニメーションで良いと思います。)をつけて、エラーの無い Velocity を出すのを強くお勧めします。 たかが捨てフレされど捨てフレ。
たまに「30sのCMのカットダウンで15s作ります。あ、捨てフレ全部使ってます。」・・・何てこともあります。オフラインを数回行う案件は要注意です。


ではAEに読み込みましょう。
僕のプロジェクト設定やフッテージ変換は以下の通りです。


続いてコンポジットです。

一番上の調整レイヤーに適用されているのがモーションブラーのために使用するプラグイン、
RSMB(http://www.revisionfx.com/products/rsmb/)です。

Beauty に直接適用しない理由として、
1つ目はパッとコンプを見てどんなことをしているか知りたい。

2つ目は (下のレイヤーから) Beauty にチャンネルシフトでアルファをフルオフオンにして(Nukeで言うところのUnpremult)、その上でカラコレ(cc)等を、そして更に上のレイヤーにBeauty をステンシルアルファとして乗せて(Nukeで言うところの Premult)からのモーションブラー・・・て感じにしたいです。
上のイメージの通りです。

最後は、RSMB のマニュアルに書いてあるから。
マニュアルによると「RSMBをレイヤーに適用される最初のプラグインにしてください」とのこと。
つまり、同一レイヤーでチャンネルシフトやらレベル補正やら適用した後に更にRSMBを適用すると、それまでのエフェクトが無効になりますよ・・・ということです。順番を逆にしてもエッジに影響が出てくるので避けてます。

そんなRSMBには「RSMB」や「RSMB Pro」、そして「RSMB Pro Vectors」の3種類があります。
どれも2D処理でモーションブラーをかけるので極端に速いフレームなどはやはり破綻しますね。
でも比較的、VrayVelocity を利用して「RSMB Pro Vectors」を適用するのが綺麗に見えると思います。

---------------------------------------------------------------------------------
話は少し反れますが、「Vector」は方向量という意味で、「Velocity」は速度を意味します。(確か)
そして「RSMB Pro Vectors」で「VrayVelocity」を使う。何だこの微妙な感じ。。。

この辺はそれぞれの定義や物理学・運動学を調べて解釈したほうがいいのでしょうかね?
きっとスカラーとかも出てきますよね?理解したほうがよさげですが、正直ついて行けないです。
どなたか分かりやすく指で表現して頂けませんかorz
でもエフェクトを使う点においては詳しく知らないからと言って支障は無いと思います。

一応僕なりにザックリと、、、
車が点P~点Qまで蛇行運転で移動した場合、「Vector」は2点間を直線で結んだ向きと長さ。
「Velocity」は単位時間当たりの変位、つまり Vector に時間の概念が加わったようなもの。
「Scalar」は蛇行の長さ。

・・・でいいですか?
書きながら確か物理学において「速さ」と「速度」は厳密には違うよ~って昔習ったような、習ってないような。。。もうこの辺は勉強不足なので、よさげなサイト探して見ます (汗
---------------------------------------------------------------------------------

さてそんなことは気にせず、VrayVelocity を使います。

RSMB Pro Vectors の設定は以下の通りです。
まずは clamp on での設定から。

■Motion Vectors ・・・レンダリングした VrayVelocity を選択します。これを参照してモーションブラーをかけるわけですね。

■Blur Amt ・・・ブラー量。マニュアルによると0.5がシャッター開角度180度相当です。更に1.0が標準ブラーがかかるっぽいですが、0.5の2倍だからシャッター角度が360度だとは書いてありません。カメラにおいてシャッター開角度は180度が一般的だとされているので、デフォルトの0.5でいいと思います。

小技ですが、実写合成においてリファレンスとして画角内で何か物を動かしてみて(グレー球でもいいと思います)、その時のモーションブラーのかかり具合を見るのも手だと思います。
球だとパースがかかっていてもシルエットは円ですから、球の直径さえ分かっていればマッチムーブ後にCGで同じ直径の球をリファレンスに重なるようにアニメーションさせると、ほぼリファレンスと同じ空間を球が動いていることになります。
そしてこの球をレンダリング(VrayVelocity も)して、リファレンスと同じようなブラー量になるよう数値を設定すると、いい感じになると思います。
なので先ほどの「0.5でいい」というのは、とりあえず・・・という意味合いが強いです。

テレビなど見ていてたまに何かモーションブラーが変だなーっていうのを感じたりします。
撮影時のシャッタースピードやリファレンスを押さえておくのもいいと思います。

フルCGでも、シーンによって当然暗い明るいは出てきます。そして適正露出にする為にシャッタースピードを優先するのか、絞りを優先するのかなど様々です。当然モーションブラーにも影響します。
こういったアプローチがあってもいいんじゃないでしょうか?

■Max Displace ・・・ここに max velocity と同じ数値を入れます。今回は65.00です。

■Vec Scale X、Y ・・・マニュアルを引用します。「モーションベクトルが浮動小数点に変換された後、内部でさらに変換します。Vec Scale Yが-1の値をとったとき、Y方向のモーションベクトルを反対方向に修正できます。

内部変換時にYが変わるから修正する為にY を-1にしとけってことですか?
この辺詳しく分かりませんが、確かに各所で「Yを-1にしないとブラーがおかしく見える」といった話を耳にします。

黙ってY -1にしておきましょう!


続いて clamp off 。

on の時と違って Max Displace を 1.00 にしています。違いはそれだけです。


設定はこのくらいですかね。
最後に見た目に違いがあるかどうか、GIF で見てみましょう。
こんな感じです。

同じに見えますね。
これでいいんです。
clamp on / off の時の max velocityのノーマライズが適正で、Max Displace の数値もこれに合わせれば、どちらも見た目は合うはずです。


少し長くなりましたね。
一度この辺で区切って、次回は動画を見ながら説明して行こうと思います。
今回説明し切れなかったFGとBGに分ける理由も、そちらで触れようと思います。

0 件のコメント:

コメントを投稿