はじめに
今年はHoudiniに関連するイベントが多かったように感じます。
仕事や予定の都合上参加できないものも多かったですが、Houdini 60mというイベントに出場させていただきました。
今回はそのイベントにむけて準備したものの、(時間の都合上)使えなかったTipsをメモとして残しておこうと思います。
「とにかく早くモノをつくる」にフォーカスしたTipsを紹介していきます。
※Houdini 60 minutesについて
Houdiniユーザーの方はX(旧Twitter)の一部にて盛り上がっているのを目にした方もいるのではないでしょうか?
BornDigitalさんとInbetweenさん主催で行われた60分で静止画/動画を制作するHoudiniを使ったチャレンジです。
Houdiniというと初速が遅い・サクサク作りにくいといった印象がある中でも、実は手早く作ることもできるといったことを見せる競技会でした。
https://campaign.borndigital.jp/houdini60minutes/index.html
モデリング・レイアウト
ジオメトリの選択
選択時のよく使うショートカット
S 選択モードへ切替
2 頂点選択
3 エッジ選択
4 プリミティブ選択
shift + A + 左クリック 間にあるジオメトリ選択
shift + A + MMB(マウスホイール押し込み) 隣接するジオメトリ一周選択
F2 矩形選択
F3 なげなわ選択
F4 ブラシ選択
shift + v 見える部分だけ選択
9 グループ・連続性・アトリビュートで選ぶためのウィンドウ表示
Radial menus
ビューポートで”C”キーを押すと出てくるメニュー
Houdiniで破壊的モデリングを行う場合ほぼ必須アイテム
ネットワークビューで文字を打っている時間はないので、よく使うノードはradial menusに登録して使えるようにします。
また、イベントではアセット持ち込み禁止だったので使えませんでしたが、modelerというツールセットがHoudiniでのモデリングをとても楽にしてくれます。おすすめです。
https://alexeyvanzhula.gumroad.com/l/jaoest
シェルフツール
Quick Shapes
マウスのドラッグで素早くジオメトリを作成・レイアウトできます。
ボックス以外にも、円柱、球、ドーナツ型、平面が作成可能です。
他の面の上に形状を作成することも簡単にできるため、ラフレイアウトにも良い機能です。
ここでそれぞれのジオメトリはそれぞれobj階層にできてしまって少々つかいにくいですが、次の機能と一緒に使うと...
Combine
obj階層のジオメトリをまとめて1つのジオメトリにできます。
Quick Shapesのあとに使えば簡単にすべてSOP階層にもってくることができます。
後はシミュレーションに使うなり、モデリングに使うなりご自由にどうぞ。
Freeze
obj階層のTransform情報をSOP階層に簡単に持っていけます。
obj階層でレイアウトを決めた時に便利です。
インスタンス
Spray Paint
良い感じにポイントをペイントでスキャターするツールです。
ポイントをscatterするだけでなくN,orient,pscaleも自動でランダムに設定されます。
自動でpscaleを調整してインスタンス同士が重ならないようにしてくれます。
Scatter align

N,orient,pscaleを設定できるscatter。
それぞれを自分で設定するより断然素早く設定できます。
Attribute from pieces

複数種類のジオメトリをインスタンスするのに便利。
2つ目の入力にMergeしたインスタンス用のジオメトリをつなぐだけでポイントにバリエーション用のアトリビュートを設定できます。

1つ前のScatter Alignと組み合わせればランダムなたくさんのインスタンスもサクッと作成できます。
変形
Muscle Deintersect
オブジェクト同士の衝突を良い感じに解消できます。
本来は筋肉用ですが、意外となんでもいけます。
シミュレーションするほどでもないけど、衝突判定欲しいときにおすすめ。
シェーディング
Quick Material
Karmaでレンダリングするときにサクッとマテリアルを作成できます。
Material Libraryを作って、その中でKamra Material Builderをつくって、、、といった作業をなくせます。
裏技(ずるい技)
Pythonを使った裏技
今回の試合ではAIを使ったコーディングはルール上OKでした。
アセットの持ち込みはNGでしたが、AIにレシピやツールをPythonで書かせれば実質持ち込み可能です。
※注 ルール上黒よりのグレーなので今回のイベントではやりませんでした。
手順
- 持ち出したいアセットをシェルフツールとして作成する
- シェルフツールからPythonコードを抜き出す
- AIに読み込ませて呼んだら吐き出すようにする
- HoudiniでPythonコードを実行する
詳しい手順
1. 持ち出したいアセットをシェルフツールとして作成する
1-1. New Shelf Tabからシェルフツール用タブを作成


1-2. アセットになるノード群を選択し、作成したタブにドラッグ・ドロップ

1-3. ウィンドウに従って好きな名前を付けてAccept、シェルフツールが作成される


2. シェルフツールからPythonコードを抜き出す
2-1. シェルフツールの編集ウィンドウを表示する
アイコン上で右クリック、Edit Tool...を選択

2-2. ウィンドウのScriptタブを選択するとアセット作成のPythonコードが確認できる

3. AIに読み込ませて呼んだら吐き出すようにする
4. HoudiniでPythonコードを実行する
4-3. 新しいシェルフツールが作成され、アセットを持ち込むことができる

イベント後ですが、AIによるコーディングがOKならできるかも...と思ってやってみたらすんなりできてしまいました。
もし第二回が開催されるなら、この方法はルールで禁止しないとですね...
あとがきと更新について
ここまで簡単に手早く作業するためのものをまとめてみました。
今後自分でクイックな方法を見つけたらこのページをこれからどんどん更新していこうと思います。
今はまだ短い記事ですが、時間をかけてやり方のノウハウをためていきたいです。
読んでくれた方も良い方法を見つけたらコメントで教えてください!















