On this page

Houdini Path

概要

Houdini Pathとは、設定ファイルなどが検索されるディレクトリのリストのことで、最高優先度(ユーザが作成したディレクトリ)から最低優先度(Houdiniに同梱されている工場出荷時のデフォルトのディレクトリ)の順番で並べられています。 デフォルトのパスには以下のディレクトリが含まれています:

  • パッケージシステムによって追加されたディレクトリ。

  • 現行HIPファイルを含んだディレクトリ($HIP)。

  • ユーザプリファレンスディレクトリ($HOUDINI_USER_PREF_DIR)。

  • インストールディレクトリ($HFS)。

(これらのディレクトリすべてが書き込み可能であるとは限らず、たとえ書き込み可能であったとしても書き込むべきではないことに注意してください。例えば、インストールディレクトリがそうです。)

Houdini Pathは、$HOUDINI_PATH環境変数内にコロン区切りの文字列として設定または読み込むことができます。 ただし、その変数内では、アンパサンド(&)は“標準のHoudini Pathの内容”を意味します。 そのため、通常では、その環境変数の内容には、すべてのパス要素が明示的に含まれることはありません。

パス検索

たいていの場合、Houdiniは、そのHoudini Path上の色々なサブディレクトリから色々なタイプのデータを検索します。 例えば、Houdiniは、Houdini Path上の各ディレクトリ下のhdaサブディレクトリ(存在した場合)からヘルプファイルを、helpサブディレクトリからヘルプを検索します。

Note

歴史的な理由で、Houdiniはアセットをhdaサブディレクトリとotlsサブディレクトリの両方から検索します。

一部のデータタイプに関しては、Houdiniは、Houdini Path上の各ディレクトリ内のデータを検索して、最初に見つかったアイテムのデータが後で見つかったアイテムのデータを上書きしてそれらのデータを構成します。 通常では、これは設定データの場合に当てはまります。

スクリプト

HOMでhou.houdiniPath()を使用することで、Houdini Pathを(展開済みの)文字列のリストとして取得することができます。

以下のHOM関数が用意されており、Houdini Path上のファイルからデータを読み込むのに役立ちます:

hou.findDirectory(dirname)

指定したディレクトリ名の最高優先度サブディレクトリ(Houdini Path内で一番最初に見つかったディレクトリ)のパスを返します。

hou.findDirectories(dirname)

指定したディレクトリ名のHoudini Path上のすべてのサブディレクトリのパスをタプルで返します。

hou.findFile(filename)

指定したファイル名の最高優先度ファイル(Houdini Path内で一番最初に見つかったファイル)のパスを返します。

hou.findFiles(filename)

指定したファイル名のHoudini Path上のすべてのファイルのパスをタプルで返します。

hou.findFilesWithExtension(ext)

指定した拡張子のHoudini Path上のすべてのファイルのパスをタプルで返します。

Note

これらのfind系関数は、何も見つからなかった場合にhou.OperationFailed例外を引き起こすので、その場合のためにtry-exceptブロックをコールする必要があります。例:

try:
    config_dirs = hou.findDirectories("config")
except hou.OperationFailed:
    config_dirs = ()

基本

はじめよう

次のステップ

カスタマイズ

導師レベル