Houdiniで水の表現を模索中wポイント数はおよそ63,000,000。↓画像のように画面のほとんどを水で埋め尽くしました。というのも、FLIP SolverのFeedbackという機能を使いたかったからです。このFeedbackってのを使うと、RBD Object(ここではオレンジ)に水の浮力(密度の差?)の影響を与えることができるそうです。今回は水中でのオレンジの落下減速を再現したくて使ってみました。(最終的にアップした映像にはスローモーションの演出を加えてしまったため、あまり効果を感じられませんでしたがw)Feedback Scaleの値[...]
read more
今回は『mib_bent_normal_env』についてです。Mentalrayのノードの一つです。これ、個人的にはかなり使えるノードだと思うのですが、そのわりに情報が少なくい。英語だと参考サイトはいくつかあるんですが、日本語だともう皆無。私は職場の方に教えていただきました。このノード、一言で切って捨てると、『環境光をエミュレートするノード』でしょうか。ファイナルギャザー等のレンダリング設定ではなく、マテリアルのシェーディングネットワークで環境光を再現してしまおうというわけです。『mib bent normal env』を使って環境光を再現したのがこちら[...]
read more
Houdiniノード勉強回。Match Size(SOP)ノードを使うと、容易にオブジェクトを原点に配置できることを、最近知りました。使い方は簡単、Match Size(SOP)にジオメトリを繋ぐだけ。”原点に配置”したいって時、けっこうあるので、「ノードいっこで簡単にできたのか!」、と思った次第でした。Transform(SOP)のパラメータにある"Move Centroid to Origin"でも、ジオメトリを原点に配置できるのですが、それだとプロシージャルでないし(異なるジオメトリに適応できない)、かといってExpressionを書くのも面倒くさい。なので、[...]
read more
テクスチャが重すぎてレンダリングできないっ、って時に以下の設定をしてテクスチャを最適化すると解決するかも。テクスチャサイズはでかくなる一方ですし。プリファレンスから設定します。Windows -->> Setting/Preferences -->> Preferences -->> Rendering 上の画像の赤枠の部分。『Use Maya-style alpha detection on file texture』にチェックを入れます。(2012ではデフォルトOFF)この状態でレンダリングをするか、下の"Up[...]
read more
その1へ その2へ その3へ その4へ その5へ 補足へmia_materialの復習も5回目パラメータも後半に突入。今回で終わらせたいが、さぁどうだ。Mayaは2012の英語版を使用しています。最新のバージョンとは異なる可能性がありますのであしからず。 Bump(バンプ)mia_material組み込みのバンプ。mia_material_x、mia_material_x_passesで使用可能。スロットが二つあるおかけで、バンプマップとノーマルマップの両方が楽に使える。Overall Bump(全体のバンプ)オーバーオールだか[...]
read more
こんなの作ってみましたYoutubeの動画説明欄にリンクを貼っていますが、これをBlenderで作っている人がいて、「なにおぅ、Houdiniだってこのくらい!」というノリで作ったものです。水は、皿の影になるところにエミッタを置いて、そこから発生。また一番上からだけ流すと、一番下の皿に溜まるまでシミュレーション時間がかかってしまうので、皿ごとにエミッタを置いて水が溜まるまでの時間を節約しています。別アングルから見たプレビューだと、その様子が分かります。また厚みの薄い水のシミュレーションは、メッシュ時に穴がぽこぽこ開くのですが、今回はある程度水かさが増えたとこ[...]
read more
Houdini勉強中につき私的メモからの抜粋システム単位とグリッドについてのメモ。システム単位についてマニュアル曰く、「Houdiniダイナミックスはキログラム、メートル、秒の単位を使う」とのこと。システム単位を確認&変更する場合は、Unit Lenght(m)=1Unit Mass(kg) =1Houdini先生が、"長さ1"って言ったらそれは1メートルのことで、"重さ1"って言ったら1kgのこと。例えばデフォルトでSphereを作成すると、radius=1の球ができる、これは半径1mの球。boxを作成すると、siz[...]
read more
以前教えていただいたのに、毎回忘れて調べるのでここに書く。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追記これの活用例。サンプルファイ[...]
read more