カッコつけて英語のタイトルにしちゃった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
前回に引き続き、内積についてです。前回は内積を使って角度を知る方法についてでしたが、今回はベクトルの大きさについてです。内積を上手に使うと、任意のベクトルが別のベクトルに落とす影の大きさを知ることができるのです。・・・なんのこっちゃですかね。初回のトロッコの例で、斜めに押す力(ベクトルa)の中にトロッコを動かす力(ベクトルb)がどれだけ含まれているかを求めました。cosを使って|a|cosθでしたね。この|a|cosθの値を知りたい時にも内積が使える、そういうことです。内積の定義式は、|a||b|cosθでしたね。ここで、ベクトル[...]
read more
あい、Houdini回。今回も、教えていただいたTipsを紹介します。●Flipbookを別々で開く。せっかく出力したFlipbookプレビューを、別のFlipbookで上書きした経験は、Houdini使いなら誰しもあるはず。これ、ちゃんと回避できるってさ!Flipbookオプションの"Flipbook Session"にラベル名に入力することで他のFlipbookと区別し、複数のFlipbookを開くことができるそうです。以下、マニュアル(日本語)の抜粋です。Flipbook Session Labelこれは[...]
read more
前回に引き続きContourについてです。検証バージョンはMayaは2012の英語版です。より新しいバージョンでは設定が変更になっている可能性もありますのであしからず。Contourノードを使ってラインを描画する場合は次の手順で行います。(ここでは極力、Contourノードのみで設定する方法を紹介します)Contourノードは下の絵の赤枠内のノード群のことです。ではやっていきます。step1CustomShadersのContrastShaderに”contour_contrast_function_level"もしくは"contour_cont[...]
read moreHoudini回。CHOPのjiggleでぷるんぷるんさせてみた。ネットワーク全体はこんな感じ。割とシンプルなネットワークで、面白い効果が得られるものだなぁ、と。プルプルした動きを作っているのはノードchannel1が参照している、Chopnet1の中身で・・・、以下略!詳しくはファイル参照! 手抜きじゃないよ!!!Sample File : jiggle_v01_sample.hiplc[...]
read more
最近MotionBuilderのスクリプトを書くのですが、日本語の資料も少なく調べるのに手間取ったので、備忘録もかねてメモの一部公開します。確認環境はMotionBuilder2013です。MotionBuilderでPythonを書き始める際のとっかかりになれば幸いです。名前からオブジェクトを取得for i in FBSystem().Scene.Components: oObj = FBFindModelByName("Cube") print oObj.Name選択をクリア[...]
read more
若干、いまさら感のあるDifferential Curve Growthです。日本語だと・・・なんでしたっけ?Differential Growth系は手法が沢山あるのですが、今回はその中で最も簡単でシンプルな、Relax(SOP)とSolver(SOP)を使う方法を採用しました。めんどくさい処理は全部Relax SOPがやってくれます。わたし好み。いずれ、Differential Growthについてまとめたいなと思っているので、詳細はその時にでも。と、思いましたが、Entagma先生が解説されてましたね。そちら載せときます。他の処理で、少し手[...]
read more
Houdiniノード勉強回。今回は、Crease(SOP)とSubdivide(SOP)のコンボについて。Subdivide(SOP)は、こんな感じにメッシュを細かく分割し更になめらかにしてくれるノードです。使用頻度の高いノードではないかと思います。Crease(SOP)は、Subdivide(SOP)とセットで使用することが前提のノードです。Crease(SOP)はSubdivide(SOP)よりも前工程で適用しておく必要があります。Crease(SOP)を使うと、任意のエッジをSubdivide(SOP)適用後も、鋭角さを保つことが可能です。例えば以下の[...]
read more
また、Houdini回ですぜ。カメラに映る範囲を確認する方法はないものか!?と思って管理人、頑張って探したこの方法!しかも簡単!青枠がカメラに写ってる範囲ね。ここでは、VDBノード使って可視化してます。From CameraタブのCameraの項目で可視化したいカメラを選んで、Z NearとZ Farにそれぞれカメラのニア/ファー値をリンクさせます。カメラに映る領域がVDB化されたのだと思いますが、これが作業View上に表示されてます。これを応用すると、カメラに映らないボリュームデータをVDB介して消したりできます、はい。その方法は、また[...]
read more
なんてことだ。記事を消してしまったようだ。なので、もう一度書き直します。Mayaのpymelでアトリビュートを調べる際はlistAttr()をつかい、メソッドを調べる際は、dir()を使う。import pymel.core as pmoObj = pm.polyCylinder(n="Cylinder", r=5, h=1,sz=1)print "アトリビュートのリスト↓"print pm.listAttr(oObj)print "使えるメソッド↓"print [...]
read more