Python を使用して Maya 2011 用のプラグインを作成しています。私のマシン (Windows 7 32 ビットを実行) で利用可能なすべてのコアを利用し、プラグインのパフォーマンスを高速化するために、マルチプロセッシング モジュールを使用して複数のプロセスを作成しました。プロセスが作成されると、出力ウィンドウがポップアップします(Maya の起動時に最初にポップアップします)。この問題を解決するために、このディスカッションを読みました。mayapy.exe を実行可能として設定すると、新しいプロセスが multiprocessing.Process(...) を使用して作成されるため、別のウィンドウがポップアップします (コマンド ライン ウィンドウのように見えます)。ウィドウの数はプロセスの数と同じです。これらのウィンドウは、プロセスが実行されると現れては消えます。これらの小さなウィンドウが表示される理由がわかりません。これらのウィンドウを表示させたくありません。助けてください。
質問する
904 次
3 に答える
0
@tranimatronic の回答に従って、サブプロセス フラグを使用して MayaPy の個別のコピーを生成できるはずです。正確なフラグは OS によって異なります。
非表示ウィンドウを使用したクロスプラットフォーム サブプロセス
ただし、プロセス間でシーン情報を共有しようとすると、問題が発生する可能性があります。各プロセスは完全に別個の Maya のコピーです。それが大きなバッチ ジョブであり、読み取り専用ファイルを共有できる場合 (たとえば、アニメーションの一部をレンダリングしたり、一度に 1 つずつライトをベイクしたい場合)、それは機能しますが、並列処理を行うことはできません。同じシーンで (ジオメトリの作成など)。一般に、Maya の複数のコアを気にするほど計算量の多い作業を行っている場合は、C++ API を使用した方がうまくいくでしょう。
また、サブプロセスのデフォルトの Maya バージョンは、通常の Python のようにパイプを使用しないことに注意してください。
于 2013-06-05T05:22:59.797 に答える