先のエントリー動画制作時のコツVue6-街中・室内編で、レンダリング時にモーションブラーの設定を付け加えると、レンダリングが遅くなる事を書いた。
が、同時に、『大きい画像でのレンダリングなら、Vue内でモーションブラーした方が早くレンダリングできるっぽい』とも書いた。
その辺を今回もサンプル動画を作りながら解説する。
■結論
遅く感じるのは、レンダリング時、ブラーの計算時間が数秒ある事(これはすぐわかる)と、レンダリングパスの最適化が無効になるため。
現在、Vue6でモーションブラーの設定をHybrid2.5Dにすると。。。
自動的に『レンダリングパスの最適化』がオフの状態になる
※画像が間違っていたので修正しました2007.5.24
ちなみに、モーションブラーの設定をDistributed ray-tracingにすれば、レンダリングパスの最適化のON、OFFは有効になる。
しかし、ギリギリ低い設定でレンダリングしたいのでHybrid2.5Dで(以下H2.5D)『レンダリングパスの最適化』がオンに出来ないのはかなりガッカリなのである。今度のアップデートで治らないかな。
Vue5の時代からの現象なので仕様っぽい来もするが、そのうち気が向いたときにe-onにメール出そうとおもう。
■検証
前回動画制作時のコツVue6-街中・室内編と同じデータで、レンダリングサイズを640X480に、レンダリング時間が大幅に増えるため、2.5秒程の動画で検証。
とりあえず、以下の条件でレンダリングし、レンダリング時間を計ったので、気になる人は各自数値と条件を比較しても良いだろう。
ちなみに、アルファベットをクリックで動画が再生される。
アンチ エイリアス |
モー ション ブラー |
レンダー パス 最適化 |
外部 フィルタ |
FPS | カメラ ブラー長 |
レンダリング 時間 |
|
A | 2X2 10% | H2.5D | ON | なし | 30 | 50% | 1h03m50s |
B | 2X2 10% | H2.5D | OFF | なし | 30 | 50% | 1h03m13s |
C | 2X2 10% | 外部 | ON | あり | 60 | なし | 0h53m33s |
D | 2X2 10% | 外部 | OFF | あり | 60 | なし | 1h47m57s |
E | 2X2 10% | Raytrace | ON | なし | 30 | 50% | 0h42m24s |
F | 2X2 10% | Raytrace | OFF | なし | 30 | 50% | 1h05m34s |
G | 4x4 75% | Raytrace | ON | なし | 30 | 50% | 1h20m10s |
H | 2X2 10% | H2.5D | OFF | なし | 30 | 80% | 0h59m51s |
I | 2X2 10% | Raytrace | ON | なし | 30 | 80% | 0h42m01s |
比較 | 2X2 10% | なし | OFF | -- | 30 | なし | 0h44m06s |
今回、負荷を考えて60FPSの動画は30FPSにダウンサンプリングしてます。
例によって外部モーションブラーはAvisynthです。
途中、D-E間、H-I間で再起動。それ以外は下に行くほどレンダリング時間はやや延びている
ものと思われる。
1/3位データ取った所で、『静止画のテストで十分じゃないか!』と気が付いたが後の祭り。少しは静止画より有用なデータも取れたので、良しとしよう(´Д`;)
のんびりやってたら3日かかりました。。。
■気が付いたこと(アンチエイリアス2X2 10%時)
レンダーパス最適化画像 :1枚20秒
レンダーパス最適化未使用:1枚40秒強
H2.5Dは強制的に :1枚40秒強
モーションブラー計算時間 :1枚12秒前後
○ H2.5Dを使用すると、レンダーパス最適化のON、OFFでレンダリング時
間、画質に差が無い。
○ モーションブラーの計算時間に今回のデータで12秒程度かかる(データ量に
よる。Poserフィギュアがアニメーション設定が入っていると更に遅くなる)。
単純に考えると、この「計算時間」が1フレームのレンダリング時間と同等以下
になるようなら、モーションブラーを使ったほうが、60FPSにするより早くレンダ
リングが終わると思ったが、レンダーパス最適化が無効になるらしく、実際は
思ったような結果は出ない。
確かに、レンダーパス最適化をOFFにした60FPS動画と比べれば、高速
にレンダリングは終了した。
○ モーションブラーにDistributed ray-tracingを使用した場合、レンダーパス
の最適化は有効に働く。
しかし、画質が低い場合はDistributed ray-tracingはあまり有効ではなく、ザ
ラザラ感が酷い。動画では低設定を好む私の場合、あまり意味は無い。
相当に画質を上げたときにのみ使うが吉。現にVueのプリセットでもDistributed
ray-tracingを使用しているのはUltraのみ。この辺りの設定になると、H2.5Dの
設定を上げたものよりDistributed ray-tracingが美しい上に数倍早い。
○以前のエントリで説明した、『大きくレンダリングして後で縮小技』を、
Distributed ray-tracingに試してみた。
960X540、2X2 10%、レンダーパス最適化ONの低設定で同じくレンダリング
レンダ時間→1h09m48s(サンプル動画)
この程度ではやはり物足りないが、上の4x4 75%と比べると興味深い。
この場合も『大きくレンダリングして後で縮小技』は有効と見る
○ Cameraのブラー量を変化させても、レンダリング時間、ブラーの計算時間共に
変化は無い。ただし、Poserフィギュアにアニメーション設定がある場合は別。
ブラー量に応じてブラーの計算時間は増える。
その内、Poserフィギュアがアニメーションする場合のデータも取ろうかとも思うが、まあ、それはまた気が向いたときに。