Houdini 20.0 リファレンス スタンドアローンのユーティリティ

hotl ユーティリティ

.hda/.otlファイルを扱うことができるコマンドラインユーティリティです。

On this page

概要

.hdaファイルについて

Houdiniは、.hdaファイルにデジタルアセットを格納します。

.hdaファイルフォーマットは、 バイナリアーカイブフォーマット です。 このファイルフォーマットには、アセットのノードタイプ定義、メタデータ、ノードタイプに関連付けられたシェルフツールに加えて、ヘルプファイル、アイコン、テクスチャなどのバイナリブロブ(“セクション”とか“Extra Files”と呼ばれています)など1つまたは複数のアセットに関するデータの階層を格納することができます。

(.otl(Operator Type Library)は、古いバージョンのHoudiniでこのようなファイルに使われていた拡張子で、引き続き使用可能です。この拡張子のファイルがまだパスに含まれている場合があります。新しい“正式”な拡張子は、.hda(Houdini Digital Asset)です。下位互換性のため、.otlファイルは引き続きHoudiniパス上のotlsディレクトリに格納されます。)

通常は、1つの.hdaファイルに1つのアセットを格納することをお勧めします。 こうすると、柔軟性が最大限に生かされ、特定のアセットのみをインストールできます。 また、どのアセットがパス上のどのファイルによってインストールされるのかも把握しやすくなります。 とはいえ、.hdaファイルに含めることができるアセットの数に制限はありません。 これは、スタジオやプロジェクトに必要なすべてのアセットのライブラリを1つのファイルとして共有できるので便利です。

展開されたディレクトリ

.hdaはバイナリフォーマットなので(.zipのような標準的なフォーマットではありません)、ファイルを見るだけではコンテンツに関する情報を得ることはできません。 このユーティリティを使用すると、アーカイブファイルから情報を引き出して、扱いやすい形にすることができます。 .hdaファイルからメタデータをプリントしたり、既存のライブラリをマージしたり、.hdaファイルを“展開された”ディレクトリ形式に変換することができます。

“展開された”アセットライブラリには、ライブラリ自身のメタデータを格納したファイルと、ライブラリのアセット毎のサブディレクトリが含まれます。 サブディレクトリには、アセットのメタデータ、ノード定義、セクション(“Extra Files”)のコンテンツを格納したファイルが含まれます。

ディレクトリがHOUDINI_PATH/otlsにあり、拡張子が.hdaまたは.otlである場合は、展開されたディレクトリから直接Houdiniにアセットをインストールすることができます(.hdaファイルに再変換する必要はありません)。

展開されたディレクトリ形式は、以下の点で便利です:

  • バージョン管理システムにアセット定義を保存することができます。ライブラリのコンテンツの大半はプレーンテキストに展開されるため、バージョン管理システムはアセットに対する変更を比較し、差異を示すことができます。

  • アセットへの変更をバッチ処理/スクリプト化することができます。

例えば、スタジオは次のようなカスタムアセットワークフローを実装することができます:

  • アセット作成者は、展開された形式でアセットを保存します。その展開されたアセットは、バージョン管理システムによって追跡されます。

  • テストスクリプトは、Houdiniを実行する必要なく、展開されたファイルを調べて、保存済みのアセットのコンテンツをチェックすることができます。

  • スクリプトで-mまたは-Mオプションを使用して、展開されたすべての“ソース”アセットをマージすれば、スタジオのカスタムアセットをすべて含む.hdaファイルをユーザと共有することができます。

Tipsとメモ

  • 展開/折り畳みは、 最初は ディレクトリ、 その次に .hdaファイルという順番で 常に 行なわれます。通常想定される順番とは逆なので注意してください。

  • Houdiniの Asset Manager ユーザインタフェースを使用すると、ライブラリをマージしたり、.hdaファイルをアンパックされたディレクトリに変換したり、アンパックされたディレクトリを.hdaファイルに変換することもできます。

    Houdiniのメインメニューで、 Assets ▸ Asset Manager を選択します。 インストールされたライブラリのリストでアセットライブラリを右クリックし、 Convert to Unpacked Format (または Convert to Packed Format )を選択します。

    すると、ファイル/ディレクトリが“その場”で変換されます(つまり、ファイルは同じ名前の展開されたディレクトリに置き換えられ、ディレクトリは拡張子が.hdaのファイルに置き換えられます)。

  • バイナリのノード定義コンテンツの扱い方は、3つの展開オプション(-x-Xまたは-t)によって変えることができます。展開されたディレクトリを“折り畳んで”ファイルに戻すには、それに対応するオプション(それぞれ-c-Cまたは-l)を使用する必要があります。

    特定のディレクトリがどのように展開されたか分からない場合は、2つのファイルの有無を確認します。

    • サブディレクトリにContents.gzが含まれる場合、ディレクトリは-xを使って展開されているため、-cで折り畳むことができます。

    • サブディレクトリにContents.mimeが含まれる場合、ディレクトリは-tを使って展開されているため、-lで折り畳むことができます。

    • それ以外の場合は、ディレクトリは-Xを使って展開されているため、-Cで折り畳むことができます。

一般的な引数

-h

ヘルプ情報をプリントします。

-a

.hdaファイルを書き出すオプションと一緒に使用すると、ファイルの Author フィールドのコンテンツが設定されます。この引数を指定しない場合、コマンドはユーザ名を使用します。

情報をプリントする方法

hotl [-B|-V] testgeo.hda

ライブラリ(出力では“オペレータ”と呼びます)内のノードタイプに関するメタデータをプリントします。例:

Operator type library: testgeo.hda
Operator:     mygeo
Label:        My Geo
Path:         oplib:/Object/mygeo?Object/mygeo
Icon:         OBJ_geo
Table:        Object
License:
Extra:
User:
Inputs:       0 to 0
Subnet:       false
Python:       false
Empty:        false
Modified:     Mon Jul 12 13:21:01 2021

ファイルに複数のノードタイプが含まれている場合は、各ノードタイプのフィールドを空白行で分けてプリントされます。

次のオプションを使用すると、出力を変更することができます:

-B

各アセットのメタデータの代わりに、各ノードタイプのフルネームのみをプリントします。

例:

Object/mygeo
Object/testgeo

これは、テストスクリプトやアセット管理システムなどにおいて、Houdiniを実行する必要なくファイル内の利用可能なアセットをすべてリストしたい場合に便利です。

-V

各アセットのメタデータのプリントの一部として、アセットに関連付けられたセクション(Extra Files)の名前をプリントします。例:

Operator type library: testgeo.hda
Operator:     mygeo
Label:        My Geo
Path:         oplib:/Object/mygeo?Object/mygeo
Icon:         OBJ_geo
Table:        Object
License:
Extra:
User:
Inputs:       0 to 0
Subnet:       false
Python:       false
Empty:        false
Modified:     Mon Jul 12 13:21:01 2021
Sections:
        DialogScript
        CreateScript
        TypePropertiesOptions
        Help
        Tools.shelf
        ExtraFileOptions
        InternalFileOptions
        Contents.gz

これは、特定のセクションを持つ(または持たない)アセットを見つけたい場合に便利です。

.hdaファイルをファイルのディレクトリに変換する

hotl -x|-X|-t directory hdafile

hdafileのコンテンツを、directory下のファイルツリーに展開します。

色々なオプションを使用して、どのようにノード定義を展開するかを制御します。

-x

各アセットのメタデータとセクションを個々のサブディレクトリに展開しますが、ノード定義データは展開 しません 。 ノード定義データは、各アセットのサブディレクトリにある圧縮されたContents.gzファイルに保持されます。

-X

各アセットのメタデータとセクションを個々のサブディレクトリに展開します。 また 、ノード定義ファイルはContents.gzアーカイブに残すのではなく、Contents.dirサブディレクトリに解凍します。

このオプションは、次の-tとは対照的に、ノード定義のバイナリセクションを個々のファイルに保存します。

-t

各アセットのメタデータとセクションを個々のサブディレクトリに展開します。 また 、ノード定義ファイルをContents.dirサブディレクトリに展開します。

このオプションは、ノード定義のバイナリセクションを、単一のMIMEエンコードされたContents.mimeファイルに保存します。

Tip

このオプションは、バージョン管理システム(SubversionやGitなど)にアセットライブラリを格納する場合に適しています。 -Xによって作成された未加工のノード定義ファイルは、テキストのように見えるものの実際は任意のバイナリデータを含んでいるため、バージョン管理システムが混乱する可能性があります。

-tを使用する場合は、追加のオプションを使用することができます:

-p

MIMEファイルの各セクションのタイムスタンプを含めます(.hdaファイル内に保存されます)。

展開されたディレクトリを.hdaファイルに戻す

hotl -C|-C|-l [-b] directory hdafile

directory下のファイルを新しいアーカイブhdafileに統合します。

ディレクトリを折り畳む各オプションは、どのようにディレクトリを展開したかに合わせて選択します(上記参照)。

-c

-xの反対。各アセットのサブディレクトリでContents.gzファイルを探し、それをノード定義として使用します。

-C

-Xの反対。各アセットのサブディレクトリのContents.dirディレクトリで個々のファイルを探し、それらをノード定義に統合します。

-l

-tの反対。バイナリセクションを含むContents.mimeファイルを格納したContents.dirディレクトリで、個々のファイルを探します。

ディレクトリをファイルに折り畳む時は、次のオプションも使用することができます:

-b

出力される.hdaファイルのバックアップコピーを作成します。

アセットライブラリをマージする

hotl <-m|-M> [-e] source_hda... dest_hda

1つまたは複数の“ソース”ライブラリのコンテンツを“保存先”のライブラリにコピーします。各“ライブラリ”は、.hdaファイルまたは展開されたディレクトリとなります。

色々なオプションを使用して、同じ名前のノードタイプをどのようにマージするかを制御します:

-m

名前が重複しているノードタイプを保持します。 Houdiniにインストールするときは、Houdiniのアセット名解決ルールに基づいて、ノードタイプの1つがもう片方を上書きします。

-M

後の“ソース”ファイルのノードタイプ定義が、同じ名前を持つ、それより前のソースファイルのノードタイプを上書きします。

次のオプションも使用することができます:

-e

空のシェルフツールのセクションを上書きしません。

--chmod arg

マージ後に、宛先ファイルのファイル権限を変更します(UNIX)。

スタンドアローンのユーティリティ

  • abcconvert

    Alembicフォーマット間を変換します。

  • abcecho

    Alembicファイルに関する情報を出力します。

  • abcinfo

    Alembicファイルに関する情報を出力します。

  • chchan

    チャンネルコレクションをアクションチャンネルフォーマットへ(から)コピーします。

  • chcp

    チャンネルコレクションファイルを他のフォーマットにコピーします。

  • chinfo

    チャンネルコレクションファイルに関する情報を出力します。

  • claudio

    CHOPデータ(clip)をオーディオフォーマットへ(から)コピーします。

  • clchan

    CHOPデータ(clip)をアクションチャンネルフォーマットへ(から)コピーします。

  • clchn

    CHOPデータ(clip)をチャンネルコレクションフォーマットへ(から)コピーします。

  • clcp

    CHOPデータ(clip)を他のフォーマットにコピーします。

  • clinfo

    CHOPデータ(clip)ファイルに関する情報を出力します。

  • dsmconvert

    ディープシャドウ/カメラマップをあるフォーマットから別のフォーマットへ変換します。

  • dsmmerge

    2つ以上のディープシャドウ/カメラマップファイルを結合します。

  • dsparse

    ダイアログスクリプトを解析して表示します。

  • gabc

    AlembicとHoudiniのジオメトリ間を変換します。

  • gconvert

    Houdiniポリゴンフォーマット間を変換します。

  • gdxf

    DXFポリゴンをHoudiniフォーマットへ(から)変換します。

  • geodiff

    ジオメトリの差分を表示します。

  • geps

    EPSファイルをHoudiniポリゴンフォーマットへ変換します。

  • giges

    IGESジオメトリファイルを変換します。トリムNURBSパッチとカーブを扱います。

  • ginfo

    ポリゴンファイルの統計情報を出力します。

  • glightwave

    LightWaveファイルをHoudiniフォーマットへ(から)変換します。

  • gpdb

    .pdbファイルとHoudiniフォーマットを双方向に変換します。

  • gplay

    ジオメトリビューア。

  • gply

    .plyファイルとHoudiniフォーマットを双方向に変換します。

  • gptex

    ジオメトリファイルからPtexture画像ファイルを作成します。

  • greduce

    ファイルのポリゴンを削減します。

  • gwavefront

    .objファイルをHoudiniフォーマットへ(から)変換します。

  • hcollapse

    ディレクトリ構造を折り畳みます。

  • hcpio

    CPIOアーカイブコマンドのサブセットコマンドでhipファイルの抽出/折り畳みができます。

  • hexpand

    hipファイルをディレクトリ構造に展開します。

  • hkey / License Administrator

    ライセンスとライセンスサーバーオプションを表示/管理するためのグラフィカルユーザインターフェースを開きます。

  • hoiiotool

    画像操作用の万能ツール。

  • hotl ユーティリティ

    .hda/.otlファイルを扱うことができるコマンドラインユーティリティです。

  • hrender

  • hsc

    Bloscファイル(.sc)の圧縮または解凍をします。

  • hscript

    コマンドラインのHScriptインタプリタ。

  • hserver

    Houdiniは、このプロキシサーバーを介してsesinetdライセンスデーモンと通信します。

  • htexcache

    ディスクテクスチャキャッシュを照会または修正します。

  • husk

    Karmaまたは一部の他のHydraクライアントを使ってUSDファイルをレンダリングするためのコマンドラインユーティリティ。

  • i3dconvert

    3DテクスチャファイルフォーマットをHoudiniジオメトリへ(から)変換します。

  • iautocrop

    ピクセル値に基づいて画像をクロップします。

  • icineon

    10ビットCineonフォーマット画像を8ビットフォーマットへ変換します。

  • icomposite

    画像をレイヤーでコンポジットします。

  • iconvert

    あるタイプの画像を別のタイプの画像に変換します。

  • icp

    画像のある領域を新しい画像に分離します。

  • idenoise

    画像ファイルからノイズを除去します。

  • idiff

    画像の差分を表示します。

  • iflip

    画像の向きを反転します。

  • iinfo

    画像に関する情報を出力します。

  • ilut

    標準チャンネルフォーマットまたは他のLUTからLookup Table(.lut)を生成します。

  • ilutcomp

    2つのLUTから1つのLookup Table(.lut)を生成します。

  • ilutinfo

    Lookup Table(LUT)ファイルの情報をプリントします。

  • imaketx

    画像ファイルから.exrまたは.ratのmipmapテクスチャを生成します。

  • imdisplay

    画像をMPlayウィンドウで開きます。

  • iprint

    画像のRGBA値をテキストとして出力します。

  • iquantize

    画像の色数を減らします。

  • isixpack

    立方体の6面を意味する6枚の画像または十字展開した画像から環境/反射マップを生成します。

  • itilestitch

    クロップウィンドウを含んだ一連の画像ファイルを一枚の画像にまとめます。

  • izg

    Z深度画像を8ビットのグレースケールに変換します。

  • Launcher

    Houdini Launcherは、Houdiniとそのコンポーネントをダウンロード、インストール、アップグレード、アンインストールします。

  • mcacclaim

    AcclaimモーションファイルをHoudiniのスクリプトとチャンネルファイルに変換します。

  • mcbiovision

    BioVisionモーションファイルをHoudiniのスクリプトとチャンネルファイルに変換します。

  • mcmotanal

    Motion Analysis TRCモーションファイルをHoudiniのスクリプトとチャンネルファイルに変換します。

  • mcp

    画像シーケンスを動画ファイルに変換します。

  • minfo

    動画ファイルに関する情報を出力します。

  • mqserver

    PDG/TOPs用メッセージキューサーバー

  • py23convert

    HDAのPython2エクスプレッションをPython2/3に変換します。

  • renderstatsoverlay

    レンダリング統計情報がベイクされた(設定次第で縮小された)バージョンのレンダリング画像を生成します。

  • renderstatsreport

    EXR画像からレンダリング統計情報を含んだHTMLページを生成します。

  • sesictrl

    コマンドラインからHoudiniライセンスサーバーオプションを設定します。

  • sesinetd

    Houdiniライセンスサーバー。このプログラムはバックグラウンドで実行されてHoudiniライセンスを管理します。

  • siminfo

    シミュレーションキャッシュファイルの統計をプリントします。

  • spiff

    テキストの差分を表示します。

  • spy

    UNIXファイルシステムを操作するシェルユーティリティ。

  • usdview

    USDシーンを表示/検査するためのコマンドラインユーティリティ。

  • vexcache

    VEXコンパイルキャッシュを照会または編集します。

  • vexexec

    CVEXシェーダを実行します。