Q100472: Windowsで Nuke のバッチレンダリングを作成する方法

まとめ

この記事では、Windowsオペレーティングシステム上で複数のNukeスクリプトをレンダリングするためのバッチファイルを作成する方法について説明します。これは、特に非同期フレーム出力を持つスクリプトを一度に複数レンダリングする必要がある場合に役立ちます。


詳細情報

このプロセスにより、ユーザーは単一のバッチファイルを実行するだけで、複数のコマンドウィンドウを開いてレンダリングするのと同じ結果を得ることができます。このプロセスはかなり複雑で、WindowsディレクトリとNuke特定のコマンドライン操作に関する実用的な知識が必要です。

1. メモ帳などのテキスト エディターを開きます。

2. 次のコードを使用してNukeへのパスを追加し、バッチ ファイルのスクリプトを開始します。

path="C:\Program Files\Nuke16.0v4\" - 現在インストールされているNukeのバージョンを使用します。

2a. 次に、レンダリングするスクリプトを次の行で実装します。

start Nuke 16.0.exe -x -F 1-10 “path\to\the\script_v1.nk "

注:開始コマンドはNuke 15.1を開き、フレームのスクリプトのすべての書き込みノードを実行します( -x )( -F ) 1-10 は、「 test_v1.nk 」という特定のスクリプトにあります。

2b. レンダリングするスクリプトごとに上記のコマンドを繰り返します。以下の例を参考にしてください。

3.ファイル > 名前を付けて保存…でスクリプトを保存します。

4. 拡張子.batのファイル名 (例: 「my_batchrender.bat」) を作成し、「保存」で確定します。

5. 保存した場所にあるバッチファイルをダブルクリックしてスクリプトを実行します。または、ファイルを右クリックして「開く」を選択します。

6. バッチ ファイルが完了したら、レンダリングの出力用に指定されたディレクトリを表示します。

3つのスクリプトを一度にレンダリングするためのサンプルバッチファイルをご覧ください。このファイルには、上記で参照されていない追加の行も含まれています。これらの行に関する追加情報は「参考資料」セクションでご覧いただけます。また、このスクリプトは「サンプルファイル」セクションからダウンロードすることもできます。

バッチ ファイルの例...
@echo off
title Batch Render Nuke Scripts!
mode 45, 10

rem ======================
rem A CHOICE TO MAKE
rem ======================
echo.
echo WELCOME!
echo.
echo.

CHOICE /M "Would you like to begin rendering?"
IF ERRORLEVEL 2 GOTO :End
IF ERRORLEVEL 1 GOTO :Begin

rem ============================
rem BEGIN THE BATCH RENDER
rem ============================

:Begin
rem ======================================
rem SETTING PATH TO EXECUTE RENDER
rem ======================================

path="C:\Program Files\Nuke16.0v4\"

rem =========================
rem BEGIN SCRIPT 1 RENDER
rem =========================

start Nuke 16.0.exe -x -F 1-10 "C:\temp\test_v1.nk"

rem =========================
rem BEGIN SCRIPT 2 RENDER
rem =========================

start Nuke 16.0.exe -x -F 1-10 "C:\temp\test_v2.nk"

rem =========================
rem BEGIN SCRIPT 3 RENDER
rem =========================

start Nuke 16.0.exe -x -F 1-10 "C:\temp\test_v3.nk"


:End
title No Renders made...
cls
echo.
echo.
echo.
echo NO RENDERS MADE, NOW EXITING!
PING localhost -n 2 >NUL
exit


追加情報:

上記のバッチファイルの例では、プログラムが正しく初期化されるように、まずNukepathを設定します。次に、 test_v1.nk、test_v2.nk、 test_v3.nkの特定のスクリプトの場所を指定すると、各ファイルのコマンドプロンプトが開き、 start行で指定されたフレームが実行されます。

-sroを使用したレンダリング順序や、 -Xコマンドと書き込みノードの名前を使用した特定の書き込みノードの使用など、 Nuke受け入れるすべてのコマンドライン操作をバッチ ファイルで使用できます。

さらに、 /waitという別のコマンドを使用してレンダリングをずらす必要がある場合もあります。このコマンドを使用すると、前のスクリプトの完了後にのみ次のスクリプトが開始されます。例えば、次のように使用します。

@echo off
rem ======================================
rem SETTING PATH TO EXECUTE RENDER
rem ======================================

path="C:\Program Files\Nuke16.0v4\"
 
rem =========================
rem BEGIN SCRIPT 1 RENDER
rem =========================

start /wait Nuke 16.0.exe -x -F 1-10 "C:\temp\test_v1.nk"

rem =========================
rem BEGIN SCRIPT 2 RENDER
rem =========================

start Nuke 16.0.exe -x -F 1-10 "C:\temp\test_v2.nk"

さらに詳しく

Nukeのコマンドライン操作の詳細については、ドキュメントをご覧ください。

バッチ ファイルの詳細については、以下の記事を参照してください。

サンプルファイル

私たちはそれを聞いて申し訳ございません

理由をお聞かせください