スケッチ:カバ
描いた絵もアップしていきます。
今回はちょっと変わったネタを。極座標変換についてです。半分、数学です。極座標系とは、ザックリ言うと"角度(θ)"と"距離(r)"で表される座標の事です。下に二次元の直交座標系と極座標系の図を載せてみました。図のように、同じ座標でも直交座標と極座標という二つの方法で表すことが出来きます。同じ一つの場所を異なる座標系で表すことが出来るというのは、時として非常にありがたいことだったりします。直交座標ではややこしい制御も、極座標ならすんなりなんてこともあるかもしれませんからwこの、直交座標系と極座標系を行き来するためには、変換式が必要になります。難しい話は、[...]
続きを読むHoudini回!Houdini16で新しく付いたノード、Boolean(SOP)とCompile(SOP)を使ってみました。円柱を縦にスライスして、波打つ箱で削り取ったもの。ネットワークこんな。黄色いエリアがCompile Block。便利、だけど対応してないノードとかローカル変数使えないとかまだ制約が多くて、組むのに頭使う。今回これだけ、以上!サンプルファイルはこちら→BooleanCompile.hip[...]
続きを読むHoudini回。今回はこういうヤツ。パーティクルに板を貼り付けたもので、マテリアルとテクスチャ連番画像は共通。テクスチャのシーケンス番号に対する値をパーティクルごと個別に設定しています。簡単にできるとおもってたら思いの外手間取ってしまって。いくつか試して、最終的にinline Code(VOP)を使う方法に落ち着きました。inline Code(VEX)はVOP内でVEXが書けるノードです。このノードの詳しい解説はまたの機会に回すとして、やってる事はシェーダー側でのテクスチャパスの作成です。シェーダー側で使うテクスチャのフレーム番号は、事前にPri[...]
続きを読むHoudini"こんなシェルフがあったのか回"。先日、シェルフに"Bake Constraint"なるシェルフを見つけて吃驚しました。シェルフの"Constraints"タブにありました。いつから、追加されたのだろう。名前の通り、CHOPsで作られたコンストレイントの動きをキーフレームにベイクしてくれる機能のようですね。例えば、こんな感じに球体の周囲を回る箱を作って、箱は常に球体の方を向くようにコンストレイントを設定したとします。Bake Constraintの使い方は簡単。ベイクしたいオブジェクトを選択して、シェルフボタンを押すだけ[...]
続きを読むMayaの意外と知らないかもシリーズ。『Input List』Mayaでヒストリの順番を変更したいなぁ、なんて時にお世話になる機能です。3dsMaxのモディファイヤみたいにヒストリを常に意識するわけではないMayaでは、結構マイナーな部類なのではと勝手に思い書いてみました。オブジェクトを選択し、右クリックで現れるメニューからでInput Listを表示することができます。このウィンドウでヒストリの順番を変更したり(できないのも沢山ある)、特定のヒストリのみミュートしたりもできます。セットアップではよくお世話になる機能です。「BlendShapeのヒストリ[...]
続きを読む以前教えていただいたのに、毎回忘れて調べるのでここに書く。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追記これの活用例。サンプルファイ[...]
続きを読む前回に引き続き、「内積」についてです。内積を上手に使うと、角度を知ることができます。今回は、その辺りに焦点を絞って書いてみたいと思います。また、3DCGでは、角度を知るために内積が沢山使われています。後半でその辺りの簡単な活用例をいくつか取り上げたいと思います。が、その前に!ここで内積についての情報を少々。内積のことをスカラー積とも呼びます。これは内積の計算結果がスカラー値になるからだと思われます。スカラー値ってのは普通の数のことです。ベクトルが複数の値で構成され、向きや速度、大きさといったものを同時に表すのにたいして、単に大きさや量[...]
続きを読む再びオクルージョンネタと言うことで、今度は『mib_fg_occlusion』ノードについて調べてみました。以前に書いた、『mib_amb_occlusion』同様、オクルージョン系のノードです。Mentalrayはオクルージョンひとつとってもいろんな方法があるので、混乱しどころだったりするのではないでしょうか。使う側からしたら、「これ使っとけばいいよ」みたいな最強のを一個だけ用意してくれればいいのにって思ったりもします。『mib_fg_occlusion』、名前に”fg”と付くとおり、FinalGatherを使ったOcclusionです。FinalGather[...]
続きを読む今回は、マテリアルの基本「環境マップの張り方」です。サンプルとして、以前mia_materialのところで使ったシーンを使いました。まずMentalrayで環境マップを使用する時は、環境マップをShadingEngineのEnvironmentShaderに繋ぐ、↓のようなコネクトになります。時々、マテリアルのReflectionカラーに環境マップを繋いであるデータを見かけたりしますが、ShadingEngineのEnvironmenShaderに繋ぐのが正解。ShadingEngineについてはAREA Japanの説明が分かりやすいのでここでは割愛し[...]
続きを読むカッコつけて英語のタイトルにしちゃった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ノードを使う。[...]
続きを読む