Substance Designer Getting Started: 01 - Creating a base material part Two
Getting Started 01: Creating a base material part Two
入門01 ベースマテリアルの作成パート2
中編はこちら
Roughnessの調整
修正方針
パート1で作成したRoughnessでは、金属表面の粗さ(ザラつき)としては適していますが、 錆はもっとザラザラとしているものなので、このテクスチャでは合いません。
錆が付いている部分のRoughnessを調整するので、前回作成した錆の部位を示すマスクを使用して異なるRoughnessの値をブレンドします。
金属部分のRoughnessのテクスチャはすでにありますので、錆のRoughnessテクスチャを作成します。
錆のRoughnessテクスチャを作成
錆の形状の元となったWarp(ワープ)ノードからHistogramScanノードを使ってテクスチャを作ります。
錆の表面はザラザラで、Roughnessの値としてはほぼ1(白)に近い値になります。
これをHistogramScanノードでコントラストを調整して、ほぼ白で少しだけ黒に近い部分をもつテクスチャにします。
錆のRoughnessテクスチャをブレンド
Roughnessのテクスチャを2枚用意したら、あとはブレンドするだけです。
Foreground(フォアグラウンド)に錆のRoughnessを、Background(バックグラウンド)に金属のRoughnessを、 そしてOpacity(不透明度)には前回作成した錆の部位を示すマスクを使用します。
あとはノードの配置を見やすいように移動して終了です。
錆のSaturation(彩度)を調整
少し彩度が高いので、調整します。
GradientMap(グラデーションマップ)の後にHSL(Hue, Saturation and Lightness)ノードを追加します。
Hue(色相)、Saturation(彩度)、Lightness(明度)を調整して、錆に近い色にします。
今回はSaturation(彩度)の調整だけで良さそうです。
錆の範囲を変更
マスクを1か所にまとめたので、Histogram ScanのPositionを変更するだけで錆の範囲を調整できるようになりました。
これで一通りの設定は終わりましたが、最後に一つだけすることがあります。
Ambient occlusionの追加
カラー、ノーマル、メタリック、ラフネスの4つを作成するマテリアルになりましたが、あと一つアンビエントオクルージョンを作成します。
追加ノードの設定
グラフ内でスペースキーを押して、Output(出力)ノードを作成します。
Output(出力)ノードを選択します。
Usage(用途)のAddItem(項目を追加)をクリックして、項目を追加します。
ambientOcclusionを選択します。
出力ノードの名前が初期値でoutputなので、これを修正します。
マテリアルを外部のアプリから使用するときに、この名前が重要になりますので正しく設定してください。
先ほど設定したUsage(用途)の欄は文字列をコピーすることができますので、これをコピーペストするのが簡単です。
グラフの何もないところをダブルクリックしてグラフのプロパティを開くと、OutputImagesのところに設定した名前が追加されています。
OutputノードにLabelも設定しておきます。
こうするとグラフ内で見やすくなりますので、可読性のために設定しておきましょう。
Ambient occlusionのノードに接続
Ambient occlusionの作成はNormalマップから2ステップで行います。
Normal to Heightノードを追加します。
これはノーマルマップをハイトマップに変換します。
作成されたハイトマップは、ハイトマップのテクスチャとして出力することも可能です。
ノードはどんどん増えていきますので、自身が作業を手早く進めるためにも、そして他のアーティストにも分かりやすくノードを配置することが大切です。
Ambient Occlusionノードを追加します。
Normal to HeightノードとAmbient Occlusionノードを接続し、Ambient Occlusionノードのパラメータを調整します。
最後にAmbientOcclusionの出力ノードと接続して、3Dビューで確認します。
AmbientOcclusionノードのSpreadingを調整すると、陰の濃さを調整できます。
高さ情報を作成しているので、必要ならばAmbientOcclusinを追加した手順と同様にHeightマップも出力できます。
Heightマップの効果
デフォルトマテリアル
デフォルト設定では、3DビューでPhysically Metallic Roughnessのマテリアルを使っています。
これはParallax Occlusion Mapping(視差マッピング)を使用していますので、Heightマップが有効になります。
マテリアルをEditします。
Material:HeightのSacleを調整することで、視差マップがどのような物か体験できます。
動画の例では、outputノードの作成後に3Dビューを更新し損ねたために、heightマップが有効になっていません。
最後の調整
ノーマルマップのアルファ除去
作成したマテリアルデータは、ノーマルマップにアルファ値を含んでいます。
Substance Designer上では問題ないのですが、テクスチャとして出力した場合に他の環境では問題になることがありますので、これを除去します。
ノーマルマップ出力の前にレベルノードを追加し、アルファチャンネルの値を固定で1(不透明)にします。
こうすれば、アルファ値の点で問題が発生しなくなります。
パート3前編はこちら