Houdini:テクスチャ連番を個別にオフセットする
Houdini回。今回はこういうヤツ。 パーティクルに板を貼り付けたもので、マテリアルとテクスチャ連番画像は共通。 テクスチャのシーケンス番号に対する値をパーティクルごと個別に設定しています。 簡単にできるとおもってたら思いの外手間取ってし […]
前回に引き続き、内積についてです。前回は内積を使って角度を知る方法についてでしたが、今回はベクトルの大きさについてです。内積を上手に使うと、任意のベクトルが別のベクトルに落とす影の大きさを知ることができるのです。・・・なんのこっちゃですかね。初回のトロッコの例で、斜めに押す力(ベクトルa)の中にトロッコを動かす力(ベクトルb)がどれだけ含まれているかを求めました。cosを使って|a|cosθでしたね。この|a|cosθの値を知りたい時にも内積が使える、そういうことです。内積の定義式は、|a||b|cosθでしたね。ここで、ベクトル[...]
続きを読む
前回に引き続き、Houdiniによるスパイラルカーブの作り方。何の役に立つのかは・・・???その②これは、まっすぐなラインを引いて、pointノードでらせん状にしてますね。前回書いた方法と似てます。直線をぐるぐる巻くか、ぐるぐる巻いた円を伸ばすかの違いですね。sinとcos使ってグルグルまわしてます。実はオーソドックスな方法だったりして。Mayaとかでもsinとcos使って螺旋が作れますしね。その③三つ目は、ちょっと違った方法にしてみた。概要を書くと、①箱を用意して、②縦のエッジにあるポイントを[...]
続きを読む
FBrenderというファイルを変更すると、レンダリング時の出力先のプリセットを追加変更することができる。以前書いたFBresと同様、Houdini起動時に環境変数HOUDINI_PATHで指定されたパスにあるOPmenuファイルを参照します(たぶん)HOUDINI_PATHが設定されていなければ、$HOME/houdinixx.xを参照します(たぶん)参照先のパスに、OPmenuファイルがない場合は、"Opmenu"ファイルを作成して中身書きます(拡張子なし)$HHにファイルフォーマットの参考があります。ためしに、$HHにあるFBrenderを開いてみ[...]
続きを読む
※ 注意 ※この記事のリグは失敗例です。記事のとおり作ると、記事の通り失敗します。それでもよいという天の邪鬼な方に向けておくる、"Mayaで作る車輪リグ考察(失敗編2)まずは前回の失敗から。一方向の移動にしか、車輪の回転が実行されませんでした。原因は計算に使ったのがX軸方向の移動距離だけだったからです。他の軸も考慮に入れなければ・・・。そこで管理人、思った。「これは、大変そうだなぁ~」できれば「前回のExpressionをちょっと書き直したらできちゃった」が望ましい。そこで管理人、まじめに思った。「オブジェクトスペースで座[...]
続きを読む
PolyCapノードでフタをするpolycapノードで穴を塞ぐ時、Groupのところを*(アスタリスク)にしておくと穴が開いてるところをオートで塞いでくれるっぽい。ポイントだけ残す その1addノードを使うと、ポイントだけ残して他削除することができます。Pointのタブに"Delete Geometry But Keep the Points"ってのがあるのでそれ。ポイントだけ抽出する時は、ほぼaddノードを使っている気がします。ポイントだけ残す その2Deleteノードでもpoint1だけ[...]
続きを読む
Houdini回。フレームとフレームの間の値が欲しい時があります。上の絵でいうと、1.57613…の小数点以下の部分、0.57613…ですね。この値があると、今、フレームとフレームの間のどのあたりかを知ることができます。この例だと、0.57613…なので、フレーム間のちょうど半分よりすこし次のフレーム寄りだということが分かります。フレーム間を補間するときに便利だったりします。この値をVOPで求めます。ネットワークはfloor(VOP)を使ってこう。floor(VOP)は入力されたFloat値に対して、小数点以下を切り捨てて整数値を返してくれま[...]
続きを読む
Houdini:Eplosion WIPオーソドックスに爆発キノコ作ってみました。Houdini Previewこのくらいになりました。ウチのマシンだと、このあたりでメモリ使いきっちゃいました。これ以上のボクセル数はシミュレーション分割しなきゃメモリ不足じゃ。パスは少なめです。[...]
続きを読む
以前教えていただいたのに、毎回忘れて調べるのでここに書く。Orientをrotateに変換するVOPの場合orient(bind)を Rotate by Quaternionのquaternionに繋ぎ、qrotateのvecに何かしらのVectorデータを繋ぐ。qrotateにつなぐvectorは、上例の場合vec(0,1,0)としているが、例えば@Nにすれば結構、各ポイントでコントロール可。Wrangleの場合@N = qrotate(@orient, {0,1,0});2022/02/18追記これの活用例。サンプルファイ[...]
続きを読むHoudini回。六角形の作り方、いろいろ。Divide(SOP)のComute Dualを使う方法細かく見てみます。まずグリッド平面に対して、”Compute Dual”設定を有効にしたDivide(SOP)をコネクトすると、こうなります。六角形は出来たが、斜めっているので、Transform(SOP)のShearを使ってまっすぐにします。ちょっと縦に長い気がするので、Transform(SOP)でちょっと縦につぶします。最後に、四角い範囲だけ残せば完成。このサンプルファイルはこちら球体に対してDivid[...]
続きを読む
今回は少し趣向を変えて、数学の話です。ですが、その前に= 注意 =この記事には、数学やプログラムに関する用語が頻出します。∴次のような方にはおすすめしません。三角関数を見ると熱が出る。プログラムと聞くと動悸息切れがし夜眠れなくなる。このような症状の出る方は、読み飛ばされるのが良いでしょう。ちなみに管理人は前者です。熱が出ます。大丈夫!という方は用法用量を守って適当にお読み下さい。タイトルにあるとおり、arctan2(アークタンジェント)とはなんぞやです。アークタンジェントってなん[...]
続きを読むHoudini回。今回はこういうヤツ。 パーティクルに板を貼り付けたもので、マテリアルとテクスチャ連番画像は共通。 テクスチャのシーケンス番号に対する値をパーティクルごと個別に設定しています。 簡単にできるとおもってたら思いの外手間取ってし […]
Houdini Tips回。 煙作成時「Gas Resize Fluid Dynamic(DOP)」を使用した際、シミュレーション開始時に計算領域と発生源が重なっていないと上手くシミュレーション出来ない場合があります。今回はその回避法です。 […]


