On this page |
概要 ¶
IFDファイルとは、フレームのレンダリングに必要なすべての情報(ライト、カメラ、ジオメトリ、シェーダ、レンダープロパティなど)を含んだ シーン記述ファイル のことです。 Mantraは、(Houdiniシーンから生成された)IFDファイルを受け取ってレンダリングします。
IFDファイルには、シーンのレンダリングに必要なジオメトリ(例えば、キャラクタスキン、プロップなど)を含めることもできます。ジオメトリを格納する方法が2つあります:
Temporary geometry files (デフォルト)
ジオメトリを一時ファイルに書き出し、それをIFDで参照します。これにはメリットがいくつかあります:
-
各ジオメトリを一つずつIFDに書き出すのではなく、HoudiniがIFDとジオメトリファイルを並行して書き出すことができるので、IFDの生成を速くすることができます。
-
Mantraが外部ジオメトリファイルを並行して読み込むことができるので、IFDの読み込みを速くすることができます。
-
外部ジオメトリファイルがIFD内部に実装されるわけではないため、圧縮オプションを使用することができるので、使用する合計のディスク容量が小さくなります。
-
ジオメトリをフレーム間で共有することができます。各IFDファイルは単一フレームを表現しています。アニメーションのために複数のIFDファイルを書き出す時に、Houdiniは静的ジオメトリを検出し、各IFDが複数フレーム間で同じ外部ファイルを参照するようにすることができます。静的ジオメトリ(例えば、大道具や小物)がたくさんある場合、これは飛躍的にディスク容量が節約されます。
Inline geometry
ジオメトリをIFDファイルにバイナリとして書き出します。これは、IFDファイルが非常に大きくなって、IFDファイルの生成に時間がかかってしまうことがあります。このメリットは、1個のIFDファイルにレンダリングに必要なすべてを含めることができることです。そのため、アセットの追跡がしやすいです。
Houdiniはパックディスクプリミティブと呼ばれるタイプのジオメトリに対応しています。このタイプのジオメトリは、Houdiniがディスクファイル内のジオメトリを参照できるように表現されていて、そのジオメトリは必要に応じてディスクファイルからストリームされます。このタイプのジオメトリをIFDに“inline”として含めると、そのファイル参照だけがIFDに書き出され、MantraはHoudiniと同様にディスクからジオメトリをストリームするので、このタイプのジオメトリはIFDのサイズを大きくしたり生成を遅くしたりしません。
(上記の)Temporary geometry filesを使用するよりも高速なパックディスクプリミティブの欠点は、ジオメトリファイルを手動で管理しなければならないことです。
ジオメトリファイルの格納先 ¶
Houdiniは、IFDと一緒に膨大な数のジオメトリファイルを生成することができます。ディスク容量が不足しないように、それらのジオメトリファイルの格納先を管理し、レンダーファームに関してはネットワークからアクセスできるようにする必要があります。
Mantraレンダーノードには、レンダリングするジオメトリファイルの格納先となるパラメータが2つあります。
Local temp storage
Save Geometry Inlineがオフの時、Houdiniは(IFDをディスクに保存するのとは対照に)IFDをMantraに 直接 パイプする際にジオメトリファイルをこのディレクトリに保存します。 これは、IFDをネットワークディスクに保存すると同時に、Mantraに直接パイプする時には遅いネットワークストレージよりも高速なローカルストレージを常に使用したい時に役立ちます。
パイプ用に保存された一時ファイルは自動的にクリアされるはずですが、クラッシュやジョブの中断が原因でHoudiniはそれらのファイルをディスク上に残してしまうことがあります。 このディレクトリ内に残った古いファイルは定期的に削除してください。
Shared temp storageも参照してください。
(これらのパラメータは実際にはレンダープロパティなので、例えばカメラ毎に変更することができます。以下の他のプロパティを参照してください。)
How to ¶
To... | Do this |
---|---|
Houdiniが一時ジオメトリファイルを書き出す場所をセットアップする |
Tip 通常では、 Local temp storage ディレクトリを変更する必要はありません。このディレクトリは、(インタラクティブレンダービューで)一時ジオメトリファイルを直接Mantraにストリームする時にHoudiniが保存する場所です。このディレクトリを変更するのは、SSDのような高速なドライブ上のディレクトリを選択したい時くらいです。 |
Houdiniがジオメトリを埋め込むようにセットアップする |
デフォルトはオフです(つまり、ジオメトリがIFDに埋め込まれるのではなく、外部の一時ファイルに書き出されます)。 |
上級 ¶
-
ジオメトリが変化しないことが分かっていれば、このレンダープロパティを追加して、それを有効にすることでジオメトリファイルの再生成がされない分、インタラクティブレンダリングを高速化することができます:
Reuse cached outlined geometry
通常では、Save Geometry Inlineがオフの時、HoudiniはIFDを生成する際に常にジオメトリファイルを書き出し、既存のファイルを上書きします。 このオプションを有効にすると、同じ名前のファイルが既に存在した時に、Houdiniは、それらの既存ファイルを上書きせずに再利用するようになります。 これは、ファイルの更新日時で比較 せず 、ファイル名 だけ をチェックしているので、そのジオメトリが一度生成されたら、これがオンになっている限りは、そのジオメトリはまったく更新されなくなります。 これをオンにすることで、ジオメトリを更新する必要がない限りは、ライティングを飛躍的に高速化することができます。
このプロパティを追加した場合、必ず最新のジオメトリを使って最終レンダリングを行なう時には、常にこれを無効にしなければならないことを忘れないでください。
-
Save geometry inline チェックボックスはレンダープロパティです。各オブジェクトにそのレンダープロパティを追加ことで、各オブジェクトのジオメトリを埋め込むか、一時ファイルに書き出すかを設定することができます。
Save Geometry Inline
ジオメトリをIDFファイルに書き出します。これをオフにすると、代わりにHoudiniはジオメトリを外部一時ファイルに書き出します。 このオプションをオフ(デフォルト)のままにすると、レンダリングが速くなり、あまりディスク容量を使用しません。 詳細は、IFDジオメトリを参照してください。
Shared temp storageとLocal temp storageも参照してください。