スケッチ:カバ
描いた絵もアップしていきます。
今回は"WriteToColorBuffer"ノードについて書くことにしました。MayaでPass出力する場合、避けては通れないノードですね。意外と長くなりそうなので、何回かに分けるつもりです。このノード、ひとことで言うと『自分で任意のカラーPassを作成することの出来るノード』です。各Attributeの説明はひとまず置いておくとして、実際の使い方を簡単にやってみたいと思います。例によってMayaは2012の英語版。サンプルシーンは下のようなもので、Materialはmia_material_x_passesに環境マップをコネクトしただけのシンプルなものです。[...]
続きを読む
Houdini、VEX勉強回。neighbour系について。このneighour()系のVEX関数、よく使う割にいつもマニュアル見るので備忘録もかねてまとめです。neighbour()とかneighbours()とか、似た名前の関数があり紛らわしい。私的「つづり間違うランキング」も結構上位です。まず、neighbourと名の付く関数は隣接ポイントに関する情報を取得するものです。そもそも隣接ポイントとは、隣り合ったポイントです。上左図のように、エッジ(線)でつながったポイントを隣接ポイントといいます。上右図のように繋がってないものは隣接ポイントではない[...]
続きを読む
最近MotionBuilderのスクリプトを書くのですが、日本語の資料も少なく調べるのに手間取ったので、備忘録もかねてメモの一部公開します。確認環境はMotionBuilder2013です。MotionBuilderでPythonを書き始める際のとっかかりになれば幸いです。名前からオブジェクトを取得for i in FBSystem().Scene.Components: oObj = FBFindModelByName("Cube") print oObj.Name選択をクリア[...]
続きを読む
Houdini回です。今回はカーブの接線(tangent)を取得方法を幾つか。調べて忘れて調べてを繰り返すので、備忘録も兼ねて。polyFrame(SOP)で接線を取得polyFrame(SOP)を使うと、「Normal(法線)」「Tangent(接線)」「Bitangent(従法線)」を取得することができます。下の青線がNormal(法線)、黄色線がTangent(接線)、赤いのがBitangent(従法線)。接線だけが欲しい場合はTangentだけ有効にしとけばOKStyleの設定で、平滑化[...]
続きを読む
Houdini、こんなノードがあったのか回!Enumerate(SOP)というノード。このノード、ポイント、またはプリミティブに連続したアトリビュートを作成してくれるノードだそうです。例えば、パラメータのGroup Typeを"Points"に変更、Attributeに"id"と記述して、任意のジオメトリにコネクトする。結果、ジオメトリを構成する各ポイントにidアトリビュートが作成され、0から順番に数字が割り当てられる。・・・へ~パラメータにはグループ指定の項目があり、特定のグループのみにidを割り当てることも出来る。まとめると、これはID的なアトリビュ[...]
続きを読む
Houdini回。ポリゴンプリミティブの面を消して、エッジを残す簡単な方法。面はいらんのじゃ、線だけほしいのじゃ、って時があったのです。PolyWire(SOP)とか使いたくないし、かといってWrangleで書くのもなぁ、きっとノードで出来る、と思って調べたらPrimitive(SOP)を使うとそれっぽくなりました。。忘れたころにPrimitive(SOP)の以外な有用性に気付かされます。パラメータのFace/Hullタブにある「Close U」を"Open"に変更します。これでポリゴンが開いて、面がなくなりエッジだけになります。大抵はこれでイケ[...]
続きを読む
Houdini回ね。今回はAttribute Wrangle(SOP)を使ってPointを作ります。最終的にはPointを並べてこんな感じのを、と。sin()とcos()が出てくるのであしからず。では早速。まず、AttributeWrangle(SOP)のRun Overの項目を"Detail(only once)"に変更しておきます。Pointを作成するコマンドはaddpoint()を使います。addpoint(geoself(), {0, 1, 0});上のコードで点が1コ作られます。点を作るのはこれだけ。[...]
続きを読む
ネタに困った時の小技回(Houdini)PscaleをView上で確認するPointの大きさのアトリビュート、pscaleをView上で確認する方法です。display Options -> Display particlesをDiscsに変更!これでOK。Create in Contextシーンビューの右上にあるTool Optionsで"Create at Object Level"->"Create in Context"に変更すると、シェルフのCreateタブから作るジオメトリが、現在のコンテクストに作成されます。[...]
続きを読む
Houdini回。Houdiniにはopから始まるエクスプレッションがたくさんあります。個人的に紛らわしいと思ってるのはopinput~とか、それに類するやつらです。opinputとかopinputpathとか。さらにはop:`opinputpath(".",0)`とか合わせ技っぽいのまで。似たような名前と機能で、モヤモヤしてたのでスッキリさせようと思って取り上げました。opinputpath指定したノードの入力に接続されたノードのフルパスを取得できる。opinputpath("参照ノードのパス", &[...]
続きを読む
Houdiniレシピ。今回は、ちょっとしたTips回です。ノードを選んで素早くふるふるすると、コネクションからノードを千切ることが可能。他のコネクションを壊すことがないので、便利。とあるビデオチュートリアルで、さも当然そうにやってて、「なにぃ」ってなって載せてみた。・・・手抜きじゃないよっ!画面キャプチャまで使ったんだからっ!はい次回!なお、ここで使用しているHoduiniのバージョンは13です。最新バージョンでは異なる可能性がありますのであしからず。[...]
続きを読む
