SweepノードとSkinノードで作るこういうの↓です。では、早速。まず、ガイド&断面の元となるカーブを用意します。ここではガイドのカーブにスパイラルカーブを、断面に円を用意しました。Sweepノードを使うと、ガイドカーブに沿って断面の円を配置することができます↓さらに、skinノードを使うと、これに面を張れます。場所によって太くしたり細くしたりしたいので、vopsop使ってそれを実現してます。(VopSopの中身については後述)最後にCarveノードでにょ~んってやって出来上がり!全体のネットワークは次の通りです。V[...]
read more
Houdini回。ノイズ系VEXの続き。Curl Noise & Curl Noise 2Dいろいろなところで名前が登場するCurl Noise。マニュアル読んでもよく分からぬから調べた。https://www.cgarts.or.jp/report/rep_kr/rep0201.html#p3要するに、「流体っぽいノイズが生成できてオブジェクトとの干渉も可能らしい」、と。なんか、よさそげ。特に、オブジェクトとの干渉を考慮できるっぽいあたりが。やってみた。下はVelocityを可視化したものです。たしかに干渉してるっぽい。[...]
read more
珍しくプロモーションです。AEJuice紹介するのはAdobe After Effectsの有料プラグイン、"AEjuice"です。オフィシャルページはこちら。AEjuiceとはどんなプラグインなのか?一言でいうと、「膨大な数と種類のエフェクト素材集」でしょうか。ためしにこんなの作ってみました。これは、ごくごく一部のエフェクト素材をつなげたものです。素材集といってもAE上でわりと編集も出来ます。実際のAE作業画面をキャプチャしてみました。どれくらいエフェクトがあるか、なんとなく分かるかと。これでもまだ一部。私もすべては確認しきれて[...]
read more
ブログでプログラムのコードを綺麗に表示する方法を覚えたので、今回はそっち系です。再帰関数を使用して、複雑な親子階層からオブジェクトのみ取得するMayaのスクリプトを書いてみました。親を選択してこのスクリプトを実行すると、親以下すべての階層を検索してMeshのリストを作成します。ちなみにpymelです。#再帰関数使ってMeshのみを取得import pymel.core as pm#再帰関数def getMeshList(Node, MeshList): #選択したノードの子供をリストで返す children = Node.ge[...]
read more
Houdini回です。VOP SOPを使って速度に色をつけます。個人的には、よく使う組み合わせです。例えば、FLIPのキャッシュデータに色つけたい時とかに使ってます。ここでは、速度によって赤青緑の3色を割り当てています。赤→青→緑の順に速度が速くなっています。VOP SOPの中身はこんな感じ。ざっくり解説すると、"global"から速度ベクトルを取得。"Lenght"ノードで速度ベクトルの大きさを求める。"fit range"ノードで範囲を調整する。"ramp parameter"ノードで範囲に色をつける。バージョンは[...]
read more
Houdini回です。今回はカメラとスケールについて。前提として、Maya→Houdiniにデータを持ってくると、Unitの単位の違いからスケールをかけることになります。Mayaは1unitが1cm、Houdiniは1unitが1mなので、実寸で作成されたモデルの場合、Houdini上で1/100にします。私は安直にNullを使ってスケールをかけることが多いです。この時、カメラにもスケールがかかるとレンダリングの絵に影響がでて困る。具体的にはVolumeのDensityへの影響がでて困る。こんな感じに。これが困る(。-`ω´-)ンーかといってスケ[...]
read more
こんなの作ってました。作業画面はこんな。Rebelwayのチュートリアル見返してて、ふと「ちゃんと作ろう」と思って。背景はMegascan。そういえば以前のバージョンにはMistのシェルフがあったけど、今のバージョン(H18)には無いなってると思って調べてみたら、見事に無いなってた。ドキュメントのGas Mist Solverにも今後のバージョンで削除される的なことが書いてありました。Gas Mist Solverはちゃんと理解してなかったけど、なんか好きなノードだったんだけどなぁ。結局Mistに相当する煙は、WhiteWater SourceをもとにP[...]
read more
Houdiniで水の表現を模索中wポイント数はおよそ63,000,000。↓画像のように画面のほとんどを水で埋め尽くしました。というのも、FLIP SolverのFeedbackという機能を使いたかったからです。このFeedbackってのを使うと、RBD Object(ここではオレンジ)に水の浮力(密度の差?)の影響を与えることができるそうです。今回は水中でのオレンジの落下減速を再現したくて使ってみました。(最終的にアップした映像にはスローモーションの演出を加えてしまったため、あまり効果を感じられませんでしたがw)Feedback Scaleの値[...]
read more
Houdini回。今回はこれ。Geometry(OBJ)ノードの真ん中あたりにあるパラメータ↓について。上記のパラメータを"Clean Transform"にすると、状態を維持したまま、数値を強制的に0にすることができる。言い換えると、原点以外の場所を0とみなすことが出来る、ってこと。(Mayaのフリーズって、こんな感じの機能じゃなかったっけかな)このパラメータ、選べる項目が沢山あるので、それぞれ確認してみようと思います。Clean Transform・・・Translate,Rotate,Scaleの3項目すべて、現在の値を0とみなす。[...]
read more
夜な夜なこんなのを作ってました。この記事はこんなの作ったよ~、くらいの内容です。悪しからず。破片の置換の応用です。「形が似てるなら、ポリゴン以外も置換できるな」とふと思い、手始めに煙で作ってみた次第です。以下、ネットワーク抜粋です。手順は以下の通り。A:煙のSIM読み込みB:煙にリタイムをかけて、箱を満たした辺りでストップするC:煙にNameアトリビュート(point)を付与。このNameは、"D"工程のNameと一致させておく。D:箱を落とすシミュレーションする。(Packed)E:煙の位置を箱の位置と一致させる。F:箱と煙を置[...]
read more