Houdini Tips回。煙作成時「Gas Resize Fluid Dynamic(DOP)」を使用した際、シミュレーション開始時に計算領域と発生源が重なっていないと上手くシミュレーション出来ない場合があります。今回はその回避法です。何を解決したいのか次のようなシミュレーションがあるとします。(gifアニメの枚数節約のため、ここではFPSを10で作ってます)シェルフで作った普通の煙ですが、発生源は原点より上の方(離れた場所)にあります。この発生源を、最初消しておいて何フレームか経ってから出現させるとこうなります。煙が一切発生し[...]
read more
Houdini勉強回。取り上げるのはForループとTimeShift(SOP)。ここで言うForループとは、Block Begin/End(SOP)ノードによる繰り返し処理のことを指しています。これとTimeShift(SOP)の併用についてがメインテーマです。上図のように、Forループ内にTimeShift(SOP)を組み込んだ場合、大抵TimeShift(SOP)が機能しないのですが、まれに機能している例を見かけ、はて?と思いリサーチしてみた次第です。結論から述べると、現状Forループ内でTimeShift(SOP)が機能するのは、以下の2パターンのみ。[...]
read more
Houdini回。図のような領域すべてが1で満たされたVDB Volumeを作る方法。VDB Active(SOP)を使う。ネットワークは下図。VDB Active(SOP)のパラメータ中程に沢山あるパラメータタブから、"Reference"を選択しておく。これで、ネットワーク左上のノードvdb1で定義されてたVDBボリュームが、右上のノードbox1の領域内に、アクティブな状態(値1)で作られる。例えるなら、領域内がすべて煙で均一に満たされた状態。こんなの何に使うのかというと・・・いうと・・・えーと、とにかく使いたいと思ったのです。とにかく、ボクセル[...]
read more
Houdini Tips回。マニュアルを読んでいたら、DOPデータを参照する構文なるものがあることを知りました。ネットワークパス:名前(/データ名)例1 /obj/AutoDopNetwork:sphere_object1例2 /obj/dopnet1:pyro/densityこれつかうと、読み込み系のノードでDOPオブジェクトなりデータなりを読み込めるらしい。いろいろやってみた。Object Merge(SOP)でRBD Objectを読み込むObject Merge(SOP)でフィールドデータを読み込む[...]
read more
Houdini回です。今回はカーブの接線(tangent)を取得方法を幾つか。調べて忘れて調べてを繰り返すので、備忘録も兼ねて。polyFrame(SOP)で接線を取得polyFrame(SOP)を使うと、「Normal(法線)」「Tangent(接線)」「Bitangent(従法線)」を取得することができます。下の青線がNormal(法線)、黄色線がTangent(接線)、赤いのがBitangent(従法線)。接線だけが欲しい場合はTangentだけ有効にしとけばOKStyleの設定で、平滑化[...]
read more
Houdini回。前回に引き続き、Fog Rayを作る方法、別解!普通にVolume使ってもFog Ray作れるのでは、と思ってやってみた。アルファめちゃ薄いけど、っぽいものは出来たかなと。以下、手順をStep by Stepで。1:スポットライトを作成する。Fog Rayの光源ですね。基本、この光に照らされた範囲がFog Rayになります。2:Volume(SOP)でFogを作成するFogRayを作りたい領域にFogを作成する。ここでは、安直にVolume(SOP)を使った。普通にBox型でも良いですが、ライ[...]
read more
今回は『mi_car_paint_phen_x_passes』マテリアルにしてみました。全2回くらいでまとめたいと思ってます。その名のとおり、車の塗装をシミュレートするシェーダーです。自分、車のマテリアルに以外は使ったことないんですが、車以外にもラメっぽい質感には使えるようです。mia_material同様、『mi_car_paint_phen』→『mi_car_paint_phen_x』→『mi_car_paint_phen_x_passes』と機能拡張されています。ひとまず、『mi_car_paint_phen_x_passes』を使えば問題ないかと。Pas[...]
read more
前回に引き続き、『mib_amb_occlusion』のパラメータについてです。残りは"id_inclexcl"と"id_nonself"。どちらもIDによって、オクルージョン効果を管理するパラメータです。オブジェクトに”miLabel”というアトリビュートを追加することで、使うことができます。(いちいちアトリビュートを作らなきゃいけないのが面倒だけど。Mayaはこういうのほんと多い。中にはマニュアルに記載されていないのとかもあったりして・・・ブツブツ)では、引き続きパラメータを見ていきます。id_inclexclIDと一致するmiLabelアトリビ[...]
read more