Houdini 17.5 HScriptコマンド

HScript言語のガイド

On this page

HScriptコマンドのリスト

変数

HScriptでは、setコマンドを使って文字列を変数に割り当てることができます:

変数のSet

set x = "hello"

グローバル変数のSet

set -g x = "hello"

または

setenv x = "hello"

変数のUnset

set -u x

変数名は、アルファベットまたはアンダースコア(_)で始めて、その後はアルファベット、数字、アンダースコアで続けなければなりません。

コマンドで変数を使用するには、変数名の頭にドル記号($)を付けます:

> set foo = "bar"
> echo $foo
bar

変数名を中括弧({})で閉じることで、変数名が前後のテキストに影響を受けないようにすることができます:

> echo ${foo}baz
barbaz

さらに、中括弧によってHScriptは、その括弧の中の変数を評価する前に、その中の変数を展開します。これによって単純な配列を模倣することができます:

set foo1 = Padma
set foo2 = Mohammed
for i = 1 to 2 echo ${foo$i} end
Padma
Mohammed

HScriptでは、変数は、ローカルまたはグローバル(時々、システム変数と呼びます)のどちらかになります。

ローカル変数は、スクリプトではローカルに実行されます。スクリプトが終了すると、その変数が消えます。ローカル変数は、それを定義しているスクリプト外では使われません。ローカル変数を作成または設定するには、setを使用します。forforeachループで作成される変数は常にローカルです。

グローバル変数は、すべてのスクリプトとHoudiniが起動したプログラムで利用可能です。グローバル変数を作成または設定するには、setenvまたはset -gを使います。

変数モディファイア

モディファイアを変数名の後に追加することで、返される値を編集することができます。それらのモディファイアは変数に保存されている値を変更するわけではなく、単にモディファイアによって変数が返す値を変更するだけです。

変数の値を修正するには、変数名の後に:コードを追加します。例:

> set afile = /home/matt/bin/foo.bar
> echo $afile:e
bar
> echo ${afile:e}
bar

利用可能なコードは以下の通りです:

:h

(Head) パス名のパスの部分(つまり、ファイル名を除いたパス)。

> echo ${afile:h}
/home/matt/bin

:t

(Tail) パス名のファイル名の部分。

> echo ${afile:t}
foo.bar

:e

(Extension) ファイル名の拡張子。

> echo ${afile:e}
bar

:r

(Root) 拡張子を 除いた フルパス名。

> echo ${afile:r}
/home/matt/bin/foo

:s/ptrn/repl/

(Substitute) パターン ptrnrepl に置換します。 以下の:g:aのモディファイアを参照してください。

> echo ${afile:s}/foo/baz/
/home/matt/bin/baz.bar

:u

(Uppercase) 最初に見つかった小文字を大文字に変換します。 以下の:g:aのモディファイアを参照してください。

> set str = Hello There
> echo ${str:u}
HELLO THERE

:l

(Lowercase) 最初に見つかった大文字を小文字に変換します。 以下の:g:aのモディファイアを参照してください。

> set str = Hello There
> echo ${str:l}
hello there

以下のコードをモディファイアの前に追加することで、モディファイアの動作を補うことができます:

:g

(Global) 文字列をスペース区切りの文字列のリストとして扱い、その後のコードをリストのコンポーネント毎に適用します。

:a

(All) その後のコードを可能な限り何回も再帰的に適用します。

例:

set A = "foo1 foo2 foo3 foofoo4"

$A:u == "Foo1 foo2 foo3 foofoo4"
$A:u:u == "FOo1 foo2 foo3 foofoo4"
$A:gu == "Foo1 Foo2 Foo3 Foofoo4"
$A:gu:u == "FOo1 Foo2 Foo3 Foofoo4"
$A:au == "FOO1 FOO2 FOO3 FOOFOO4"

$A:s/foo/bar/ == "bar1 foo2 foo3 foofoo4"
$A:s/foo/bar/:s/foo/bar/ == "bar1 bar2 foo3 foofoo4"
$A:gs/foo/bar/ == "bar1 bar2 bar3 barfoo4"
$A:as/foo/bar/ == "bar1 bar2 bar3 barbar4"

コマンドの出力を変数に格納する

エクスプレッション関数と違い、HScriptコマンドは関数ではないので、戻り値がありません。ただTextportにコマンドの結果を出力するだけです。コマンドの結果を変数に格納しようと

set objects = opls /obj

とタイプしても、$objects変数には文字列"opls /obj"が設定されるだけです。コマンドの結果を文字列として取り込むには、runエクスプレッション関数の中にそのコマンドを記述して、HScriptがそのエクスプレッションを評価するために、バッククォートで囲みます。以下がその例です。

set objects = `run("opsls /obj")`
echo $objects
model ambient1 light1 light2 light3 cam1

コマンドの出力をファイルにリダイレクトする

HScriptコマンドの出力をファイルにリダイレクトするには、コマンドの中で>filenameを使います。ファイルを上書きせずに追加書き込みするには、>>filenameを使います。標準出力と標準エラー出力の両方をリダイレクトするには、>&filenameを使います。

UNIXコマンドを使って外部プロセスを起動するとき、Textportの代わりに外部シェルでリダイレクトしたい場合があります。Houdiniコマンドインタプリタが外部シェルより先にリダイレクトに作用しないようにシングルクウォートで引数を囲みます。

unix myscript.pl '>output.txt'

制御構文

if

ifステートメントは条件が真のときにコマンドブロックを実行します。else ifを使えば別の条件でコマンドブロックを実行することができ、elseを使えば、それら以外の条件でコマンドブロックを実行することができます。

if condition1 [then]
    commands to execute if condition is true
else if condition2
    commands to execute if condition2 is true
else
    commands to execute otherwise
endif

例:

if ( $F == 1 ) then
    echo Frame One
else
    echo Not Frame One
endif

if内のステートメントは1行ずつ記述する必要があります。つまり、if ($F == 1) echo Frame Oneのようなステートメントは機能しません。

for

forステートメントは、count変数をstartからendまでstep分増やしながらコマンドブロックをループします。

for count_variable = start to end [step stepsize]
    commands to loop
end

count変数名の前に$は不要です。例:

for i = 1 to 3
    echo $i
end

for i = 1 to 100 step 3
    echo $i
end

foreach

foreachステートメントは、リストの各エレメントを順々に変数に設定しながらコマンドブロックをループします。

foreach iterator_variable (list_string)
    commands to loop
end

例:

foreach i ( a b c )
    echo $i
end

foreach object ( `run("opls -d")` )
    echo Object $object
end

HScriptには本当のリストや配列タイプがありません。foreachステートメントがループするリストとは、コマンドラインに渡す引数と同じように、HScriptがエレメントに分割する文字列のことです。HScriptのコマンドラインの分割の方法を参照してください。

while

whileステートメントは、条件が真である限り、コマンドブロックをループします。例:

set i = 0
while ( $i < 10 )
    set i = `$i+1`
    echo $i
end

break/continue

breakステートメントはループを抜けます。continueステートメントは次のループに進みます。

条件演算子

ifとwhile構文で以下の演算子を使用することができます:

()

グループ化、優先順位の設定。

== != < > <= >=

比較: 等号、不等号、未満、より大きい、以下、以上。

&& ||

論理積、論理和。

明確化するためにHScriptエクスプレッションを括弧で閉じることができますが、不要です:

for i = 1 to 10
...
end

for (i = 1 to 10)
...
end

引用符文字列

シングルクォート(')内のテキストは展開されません。

ダブルクォート(")内のテキストは変数を展開します。

ダブルクォートで囲んだ文字列は1個の引数とみなされます。

バックスラッシュ文字(\\)は、その後の文字をエスケープします。例えば、文字列にダブルクォートを使用したい場合は、"I had a \\"great\\" time."のように記述します。

文字列の変数を展開する必要がないなら、シングルクォートを使用すれば評価速度が上がります。

スペースなしで2つのクォート文字を並べると、それらは1個の引数とみなされます。

例:

set foo = "Hello world"
echo '$foo='"$foo"
$foo=Hello world

echoコマンドは、'$foo=Hello world'として1個の引数としてみなしています。

HScriptでは、ダブルクォートよりもバッククォートの方が優先度が高いです。ダブルクォートでバッククォートの文字列を閉じていれば、バッククォートの文字列は最初のダブルクォートを完結させないでダブルクォートを含んでしまう場合があります。

例えば、以下の文字列があったとします:

foo`ch("/obj/geo1/tx")`

これは1個の引数とみなされます。

一般的な規則では、バッククォートとその中に入っている文字の間にはスペースを含めません。余分なスペースがあると、Houdiniはその文字列を評価しない場合があります。

コメント

#文字の後は、コメントになります。 文字として#を使用したいなら、その前にバックスラッシュ(\\)を付けてエスケープします。

コマンドラインの分割

Houdiniは入力行をスペースで単語に分割します。特殊文字; < > ( ) =を引用符のない文字列の中で使う場合には、注意してください。それらの特殊文字をHScriptの構文として動作させるには、前後に スペースを挿入します。HScriptは引数に関しては非常にゆるいです。基本的には、HScriptがコマンドやオプションとして理解しないものは、文字列として扱われます。これによって、引用符を記述する必要がなく、複数レベルの引用符を付けるのが簡単です。

一般的な規則では、HScriptに別解釈されたくない文字列には引用符を囲むべきです。

HScript Textportの使い方

TextportではHScriptコマンドを入力して結果を確認することができます。Textportウィンドウを新規で開くには、Windows > Hscript Textportを選択します。Textportをペイン内に開くには、PaneメニューのSet Pane Tab Typeから Textport を選択します。

  • クィックコピーアンドペースト: テキストを選択して、クリックすると、コマンドラインにそのテキストがペーストされます。

  • クィックヘルプ: "help コマンド名"をタイプするとTextportにテキスト版のコマンドのオンラインヘルプが表示されます。

  • 先行入力:Houdiniでは現在のコマンドの実行が終了する前に先立って新しいコマンドをタイプし始めることが可能です。Houdiniは、そのコマンドが終了すると、"バッファにある"コマンドを実行します。

  • スクロール:PgUpと((PgDn)を押すとスクロールします。

  • 継続: まだ終了していないコマンドライン(例えば、forループのブロックの途中)でEnterを押すと、コマンドラインは、オープンブロックをendで終えるまでタイプすることができます。

  • コマンドヒストリー

    コマンドラインで以前のコマンドの再呼び出し

    を押すことで以前のコマンドの履歴を遡ることができます。以前に実行したコマンドのテキストは編集することができます。

    最後のコマンドの繰り返し

    コマンドラインで!!をタイプします。

    以前のコマンドの繰り返し

    num番目前のコマンドを実行するには、!-numとタイプします。 例えば、5つ前のコマンドを実行するなら、!-5とタイプします。

    パターンに一致した最後のコマンドの繰り返し

    コマンドラインで!stringとタイプすれば、そのstringを含む以前のコマンドを実行します。

    コマンドヒストリーの閲覧

    historyコマンドを使うとコマンドヒストリーが表示されます。

  • 使用頻度の高いコマンドのエイリアスの作成

    HScriptでは、aliasコマンドを使って使用頻度の高いコマンドを引数を含めて新しい名前のコマンド名にすることができます。例えば、頻繁にシーンのオブジェクトの名前をリストにすることがあるなら、そのコマンドをobjsというように短い名前にすることができます。例:

    alias objs "opls /obj"
    

    コマンドラインでobjsとタイプすると、opls /objが実行されます。

    HScriptのエイリアス展開は、cshほど高度ではありません。例えば、エイリアス展開は再帰的ではありません。つまり、以下のコマンドは期待した結果にはなりません:

    alias opcd opcf
    alias cd opcd
    

    cdエイリアスは、unknown command "opcd"というメッセージが出ます。これはopcdのエイリアス展開が失敗しているからです。

    また、HScriptのエイリアス展開には、cshのようにヒストリーメタ文字置換機能がありません。

HScriptスタンドアローンアプリケーション

hscriptアプリケーションは、$HFS/binにあります。システムのコマンドライン上でそれを実行すると、Textportと同じコンソールが開き、そこでHScriptコマンドを実行して結果を確認することができます。

HScriptアプリケーションでは、GUIを使わなくてもHoudiniのフルパワーを発揮できるバッチスクリプトを記述することができます。

コマンドラインでhscript -qをタイプすれば、HScriptを起動したときに通常では表示されるバージョン情報を非表示にすることができます。これはHScriptスタンドアローンの処理の結果をリダイレクトするときに役に立ちます。

スクリプトファイルの作成と使用

スクリプトファイルに複数のコマンドをカプセル化することができるので、その機能を再利用することができます。単純に実行したいコマンドを含んだテキストファイルを作成するだけです。一般的には、スクリプトパスにスクリプトファイルを保存します。例えば、$HOME/houdiniversion/scriptsにスクリプトファイルを保存します。

スクリプトには、exitステートメントを記述してスクリプトを途中で終了させることができます。これは、すべてのループをきっちりと終了します。HScriptは、UNIXシェルの"exit status"の設定をサポートしていませんが、グローバル変数を使えば同じことができます。

スクリプトを実行する時には引数を渡して動作をカスタマイズすることができます。スクリプトファイルに引数を使用するには、$argn変数を使います:

$arg0はコールしたスクリプトの名前が設定されます。

$arg1, $arg2, $arg3,などは、スクリプトに渡された引数が設定されます。

$argcはスクリプトに渡された引数の数が設定されます。例えば、myscriptスクリプトに引数をfirst second thirdという引数を指定すると、$argcは3になります。

引数の変数の番号をもっと単純に取り扱うには、shiftコマンドを使用します。shiftコマンドは、最初の引数を除去して、残りの引数をシフトします。つまり、$arg2だった引数が$arg1になります。シフトの繰り返しによって$arg1の値だけですべての引数を処理することができます。

readコマンドによってユーザーからの入力を読み込むことも可能です。

スクリプトの実行

スクリプトパスにあるスクリプトを実行する場合は、スクリプト名(.cmdの拡張子を付けて)をタイプして、その後に引数を指定します。

myscript.cmd hello 15

ディスクから任意のスクリプトファイルを実行する場合は、 sourceコマンドとファイル名をタイプして、その後に引数を指定します。

source ~/myscript.cmd 1 10 hello

Houdiniのスクリプトパス

HOUDINI_SCRIPT_PATH環境変数には、スクリプトを検索するディレクトリのリストが設定されています。そこには、$HFS/houdini/scripts(Houdiniインストールで入ったスクリプト)、$HSITE/scripts(サイトに特化したスクリプト)、$JOB/scripts(ジョブに特化したスクリプト)、$HOME/houdniversion/scripts(各ユーザーのスクリプト)が含まれています。

スクリプトファイルがそのパスにあれば、Houdiniからその名前(.cmdの拡張子を付けて)をタイプすれば、そのスクリプトを実行することができます。

そのパスのディレクトリで後で見つかったスクリプトが最初に見つかった同じ名前のスクリプトを上書きします。この特徴を利用すれば、Houdiniに既に入っているスクリプト(123.cmdなど)を、あなたが作成したスクリプトを$HOME/houdniversion/scriptsに同じ名前で配置することで置換することができます。

イベントに反応してスクリプトを実行する

起動時

$HFS/houdini/scripts/123.cmd

Houdiniを最初に起動すると、このスクリプトが実行されます。その後は、File > Newを選択しても二度と実行されません。このスクリプトには、たくさんのコードが含まれており、Houdiniの環境を初期化します(初期ジオメトリの読み込みを含む)。このファイルに何か変更を加えたい場合は、それをスクリプトパスのもっと後方で定義されたどこかのディレクトリ(例えば、$HOME/houdniversion/scripts)にコピーし、修正します。123.cmdはHoudini FX用のスタートアップスクリプトです。Halo、Alfredなどのほかのプロダクトは、scripts/下のそのプロダクト用の名前のスタートアップスクリプトを使用します。

Note

Houdini FXのみが123.cmdを実行します。Houdini Coreは起動時に123.cmdではなくhoudinicore.cmdを実行します。 123.cmdhoudinicore.cmdは異なるプロダクトに対して行なわれること以外はどちらも同じ目的を果たします。

シーンファイルを開く、または、新しいシーンファイルの作成時

path/scripts/456.cmd

Houdiniが保存したシーンを開くと、このスクリプトが実行されます。このスクリプトは、Houdiniインストール時には、何も入っていません。スクリプトパスのどこか(例えば、$HOME/houdniversion/scripts)にそのスクリプトを作成すれば、Houdiniはシーンを開く(File > Newを含む)度に、そのスクリプトを実行します。

ノードの作成時

$HFS/houdini/scripts/op_type/op_internal_name.cmd

ノードを作成すると、Houdiniはscriptsのサブディレクトリからそれに該当するスクリプトを実行します。

(いくつかのオペレータにはHoudiniインストール時に色々なタスクを実行するスクリプト(古いバージョンのHoudiniと互換性を維持するためのスクリプトを含む)があります。一方で他のオペレータにはスクリプトがありません。)

これはビルトインオペレータの動作をカスタマイズしたり、あなたが作成したカスタムオペレータ(デジタルアセット)を拡張するのに非常に役に立ちます。

スクリプトパスに適切なディレクトリと名前を設定したスクリプト(Box SOPを例にすると、$HOME/houdniversion/scripts/sop/box.cmd)を新しく作成することで、そのノードを作成する時に、そのスクリプトを実行することができます。

オペレータの内部名を取得するには、Tools > Operator Type Managerを選択して、 Internally defined operators から調べてください。

ノードの削除時

あるノードを削除した時に実行するスクリプトを設定するには、ノードのパラメータエディタのギアメニューから Edit deletion script を選択します。

これは、メインノードを削除した時に、それに関連するノードも削除されるカスタムオペレータを作成するときに役に立ちます。例えば、ビルトインのボーンオブジェクトには、ボーンが削除されるとkinematic solver CHOPなどのサポートノードを削除するスクリプトが設定されています。HScriptではopdelscriptコマンドを使ってノード用の削除スクリプトを設定することができます。デジタルアセットのイベントに関しては、デジタルアセットのスクリプトを参照してください。

選択時

Houdiniは、ユーザーがビューア内で特定のオブジェクトを選択した時にカスタムスクリプトを実行することができます。オブジェクトのパラメータエディタの Misc タブにあるSelect Scriptパラメータを設定します。そのパラメータの値は、HScriptとして解釈されますが、外部スクリプトファイルをコールするように選択することもできます。SelectまたはPoseツールを使ってビューア内のオブジェクトを選択すると、Houdiniは、このスクリプトを実行します。ネットワークエディタからノードを選択したり、他のツールを使ってオブジェクトを選択してもスクリプトは実行されません。

この特徴を利用すれば、ユーザーインターフェース(シーン内でクリックすれば何かを変更する"スイッチ"や"ボタン"などのオブジェクト)を作成したり、デバッグ(オブジェクトを選択すると、そのオブジェクトに関する情報がメッセージで表示される)することができます。

Houdiniは、選択したオブジェクトのコンテキストのスクリプトを実行します。opcf ..を使えば、選択したオブジェクトが存在するネットワークレベルに移動することができます。非常に役に立つ裏技の1つは、オブジェクトをクリックすると、他のオブジェクトのプロパティ(ディスプレイフラグなど)を設定するようにopsetコマンドを使用することです。例えば、"on"のNullをクリックするとオブジェクトグループが可視になり、"off"のNullをクリックするとオブジェクトが不可視になる単純なインターフェースを作成することができます。

Select Scriptでは以下の変数が利用可能で、それらを使ってスクリプトの動作を修正することができます。Select Scriptを設定したオブジェクトからそれらの変数の値を確認するには、Select Scriptにmesssageコマンドを使います。例えば、Select Scriptに以下のスクリプトを記述します:

Selection Scriptにスクリプトファイルを指定する場合:

message $SELECT_NAME    

Selection Scriptに直接コードを記述する場合は"\\"でエスケープする必要があります:

{{{ message \$SELECT_NAME }}} オブジェクトを選択すると、Houdiniはオブジェクトの名前を表示したポップアップウィンドウを表示します。

SELECT_NAME

選択したオブジェクトの名前。SELECT_PATHは選択したオブジェクトのパス。

SELECT_SHIFT, SELECT_ALT, SELECT_CTRL

ユーザーがオブジェクトを選択した時に修飾キー(⇧ ShiftAlt⌃ Ctrl)が押されていれば、1に設定されます。

SELECT_MOVE

通常では、Select Scriptを実行中は、オブジェクトを直接ドラッグできません(スクリプトを実行するオブジェクトを選択して、ハンドルをドラッグする)。この変数をアンセットすると、Select Scriptを実行中にユーザーが直接オブジェクトをドラッグできるようになります。

set -u SELECT_MOVE    

SELECT_PICK

この変数をアンセットすると、このノードは、 選択解除 されます。 これは、ビューポート内で実行された選択をツールが無視できるようにスクリプトを変更する場合に必須です。

set -u SELECT_PICK    

変数をアンセットするには、set -u varnameを使用します。

サンプルスクリプト

実際に使用できるHScriptのサンプルを見てみましょう。

# Script for a guessing game (guess.cmd)

# First, get a random seed

set foo = `system(date)`
set seed = `substr($foo, 14, 2)``substr($foo, 17, 2)`

# Then, pick a random number

set num = `int(rand($seed)*100)+1`

set guess = -1
echo Guess a random number between 1 and 100.

while ( "$guess" != "$num" )
    echo -n Enter guess (q to quit): "
    read guess

    if ( "$guess" == q || "$guess" == "") then
        break;
    endif

    # Convert to a number
    set iguess = `atof($guess)`

    if ( $iguess &lt; $num ) then
        echo Too low
    else if ( $iguess > $num ) then
        echo Too high
    else
        echo Spot on!
    endif
end

echo The number was $num

Houdiniに入っている役立つスクリプト

123.cmd

Houdini FXを起動した時に実行されます。houdinicore.cmd(以前はhescape.cmd)はHoudini Coreと同じ目的で用意しています。イベントスクリプトを参照してください。

defaultscene.cmd

Houdiniを起動した時のデフォルトのシーンを作成します。イベントスクリプトを参照してください。

fixnodename.cmd

ノード名に対してプリフィックスとサフィックスの置換を実行します。

使用方法は、Textportで引数なしでfixnodenameとタイプしてください。

pickandcenter.cmd

オブジェクト名を引数として受け取り、ビューアの中心にオブジェクトを配置します。これは特定のオブジェクトを選択した時に実行されるように作られています。選択したオブジェクトに対してこのスクリプトをコールするには、Select Scriptにpickandcenter$OSを使用します。

traverse.cmd

コマンドの名前を引数として受け取り、ノードとサブノード毎に再帰的にそのコマンドをコールします。

uniquename.cmd

基本となるオブジェクト名と変数名を引数として受け取り、名前を付けた変数をコマンドをコールするときに固有となるような名前(基本となるオブジェクト名+番号)に設定します。opaddコマンドの-vフラグを使えば、ノードを作成した後のノード名を取得することができます。

ホストシステムコマンドのコール

ucdunixコマンドを使うと、その言語のランタイムを外部プロセスとして起動することができます。

Houdiniは、グローバルHScript変数を外部プロセスに環境変数として渡し、そのstatus変数をコマンドの終了コードに設定します。

Houdiniには、通常のホストシステムコマンドをコールする専用のHScriptコマンドがあります。例えば、ulsはディレクトリの内容をリストし、urmはファイルを削除し、upwdは現行ディレクトリを表示します。WindowsのようなUNIX以外のシステムにコードを使えるようにするには、そのUNIXユーティリティ(ls,rm,pwdなど)と同等のHScriptコマンドを使用します。

現行ディレクトリを変更する ucd
現行ディレクトリを表示する upwd
ディレクトリの内容をリストする uls
新しいディレクトリを作成する umkdir
ファイルを削除する urm
ホストシステムコマンドを起動する unix

コマンドからビューアとビューポートを参照する方法

ビューアは、"desk.pane.type"という書式の名前を持っています:

  • desk = ビューアペインを含むデスクの名前。

  • pane = ビューアペインの名前。

  • type = ペインの内容に応じて"world"、"particle"、"texture"。

すべてのビューアのリストを見るには、"viewls -n"を使います。ビューア関連のコマンドのほとんどでは、同時に2つ以上のビューアを指定することができ、ビューア名にワイルドカードを使用することができます。

ビューアは4つのビューポート(例えば、top、left、front、perspective)に分割することができます。ビューポートは、"desk.pane.type.viewport"という書式の名前を持っています:

  • desk = ビューアペインを含むデスクの名前。

  • pane = ビューアペインの名前。

  • type = ペインの内容に応じて"world"、"particle"、"texture"。

  • viewport = ビューアペイン内のビューポートの名前。ビューポートのディスプレイオプションエディタのビューポートの名前を変更することができます。すべてのビューポートをリストするには、"viewls -n -v"(各ビューポートが存在するビューアが何か表示するには、"viewls -v"を使用)を使用します。

ビューポート関連コマンドのほとんどでは、同時に2つ以上のビューアを指定することができ、ビューア名にワイルドカードを使用することができます。ビューアの名前を使ってビューア内のすべてのビューポートを参照することができます。例えば、"viewcamera -c cam1 Build.panetab1.world.persp1 Build.panetab1.world.top1 ..."の代わりに"viewcamera -c cam1 Build.panetab1.world.*"または"viewcamera -c cam1 Build.panetab1.world"を使用することができます。

ビューポート関連コマンドのほとんどは、ビューポートだけでなくビューメモリでも動作します。ビューメモリは、"desk.pane.type:memory"の形式を持ち、memoryは1から9の番号または名前です。最初の3つのコンポーネント(desk name、pane name、type)にはワイルドカードを使うことができます。ビューメモリすべてをリストするには、viewls -n -lを使用してください。

viewlayoutコマンドは、ビューアペインのビューポートの数とレイアウトを設定します。

HScriptの役立つ情報と豆知識

  • TextportでHoudiniが内部的に実行するHScriptコマンドを出力するには、commandecho onを使用します。

  • Houdiniで使用できるコマンドの最大の行長さは、すべての展開を含めて8 KBです。

  • コマンドラインで使用できる引数の最大数は1024個です。

  • 1個のソースファイル内のifステートメントでネスト化できる最大数は、128個です。

  • ソースファイルの最大容量は、ファイルを開くシステムの制限に依存します。

  • ループのネストには制限はありません。

HScriptコマンド

  • alias

    コマンドのエイリアスまたはコマンドのシーケンスを作成します。

  • appendseq

    一連のファイルをMPlayの現行シーケンスに追加します。

  • atjob

    後でコマンドを実行します。

  • audiopanel

    オーディオペインのパラメータを変更します。

  • autosave

    自動保存の有効/無効を切り替えます。

  • bonealigncapture

    キャプチャーとアニメーション(変形)領域を揃えます。

  • boneconvert

    古いHoudiniの4つのhipファイルからボーンを更新します。

  • bonefixchops

    ボーンを削除する前に、InverseKin CHOPのボーン参照をクリーンアップします。

  • bonemoveend

    ボーンが停止チェーンでの指定した位置に止まるように、指定したボーンオブジェクトの長さと角度を調整します。

  • bookmark

    ブックマークを追加、リスト、削除します。

  • break

    現在のループから抜けます。

  • bundlelist

    Bundle Listペインの異なるオプションを設定します。

  • chadd

    指定したオブジェクトにチャンネルを追加します。

  • chalias

    チャンネル名に別名を付けます。

  • animeditor

    アニメーションエディタの色々なオプションを設定します。

  • chanlist

    チャンネルリストの色々なオプションを設定します。

  • chautoscope

    パラメータの自動スコープを変更します(オブジェクトを選択すると自動的にスコープします)。

  • chautoselect

    パラメータのautoselectプロパティを変更します(オブジェクトが選択された時に自動的にそれらのパラメータがチャンネルリストに入ります)。

  • chblockbegin

    スクリプトファイルにchadd/chkeyコマンドのブロックの開始の信号を送ります。

  • chblockend

    スクリプトファイルにchadd/chkeyコマンドのブロックの終了の信号を送ります。

  • chcommit

    保留中のキー変更を確定します。

  • chcp

    チャンネルの内容を他のチャンネルにコピーします。

  • chgadd

    1つ以上のグループを作成します。

  • chgls

    チャンネルグループをリストします。

  • chgop

    チャンネルグループの内容を設定します。

  • chgpopulate

    チャンネルグループをノードのチャンネルに追加します。

  • chgrm

    チャンネルグループを削除します。

  • chhold

    チャンネルを"保留"の状態にします。

  • chkey

    キーを編集したり挿入します。

  • chkeyget

    指定した時間のチャンネルをサンプリングしてキー情報を返します。

  • chkeyls

    チャンネルのキー時間をリストします。

  • chkeymv

    チャンネルのキーを異なるフレーム/時間に移動します。

  • chkeyrm

    指定したフレーム/時間にある指定したチャンネルのキーを削除します。

  • chlock

    パラメータを修正できないようにロックします。

  • chls

    チャンネルをリストします。

  • chopexportmap

    CHOP Export Mapping Overridesを操作します。

  • chopls

    CHOPオペレータのトラックをリストします。

  • chopscope

    CHOPパスとCHOPチャンネルを1組みにしてCHOPチャンネルを利用可能なビューアに割り当てます。

  • chopview

    色々なCHOPビューアオプションを設定します。

  • chread

    ファイルからチャンネルデータを読み込みます。

  • chrefit

    3次補間を使ってチャンネルを合わせ直します。

  • chrename

    チャンネルの名前を変更します。

  • chreverse

    指定した範囲のチャンネルデータを逆にします。

  • chrm

    チャンネルを削除します。

  • chround

    キーが整数フレームになるように移動・置換します。

  • chscope

    チャンネルスコープを設定します。

  • chstretch

    チャンネルのアニメーションを伸縮します。

  • chwrite

    チャンネルデータを.chanまたは.bchanファイルに書き出します。

  • clear

    Textportをクリアします。

  • closeport

    openportコマンドで開いた通信ポートを閉じます。

  • cmdread

    指定したファイルのコマンドを実行します。

  • colladaimport

    COLLADA(1.4.0)ファイルをインポートします。

  • colorsettings

    色々なUIガジェットのガンマとLUTを変更します。

  • commandecho

    コマンドのエコーの有効・無効を切り替えます。

  • compfree

    すべてのコンポジットネットワークで使われているキャッシュデータと画像すべてを解放します。

  • compopts

    コンポジットキャッシュの使用方法とスレッドを設定します。

  • compproject

    現行のコンポジットプロジェクトを設定します。

  • continue

    ループの繰り返しの最後にスキップします。

  • cplane

    基準平面のパラメータを変更します。

  • datatree

    Data Treeペインで使用する現行プラグインを設定します。

  • desk

    ペインのレイアウトを再構成します。

  • dopdatahint

    シミュレーションを有効にするためのDOPネットワーク用のヒントを追加します。

  • dopdatatypealias

    DOPデータタイプのエイリアスを作成します。

  • dopdatatypes

    利用可能なDOPデータタイプのリストを表示します。

  • dopsave

    DOPシミュレーションの全体の状態をファイルに保存します。

  • dopsavedata

    DOPシミュレーションデータアイテムをファイルに保存します。

  • dopsolveadddata

    Script Solver DOPを起動する時にデータをDOPオブジェクトに追加します。

  • dopsolvecopydata

    Script Solver DOPを起動する時にDOPデータを別の場所にコピーします。

  • dopsolveremovedata

    Script Solver DOPを起動する時にDOPオブジェクトからデータを削除します。

  • dopsolvesetoption

    Script Solver DOPを起動する時にDOPデータの一部の値を設定します。

  • dsedit

    oteditの組み込みエイリアス。

  • dsoinfo

    プラグインファンクションとオペレータタイプのパスを表示します。

  • dsreload

    スクリプトベースのOPすべてを再読み込みします。

  • echo

    テキストをTextportに表示します。

  • else

    ifステートメントのelse条件文。

  • end

    forまたはforeachステートメントの終了。

  • endif

    ifステートメントの終了文。

  • excat

    エクスプレッションのソースコードを表示します。

  • exedit

    エディタでエクスプレッションを開きます。

  • exhelp

    エクスプレッションの使用方法を表示します。

  • exit

    スクリプトファイルの実行を停止します。ステータスコードを設定していれば、変数statusにその整数が設定されます。

  • exls

    現在のエクスプレッション関数をリストします。

  • exread

    外部ファイルからカスタムエクスプレッションのソースコードを読み込みます。

  • exrm

    カスタムエクスプレッションを除去します。

  • fbximport

    Filmbox FBXファイルをインポートします。

  • fbximportanim

    単一のFilmbox FBXアニメーションカーブをインポートします。

  • fcur

    現行のフレーム番号を取得または設定します。

  • fdependadd

    ファイルの依存性を追加します。

  • fdependhide

    ファイルの依存性を隠します。

  • fdependls

    すべてのファイルの依存性をリストします。

  • fdependrm

    ファイルの依存性を除去します。

  • filechooser

    ファイル選択ダイアログを開き選択したファイルを表示します。

  • for

    一連のコマンドをカウンターの数だけループします。

  • foreach

    一連のコマンドをリストの項目の数だけループします。

  • fplayback

    プレイバーの色々なオプションを設定します。

  • fps

    現行の再生速度を取得または設定します。

  • frange

    プレイバーの再生範囲を設定します。

  • fset

    再生範囲を特定の長さに設定します。

  • ftimecode

    現在のフレームをtimecode形式で取得または設定します。

  • geocache

    内部ジオメトリキャッシュを操作します。

  • glcache

    Open GLキャッシュを制御します。

  • help

    コマンドの使用方法のヘルプを表示します。

  • helpbrowser

    ヘルプブラウザペインに関連するアクションを実行します。

  • history

    コマンドの履歴を表示します。

  • if

    ある条件に該当すると一連のコマンドを実行します。

  • imgdispopt

    グローバル画像ビューアディスプレイオプションを設定します。

  • imgsave

    Composite ViewまたはMPlayの画像をディスクに書き出します。

  • imgview

    COP/MPlay画像ビューアのグローバルオプションを変更します。

  • imgview2d

    COP画像ビューアの2D Viewのオプションを変更します。

  • imgviewhist

    COP画像ビューアのHistogramビューのオプションを変更します。

  • imgviewls

    imgviewと併せて使用する利用可能なCOP/MPlay画像ビューアの名前を表示します。

  • imgviewtime

    COP画像ビューアのTimelineビューのオプションを変更します。

  • imgviewtool

    COP画像ビューアのツールを呼び出します(または利用可能なツールをリストします)。

  • iprview

    IPRビューペインの色々なオプションを設定します。

  • java

    JAVA仮想マシンを起動します。

  • job

    $JOB変数を取得または設定します。

  • kinconvert

    古いhipファイルを新しいIK構造に更新します。

  • linker

    Light Linkerの色々なオプションを設定します。

  • listchooser

    ユーザーがオプションのリストから選択ができるようにグラフィカルインターフェースを表示します。

  • loadaudio

    オーディオのロード、アンロード、そしてオプションを設定します。

  • loadseq

    連番ファイルをMPlayに読み込みます。

  • matrman

    シェーダからRenderMan slファイルを生成します。

  • matupdateref

    Paletteマテリアルの参照すべてを更新します。

  • memory

    現行のメモリ使用量を表示します。

  • menurefresh

    OPmenu.xml、PARMmenu.xml、ParmGearMenu.xml、CHGmenu.xmlのメニューファイルの内容を再読み込みします。

  • message

    テキストをユーザーに表示します。

  • mnew

    セッションをリセットします。

  • mplayfit

    MPlayウィンドウを画像(100%)に合わせます。

  • mplayhome

    MPlayの画像をビューポートサイズに合わせます。

  • mplayprofile

    現行のMPlayプロファイルを設定します。

  • mread

    hipファイルを読み込みます。

  • mwrite

    現行セッションをhipファイルに保存します。

  • nbadd

    ネットワークボックスを作成します。

  • nbcolor

    ネットワークボックスに色を付けます。

  • nbcp

    ネットワークボックスをコピーします。

  • nbget

    ネットワークボックスのフラグ情報を取得します。

  • nbglob

    ネットワークボックスの名前をパターン展開します。

  • nblocate

    ネットワークボックスを配置・移動します。

  • nbls

    ネットワークボックスをリストします。

  • nblsop

    ネットワークボックスに含まれているオペレータをリストします。

  • nbname

    ネットワークボックスの名前を変更します。

  • nbop

    ネットワークボックスの内容を設定します。

  • nbrm

    ネットワークボックスを削除します。

  • nbset

    ネットワークボックスのフラグを設定します。

  • nbsize

    ネットワークボックスのサイズを変更します。

  • netcolumns

    ネットワークエディタのリストモードで表示する項目を設定します。

  • neteditor

    このコマンドは、もはや使用しません。

  • netviewdep

    このコマンドは、もはや使用しません。

  • networkeditor

    ネットワークエディタの色々なオプションを設定します。

  • nextkey

    次または前のキーに再生を移動します。

  • nodegraph

    このコマンドは、もはや使用しません。

  • objcache

    内部オブジェクトトランスフォーメーションキャッシュを操作します。

  • objcleantransform

    オブジェクトのトランスフォームをゼロにします。

  • objextractpretransform

    オブジェクトのpre-transform値をそのローカルトランスフォームに転送します。

  • objkinoverride

    キネマティックオーバーライドオプションを設定します。

  • objlightlink

    ライト中心でオブジェクトとライトのカテゴリ選択を管理します。

  • objmaterial

    マテリアルパラメータのオブジェクトローカルオーバーライドを管理します。

  • objparent

    "Keep position when parenting"オプションを制御します。

  • objpretransform

    オブジェクトのpre-transformマトリックスを設定または表示します。

  • objresetpretransform

    指定したオブジェクトのpre-transformの値を単位行列にリセットします。

  • ombind

    ハンドルをオペレータパラメータにバインドします。

  • ombindinfo

    オペレータのハンドルにバインドしているパラメータをリストします。

  • omls

    オペレータタイプで利用可能なハンドルをリストします。

  • omparm

    ハンドルの設定を変更します。

  • omsbind

    オペレータパラメータをセレクターにバインドします。

  • omsbindinfo

    オペレータにバインドしているセレクターをリストします。

  • omsls

    オペレータタイプで利用可能なセレクターをリストします。

  • omsunbind

    オペレータとセレクター間のバインドを除去します。

  • omswhere

    セレクターにバインドしているオペレータをリストします。

  • omunbind

    オペレータとハンドル間のバインドを除去します。

  • omwhere

    ハンドルにバインドしているオペレータをリストします。

  • omwrite

    ハンドルとセレクターのバインドすべてをファイルに書き出します。

  • opadd

    オペレータをネットワークに追加します。

  • opalias

    オペレータタイプを別名にすることができます。

  • opautoplace

    ノードタイルをネットワーク内で自動配置します。

  • opbadd

    オペレータバンドルを作成します。

  • opbfilters

    バンドルで有効なフィルターすべてをリストします。

  • opbls

    バンドルをリストします。

  • opbname

    バンドルの名前を変更します。

  • opbop

    オペレータバンドルを修正します。

  • opbrm

    オペレータバンドルを除去します。

  • opcf

    オペレータ階層内の別のフォルダに変更します。

  • opchange

    パラメータ値のテキストを検索・置換します。

  • opchangetype

    オペレータを新しいタイプに変更します。

  • opchmod

    オペレータのアクセス権限を変更します。

  • opcollapse

    ノードをサブネットワークに折り畳みます。

  • opcolor

    ネットワークエディタ内のオペレータタイルのカラーを取得または設定します。

  • opcomment

    オペレータのコメント文字列を取得または設定します。

  • opcook

    オブジェクトを再クックするように命令(強制)します。

  • opcopy

    オペレータとその依存関係をクリップボードにコピーします。

  • opcp

    オペレータをオペレータ階層内の新しい場所にコピーします。

  • opdefaultcolor

    ノードを配置した時の初期カラーを変更します。

  • opdefaultshape

    ノードを配置した時の初期シェイプを変更します。

  • opdelscript

    オペレータが削除された時に実行されるスクリプトを取得または設定します。

  • opdepend

    ノードのオペレータ依存関係すべてをリストします。

  • opdeprecate

    ノードタイプを廃止としてマークし、それらのノードをタブメニューから隠します。

  • openport

    Houdiniの通信ポートを開きます。

  • opeventscriptcache

    HOUDINI_SCRIPT_PATHの過度の検索を避けるために使用する内部イベントスクリプトパスキャッシュを操作します。

  • opexclude

    現在のHoudiniセッションからオペレータタイプを削除します。

  • opexprlanguage

    指定したノードのデフォルトのエクスプレッション言語を取得または設定します。

  • opextern

    ノードのすべて/見つからない外部参照を表示します。

  • opextract

    サブネットワークを展開します。

  • opfind

    ある基準に一致するオペレータを見つけます。

  • opfirstname

    ノードを配置した時の初期名を変更します。

  • opgadd

    新しいオペレータグループを作成します。

  • opget

    オペレータプロパティを取得します。

  • opgetinput

    オペレータのある入力に繋がれたノードを取得します。

  • opglob

    パターンをオペレータ名のリストに展開します。

  • opgls

    オペレータグループをリストします。

  • opgop

    オペレータグループのメンバーを設定します。

  • opgrm

    現在のネットワークからオペレータグループを除去します。

  • ophelp

    オペレータまたはオペレータタイプのヘルプを表示します。

  • ophide

    タブメニューからノードを隠します。

  • opinfo

    オペレータに関する情報とコメントを表示します。

  • oplayout

    ネットワークエディタのオペレータを自動的に配置します。

  • oplegacyinputs

    入力番号だけで保存されたレガシーノードの入力名を指定します。

  • oplocate

    ネットワークビューのオペレータタイルのX/Y座標を取得または設定します。

  • opls

    ネットワーク階層内のオペレータをリストします。

  • opmenu

    オペレータのメニューパラメータのアイテムを表示します。

  • opmultiparm

    ノードの情報とリンクしているMultiparmチャンネルを取得または設定します。

  • opname

    オペレータの名前を変更します。

  • oporder

    ユーザー定義でオペレータの順番を変更します。

  • oppane

    オペレータのエディタを表示します。

  • opparm

    ノードのパラメータを取得/設定/操作します。

  • oppaste

    opcopyでコピーしたデータをネットワークにペーストします。

  • oppresetload

    プリセットからチャンネルとパラメータ値をオペレータに読み込みます。

  • oppresetloadfile

    .presetファイルからチャンネルとパラメータ値をオペレータに読み込みます。

  • oppresetls

    オペレータで利用可能なプリセットをリストします。

  • oppresetrm

    プリセットを除去します。

  • oppresetsave

    オペレータのチャンネルとパラメータ値をプリセットとして保存します。

  • oppresetsavefile

    オペレータのチャンネルとパラメータ値を.presetファイルに保存します。

  • opproperty

    事前定義プロパティからSpareパラメータ(ユーザーパラメータ)を作成します。

  • oppwf

    ネットワーク階層内の現在のフォルダを表示します。

  • opramp

    オペレータのランプのキーを設定します。

  • opread

    opwriteで作成したオペレータファイルを読み込みます。

  • oprename

    オペレータタイプの説明のためにツールバーに表示する名前を変更します。

  • oprm

    オペレータを削除します。

  • oprmtype

    特定のタイプのオペレータを削除します。

  • opsave

    オペレータの出力データをファイルに保存します。

  • opscale

    廃止。代わりにneteditor -vを使用してください。

  • opscript

    オペレータを再作成するのに必要なコマンドを出力します。

  • opset

    色々なオペレータのフラグをオンまたはオフにします。

  • opspare

    オペレータのSpareパラメータ(ユーザーパラメータ)を追加/削除/リストします。

  • opspareds

    1つ以上のノードのSpareパラメータ(ユーザーパラメータ)を記述したダイアログスクリプトを設定します。

  • opstat

    ノード作成時刻、最終更新時刻、作成者、権限を出力します。

  • optype

    オペレータのタイプ固有の情報を出力します。

  • optypeinstall

    optypereadの組み込みエイリアス。

  • optyperead

    .optypeアーカイブを読み込んで、そこに含まれているタイプをHoudiniディレクトリにインストールします。

  • optypeuninstall

    オペレータ参照すべてを除去します。

  • opunhide

    オペレータをツールバーからアクセス可能にします。

  • opunload

    ノードがキャッシュ化したジオメトリを捨てるようにします。

  • opunwire

    オペレータの入力を接続解除します。

  • opupdate

    参照ファイルが変更されていれば、オペレータを再クックします。

  • opuserdata

    ノードに設定可能な名前/値のペアデータにアクセスすることができます。

  • opwire

    オペレータの出力を他のオペレータの入力に接続します。

  • opwrite

    オペレータをファイルに保存します。

  • otcollapse

    別々のファイルからOperator Type Libraryを作成します。

  • otcomment

    オペレータタイプと関連しているコメントテキストを取得または設定します。

  • otconfig

    Operator Type Managerの色々なオプションを設定します。

  • otcontentadd

    ファイルを既存のオペレータタイプ定義に追加します。

  • otcontentdelete

    オペレータタイプ定義からデータを除去します。

  • otcontentls

    オペレータタイプ定義のセクションすべてをリストします。

  • otcontentsave

    オペレータタイプ定義の内部にあるファイルを抽出します。

  • otcopy

    HDAファイル内部のデータを他のHDAファイルにコピーします。

  • otcreatecompiledtypefrom

    サブネットから新しいオペレータタイプ定義を作成します。

  • otcreatetypefrom

    サブネットから新しいオペレータタイプ定義を作成します。

  • otdelete

    Operator Type Libraryからオペレータ定義を削除します。

  • otedit

    Operator Type Propertiesウィンドウを開きます。

  • otexpand

    Operator Type Libraryをコンポーネントファイルに分割します。

  • otgetotl

    オペレータタイプがどこで定義されているのか判断します。

  • otglob

    パターンに一致するオペレータタイプをリストします。

  • otinuse

    指定したhipファイルにあるOperator Type Libraryを判断します。

  • otload

    Operator Type Libraryを現行セッションに読み込みます。

  • otls

    ライブラリファイルに定義しているオペレータタイプをリストします。

  • otmerge

    ライブラリファイルのオペレータタイプ定義すべてを他のライブラリファイルにコピーします。

  • otprefer

    複数の実装が利用可能な時に使用するタイプ定義を取得または設定します。

  • otrefresh

    ディスクからOperator Type Libraryを再読み込みします。

  • otrenamesource

    ライブラリソースに記述名を設定します。

  • otsync

    ノードの内容をそのタイプ定義の内容に同期化します。

  • ottouch

    オペレータタイプ定義の最終修正日を設定します。

  • otunload

    Operator Type Libraryをアンロードします。

  • otunsync

    otsync -uの組み込みエイリアス。

  • otversion

    オペレータタイプ定義のバージョンを取得または設定します。

  • otwrite

    オペレータタイプをOperator Type Libraryファイルに保存します。

  • pane

    ペインの作成、クローズ、オプションの設定をします。

  • panepath

    デスクのペインすべての現行ノードを設定します。

  • parmeditor

    パラメータエディタの色々なオプションを設定します。

  • parmlist

    チャンネルリストガジェット内のパラメータリストの色々なオプションを設定します。

  • parmsheet

    パラメータスプレッドシートの色々なオプションを設定します。

  • pathmap

    HOUDINI_PATHMAP変数を修正またはテストするインターフェース。

  • perfmon

    パフォーマンスモニタからの出力を有効にします。

  • performance

    パフォーマンスモニタの色々なオプションを設定します。

  • pilist

    ハンドルリストの色々なオプションを設定します。

  • play

    再生を制御します。

  • pomadd

    新しい持続ハンドルまたはグループを作成します。

  • pomattach

    オペレータをハンドルへ、またはハンドルをグループへ追加します。

  • pomclear

    持続ハンドルのオペレータすべてを除去またはグループをクリアします。

  • pomdetach

    持続ハンドルのオペレータまたはグループのハンドルを除去します。

  • pomls

    持続ハンドルまたはハンドルグループをリストします。

  • pomparm

    ハンドルの設定を変更します。

  • pomremove

    持続ハンドルまたはハンドルグループを削除します。

  • pomrename

    持続ハンドルまたはハンドルグループの名前を変更します。

  • pomscript

    持続ハンドルまたはグループを作成するためのコマンドを出力します。

  • pomset

    持続ハンドルまたはグループのディスプレイフラグを設定します。

  • preference

    一般プリファレンスオプションの値を取得または設定します。

  • prependseq

    現行シーケンスの前にファイルを挿入します。

  • prompt

    Textportプロンプト文字列を変更します。

  • propertyedit

    oteditの組み込みエイリアス。

  • python

    Pythonステートメントを実行します。

  • pythonpanel

    Pythonパネルペインに関連するアクションを実行します。

  • quit

    Houdiniを終了します。

  • radial

    Radial設定を制御します。

  • read

    ユーザー入力の1行を1つ以上の変数に読み込みます。

  • render

    出力ドライバ(ROPノード)をレンダリングします。

  • rexport

    ネットワークレンダーのエクスポート変数を編集します。

  • rkill

    レンダーを停止または一時停止/再開します。

  • ropview

    Outputsビューアペインの色々なオプションを設定します。

  • rps

    バックグラウンドレンダープロセスをリストします。

  • seqls

    MPlayに現在読み込まれているシーケンスをリストします。

  • set

    ローカル変数を設定します。

  • setcomp

    表示するカラーコンポーネントを設定します。

  • setenv

    グローバル変数を設定します。

  • setplane

    現行平面を設定します。

  • shelfdock

    シェルフ領域(Dock)にシェルフを追加またはシェルフを除去します。

  • shift

    コマンドライン引数の変数の内容をずらします。

  • shopconvert

    RenderManシェーダをネイティブのシェーダに変換します。

  • shoppromote

    マテリアルに含まれているシェーダのパラメータすべてを自動的にマテリアル上にプロモートします。

  • shopthumb

    マテリアルのサムネイル画像(シェーダボール)を生成します。

  • shopvisible

    レンダラーに基づいてシェーダを表示または非表示にします。

  • sopcache

    内部サーフェスノードキャッシュを操作します。

  • sopcreateedit

    2つのSOP間の差分からEdit SOPを作成します。

  • source

    ファイルに記述されたスクリプトコマンドを実行します。

  • stampdirty

    スタンプ変数に応じてノードを汚します。

  • system

    ホストシステムコマンドを開始します。

  • takeadd

    新しいテイクを作成します。

  • takeautomode

    テイクをauto-includeモードに設定します。

  • takeinclude

    現行テイクにパラメータを取り込んだり、除去します。

  • takelist

    Take Listペインの色々なオプションを設定します。

  • takeload

    takesaveコマンドで保存したファイルからテイク情報を読み込みます。

  • takels

    既存テイクの名前を出力します。

  • takemerge

    1つ以上のソーステイクに取り込まれたパラメータを目的のテイクに結合します。

  • takemove

    テイクを新しい親の下に移動します。

  • takename

    テイクの名前を変更、テイクのラベルを設定、新しいテイクのデフォルトのベース名を変更します。

  • takerm

    1つ以上のテイクを除去します。

  • takesave

    テイク情報をファイルに保存したり、Textportに出力します。

  • takescript

    テイクを再生成するのに必要なコマンドを出力します。

  • takeset

    別のテイクに切り替えます。

  • tcur

    現在の時間を取得または設定します。

  • test_access

    Windowsでファイルパスの権限をテストします。

  • texcache

    内部テクスチャキャッシュを操作します。

  • time

    コマンドの実行にかかった時間を出力します。

  • timeslice

    タイムスライスしたチャンネルオペレータのタイムスライスオプションを設定します。

  • tmgadd

    タイムグループを作成します。

  • tmgls

    タイムグループをリストします。

  • tmgname

    タイムグループの名前を変更します。

  • tmgop

    タイムグループの内容を設定/追加/削除します。

  • tmgrm

    タイムグループを削除します。

  • tmgshift

    タイムグループを時間の長さまたはフレーム数でずらします。

  • toolbar

    ツールバーを作成、編集、除去します。

  • treechooser

    ユーザーがオプションのリストから選択ができるようにグラフィカルインターフェースを表示します。

  • treecontrol

    ツリーコントロールの色々なオプションを設定します。

  • tset

    グローバルアニメーション範囲を取得または設定します。

  • ucd

    UNIX作業ディレクトリを変更します。

  • uls

    UNIX作業ディレクトリ内のファイルとディレクトリをリストします。このコマンドは再帰しません。

  • umkdir

    ファイルシステムに新しいディレクトリを作成します。

  • undoctrl

    undoを有効・無効、またはundoメモリをクリアします。

  • unitlength

    Houdini Unit Lengthオプションを設定します。

  • unitmass

    Houdini Unit Massオプションを設定します。

  • unix

    ホストシステムコマンドを起動します。

  • updateui

    HoudiniのUIが更新されるのを待ちます。

  • upwd

    UNIX作業ディレクトリを出力します。

  • urm

    ファイルシステムのファイル名をリンク解除します。このメソッドはディレクトリをリンク解除できません。

  • varchange

    変更した変数を使ってオペレータをクックします。

  • version

    アプリケーションのバージョンを出力します。

  • vexinfo

    現在読み込まれているVEX関数をリストします。

  • vexprofile

    VEX関数のプロファイリングをオン・オフします。

  • viewagentopts

    ビューポートでのいろいろな群衆エージェントの表示オプションを設定します。

  • viewbackground

    ビューポートバックグラウンドの一般的なオプションを設定します。

  • viewcamera

    ビューポートをカメラ視点にします。

  • viewcolor

    特定のビューポートでカラーオーバーライドアトリビュートを設定します。

  • viewcopy

    あるビューポートの設定またはビューメモリを他のビューポートにコピーします。

  • viewdisplay

    ビューポートの色々なオプションまたはビューメモリを設定します。

  • viewdispopts

    ビューポートのいろいろなオプションを設定します。

  • viewdispset

    ビューポートの色々なオプションを設定します。これはビューディスプレイを置換します。

  • vieweffect

    ビューポート設定を制御します。

  • viewergrouplist

    ビューアペインのグループリストオプションを設定します。

  • viewerinspect

    ビューアの検査オプションを取得または設定します。

  • vieweroption

    ビューアペインの色々なオプションを設定します。

  • viewerstow

    ビューアのコンポーネントを閉じたり、開きます。

  • viewhome

    名前を付けたビューポートに戻ることができます。

  • viewinfotext

    ビューポートの情報テキストオプションを設定します。

  • viewlayout

    ビューアペイン内のビューポートを並べ替えます。

  • viewlight

    ビューポート設定を制御します。

  • viewls

    すべてのビューアペインをリストします。

  • viewmaskoverlay

    ビューポートのビューマスクオーバーレイの色々なオプションを設定します。

  • viewname

    ビューポートの名前を変更します。

  • viewonionskin

    ビューポートに対して様々なオニオンスキン表示オプションを設定します。

  • viewoptadd

    ディスプレイオプションをすべてのビューアに追加します。

  • viewoptenable

    特定のビューポートのユーザーオプションを有効・無効にします。

  • viewoptls

    ビューアで利用可能なオプションをリストします。

  • viewoptname

    ディスプレイオプションの名前を変更します。

  • viewoptrm

    すべてのビューアからディスプレイオプションを除去します。

  • viewoptset

    特定のディスプレイオプションの設定を取得または設定します。これらの設定は、すべてのビューアで共有されます。

  • vieworthogrid

    正投影ビューポートのグリッドの表示を設定します。

  • viewprojection

    パースペクティブビューポートの投影方法を設定します。

  • viewrefplane

    Reference Planeパラメータを変更します。

  • viewroto

    ビューポート背景の画像と位置のオプションを設定します。

  • viewsnapshot

    ビュースナップショットメモリを管理します。

  • viewsnapshotoption

    ビュースナップショットメモリのオプションを設定します。

  • viewtool

    シーンビュー内の現行ツールを設定します(または利用可能なツールをリストします)。

  • viewtransform

    ビューポートの投影データを取得または設定します。

  • viewtype

    ビューポートのタイプを変更します。

  • viewupdate

    ビューの更新を制御します。

  • viewuvgrid

    UVテクスチャビューポートのグリッドの色々なオプションを設定します。

  • viewwrite

    ビューポートからフリップブックを作成します。

  • vopforcecompile

    VOPネットワークがそのコードをコンパイルします。

  • vopwritevfl

    VOPネットワークから生成されたコードをファイルに書き出します。

  • while

    条件がtrueの間に一連のコマンドをループします。