Houdini回!VOP内でGroup化の方法を覚えたのでメモ代わりに。簡単なGroup化はwrangleで行う事が多いのだけれど、時々VOPでGroupを作りたいって時があったのです。Set Attribute(VOP)を使うと、Groupへのセットも出来るっぽいです。Set Attribute(VOP)のAttribute Classってとこに"Point Group"と"Primitive Group"ってのがあって、それ使うとPoint or PrimitiveのGroup作ったり格納したりできるそうな。ためしに、ノイズを閾値にしてPointのグルー[...]
read more
Houdini回。フレームとフレームの間の値が欲しい時があります。上の絵でいうと、1.57613…の小数点以下の部分、0.57613…ですね。この値があると、今、フレームとフレームの間のどのあたりかを知ることができます。この例だと、0.57613…なので、フレーム間のちょうど半分よりすこし次のフレーム寄りだということが分かります。フレーム間を補間するときに便利だったりします。この値をVOPで求めます。ネットワークはfloor(VOP)を使ってこう。floor(VOP)は入力されたFloat値に対して、小数点以下を切り捨てて整数値を返してくれま[...]
read more
なんとなく、以前作った水のヤツに水車を追加してみました。シンプルな構成なはずが、ちょいちょい色んなところに引っかかってしまったので、メモがてら書いてきます。作業画面はこんな感じ。レンダラはRedshiftを使っているので、View用のマテリアルとRender用のマテリアルとを切り替えて使ってます。DOPネットワーク内はこんな感じ。コリジョンと水車と水。Feedback ScaleDOPネットワーク内で、Flipが他のシミュレーションに影響を及ぼすためには、Flip Solver(DOP)のパラメータ"Feedback Scale"の数値を設定する必要がありま[...]
read more
Houdiniノード勉強回。今回はVOPのfor Loop系。vopでのfor loop処理がHoudini15から新しくなって、分からなくて困ったのです。「なんじゃこりゃ」、「どうやって使うんじゃ」と思って調べたやつ。・・・・・・前回同様、VimeoのMaster Class見ながら勉強したんですけどねwVOP内でLoop処理は、Block Begin系ノードとBlock End系ノードをペアで使用することで実現するようです。Loopの種類に応じて、使用するノードや組み合わせが微妙に違います。VOP Network内でtabメニュー[...]
read more
カッコつけて英語のタイトルにしちゃったw日本語だと、「HoudiniからMayaへAlembicデータを受け渡す」、です。MayaからHoudiniにabcデータを渡すことはよくあるけど、その逆も時々あるので。HoudiniからMayaにAlembicデータを渡す際、デフォルトだと、~.abc is not a valid Alembic fileとエラーメッセージが出て困ったので、その対処法。ちなみに、Houdiniのバージョンは13、Mayaは2014です。Houdini側からの書き出しにはROP Alembic Outputノードを使う。[...]
read more
Houdini回ですぜい。今回は影だけレンダリングする方法。使用バージョン:Houdini13新しくソフトを覚え始めると、こういうのでも困ったりする私です。VEXノード使えばできそうだったので、やってみた。この”ShadowMatteノード”で影だけ取得できるっぽい。この例では、影の色を赤くするために、Constantノードで設定した赤にShadowmatteノードのalphaを乗算してます。・・・だが、しかし!実は、Shadow Matteという、それ用のマテリアルがちゃんと用意されてました。マテリアルのUtilityにShadow Mat[...]
read more
備忘録をかねて。pythonはモジュロ演算子(%)を使って文字列へのフォーマット操作ができます。型変換だけならstr()等でキャストでもいいのですが、桁揃えとかもやってくれるので極力こっちを使うようにしています。でも、すぐ忘れます。使い方はシンプルi=123print "Hellow World %d" % i#結果#Hellow World 123上の例では、%dの部分が123で置き換えられています。ここで使っている%dは「整数値と入れ替えますよ」の意味。複数を置換する場合は、下のように書きます。[...]
read more
夜な夜なこんなのを作ってました。この記事はこんなの作ったよ~、くらいの内容です。悪しからず。破片の置換の応用です。「形が似てるなら、ポリゴン以外も置換できるな」とふと思い、手始めに煙で作ってみた次第です。以下、ネットワーク抜粋です。手順は以下の通り。A:煙のSIM読み込みB:煙にリタイムをかけて、箱を満たした辺りでストップするC:煙にNameアトリビュート(point)を付与。このNameは、"D"工程のNameと一致させておく。D:箱を落とすシミュレーションする。(Packed)E:煙の位置を箱の位置と一致させる。F:箱と煙を置[...]
read more今回はほんに些細なTipsです。カメラのアイコンサイズの変え方です。カメラのShapeノードのアトリビュートにある、"Local Scale"というパラメータでアイコンのサイズを変更することができます。これだけ。このLocatorScaleはカメラに限ったものではなく、ライトやnullなど大きさを持たないものにあるパラメータのようです。実寸でモデルを作成した場合、アイコンが相対的に小さくなるので、そんな時はこのパラメータでアイコンを大きくすると良いですよ。(Maxに比べるとMayaはアイコンサイズの変更が少しアクセスしにくい感があります)ここから[...]
read more
※ 注意 ※この記事のリグは失敗例です。記事のとおり作ると、記事の通り失敗します。それでもよいという天の邪鬼な方に向けておくる、"Mayaで作る車輪リグ考察(失敗編2)まずは前回の失敗から。一方向の移動にしか、車輪の回転が実行されませんでした。原因は計算に使ったのがX軸方向の移動距離だけだったからです。他の軸も考慮に入れなければ・・・。そこで管理人、思った。「これは、大変そうだなぁ~」できれば「前回のExpressionをちょっと書き直したらできちゃった」が望ましい。そこで管理人、まじめに思った。「オブジェクトスペースで座[...]
read more