HDA embedded file

Houdini Digital Asset (.hda) にファイルを埋め込み、opdef コマンドを使ってを正しく参照する方法を紹介する。

使用したバージョン: 15.0.377

1. 元シーンファイルの作成

  1. Geometry ノードを作成。
  2. 中に入り、存在する File ノード (file1) にジオメトリを読み込む。例として、sample_geo.bgeo を読み込んだが、ビューポートに表示できる形状ファイルであれば何でもよい。

2. デジタルアセットの作成

  1. file1 ノードを選択したまま Network ビューの ボタン (Create subnet from selected) をクリック。subnet1 ノードが出来る。
  2. subnet1 ノードを embgeo などと名前を変更。
  3. embgeo 上で RMB (右マウスボタン) ->Create Digital Asset... を実行。必要あれば、ノード名、ラベル名、保存場所を変更。なければそのままAccept をクリックして確定。
  4. Edit Operator Type Properties ウィンドウが開いたら、 Extra Files タブに行く。
  5. ウィンドウ下側にある Filename 脇のをクリック、ファイルブラウザを操作して、sample_geo.bgeo を選択。
  6. Add File をクリックして、選択したファイルを追加する。

    ファイルがExtra Files リストに追加されたのがわかる。
  7. Accept を押してウィンドウを閉じる。

2. Geometry File パラメータの調整

上記のようにデジタルアセットを作成しただけでは、file1 ノードの Geometry File パラメータは、$HOME/Desktop/sample_geo.bgeo のままで、アセットに組み込んだファイルを参照していない。これを変更する必要がある。

  1. Geometry Fileのパラメータを以下のように変更。
    opdef:..?sample_geo.bgeo
  2. 一つ上に上がり、embgeo 上で RMB->Save Node Type を実行。
これで、HDAの編集は終了。

3. HDA の動作確認

作成した HDA が正しく動くかを検証してみる。

  1. Houdini を一度終了。
  2. デスクトップ上にある sample_geo.bgeo をどこか他に退避。
  3. Houdini を再度起動、Geometry ノードを作成、その中で TAB->embgeo を実行。ノードが作成されれば、組み込んだジオメトリがビューポートに表示されるのが確認できる。

まとめ

  • HDA へのファイルの組み込みは Edit Operator Type Properties ウィンドウの Extra Files タブから行う。
  • Add File を実行すれば指定したファイルが追加され、リストでファイルを選択した上で右下の Save as File をクリックすれば、組み込んであるファイルを抽出することも可能。
  • opdef:..?<ファイル名> はHDAに組み込んだファイルを参照するための構文。
    • ".." は、参照元(File ノード)が HDA ノード直下にある場合。
    • HDAを file1 の上の Geometry ノード (geo1) から作成し、HDA ノードと File ノードの間に2階層ある場合、ここの構文は、
      opdef:../..?<ファイル名>
      となる。
    • 親ノード名を明示的に指定したり(名前が変わったり数字が追加されると読めなくなる)、絶対パスで記述する(別の場所に置いたら読めなくなる)ことを避けることで、HDA がどこに配置されても組み込みのファイルを正しく参照できるようになる。

0 件のコメント:

コメントを投稿