Maya:『ShadingSwitch』ノード
ShadingSwitchノードについて。 このShadingSwitchノード、ひとことで切って捨てると『ジオメトリごとに出力を切り替えるノード』です。 出力のチャンネル数ごとに、Single、Double、Triple、Quadと4種類 […]
今回は、簡単な破壊エフェクトについて手順も踏まえて書いてみようと思います。最終的にこういうのを作ります。出来るヒトは見なくてよろしwここでは事前にジオメトリを破片に分割して、それをシミュレーションするという手順で進めたいと思います。ざっくり書くと、1:ボロノイ分割での破片の作成2:RBD Fractureでシミュレーションです。 1:破片の作成まず、破壊したいオブジェクトを細かい破片に分割します。ここではboxを破片に分割しています。(Houdiniに限らず)破片の分割には、ボロノイという分割方法を使うのが一般[...]
続きを読む
Houdini回。今回はこういうヤツ。パーティクルに板を貼り付けたもので、マテリアルとテクスチャ連番画像は共通。テクスチャのシーケンス番号に対する値をパーティクルごと個別に設定しています。簡単にできるとおもってたら思いの外手間取ってしまって。いくつか試して、最終的にinline Code(VOP)を使う方法に落ち着きました。inline Code(VEX)はVOP内でVEXが書けるノードです。このノードの詳しい解説はまたの機会に回すとして、やってる事はシェーダー側でのテクスチャパスの作成です。シェーダー側で使うテクスチャのフレーム番号は、事前にPri[...]
続きを読む
Houdini回です。今回はカーブの接線(tangent)を取得方法を幾つか。調べて忘れて調べてを繰り返すので、備忘録も兼ねて。polyFrame(SOP)で接線を取得polyFrame(SOP)を使うと、「Normal(法線)」「Tangent(接線)」「Bitangent(従法線)」を取得することができます。下の青線がNormal(法線)、黄色線がTangent(接線)、赤いのがBitangent(従法線)。接線だけが欲しい場合はTangentだけ有効にしとけばOKStyleの設定で、平滑化[...]
続きを読む
なんとなく、以前作った水のヤツに水車を追加してみました。シンプルな構成なはずが、ちょいちょい色んなところに引っかかってしまったので、メモがてら書いてきます。作業画面はこんな感じ。レンダラはRedshiftを使っているので、View用のマテリアルとRender用のマテリアルとを切り替えて使ってます。DOPネットワーク内はこんな感じ。コリジョンと水車と水。Feedback ScaleDOPネットワーク内で、Flipが他のシミュレーションに影響を及ぼすためには、Flip Solver(DOP)のパラメータ"Feedback Scale"の数値を設定する必要がありま[...]
続きを読む
※ 注意 ※この記事のリグは失敗例です。記事のとおり作ると、記事の通り失敗します。それでもよいという天の邪鬼な方に向けておくる、"Mayaで作る車輪リグ考察(失敗編)最終目標はこういうヤツ↓簡単そうに見えて、意外と奥が深いのでは、と思いまして。作りたいのは、"進んだ分だけ正確に車輪が回るリグ"。”正確さ”が欲しいので、Expressionを使って計算させたいと思います。下絵のように、車輪の移動距離と円弧の部分が一致するような回転角を求めることができれば問題は解決するように思います。(下絵の赤い円周と青い距離の部分)では移動した[...]
続きを読むHoudini Indieで複数マシン使ってHQueue環境作った際の覚書(Windows)Houdini Engine Indieが無料で提供されてるおかげで、Houdini Indieユーザーでも複数台でのシミュレーションとMantraレンダリングができます。Houdini Indie + Houdini Engine Indieが最大3ライセンスの合わせて4ライセンス分。今回は、Windowsマシン3台、NASサーバー1台の小規模ファームを作りました。使ったライセンスはHoudini Indie + Houdini Engine Indiex2。以[...]
続きを読む
Houdiniメモ。カメラクリップのWrangleを書くのが面倒なので、コピーできるようにココに書いておく。vector _ndc = toNDC("/obj/cam1", @P);float _ox=ch("ox");float _oy=ch("oy");float _oz=ch("oz");if ((_ndc>1+_ox)) removepoint(geoself(), @ptnum); if ((_ndc>1+_oy)) removepoint(ge[...]
続きを読む
Houdini Python、ダイアログ系のサンプル。シェルフにでも張り付けてポチると出てくる・・・たぶんね。ポップアップメッセージhou.ui.displayMessage("hoge")テキストフィールド付きダイアログimport houDialog = hou.ui.readInput(message ="Text Field Dialog\n",title = "TextField Dialog",severity=hou.severityType.Warning,b[...]
続きを読む
Houdiniです。MaxだとFumeとKrakatoaを覚えたエフェクト屋が一度は手を出すという、アレに私も手を出しました。Houdiniの場合、プラグインなしで作れるのはありがたいですね。・・・重いけど。大きいサイズはVimeoでみてねw流体なのにシンメトリ!・・・・・・みたいな感じにしたかったんですけど、なかなか制御が難しいですねぇ。途中から、「シンメトリじゃなくていいか!」、という心境の変化が見て取れます。まだ、加減がよくわからず、パーティクルは沢山出してます。最終的にパーティクルは30,000,000強、発生させました。一回当たり3,000[...]
続きを読む
Houdini回じゃ!今回はOutput(SOP)ノード解説回にしてみました。これは「出力を定義できるノード」です。AssetやSOPの出力が定義出来ます。Object Merge SOP等で参照した場合例えば、「Object Merge SOP」で親のノードを参照した際、output SOPノードがあると自動でそこを参照します。(output SOPがない場合、Displayフラグが立っているノードが参照されます)とりあえずSOPの最後にはこのノードを付けとけば良いかと。Asset[...]
続きを読むShadingSwitchノードについて。 このShadingSwitchノード、ひとことで切って捨てると『ジオメトリごとに出力を切り替えるノード』です。 出力のチャンネル数ごとに、Single、Double、Triple、Quadと4種類 […]
