Houdini:Python memo Part04
ノードあれこれ ノード検索(glob) 名前でノード検索。よく使う。 ノード検索(recursiveGlob) 名前とタイプでノード検索。再帰的に子ノードも検索。 上記サンプルは、任意の名前のカメラを検出する。 hou.nod […]
Houdiniで迷路生成。(Houdini:迷路ジェネレータ02へ)調べたところ、迷路生成の手法はいろいろあるらしいことが分かりました。ここではおおよそ次のような手順で作成しました。穴掘り方と言うらしいです。 図のようなグリッドで考える。まず、任意の点をマスをスタート地点とする。 上下左右のマスをランダムに選び、そこが通路でなければ通路にして、そのマスに移動する。 移動した先のマスで、「2」を繰り返す。 四方に通路を作成出来るマスがない場合、一つ前のマスに戻る。 戻った先でも、通路作成可能なマスが無ければさらにもう一つマスを戻る。通路作成可[...]
続きを読む最終的にコインは2万5000枚くらい落ちてきてます。シミュレーション自体は軽くて、30分くらいで終わりました。発生源を3種類用意してコインを分類し、シミュレーションした後にColor情報用のUVを生成しています。[...]
続きを読むHoudiniノード勉強回。Path Deform(SOP)。カーブに沿った変型をしてくれるノード。とっても便利。変型だけでなくカーブに沿った移動もしてくれる。複数のカーブにも対応しているのもうれしい点。またオフセットのタイミングもアトリビュートで個別に制御出来るし、当然のようにScaleとRotateにも対応している。優秀。これはもう、動かせるcopyノードと言ってもよいのでは。使い方はいたって簡単で、1番目の入力に変型させたいジオメトリ、2番目の入力にカーブを繋ぐだけ。パラメータの詳細はドキュメント参照。作例として次のよう[...]
続きを読む今日も、Houdiniじゃ!今回は「VOPを用いたポイントの回転方法」を思いつく限り列挙したいと思います。たかが回転!されど回転!ここでは、例として下のようなジオメトリをAttribute VOP(SOP)で回転させてみました。サンプルファイル参照→Rotate_VOP_sample使用したのはAttribute VOP(SOP)、Houdiniのバージョンは14です。Attribute VOPはH13以前はVOP SOPと呼ばれていたノードです。tabメニューから作成する場合は、point vop。その1:Rotateノード[...]
続きを読むHouly Daily Challenge Week2の感想戦。Day5 WAVE前日に発症した「何も思いつかない病」が尾を引いている感がありました。もっと抽象的なイメージにしたかったのですが、やってみると上手くまとまらず、こういった構図になりました。この日になるともう、若干いじけてDaily Winnerとか諦めてた気がします。Day6 SWINGニュートンのゆりかご。Daily Winnerで2位が取れたヤツです。ニュートンのゆりかご自体は、結構簡単に作れたのですが、イマイチ華がなかったので、球体の中にGrainを入れたのです。D[...]
続きを読む夜な夜なこんなのを作ってました。作業画面はこんな感じです。元ネタはこちら。サクッと作れて面白かったです。以下余談。最近、レンダリングにはKarmaのXPUレンダリングを使っているのですが、非常に早くていいですね。このくらいなら、Full HDサイズでも1枚30秒くらいで終わるので、おうちマシン使っても計240フレームが2時間くらいで吐き出されます。Mantraなら1枚3~5分くらい、Redshiftでも1枚1~2分くらいかかっていたイメージなので、ずいぶん早くなったなと。この手のテクノロジー進化は、時間節約になるので非常に有難いですね。[...]
続きを読むHoudini python memo! ver 15.0.244.16 はじめにimport hou#/objに"geo1"という名前のgeoノードを作る。oGeo = hou.node('/obj').createNode('geo','geo1')#/obj/geo1を取得oNode = hou.node('/obj/geo1')#選択したノードを取得(配列で)oNodes = hou.selectedNodes()oNode = oNodes#使えるメソッド一覧dir(oNode)#メソッ[...]
続きを読むHoudiniノード勉強回。今回は、Crease(SOP)とSubdivide(SOP)のコンボについて。Subdivide(SOP)は、こんな感じにメッシュを細かく分割し更になめらかにしてくれるノードです。使用頻度の高いノードではないかと思います。Crease(SOP)は、Subdivide(SOP)とセットで使用することが前提のノードです。Crease(SOP)はSubdivide(SOP)よりも前工程で適用しておく必要があります。Crease(SOP)を使うと、任意のエッジをSubdivide(SOP)適用後も、鋭角さを保つことが可能です。例えば以下の[...]
続きを読む今回は、簡単な破壊エフェクトについて手順も踏まえて書いてみようと思います。最終的にこういうのを作ります。出来るヒトは見なくてよろしwここでは事前にジオメトリを破片に分割して、それをシミュレーションするという手順で進めたいと思います。ざっくり書くと、1:ボロノイ分割での破片の作成2:RBD Fractureでシミュレーションです。 1:破片の作成まず、破壊したいオブジェクトを細かい破片に分割します。ここではboxを破片に分割しています。(Houdiniに限らず)破片の分割には、ボロノイという分割方法を使うのが一般[...]
続きを読むHoudini17リリースされましたね。魅力的な機能がたくさんありましたが、その中で地味に新しく搭載されたRetime(SOP)ノードがちょっと衝撃で。Retime(SOP)は"フレーム間の補間"と、"スピードの可変"ができるノードのようです。これまで、TimeBlend(SOP)とTime Shift(SOP)で行ってた機能が、このノードにまとまった感じでしょうか。何がすごいって、"TimeBlend(SOP)とTime Shift(SOP)のコンボ"では難しかった、SOPでのVolumeスロー表現ができるようになってました。以下、17.0のRetime([...]
続きを読むノードあれこれ ノード検索(glob) 名前でノード検索。よく使う。 ノード検索(recursiveGlob) 名前とタイプでノード検索。再帰的に子ノードも検索。 上記サンプルは、任意の名前のカメラを検出する。 hou.nod […]
Houdini Python、ダイアログ系のサンプル。 シェルフにでも張り付けてポチると出てくる・・・たぶんね。 ポップアップメッセージ テキストフィールド付きダイアログ テキストフィールド付きダイアログ(Multi) &nb […]