MayaのMentalRay使ったバッチレンダリングでCPUを100%使ってくれない時の対処法。
「ニーズあるんじゃないって」、言われたから書きます。
※ただし、記事を書くにあたって一切の確認検証をしておりません。
記憶を頼りに書きました。間違ってたら指摘して下さい。
方法その1
mentalRayのBatch Render Optionを開きます。
[Render]->[Batch Render]->□
Auto Render Threadsにチェックが入っているからといって安心してはいけません。
どうやらAutoの場合でもバッチレンダリング時は、このRender Threadsで指定したコア数しかレンダリングに使われていないようなのです。ぜんぜんAutoじゃないじゃないか!、と思ったものです。
AutoをOFFにして、Render Threadsをマシンの搭載コア数にしておきましょう。
次に一旦Mayaを終了します。(Mayaは終了時にPrefsファイルが更新されるためです)
バッチレンダリングしてみましょう。
CPU使用率100%になってませんか?
Mayaを新規でインストールした場合はこのRender Threadsがデフォルト2になっており、
コア数が4のマシンではCPUが50%、コア数が8のマシンではCPUが25%、コア数が16の場合は12.5%しか使われない、なんてことが起こります。
方法その2
一つ目でやった操作と同じことを、MayaのPrefsファイルを書きかえることでやってしまえという方法です。PrefsファイルはMayaの設定ファイルですね。
たぶん、次の場所にあるのではないかと思います。
これを直接書き変えます。
お好みのテキストファイルで”userPrefs.mel”を開いて、
“mrBatchRenderNumThread”で検索かけます。
たぶん、 -iv “v_mrBatchRenderNumThread”、っぽいのがみつかるかと思います。
そこにある数字をマシンの最大コア数に変更して保存します。
あとはバッチレンダリングしてみれば、CPU使用率が変わっているはずです。・・・たぶん。
この方法はMaya開かなくていいのが利点ですね。
方法その3
三つ目は、バッチコマンドで直接指定する方法です。
Mayaでバッチレンダリングする時大抵は、Mayaのメニューからバッチレンダリングを回すか、
自分orToolでバッチコマンドを書いて実行するかのどちらかだと思うのですが、
このバッチコマンドに、CUP使用率に関するオプションがあります。
それを記述してCPU使用率を変更する方法することが出来ます。
オプションフラグは”-rt”
renderThreadsの略だそうな。
使用CPUを8コにしたい場合は “-rt 8” と書く。
その他のMentalrayバッチレンダリングのオプションフラグはコマンドラインで “render -r mr -h”で確認できるかと思うので、気になる方は各自確認サレタシ。
以上、MentalrayがCPUが100%使ってくれない時の対処法でした。
お邪魔します。
バッチ時に “-art” でAuto Render Threadsにしてくれますよ。
ちなみに同じく” -aml “でメモリを最適化してくれます。(1.5倍くらい早くなるそうです)
どもです。
バッチでAutoにするって選択肢もありましたねw。
“-aml”は全然知りませんでした。いいものを教えて貰いました。ありがとうございます。