前回に引き続き、「内積」についてです。内積を上手に使うと、角度を知ることができます。今回は、その辺りに焦点を絞って書いてみたいと思います。また、3DCGでは、角度を知るために内積が沢山使われています。後半でその辺りの簡単な活用例をいくつか取り上げたいと思います。が、その前に!ここで内積についての情報を少々。内積のことをスカラー積とも呼びます。これは内積の計算結果がスカラー値になるからだと思われます。スカラー値ってのは普通の数のことです。ベクトルが複数の値で構成され、向きや速度、大きさといったものを同時に表すのにたいして、単に大きさや量[...]
read more
フリーソフトであるGIMPを使って、連番画像をGIFアニメーションに変換する方法。環境はWIndows10、GIMP2.8を使用。1.まず連番画像をレイヤーとして読み込む。読み込まれた連番はレイヤーとなっている。この時レイヤーの上から下へと連番の数字が増えるように並んでいる場合がある。このままではアニメーションさせたときに逆再生されてしまう。なので、並びを逆転する。2.メニューから、を実行し、レイヤー順を逆転する。3.GIF用に最適化する。を実行。完了すると、最適化された連番が新しいウィンドウで表示され[...]
read more
Houdiniノード勉強回。今回は、Houdini15から追加のBlock Begin(SOP) / Block End(SOP)ノードにしてみました。「なんじゃこりゃ」、「どうやって使うのさ」、と思って調べたヤツです。繰り返し処理のためのノードで、H14以前の"For Eeach(SOP)"と(ほぼ)同様の機能を提供するもの。(H14以前のfor each(SOP)は”For-Each SubnetWork(SOP)"として残っています)Tabメニューから"For Loop"もしくは、"For-Each Loop"でBlock Begin / End(SO[...]
read more
toxikノード解説回です。今回は「Garbage Maskノード」です。これがtoxik上で作るマスクですね。項目が多いため全部解説は無理なので、大事なところに絞って解説していきます。↓がGarbage Maskの設定項目です。ザックリABCの三つの領域に分けました。左側が現在作成されているマスクの一覧が表示され、右側に現在選択されているマスクの詳細が表示されています。マスクの作成は真ん中あたりAの領域のアイコン群から作成できます。次にBの領域の、マスク一覧の見方から。①の領域から。S・・[...]
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
Houdini回。図のような領域すべてが1で満たされたVDB Volumeを作る方法。VDB Active(SOP)を使う。ネットワークは下図。VDB Active(SOP)のパラメータ中程に沢山あるパラメータタブから、"Reference"を選択しておく。これで、ネットワーク左上のノードvdb1で定義されてたVDBボリュームが、右上のノードbox1の領域内に、アクティブな状態(値1)で作られる。例えるなら、領域内がすべて煙で均一に満たされた状態。こんなの何に使うのかというと・・・いうと・・・えーと、とにかく使いたいと思ったのです。とにかく、ボクセル[...]
read more
Houdiniノード勉強回。Houdini18からPaint(SOP)が、Attribute Paint(SOP)に変更されました。これはポリゴンなどに直接ペイントすることができるノードです。Houdini18で改良されたノードのひとつです。以下は、マニュアル。https://www.sidefx.com/docs/houdini/nodes/sop/attribpaint.htmlマニュアル曰く、新しくなって処理速度が速くなったり、ポイントに直接書けるようになったりといろいろ改良されてるようですが、一番すごいなと思ったのは、ネットワークの上流でポリゴン数が[...]
read more
Houdiniノード勉強回。Match Size(SOP)ノードを使うと、容易にオブジェクトを原点に配置できることを、最近知りました。使い方は簡単、Match Size(SOP)にジオメトリを繋ぐだけ。”原点に配置”したいって時、けっこうあるので、「ノードいっこで簡単にできたのか!」、と思った次第でした。Transform(SOP)のパラメータにある"Move Centroid to Origin"でも、ジオメトリを原点に配置できるのですが、それだとプロシージャルでないし(異なるジオメトリに適応できない)、かといってExpressionを書くのも面倒くさい。なので、[...]
read more
今回はMayaでのmentalray proxyの方法について書いてみました。自分これ何回やっても忘れてしまって・・・歳のせい?①:プロキシ化したいオブジェクトを選んで、②:"File type"をに変更③:だいたい同じ大きさのダミーオブジェクトを用意。④:ダミーオブジェクトのShapeノードにある、"Render Proxy"で書き出したプロキシデータを指定。⑤:後はレンダリングするだけ。ダミーオブジェクトのボックスがちゃんと入れ替わっているのが分かります↓。いっぱいあっても大丈夫! スケールもかけてみた。調[...]
read more
SweepノードとSkinノードで作るこういうの↓です。では、早速。まず、ガイド&断面の元となるカーブを用意します。ここではガイドのカーブにスパイラルカーブを、断面に円を用意しました。Sweepノードを使うと、ガイドカーブに沿って断面の円を配置することができます↓さらに、skinノードを使うと、これに面を張れます。場所によって太くしたり細くしたりしたいので、vopsop使ってそれを実現してます。(VopSopの中身については後述)最後にCarveノードでにょ~んってやって出来上がり!全体のネットワークは次の通りです。V[...]
read more