Python からパラメータを制御をすると、その複雑な定義と制御ができ、よりインタラクティブな UI 制作が可能になります。
一方で Houdini はプログラミングの知識を必要とせず制作が可能であるため、この「Python でできること」が Python 専用の機能ではなく「オプションとして設定できること」として Houdini 内に存在していることが多々あります。
本記事では、メニューの種類について紹介します。
パラメータに対して特定の反応を設定する
ボタンをクリックしたらスクリプトが走るようにしたい場合は、そのボタンパラメータのオプションとして callback script を使うことでスクリプトを実装することができます。以下は「Button パラメータをクリックしたら文字列を出力する」簡単なスクリプトです。
スクリプトを実装するために一行もしくは数行の Python を書く必要はありますが、簡単なスクリプトでも十分な結果が得られ自由度も高いため、機能としては幅広く活用することができます。
詳しくはこちらで解説しています。
メニューの種類
Type Properties > Parameters > Menu > Use Menu から、設定するパラメータの UI を変えることができます。
Normal (Menu Only, Single Selection)
パラメータをポップアップメニューとして表示します。
ラベル名は Parameters で設定した文字列で、項目に Token と Label を設定できます。
Normal Mini (Mini Menu Only, Single Selection)
パラメータをポップアップメニューとして表示しますが、▼ ボタンのみを表示します。
これと前のパラメータの Horizontally Join to Next Parameter を一緒に使用することで、他のパラメータの後に小さなポップアップメニューを配置することができます。
Replace (Field + Single Selection Menu)
手動で編集可能なフィールドと項目を選択可能なポップアップメニューを表示します。 項目を選択すると、そのフィールドの内容が置換されます。
このオプションはすべてのパラメータに適用できるわけではなく、効果を発揮しないものもあります(Button など)。string など入力可能なフィールドを持つパラメータを選択する必要があります。
Toggle (Field + Multiple Selection Menu)
見た目は Replace と同じですが、選択した項目がスペース区切りでフィールドに格納されていきます。選択した項目が既に格納されていた場合、削除されます。
このオプションは String パラメータにのみ機能します。入力可能なフィールドがない、もしくは Integer パラメータに対してこれを選択すると、Replace と同じ UI になります。