Q100154: Nuke での相対ファイルパス参照

まとめ

この記事には、 Nukeで相対ファイル パスを使用する方法に関する情報が記載されています。

詳細情報

Nukeでファイル パスを指定するには、主に 2 つの方法があります。

  • 絶対パス

絶対パスには完全なパス名が含まれるため、たとえば Windows では次のようになります。

C:/Users/Admin/Documents/ Nuke /Project001/Shot001/Frame_####.dpx

  • 相対パス

相対パスには、共通の相対ポイントまでのパスの一部のみが含まれます。次に例を示します。

Shot001/Frame_####.dpx

パスC:/Users/Admin/Documents/ Nuke /Project001の残りの部分は、 Nukeがバックグラウンドで入力する相対参照として提供されます。

つまり、親ディレクトリの場所とすべてのファイルを移動しても、ファイル パスは共通のポイントを基準として参照されるため、プロジェクトは引き続き機能します。

相対パスの参照

完全なファイル パスを参照するために使用される一般的な相対パスは、 Nukeスクリプトのproject_directoryノブで定義されます。

次のいずれかに設定できます。

  • 絶対パス、または
  • Nukeスクリプトが保存されているディレクトリと同じディレクトリ。

project_directoryの値を編集するには:

1) Nukeスクリプトを開く

2) 編集 > プロジェクト設定を選択してプロジェクト設定を開きます。

3) [スクリプト ディレクトリ] ボタンを押すと、 project_directoryノブに次のコードが入力されます。

[python {nuke.script_directory()}]

これにより、 project_directoryパスがNukeスクリプトが保存されているパスと同じに設定されます。

project_directoryを定義する際、 Readノードのファイルパス参照はNukeスクリプトの場所からディレクトリを下位に移動するだけでは十分ではありません../を使用することで、スクリプトの場所からディレクトリを上位に移動することもできます。

これにより、 Nukeスクリプトをサブディレクトリに配置しても、相対参照を使用して必要なすべてのファイルにアクセスできるようになります。例:

完全なプロジェクトパスにアクセスするには: C:/Users/Admin/Documents/ Nuke /Project001/Scripts/ Nuke Script_001.nk

次のようになります:

  • プロジェクトディレクトリ: [python {nuke.script_directory()}]
  • 読み取りノード内の相対パスを次のように設定します: ../Shot002/Frame02_####.dpx

結果の絶対パスは次のようになります: C:/Users/Admin/Documents/ Nuke /Project001/Shot002/Frame02_####.dpx

以下の画像は、このプロジェクトのファイル構造を示しています。

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

    理由をお聞かせください