目次
はじめに
ゲーム制作では、容量を抑えつつ質感やディテールを細かく表現するために、ゲームエンジン上でテクスチャを組み合わせて見た目を作ることがよくあります。
ただ、こうした仕上がりをゲームエンジンにインポートして確認するのは手間がかかってしまいます。
もし Maya 上でゲームエンジンと同じような見た目を再現できれば、その場で細かい調整ができ、作業効率が大きく上がります。
今回紹介するShaderFX を使えば、テクスチャを混ぜたり重ねたりといった表現を、ノードをつなぐだけで直感的に作成できるのでぜひ覚えてみましょう。
プラグインが有効になっているかチェックする
ShaderFX は Maya に標準で搭載されていますが、プラグインが有効化されていない事があります。
メニューから ウィンドウ > 設定/プリファレンス > プラグインマネージャ を開く。
ShaderFXPlugin.mll にチェックを入れる。(「ロード」と「自動ロード」両方にチェックするのがおすすめです!)

ShaderFXのマテリアルを作成方法

Hypershade(ハイパーシェード) を開く。
「マテリアル」メニューから Shaderfx Shader を作成する。
Shaderの作成ができたらプロパティからOpen ShederFXを開いてみましょう。
UIについて

①ノードエリア(中央)
ノードの配置・接続してシェーダーの処理をつくる場所です。
UEのBlueprintやSubstanceDesiger等と同じノードベースです。
②ノードライブラリ(左)
使えるノードがカテゴリごとに並んでいます。
ノードエリアで右クリック> Hw Shader Nodes からでもカテゴリ事にノードを呼び出す事ができます。
③プロパティエディタ(右)
選択したノードの詳細設定が表示されます。(※プロパティはHyper Shade WIndow 内)
④アウトプットノード
最後に出力をまとめる部分です。
ノードについて
テクスチャ系ノード

Texture Map
テクスチャを読み込み、UV でマッピングするノード。ベースカラーやノーマルマップなど。
UVPanner
UVをスクロールさせます。
CombineNormals
複数ノーマルマップの合成。
数式系(Math)

MulOp (Multiply)
値を乗算します。汚れ表現等によく使います。
AddOp (Add)
値を加算します。ハイライト追加などに追加ます。
SubOp (Subtract)
値を減算。差分マスクや微調整に使用。
InvertOp (Invert)
値の反転。白黒反転に便利です。
入力系(Inputs)

VertexColor
モデル頂点カラー情報を取得。色バリエーションやマスクに使用します。
UVSet
UV情報を取得します。
CameraVector
カメラ方向ベクトル。フレネル効果等に使用できそうです。
値系(Values)

Float3
3つの数値を持つノードです。RGBカラーの指定やXYZ方向ベクトルの指定に使用します。
アウトプットが青色になっています。
Float
1つの数値を持つノードです。単純に数値の指定に使用します。
アウトプットが緑色になっています。
最後に
前編ではShaderFXのマテリアル作成方法、UIについて書いてみました!
後編では実際にノードを繋げてシェーダを制作してみようと思います。
ShaderFXが登場してる記事
【Maya】頂点カラーを使ってテクスチャをブレンドしてみよう!①
【Maya】ShaderFXを使い、コリジョンモデリング用のシェーダを制作しましょう