Houdini:Pre/Post Render ScriptとSwitch(SOP)
Houdini回。 Mantra(ROP)とかArnold(ROP)とかにある、Pre-Render Scriptと”Switch”を組み合わせた活用例。 作業時は軽いモデルで、レンダリング時やキャッシュ作成時は本番 […]
Lightstorm3Dの無料ツールライブラリ「L3Library」にある機能の一つ、GeoLocatorが面白かったので備忘録も兼ねて。GeoLocatorという機能は、どうやらコンストレイン+追従の動きにノイズやDynamicsを加味するというものらしいです。試しに作ってみました。まず、インストール方からざっくりと。①サイトからL3Libraryをダウンロード。(※登録必要)②任意の場所にファイルを解凍。③Maya起動④ScriptEditorを起動しPythonタブに切り替え、↓のスクリプトをコピー&ペースト[...]
続きを読むこんなノードがあったのか回。先日、Graph Color(SOP)なるノードを見つけて、「あぁ、また知らないノードが・・・」となったので、書いてみた次第です。Houdini17.0で追加されたノードのようです。Graph Color(SOP)を使うと、図のように、隣り合ったコンポーネント(ポリゴンやポイントなど)が同じ色にならないように塗り分けることができます。要は、隣り合った要素が異なる色になるよう設定してくれるノードです。実際は、色ではなく整数アトリビュートが割り振られます。ここでは、それを視認できるように色付けしています。注意点というか特徴としては、”隣り[...]
続きを読むなんとなく、以前作った水のヤツに水車を追加してみました。シンプルな構成なはずが、ちょいちょい色んなところに引っかかってしまったので、メモがてら書いてきます。作業画面はこんな感じ。レンダラはRedshiftを使っているので、View用のマテリアルとRender用のマテリアルとを切り替えて使ってます。DOPネットワーク内はこんな感じ。コリジョンと水車と水。Feedback ScaleDOPネットワーク内で、Flipが他のシミュレーションに影響を及ぼすためには、Flip Solver(DOP)のパラメータ"Feedback Scale"の数値を設定する必要がありま[...]
続きを読むHoudiniノード勉強回。Houdini18からPaint(SOP)が、Attribute Paint(SOP)に変更されました。これはポリゴンなどに直接ペイントすることができるノードです。Houdini18で改良されたノードのひとつです。以下は、マニュアル。https://www.sidefx.com/docs/houdini/nodes/sop/attribpaint.htmlマニュアル曰く、新しくなって処理速度が速くなったり、ポイントに直接書けるようになったりといろいろ改良されてるようですが、一番すごいなと思ったのは、ネットワークの上流でポリゴン数が[...]
続きを読むネタに困ったときの、Houdini小ネタ回!カメラのハンドルツールでフォーカス操作カメラ選択して、ハンドルツール選択。次に、右クリックメニューから"Focus Handle"、もしくはビュー上でZキーでフォーカスを操作可能。赤い四角のハンドルが焦点距離(Focus Point)。その両側にある三角のアイコンの範囲がF-Stopの範囲。視覚的に操作できるので、DOF設定が楽。同様に、右クリックメニューからFrustum HandleでFocal Lenght操作可能。だけど、こっちは使ったことないかなぁ。ワイヤの色が変わるD[...]
続きを読むHoudiniでシミュレーションすると、すぐメモリが足りなくなります。そんな時の対処方法のひとつ。DOP Networkノードのパラメータ"Cache Simulation"をOFF!これでシミュレーション時にキャッシュデータを保持しなくなります。ここでいうキャッシュデータとは、タイムラインで青とか橙色であらわされるデータです。DOP Networkノードのパラメータ"Cache Simulation"をOFFにすると、このキャッシュデータが作られなくなるのでタイムライン上でマウスをぐりぐりしても、現在のフレーム以外シミュレーション結果を確認でき[...]
続きを読むブログでプログラムのコードを綺麗に表示する方法を覚えたので、今回はそっち系です。再帰関数を使用して、複雑な親子階層からオブジェクトのみ取得するMayaのスクリプトを書いてみました。親を選択してこのスクリプトを実行すると、親以下すべての階層を検索してMeshのリストを作成します。ちなみにpymelです。#再帰関数使ってMeshのみを取得import pymel.core as pm#再帰関数def getMeshList(Node, MeshList): #選択したノードの子供をリストで返す children = Node.ge[...]
続きを読むHoudini回です。VOP SOPを使って速度に色をつけます。個人的には、よく使う組み合わせです。例えば、FLIPのキャッシュデータに色つけたい時とかに使ってます。ここでは、速度によって赤青緑の3色を割り当てています。赤→青→緑の順に速度が速くなっています。VOP SOPの中身はこんな感じ。ざっくり解説すると、"global"から速度ベクトルを取得。"Lenght"ノードで速度ベクトルの大きさを求める。"fit range"ノードで範囲を調整する。"ramp parameter"ノードで範囲に色をつける。バージョンは[...]
続きを読むmib_amb_occlusionとRampノードを使って、オクルージョンを任意のグラデーションで出力する方法でっす。RampノードとSamplerInfoノードを使ってフレネルっぽい効果を出す方法はよくあるので、今回はその変則ということで。レンダリング画像を先に出すとこんな感じ。パッとみ分かりづらいかもだけど、赤や黄色の部分がオクルージョンの効果が強い部分。青や紫はオクルージョンの効果があまりない部分。mib_amb_occlusionのみだと、通常白黒のグラデーションですが、Rampノードを間に挟むことで任意のグラデーションにすることができます。それを何に使[...]
続きを読むその1へ その2へ その3へ その4へ その5へ 補足へmia_material、案外分からないパラメータがあって作業中、「ん?これ何だっけ」って時がままあります。特にパラメータの後半。なのでこれを機に一から復習してみました。未だに埋まっていない知識の空白部もあるのですが、備忘録もかね各パラメータについて書いてみました。ここ、ちゃうんちゃう? なんて箇所がありましたら指摘して頂けると嬉しいです。まず、mia_materialは でパス出力可といった感じにできることが増えていきます。ほかのマテリアルで、xとかpassesって名前についている物もだいたいそん[...]
続きを読むHoudini回。 Mantra(ROP)とかArnold(ROP)とかにある、Pre-Render Scriptと”Switch”を組み合わせた活用例。 作業時は軽いモデルで、レンダリング時やキャッシュ作成時は本番 […]
こんな感じの複数枚で構成されたテクスチャを、Nukeで一枚の大きなテクスチャにする方法を教えてもらいました。 「ContactSheet」というノードを使えば、できるようです。 似た名前のノードに”Layer ContactSh […]
Houdiniノード勉強回。 Copy to Point(SOP)を取り上げます。 Houdini18でCopy to Point2.0として新しくなったノードのひとつです。 これを使うことで、ポイントごとに異なるジオメトリを簡単に配置でき […]