前回に引き続き、「内積」についてです。内積を上手に使うと、角度を知ることができます。今回は、その辺りに焦点を絞って書いてみたいと思います。また、3DCGでは、角度を知るために内積が沢山使われています。後半でその辺りの簡単な活用例をいくつか取り上げたいと思います。が、その前に!ここで内積についての情報を少々。内積のことをスカラー積とも呼びます。これは内積の計算結果がスカラー値になるからだと思われます。スカラー値ってのは普通の数のことです。ベクトルが複数の値で構成され、向きや速度、大きさといったものを同時に表すのにたいして、単に大きさや量[...]
read more
今回はSamplerInfo(サンプラ情報)ノードを取り上げてみました。Mayaの中では割とメジャーなノードの部類に入ると思うのですが、使い方が難しいとかよくわからないとかいう声も時々耳にします。このSamplerInfoノードを一言で切って捨てると、「様々な情報を取得できるノード」でしょうか。取得した情報をあの手この手でシェーディングに組み込み、求める質感などを作るのですが、いろいろできるが故に、よく分からないということもあります。もっとも、よく使うのは"Facing Ratio"くらいかな、とも思いますが。なんて、偉そうなことを書いてますが、[...]
read more
うっす、Houdini回ッス。今回は、「続・影だけレンダリングする方法」っす。以前、影だけレンダリングする用のマテリアルを取り上げましたが、今回はその関連で、”特定のオブジェクトの影だけをレンダリングする方法”、です。上のようなシーンで影だけレンダリングするとこうなります。(地面にshadowmatteマテリアルを適応、キャラをPhantom)キャラの影だけ欲しいのですが、キャラの影以外にも地形のSelf Shadowが含まれてしまっています。この場合は、次のようにすると良いと思います。ライトのShadowの設定項目にある"Shadow Mask"を次のよう[...]
read more
※ 注意 ※この記事のリグは失敗例です。記事のとおり作ると、記事の通り失敗します。それでもよいという天の邪鬼な方に向けておくる、"Mayaで作る車輪リグ考察(失敗編2)まずは前回の失敗から。一方向の移動にしか、車輪の回転が実行されませんでした。原因は計算に使ったのがX軸方向の移動距離だけだったからです。他の軸も考慮に入れなければ・・・。そこで管理人、思った。「これは、大変そうだなぁ~」できれば「前回のExpressionをちょっと書き直したらできちゃった」が望ましい。そこで管理人、まじめに思った。「オブジェクトスペースで座[...]
read more
Houdiniノード勉強回。今回は、"POP Proximity DOP"ノード。見たことあるけど使ったことないノード。Proximityとは日本語で「近接」を意味する言葉です。つまりPOP Proximity DOPはパーティクルの近接ポイントに関する情報を生成してくれるノードです。ほとんど使ったことないノードだったのですが実際に使ってみると、意外と有用なノードかもという印象。食わず嫌いはよくないなと。反省。こんな感じに、POPネットワークに組み込むと、nearest, nearestdist, numproximityといったアト[...]
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
点Aと点Bをm:nに内分する点Pを表す位置ベクトルは、適当な基準点をOとして次の式で求められる。順に考えていく。これは納得できる。比は左右を同じ数で割っても、その比自体は変わらないのでと変形して使ってもOK。これは、ABの長さを1としたとき、APの長さが(m+n)/nとなる事を意味する。ベクトルAPとベクトルABは方向が等しいので定数倍であらわすことができる。この定数が、上記の比である。となる。このことから。この式をどんどん変形してゆく。長さの比が分か[...]
read more
Lightstorm3Dの無料ツールライブラリ「L3Library」にある機能の一つ、GeoLocatorが面白かったので備忘録も兼ねて。GeoLocatorという機能は、どうやらコンストレイン+追従の動きにノイズやDynamicsを加味するというものらしいです。試しに作ってみました。まず、インストール方からざっくりと。①サイトからL3Libraryをダウンロード。(※登録必要)②任意の場所にファイルを解凍。③Maya起動④ScriptEditorを起動しPythonタブに切り替え、↓のスクリプトをコピー&ペースト[...]
read more