Modo 17.0におけるパフォーマンス向上について
https://www.youtube.com/watch?v=4MFd7e2ZggkModo17シリーズからはそれまでのコードに抜本的に改変を加えることで、大幅なパフォーマンス向上が図られています。17シリーズ最初のバージョンである17.0でも、いくつものパフォーマンス向上がみられています。
まずはシーンの読み込み速度向上があります。同じシーンを16.1と17.0で読み込んだ映像で比較してみます。
正確に言うと、シーンの読み込み時間が短縮されたというよりも、その後に3Dビューポート上で表示される速度が変わっています。16.1以前では、シーンにアイテムをすべて読み込んでから描画という順序ですが、17.0ではシーンに読み込みつつ、随時描画が始まっています。シーンを読み込むスレッドとそれを基に表示するというスレッドが別で動いているため、こういったことが可能になっています。今までシーンの中に含まれるアイテムが多い場合など、従来まではビューポートで中身を確認できるまでにかなり時間がかかっていたものが、17以降ではその確認の時間が短くなります。
またデフォーメーションなどに関しても、パフォーマンスが向上しています。リグを例に比較してみます。
こちらのリグではトランスフォームエフェクタを利用して、メッシュのデフォームを行っています。glmeterコマンドで、ビューポートのFPSを表示するようにしてみます。16.1の場合にはコントローラとなるロケータを動かしても、それに追従するメッシュの動きは鈍いのですが、17.0の場合はロケータの動きに対するメッシュの対応がかなり速くなります。このようにパフォーマンスが良くなった分、ストレスなく操作したり、設定作業に時間をかけられるようになります。
さらにモデリングに対しても同様の効果が見られます。今までプロシージャルモデリングなどでは、複製などの処理を行う場合、ジオメトリが複雑になってくれば来るほど、どうしてもレスポンスが遅くなってしまうことがありましたが、17.0ではそういった点が改善されています。
例として、16.1v8でまずは空のメッシュレイヤーにボックスプリミティブを作成してみます。さらにポリゴン > Polygon Bevelをかけ、エッジ > Edge Bevelをかけてみます。そうして編集されたボックスを、今度はArrayで複製してみます。プロシージャルモデリングですので、複製した後でも、ポリゴンやエッジのベベルを変更することができますが、複製数が多くなるとレスポンスは落ちてきます。
同じ動作を17.0でも試してみましょう。17.0のほうが、レスポンスが良くなっているのがわかります。
このようなパフォーマンス向上はModoの中の随所で見られるようになっていますが、17.0で完結するものではなく、17.0がこれらパフォーマンス改変の初めの一歩であり、17シリーズ以降、さらにパフォーマンス向上に対するコードの改変は続いていきます。