ここでは、HDA で Ordered Menu を使う方法とデフォルト値の設定方法を、Sphere か Box を Polygon か Polygon Mesh タイプのいずれかのみで生成するアセットを元に紹介する。
使用したバージョン: Houdini 16.5.439
シーンファイルへのリンクは一番下にあり。
1. 元になるネットワーク作成
最初に元となるネットワークを作る。
- Create シェルフで、Ctrl キーを押しながら、Box ツールを実行。
- ビューポートに立方体が現れ、ネットワークエディタには box_object1 ノードが現れる。
- ネットワークエディタで box_object1 ノードをダブルクリックするか i キーを押して中に入る。
- box1 の Primitive Type を Polygon Mesh にして、Axis Division を 3、3、3 以上にする。
- ネットワークエディタ内で TAB->Sphere を実行。Enter キーを押してノードを配置。
- これで box1 と sphere1 の二つのノードが出来た。
- TAB->Switch を実行。Enter キーを押してノードを配置。
- box1 と sphere1 を選択、switch1 に接続する。
- switch1 に表示フラグを設定し、Select Input を 0 にすれば box が表示され、1 にすれば球が表示される。
2. HDA の作成と既存パラメータの追加・調整
#1 で作ったネットワークをHDA にする。
- 上記3つのノードをすべて選択、Create Subnet from Selected () を実行。
- subnet1 というコンテナノードが出来、その中に選択したネットワークが格納されている。
- できた subnet1 を test_parm などと名称変更し、RMB->Create Digital Asset... を実行。
- 次に表示される Edit Operator Type Properties ウィンドウでは Paramters タブに進む。
- ネットワークエディタで、test_parm ノード内に入り、switch1 を選択。
- Select Input パラメータを左ボタンでクリックし、Edit Operator Type Properties ウィンドウの Existing Paramters 以下にドラッグ&ドロップする。
- Apply (Accept ではない) ボタンをクリックし、変更を反映すれば、test_parm ノードのパラメータパネルに Select Input のスライダーが表示されている。
ただし、有効な選択肢は2つしかないにもかかわらず、スライダは 0 から 9 の間で変更可能。これを調整する必要がある。 - Edit Operator Type Properties ウィンドウの Existing Parameter 以下で Select Input が選択されていることを確認し、右下の Range の部分を 0 と 1 にし、Apply をもう一度クリックすれば、Select Input は 0 と 1 のいずれかだけにスライドするようになる。
- 右側で Channels タブに移り、Defaults 以下の最初の値を 0 から 1にして、Apply をクリックすれば、このパラメータのデフォルト値が 1 になる。
3. 新規パラメータの追加・リンク
新しくパラメータを作り、それを既存ノードにリンクする。ここでは、Ordered Menu をひとつ新規作成、選択肢を Polygon と Polygon Mesh にして、box1 と sphere1 の Primitive Type をコントロールできるようにする。
- 再び Edit Operator Type Properties ウィンドウで、今度は左側の Craete Parameters の By Type タブ以下で Ordered Menu を探し、真ん中の矢印を押して、Existing Parameters 以下に追加。
- 右側の Parameter Description で以下のように設定
- Name を type
- Label を Primitive Type
- Menu タブに行き、Menu Items 以下に次のペアを入力
- 0, Polygon
- 1, Polygon Mesh
- Apply をクリックすれば、パラメータパネルに追加したメニューが確認できる。
ただし、まだ何もしない。 - Primitive Type パラメータの上で RMB->Copy Parameter を実行。
- ネットワークエディタで box1 を選択、box1 の Primitive Type パラメータ上で、RMB->Paste Relative Reference を実行。
- ドロップダウンメニュー部分が緑色に変わり、パラメータがリンクされたのが確認できる。
- test_parm の Select Input を0 (box) にして、Primitive Type を変更すれば、正しく切り替わっているのが確認できるはず。
4. パラメータのリンクその2
Sphere の Primitive Type は 'Primitive', Polygon', 'Polygon Mesh' ... であり、box と同じように Paste Relative Reference でリンクしても、Primitive (0) と Polygon (1) の選択となり、うまく行かない。そこで以下の方法を取る。
- sphere1 を選択、Primitive Type パラメータ上で、RMB->Expression->Edit Expression を実行。
- test_parm ノードに戻り、Select Input を1 にして、Primitive Type を Polygon と Polygon Mesh で変更すれば、形状も正しく切り替えられているのがわかる。
- Edit Operator Type Properties ウィンドウで Accept を押してウィンドウを閉じ、ネットワークエディタで test_parm の上で RMB->Save Node Type とすれば、ここまでの変更がすべて保存される。
シーンファイル
- test_parm.zip 3KB
- test_parm.hda
0 件のコメント:
コメントを投稿