グラディエント レイヤーの「テクスチャ値」について書いてみます。
グラディエント レイヤーはグラデーションを作れる強力なレイヤーですが、入力パラメータを「テクスチャ値」にすると、グラディエントの下にあるレイヤーの輝度にグラデーションを設定する事ができるようになって便利です。
下のような白黒パターンのテクスチャを設定しします。
グラディエントを作成した、入力パラメータを「テクスチャ値」に設定します。「グラディエント編集」で設定したグラデーションがテクスチャの輝度に割り当てられます。
グラディエント レイヤーの「テクスチャ値」について書いてみます。
グラディエント レイヤーはグラデーションを作れる強力なレイヤーですが、入力パラメータを「テクスチャ値」にすると、グラディエントの下にあるレイヤーの輝度にグラデーションを設定する事ができるようになって便利です。
下のような白黒パターンのテクスチャを設定しします。
グラディエントを作成した、入力パラメータを「テクスチャ値」に設定します。「グラディエント編集」で設定したグラデーションがテクスチャの輝度に割り当てられます。
テクスチャにランダムに色を設定できる Regional HSV レイヤーについて書いてみます。
modoのシェーダーツリーには Process レイヤーというカテゴリーがあります。これはレイヤー間のブレンドとは別で、リストの下にあるレイヤーを加工・調整するレイヤー機能です。
このProcessレイヤーの「Regional HSV」とEnhance:modo textureの「タイル」を組み合わせると、ランダムな色のパターンを作ることができます。
タイルのテクスチャを貼ると下のようレンダリング結果になります。
タイルのテクスチャには「出力範囲」というオプションがあり、ONにするとランダムに色を設定する事ができます。デフォルトでは白と黒が設定されてます。
このタイルテクスチャの上に「Regional HSV」を追加します。色相 最小/最大の他に彩度や明度の変化など細かく設定できるので、カラフルなパターンを作ることができます。
ちなみに 「Regional HSV」はタイルの「出力範囲」にしか反応しないようです。
modoはディスプレイスメントマップに対応していますが、プロシージャルテクスチャによるディスプレイスメントをGL上で表示して確認することができません。
GLでLightWaveの「変位マッピング」のようにプロシージャルテクスチャのアニメーションを確認したい場合は「FXitem」と「Textured Falloffs」を使用します。
これまでプロシージャルテクスチャを使用した場合に、メッシュの変形をGLで確認することができませんでした。modo601からはシェーダーツリーに「FXアイテム」が追加され、デフォーマとフォールオフを併用する事でLWの「変位マッピング」のようなアニメーションを確認することができるようになりました。
以下のサンプルファイルではトランスフォームデフォーマにリニアフォールオフを設定、FXアイテムにノイズを追加してエフェクトを「フォールオフ値」にする事で波のような凹凸を設定しています。
FX アイテムはマニュアルによると、シェーダツリーを使用してシェーディング以外のシーン関連の機能を調整するための機能のようです。現在の所はデフォーマの「フォールオフ」と、パーティクルジェネレータ アイテムのパーティクルの「密度」「ディゾルブ」「サイズ」を調節できるみたいです。
modoは高速なレイトレースエンジンを搭載していますが、ディープシャドーマップも搭載しています。
ディープシャドーマップはボリューメトリックライトやファーのレンダリング速度が速くなるようですが、透明なマテリアルでステンドグラスのような効果にも使用できるようです。
シャドーマップで透明度に対応しているソフトは珍しいですね。
modoは2種類のサブディビジョンサーフェース機能を搭載しています。modoが初期バージョンから搭載してるmodoオリジナルのサブディビジョンと、501から搭載されたPixar Subdivision Surfaces(キャットマルクラーク)です。この2つのサブディビジョンはエッジウェイトの動作や、丸まり具合に違いがあるので比較してみました。
modo標準のサブディビはエッジが3辺集まる部分で、LWの頂点ウェイトを使用したような結果になります。
キャトマルクラークは比較的綺麗にウェイトがかりますが、ハードエッジよりの設定だとシェーディングの境界がはっきり出過ぎに見えます。
キャトマルクラークはサブディビジョンレベルによってエッジウェイトの結果が変わります。例えばサブディビレベル4だと、エッジウェイト40%で一番ハードなエッジになり、サブディビレベル5だとエッジウェイト50%でハードエッジになります。
サブディビジョンレベルによってエッジウェイトの結果が変わってしまうので、正直使いやすいとは言えません 。キャトマルクラークを使用する場合は、ループスライスを使用してエッジを立たせる使い方がよさそうです。
白いメッシュがmodoのサブディビジョン、緑のサーフェイスがキャトマルクラークです。modoのほうがポリゴン引けが大きいですが、ポリゴンの分割が細かければ誤差は少なくなる気がします。
modoのサブディビジョンサーフェースはStuart Ferguson氏とYoshiaki Tazaki氏によって開発された独自の細分割曲面アルゴリズムとのことです。
キャトマルクラークについてはPixarから特許のライセンスを受けて搭載したもので「リファレンス実装品質」と述べるほど模範的な実装になってるらしいです。
modoのマイクロポリゴンディスプレースメントを試してみました。ボックスにドットのテクスチャ設定しただけですが、滑らかで綺麗にレンダリングできます。これは凄い!
画像を使用してディスプレースメントを使用するとき、マテリアルの「ディスプレースメント距離」にはマイナス値がないのに気がつきました。ディスプレースメントで押し出したいときは画像の「上限値」を100%、へこませたいときには「上限値」を-100%に設定することで押し出し方向を設定できるようです。
ディスプレースメントの細かさは「ディスプレースメント評価間隔」と「最小エッジ長」で決まります。エッジがどちらか一方の値より大きい場合にエッジを分割します。
「ディスプレースメント評価間隔」の値を0.3のように小さく設定すると、より細かなディスプレースメント結果が得られます。逆に大きな値を設定するとエッジの分割が行われないため、メッシュ本来の頂点を移動した結果になります。
ディスプレースメントを使用するとマテリアルの「スムージング角度」が効かなくなります。ポリゴンの荒さが気になる場合は「ディスプレースメントバンプ」を使用すると滑らかなレンダリングになります。
ディスプレースメントは「ジオメトリキャッシュをベイク」を使用してメッシュに変換することができます。
ウェイトマップを使用してラインの太さを制御してみた。
ウェイトマップテクスチャを使用して「エッジの幅」を変更しています。「値2」に3000%のような大きな値を設定することでラインを太くすることができます。
modoのCel Edges Materialはmaxのインクペイントのようシェーダー処理なので反射や屈折に対応できるメリットはありますが、ラインの品質がアンチやサンプリング数によって変わるのでレンダリングに時間がかかります。SIのToonに近い印象ですね。
サブディビジョンをループスライスでエッジ立てたるときのメモです。
ループスライスは1分割の場合は特に問題無いのですが、複数分割したい場合にLightWaveのBandSawのプリセットより使い勝手が良くないと思う。という事で使用頻度の高そうな設定をボタンに登録してみました。
エッジウェイトが他のソフトでも共有出来ると良いんですけど、ZBrushを含め確実にエッジを立てたい場合はエッジをカットするのが一番確実ですね。
modo 601 SP2から搭載された「volumetric ambient color」機能のサンプルファイルが素晴らしいので紹介します。
http://forums.luxology.com/topic.aspx?f=32&t=67635
上の画像は公開されているサンプルファイルをレンダリングしたものです。
何が素晴らしいかというとボリュームレンダリングはレンダリングに時間がかかります。とくにボリュームでGIを使うと更にレンダリング時間が飛んでいきます。(modoのボリュームはGIレンダリングできません)
このテクニックを使用すると、通常のボリュームレンダリングと同じ時間でGIっぽいライティング効果を得られます。
何をしてるかというと一度頂点カラーマップとして「頂点照射」を行い、その情報をボリュームのアンビエント色として使用する事で、GIのような柔らかいシェーディングを実現しています。
毎フレームGI計算する必要が無いので、純粋にボリュームのみのレンダリング速度ですみます。ライトが移動するようなアニメーションには向きませんが、静止画やライトが動かないシーンでは十分な表現力を提供してくれそうです。
modoでCausticsのテスト。Vrayマニュアルのパクリです。
メモリ足りなくてこれ以上ノイズ減らせない。ローカルフォトンの値が高ければいいのかと思ったら、像がぼけてしまうので逆に低くするといい感じでした。コースティクスが弱く感じる場合はライトマテリアルで調整。あまりスマートな方法じゃない。
modoは異方性反射をマップ使って制御します。面白そうだったので試しにレンダリングしてみました。
DOF追加したらレンダリングが重い。3DソフトでDOFまでレンダリングすることは無いですが、どんな感じか興味本位で使ってみました。アンチエイリアスのサンプリング数8だと半分くらいのレンダリング時間になります。
簡単なサンプルファイル追加してみた。