OctaneRender:グラディエントテクスチャとその入力について
https://www.youtube.com/watch?v=rYNCxA3t_r4
今回はOctaneRenderにおけるグラディエントテクスチャとその入力について解説します。
Modo標準にもグラディエントテクスチャはありますが、ModoマテリアルをOctaneへと変換しても、グラディエントテクスチャは変換されることはありません。Modo標準に実装されているプロシージャルテクスチャやグラディエントテクスチャなどは、同様の機能がOctaneRender側でも実装されていたとしても、その計算方法や仕様などはそれぞれ異なるものですので、そのまま変換されるというわけではありません。このため、OctaneRender側でグラディエントテクスチャを使用したい場合には、OctaneRenderに実装されているグラディエントテクスチャを使用するか、Modoのグラディエントテクスチャをテクスチャファイルへとベイクして、そのファイルを画像マッピングして使用することになります。
ではいちからOctaneRenderでグラディエントテクスチャを設定してみましょう。まずはマテリアルのDiffuse (ディフューズ)を選択し、左側メニューのNew Texture (新規テクスチャ) > Operators (オペレータ)を見てみると、Gradient (グラディエント)とGradient (グラディエント) 2という二つのグラディエントテクスチャが用意されています。Modoで使いやすくまた拡張性が高いのがGradient (グラディエント) 2ですので、ここではGradient (グラディエント) 2を選択してみます。Gradient (グラディエント) 2のGradient (グラディエント)はModoと同じようなグラディエント設定なので、設定しやすいでしょう。ここで重要なので、何を基にグラディエントを設定するのかという、Modoのグラディエントで言うところの入力パラメータです。
ではまず、Modoグラディエントの入力パラメータでもよく使われる入射をOctaneでも再現してみます。Gradient (グラディエント)2のInput (入力)を選択した状態で、New Texture (新規テクスチャ) > Geometric (ジオメトリ) > Falloff map (フォールオフマップ)を追加します。これで入射と同じような表現が可能になります。
次にウェイトマップを使ってみます。Input (入力)を選択したまま、New Texture (新規テクスチャ) > Geometric (ジオメトリ)> Grayscale vertex attribute (グレースケール頂点アトリビュート)を追加し、Name (名称)にウェイトマップの名称を指定します。これでウェイトマップを基にしたグラディエントの設定が可能です。
Modoではさらにロケータとの距離に従ってグラディエントを設定することができますが、Octaneでも同様です。実際にロケータを作成して、ロケータとの距離によるグラディエントを設定してみましょう。ロケータを作成したら、適切な位置へと配置します。ロケータをスケマティックビューへと追加し、位置のチャンネルを追加します。この位置のベクトルから数値を取り出すために、左側メニューからNew Value (新規値) > Float Value (浮動小数点数値)を追加し、右クリックからチャンネルの追加 > FloatXYZ (浮動小数点 XYZ)を追加して、位置の値を接続します。次にNew Transform (新規トランスフォーム) > 3D Transform (3D トランスフォーム)を追加し、Float Value (浮動小数点数値)の出力をTranslation (位置)へと接続します。距離を測定するにはRelative Distance (相対距離)というノードを使います。Gradient (グラディエント) 2のInput (入力)を選択した状態で、New Texture (新規テクスチャ) > Geometric (ジオメトリ) > Relative Distance (相対距離)というテクスチャを追加し、3D Transform (3D トランスフォーム)のOutput (出力)をRelative Distance (相対距離)のRefernce Transform (参照位置)へと接続します。ロケータを動かしてみると、ロケータがモデルに近づくにつれ、その距離に応じてグラディエントを表現できるようになります。またRelative Distance (相対距離)のMode (モード)をDistance (距離)ではなく、XYZ axis offset (XYZ 軸オフセット)に設定することで、指定した軸に応じたオフセット量でグラディエントを表現できるようになります。
これまで解説してきたようにOctaneのグラディエントでも、Modoのグラディエントと同様、入射やロケータへの距離などでグラディエントを表現できますが、Octaneの場合には、さらにプロシージャルテクスチャと組み合わせることができます。Gradient (グラディエント) 2のInput (入力)を選択した状態で、New Texture (新規テクスチャ) > Procedural (プロシージャル) > Fractal Noise (フラクタルノイズ)を追加します。そうするとフラクタルノイズのテクスチャがグラディエントの色で表現されるようになります。Octaneのグラディエントでは組み合わせる幅も広がりますので、ぜひ試してみてください。