Houdini:MatchSizeとTransform by Attribute(SOP)
Houdini勉強回。 前回、MatchSize(SOP)について取り上げましたが、そこで紹介しなかった機能があります。それが、Restore/Stash Transformのパラメータです。 これらを使うことで、MatchSize(ROP […]
今回は少し趣向を変えて、数学の話です。ですが、その前に= 注意 =この記事には、数学やプログラムに関する用語が頻出します。∴次のような方にはおすすめしません。三角関数を見ると熱が出る。プログラムと聞くと動悸息切れがし夜眠れなくなる。このような症状の出る方は、読み飛ばされるのが良いでしょう。ちなみに管理人は前者です。熱が出ます。大丈夫!という方は用法用量を守って適当にお読み下さい。タイトルにあるとおり、arctan2(アークタンジェント)とはなんぞやです。アークタンジェントってなん[...]
続きを読むHoudini回です。タイトルどおり「煙でパーティクルを動かす」、回です。これを↓これで↓動かす↓(gifアニメ・・・重くなってしまったorz)Fumeと3dsMaxのPFlowでいうところの、"FumeFX Follow"的なのをやりたいのです。ここでは、"Pop Advect by Volumes"ノードを使ってパーティクルを流体の動きに沿わせます。手順としては、①:煙を作る②:パーティクルを作る③:煙の動きを使ってパーティクルを動かすとなります。では、ざっくりやってみます。①Pyroで煙を作りますSour[...]
続きを読むFBrenderというファイルを変更すると、レンダリング時の出力先のプリセットを追加変更することができる。以前書いたFBresと同様、Houdini起動時に環境変数HOUDINI_PATHで指定されたパスにあるOPmenuファイルを参照します(たぶん)HOUDINI_PATHが設定されていなければ、$HOME/houdinixx.xを参照します(たぶん)参照先のパスに、OPmenuファイルがない場合は、"Opmenu"ファイルを作成して中身書きます(拡張子なし)$HHにファイルフォーマットの参考があります。ためしに、$HHにあるFBrenderを開いてみ[...]
続きを読む今回はHoudini13から追加された機能、FEM(有機要素法)をさわりだけ。FEMはFinite Elementsの略らしいですね。どっちにしろ、「なんじゃそりゃ」ですね。こういう奴です↓。ソフトボディちっくですが、千切れたりもできるっぽくて。なんでも、中身も考慮した計算モデルだとか。わざわざ、記事に書いたのは、分かりやすいチュートリアルを見つけたから。最後にMaster Classも。僕は途中で寝ちゃって、最後まで見れてないんだけどw以上、ではまた次回![...]
続きを読む今回はMayaTips回。Mayaで普通のパーティクルをループさせる方法です。ここではMaya標準のFireを使って試してみます。方法はシンプル。ループさせたい最後のフレームに移動、パーティクルを選択して、「選択したパーティクルの現在の状態を初期状態として使用する」ってのが、この操作の意味なのですが、これで1フレームからInitial Stateを実行したフレームまでのループが出来ます。あくまで、動きだけですが、上例の方法で簡単な炎や煙のループは作れるのでは?それにしても、Initial Stateを設定するだけでなぜループが[...]
続きを読む久々更新Houdini回。マニュアル読んでて、ちょっとおもしろいなと思ったので。なんでもビューポートに働きかけるDetailアトリビュートがあるそうな。まず、gl_wireframe。float型のアトリビュートで、0以外の値の場合、そのオブジェクトはシーンビューで常にワイヤーフレーム表示になるそうな。やってみた。単純な球体にwrangleでgl_wireframeというDetailアトリビュートを追加。すると、シーンビューがシェーディング表示になっていても、そのオブジェクトはワイヤーフレーム表示になる。へ~もうひ[...]
続きを読む奥さん、Nukeノード回でっせっ!今回は「Group」ノードを取り上げてみました。名前のとおりグループにまとめるノードですね。使い方は、①:グループに含めたいノードを全部選択して②:Ctril + G一旦、グループ化した後、中身を見たい場合はGroupノードのPropertiesにある”S”ボタンを押すことで中に入れます。ちょいと分かりづらいですけど、右上の小さいやつです。また、一旦作成したグループを元に戻すには、①:Groupノードを選択して②:Ctrl+Alt+G以上、備忘録も兼ねてNukeのGroupノードについ[...]
続きを読むノードあれこれ#選択中のノードをすべて取得(リスト取得)oNodeS = hou.selectedNodes()#最初の一つを取り出すoNode = oNodes#ノードのロックがかかっているか否か確認するoNode.isLocked()#ノードのバイパスのON/OFFを確認するoNode.isBypassed()#ノードの入力を取得する(タプル取得)oNode.inputs()#子供のノードを取得します(リスト取得)oNode.children()ノード検索(glob)obj = hou.node[...]
続きを読むこんなの作ってみましたYoutubeの動画説明欄にリンクを貼っていますが、これをBlenderで作っている人がいて、「なにおぅ、Houdiniだってこのくらい!」というノリで作ったものです。水は、皿の影になるところにエミッタを置いて、そこから発生。また一番上からだけ流すと、一番下の皿に溜まるまでシミュレーション時間がかかってしまうので、皿ごとにエミッタを置いて水が溜まるまでの時間を節約しています。別アングルから見たプレビューだと、その様子が分かります。また厚みの薄い水のシミュレーションは、メッシュ時に穴がぽこぽこ開くのですが、今回はある程度水かさが増えたとこ[...]
続きを読むHoudini勉強回。 前回、MatchSize(SOP)について取り上げましたが、そこで紹介しなかった機能があります。それが、Restore/Stash Transformのパラメータです。 これらを使うことで、MatchSize(ROP […]
Houdiniノード勉強回。 Match Size(SOP)ノードを使うと、容易にオブジェクトを原点に配置できることを、最近知りました。 使い方は簡単、Match Size(SOP)にジオメトリを繋ぐだけ。 ”原点に配置”したいって時、けっ […]