2011年1月2日日曜日

modo 501: レンダリング性能の改善

modo 501では、レンダリングに様々な改善が行われています。中でもレンダリング速度の大幅な改善は501の大きな改善事項の一つです。CPUの性能が幾ら高速化されてもレンダリング速度向上は重要ですね。

基本的にmodoのレンダリングは、GPUを使用せずCPUの機能のみを使ってマルチスレッディングの処理に最適化されています。CPUで必要な命令はSSE2ですので、最近のCPUでしたらほとんど問題なく動作します。レンダリングの単位であるバケットは各スレッドに割り当てられますのでコア数が増えるほど並列化され高速にレンダリングされます。下記はmodo 401とmodo 501のレンダリング速度を比較した結果です。もちろん、レンダリングするシーンの特性によりスピードアップのバラツキはありますが、1.5倍ぐらいは普通に速度アップしています。シーンによっては3倍以上のパフォーマンスを発揮します。
Room, modo 401: 66.3s
Room, modo 501: 44.1s (1.50x speedup)
8Spheres, modo 401: 64.6s
8Spheres, modo 501: 40.1s (1.61x speedup)
TeaTime, modo 401: 55.3s
TeaTime, modo 501: 32.2s (1.72x speedup)
AngerManagement, modo 401: 42.8s
AngerManagement, modo 501: 24.0s (1.78x speedup)
WMD_Full_Scene, modo 401: 111.4s
WMD_Full_Scene, modo 501: 58.1s (1.92x speedup)
TestTubes, modo 401: 44.0s
TestTubes, modo 501: 22.6s (1.95x speedup)

特にレンダリング速度がアップした物にMDDファイルを使ったアニメーションのレンダリングがあります。MDDはモデルデータの頂点座標の時系列情報を保存したファイルでLightWaveを始め、多くの3DCGソフトウェアがMDDファイルをサポートしています(※一部のソフトウェアはPointOvenなどサードパーティのソフトが必要になります)。他のソフトでアニメーションを作成し、modoでレンダリングをするフローで仕事をする方には特に恩恵が大きいのではないでしょうか。


また、ファーを使ったシーンではレンダリング速度の向上に加え、使用メモリーの節約も同時に行っています。レンダリングに不必要な視野外のファーを可能な限り除去することによってレンダリング速度とメモリー節約を同時に行っています。ファーを使用したレンダリングは時間が掛かる処理ですので効果は大きいと思います。リリース版ではありませんがMac OS版も64ビットになり、2Gバイトメモリーの制限からは解放されますが、使用メモリーの効率化もまだまだ重要です。

ファーカリング(オフ)

ファーカリング(オン)
その他、バンプマッピングの改善もレンダリング速度とメモリー節約に貢献しています。ディスプレースメント・バンプ(Displacement as Bump)は、同じ条件でのレンダリング効率がアップした物ではありませんが、ディスプレースメントを使用してレンダリングしたイメージと同じぐらいの品質のイメージをバンプで実現する機能です。条件によっては見た目でわからないディスプレースメントのレンダリングを高速かつ少ないメモリーで行う事が可能です。また、バンプマップそのもののアルゴリズムも改善されましたので、よりリアルな凹凸を表現できるようになりました。
通常のディスプレースメントでのレンダリング

ディスプレースメント・バンプを使ったレンダリング

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。