ブログ記事SubstancePainterのGENERATORnaoご挨拶こんにちは、naoです。こないだ、SubstancePainterというCGソフトをダウンロードしたのですが、その文献はあまり多くはない(英語は割とある)ので、いろいろ自分で調べてまとめておこうと思いまして、そのメモを兼ねようと今回の記事を書こうと思った次第です。SubstancePainterとはSubstancePainterとは、簡単に言うと他のCGソフト(BlenderやらMAYAやら)で作ったCGのオブジェクトに簡単に写実的な色を付けるためのソフトです。詳しくは公式にてお願いします。ちなみにですが、SubstancePainterは学生版は無料ですので、学生の方は是非ご利用ください。この記事の対象この記事はSubstancePainterのGENERATORという機能を理解できるよう色々なGENERATORを紹介していこうという趣旨で書いています。このソフトの導入の部分は書いていません。この記事はある程度CGソフトに造詣がある人向けに書いております。できるだけわかりやすく書くつもりではありますが、その点だけはご了承ください。準備SubstancePainterを起動し、BlenderやらMAYAから出力したOBJ/FBXを読み込みます。今回はこのオブジェクトを使っていきます。ベースとなる塗りつぶしレイヤーを作り、この上に錆の塗りつぶしレイヤーを作りました。この錆のマスクをGENERATORで弄っていこうと思います。GENERATORを選び、様々なGENERATORを付加していきます。GENERATORが開くので、そこから使用したいGENERATORを選びます。Distanceは、主にオブジェクト表面のグローバル座標上の位置によってマスクを変えるといったものです。主な使用法は地面に近い方に土埃をつけたりする。Distanceを選択すると、初期状態では以下のようになります。このパラメータ、PositionX/Y/Zで値を弄ると、その値はどこをマスクの中心にするかを設定しています。(0.5,0.24,0.5)にすると、下の方を中心に錆が発生します。区切り目をはっきりとさせたいときはContrastの値をあげればはっきりさせられます。この錆の方向を逆にしたいときはInvertをオンにすれば反転します。Distanceを少し変えたものという理解が正しいと思います。Endに該当すると思います。inputsのPositionのテクスチャの色を使ってマスクの位置を計算しています。Endに近いほどマスクが外れ、錆が見えるようになります。Balanceのパラメータがそれぞれの色に対する影響範囲だと思います。DirtDirtはオブジェクト表面全体を汚すときに使用します。汚れのテクスチャの大きさ。Scaleはあまり大きくしない方が違和感が出にくいと思います。Amountをいじって汚れを調整していく感じです。油汚れなどをつけたいときに使用します。Intensityは汚れの垂れる長さです。以下の画像はこのパラメータを大きくしたときの画像です。オブジェクトの表面に傷をつけるときに使います。conversinは指定された白黒のテクスチャをもとに汚れをつけるときに使います。平面にレンガをつけたいときとかにもよく使います。inputsのSourceに好きな模様の白黒画像を設定するとその模様通りにマスクが設定されます。LightLightはとある一方項から光を当てたと仮定したとき、オブジェクト表面に当たる光の強さをマスクとするものです。Wearはオブジェクトの曲率(面がめげられている部分)を中心にしてマスクを作ります。エッジ部分に汚れを足したいときに使います。Painterに入っているデフォルトのGENERATORです。これらを参考に色々なGENERATORを自分で作るのもまたいいでしょう。Painterには、他にも多くの機能があるので、これからも勉強してアマチュアから脱出しようと思います。最後に、多分CGソフトを普段使わない人にはわかりづらい内容だったと思いますが、最後まで読んでいただいてありがとうございました。この記事を書いた人nao基本的に3Dのモデリングとかやってます。