3dsMax:スキャンラインでAO素材
今回は3dsMax回。 3dsMaxのスキャンラインでAO素材を出力する方法。 教えていただいたので備忘録もかねてです。 サンプルシーンとして次のようなシーンを作成しました。 ①:マテリアルは標準マテリアルを使用。 周囲光/拡散反射光を白に […]
今回は、マテリアルの基本「環境マップの張り方」です。サンプルとして、以前mia_materialのところで使ったシーンを使いました。まずMentalrayで環境マップを使用する時は、環境マップをShadingEngineのEnvironmentShaderに繋ぐ、↓のようなコネクトになります。時々、マテリアルのReflectionカラーに環境マップを繋いであるデータを見かけたりしますが、ShadingEngineのEnvironmenShaderに繋ぐのが正解。ShadingEngineについてはAREA Japanの説明が分かりやすいのでここでは割愛し[...]
続きを読む
Houdini回。フレームとフレームの間の値が欲しい時があります。上の絵でいうと、1.57613…の小数点以下の部分、0.57613…ですね。この値があると、今、フレームとフレームの間のどのあたりかを知ることができます。この例だと、0.57613…なので、フレーム間のちょうど半分よりすこし次のフレーム寄りだということが分かります。フレーム間を補間するときに便利だったりします。この値をVOPで求めます。ネットワークはfloor(VOP)を使ってこう。floor(VOP)は入力されたFloat値に対して、小数点以下を切り捨てて整数値を返してくれま[...]
続きを読む
今回から数回に分けて『user_ibl_env』 と『user_ibl_rect』の二つのノードにスポットを当ててみようと思います。どちらもMaya2013で新たに追加されたノードです。これら「user_ibl」ノードはひとことで言うと、「FinalGatherを使わずに環境光をエミュレートするノード」でしょうか。『user_ibl』のiblはImage Based Lightingの略だそうです。『user_ibl_env』ノード、機能としては以前とりあげた、『mib_bent_normal_env』ノードに似てるかなと。1回目の今回は『user_ibl_en[...]
続きを読む
今回はプログラム系、特にユーザーインターフェース周りのお話です。 ここでは、Python & QtDesigner & Pysideを使った作例をば。最近の3DCG系ソフトはだいたいPythonをサポートしているので、多少の違いはあれど、どのソフトでも応用がきくのではなかろうかと思いまして書きました。ただしあくまでCG屋が書くプログラムなので、そこのところあしからず。いくつかある作例の中の一つとして捉えていただければ。流れは下のようになります。①:Qt DesignerでUI作成↓②:PySideに変換↓③:コードを好きにいじる[...]
続きを読む
前回に引き続き、「内積」についてです。内積を上手に使うと、角度を知ることができます。今回は、その辺りに焦点を絞って書いてみたいと思います。また、3DCGでは、角度を知るために内積が沢山使われています。後半でその辺りの簡単な活用例をいくつか取り上げたいと思います。が、その前に!ここで内積についての情報を少々。内積のことをスカラー積とも呼びます。これは内積の計算結果がスカラー値になるからだと思われます。スカラー値ってのは普通の数のことです。ベクトルが複数の値で構成され、向きや速度、大きさといったものを同時に表すのにたいして、単に大きさや量[...]
続きを読む
FBrenderというファイルを変更すると、レンダリング時の出力先のプリセットを追加変更することができる。以前書いたFBresと同様、Houdini起動時に環境変数HOUDINI_PATHで指定されたパスにあるOPmenuファイルを参照します(たぶん)HOUDINI_PATHが設定されていなければ、$HOME/houdinixx.xを参照します(たぶん)参照先のパスに、OPmenuファイルがない場合は、"Opmenu"ファイルを作成して中身書きます(拡張子なし)$HHにファイルフォーマットの参考があります。ためしに、$HHにあるFBrenderを開いてみ[...]
続きを読む
フリーソフトであるGIMPを使って、連番画像をGIFアニメーションに変換する方法。環境はWIndows10、GIMP2.8を使用。1.まず連番画像をレイヤーとして読み込む。読み込まれた連番はレイヤーとなっている。この時レイヤーの上から下へと連番の数字が増えるように並んでいる場合がある。このままではアニメーションさせたときに逆再生されてしまう。なので、並びを逆転する。2.メニューから、を実行し、レイヤー順を逆転する。3.GIF用に最適化する。を実行。完了すると、最適化された連番が新しいウィンドウで表示され[...]
続きを読む
RecursiveGrowthです。思いのほか楽しくて形状違いで4つも作ってしまいました。ソリッドな見た目ですがほぼVDBで制御してます。ほんとHoudiniのVolumeは汎用性が高くて最強だと思う。ただシミュレーション制御ってのもあり、狙った形に持ってくのは至難の業。以下、作業画面。面白かった。以上!また次回ね![...]
続きを読む
Houdini回。コンストレイント系SOPノードの続き。RBD Constraints From Curves(SOP)。RBD Constraints From Curves(SOP)マニュアル曰く(意訳)、”ビューポート上でカーブを描いて、そのカーブから特定の範囲内にあるピースのジオメトリ上のポイントにコンストレイントを作成します。また4番目の入力にカーブを繋いで、それを使用することも出来る。カーブができたら、コンストレイントタイプを決めたり、セットアップをします。”基本は、RBD Constraints From Line(SOP)と同じで、ビューポートで[...]
続きを読む
Houdini勉強回。取り上げるのはForループとTimeShift(SOP)。ここで言うForループとは、Block Begin/End(SOP)ノードによる繰り返し処理のことを指しています。これとTimeShift(SOP)の併用についてがメインテーマです。上図のように、Forループ内にTimeShift(SOP)を組み込んだ場合、大抵TimeShift(SOP)が機能しないのですが、まれに機能している例を見かけ、はて?と思いリサーチしてみた次第です。結論から述べると、現状Forループ内でTimeShift(SOP)が機能するのは、以下の2パターンのみ。[...]
続きを読む今回は3dsMax回。 3dsMaxのスキャンラインでAO素材を出力する方法。 教えていただいたので備忘録もかねてです。 サンプルシーンとして次のようなシーンを作成しました。 ①:マテリアルは標準マテリアルを使用。 周囲光/拡散反射光を白に […]
再びオクルージョンネタと言うことで、今度は『mib_fg_occlusion』ノードについて調べてみました。 以前に書いた、『mib_amb_occlusion』同様、オクルージョン系のノードです。 Mentalrayはオクルージョンひとつ […]
前回に引き続き、『mib_amb_occlusion』のパラメータについてです。 残りは”id_inclexcl”と”id_nonself”。 どちらもIDによって、オクルージョン効果を管理す […]
アンビエントオクルージョン(以下AO)の効果を出すことができる、Mentalrayのテクスチャノード。 使用頻度は高い。 テクスチャノードなので、マテリアル等に繋いで使う。 下の例は、シンプルにsurfaceShaderのoutColorに […]



