同一のVFX設定で複数ショットの自動レンダリング——繰り返しコンポジションを高速化。Nukeバッチモード。
100個の似たようなショットがあり、それぞれに同じカラーコレクション、キーヤー、グローが必要な場合、Nukeで何時間もかけて一つ一つクリックしていくことはありません。代わりに、セッションをループし、パラメータを設定してレンダリングするスクリプトを作成します。これがバッチコンポジットです。ビジュアルロジックは同じで、ソースフッテージだけが変わる、反復的なコンポジットワークフローの自動化です。
実際には、次のように機能します。まず、マスターコンポジット(たとえば、ロトスコープマスク、カラーグレーディング、グローを含むNukeセッション)を作成します。これをテイクごとに手動で複製して調整する代わりに、変数(Readノード、フレーム範囲、出力パス)を定義し、PythonまたはTCLスクリプトを記述して、セッションを反復的にロードし、入力を更新してレンダリングします。Nukeでは、コマンドラインレンダリング用のWriteノードを使用するか、Python APIを使用して、GUIなしでバックグラウンドでNukeをバッチモードで実行できます。これにより、他のショットに取り組むことができます。
利点は大きいです。8時間の作業が、30分のセットアップと一晩のレンダリング時間に短縮されます。一般的な用途としては、複数の類似ショットでのモーショントラッキング、グリーンバックシリーズでのクロマキー処理、または撮影日全体にわたるビネットとレンズ収差補正などがあります。ステレオスコピックコンポジット(左右の目が同じ処理を必要とする場合)もエレガントにバッチ処理できます。
注意点:スクリプトは堅牢である必要があります。Readノードのパスが間違っていると、バッチ全体が失敗します。そのため、ロギングとエラーハンドリングを組み込む必要があります。また、マスターセッションはクリーンである必要があります。ハードコードされたパスや、ショットAにしか適用されないフレーム範囲の仮定は避けてください。依存関係にも注意が必要です。コンポジットが外部キャッシュファイルやロトマスクを必要とする場合、それらが存在するか、バッチスクリプトがそれらを生成する必要があります。
バッチコンポジットはクリエイティブな監督の代わりにはなりませんが、単調なクリック作業から解放してくれるツールです。特に、何百ものショットにわたって同じエフェクトが適用される大規模なシリーズやVFXヘビーなプロダクションでは非常に価値があります。セットアップに少し規律を設けることで、チームはポストプロダクション時間を文字通り数週間節約できます。