VR作業メモ

VRとかVRCとかアバター作成なんかの自分用の備忘録です

Substance Painterを使ってみたので備忘録

Substance Painterチュートリアルをやって、なんとなく使い方を覚えました。でも使ってないと使い方を忘れちゃうので、今回覚えた事をメモしておこうと思います。ど素人が書いているメモなので、間違いがある可能性があります。間違いがあったらご指摘いただけると嬉しいです。

 

Substance Painterという、3DCGにペイントする専用のソフトウェアがあります。

趣味で使うにはそこそこ(いや、かなり)良い値段なのですが、使いこなせると、CGの表現のレベルが格段に上がるので、(質感とか驚くほどです)頑張って使い方を覚えている所です。

取り合えずチュートリアル

勉強するにしてもソフトウェアが専門過ぎるのか、Substance Painterの書籍も数がすくなく、初心者向けな物はほぼ皆無です。

academy.substance3d.com

最新版ではありませんが、上記の動画を見ながら、使い方を理解しました。

YouTubeの字幕の自動翻訳が最近、各段に良くなったので、0.5倍速程度で動画を確認しつつ、途中、停止させて、説明に合わせて、実際にファイルを同じように処理してみます。2日間かけて、色塗りをしてみましたが、いまだにわからない事だらけです。

 

f:id:mokiti111:20200429105717p:plain

サブスタンスペインターのランタンチュートリアルの作例

ランタンの色塗りも出来たので、早速、簡単な自作物を塗ってみる事にしました。

booth.pm

上記のさるぼぼを塗る事にしました。絶賛、0円で頒布中です。皆使ってみてね。出来ればほかの物も買ってくれると超うれしいです。


このさるぼぼはQuest対応アバターなのでマテリアルが1つ、テクスチャーが一つなのですが、このままだと塗りにくいようなので、頭巾と前掛け、肌、ちゃんちゃんこと3つのマテリアルに設定し直してからSubstance Painterで塗ってみました。

f:id:mokiti111:20200429110723p:plain

さるぼぼの塗りテスト

ランタンのチュートリアルのおさらいなのでさるぼぼの塗り作業自体は簡単に完了しました。

Photoshopの作業に慣れている人の方が理解が速いかもです。

Photoshopも画像データをマスクやフィルタで効果付けていくでしょ。

Substance Painterもほぼ考え方は一緒です。(おんなじ色塗りソフトだもんね)

レイヤーでベースの色、質感、などを分けて指定すれば簡単完成です。

 

アバターで使うためのテスクチャー出力

完成したのですが、テクスチャーの出力で戸惑いました。

Substance Painterはマテリアル毎にテクスチャーを出力してしまう仕様なようです。色

を塗りやすくするためマテリアルを3つに分けたため、3倍のテクスチャーが出力されてしまいました。(肌と頭巾&前掛け、ちゃんちゃんこと別れてしまった)

 

さるぼぼのUVは1枚にまとめてあるので、できれば、Substance Painterで出力したテクスチャーもそれに習ってもらいたいので作業の仕方を変更します。

 

IDマップを使った塗り分け

ネットで調べてみたら2種類のfbxを用意してIDマップを使って塗る方法が簡単なようです。IDマップの作り方と使い方はランタンチュートリアルでも説明されてました。

頒布されているオリジナルのマテリアルが1個のfbxのさるぼぼデータをSubstance Painterに新規プロジェクトを作って読ませて、これに色を塗る事にします。ただ、これだと肌と頭巾&前掛け、ちゃんちゃんこは一緒のマテリアルなので塗り分けができません。

そこで、さっき色を塗って、出力がうまくできなかった、マテリアルを3つ設定したfbxも読み込んでIDマップを作成し塗り分けを行います。

IDマップの作り方は、

f:id:mokiti111:20200429114127p:plain

サブスタIDマップ作り方1

Texturs Set Settingsで行います。

MESH MAPSのBake Mesh Mapsをクリックするとダイアログがでますので

※画像はすでに作っちゃった後なのでマップが作られてます。最初はマップがないのでバッテンマークになってたと思います。

f:id:mokiti111:20200429115158p:plain

サブスタIDマップ作り方2

High definition Meshesの小さな用紙アイコン(画像だと"さるぼぼ2"の横の所です)を

クリックしてマテリアル分けしたfbxを指定します。

f:id:mokiti111:20200429115204p:plain

サブスタIDマップ作り方3

ダイアログ左のIDをクリックしてColor SourceがMaterial Colorになっている事を確認してください。

f:id:mokiti111:20200429115201p:plain

サブスタIDマップ作り方4

後はダイアログの下のBakeボタンを押すと指定したfbxから各種マップが生成されます。

3D画面をマテリアルからIDに切り替えて確認するとblenderでマテリアル分けしたのと同じように色分けがされたさるぼぼになりました。
※これはあくまでIDマップなので、実際のマテリアルは白いままです。早速、このIDマップを使って塗り分けをしてみます。

f:id:mokiti111:20200429115155p:plain

サブスタIDマップ作り方4

IDマップを使った塗り分け方法

画面をマテリアルに戻して、塗りつぶしレイヤーを置いて適当な色を指定します。肌だけでなく頭巾もちゃんちゃこも全部、指定した色になります。塗りつぶしレイヤーを右クリックしてAdd mask with color selectionを選択します

f:id:mokiti111:20200429115151p:plain

サブスタIDマップ作り方5

塗りつぶしレイヤーの下にcolor selectionが追加されます。

一旦画面をID画面に切り替えて三色分けされたID画面を表示させます。color selectionをクリックするとスポイトのアイコンがあるのでそれをクリックしてから、ID画面上の任意の色(赤い肌、黒い頭巾&前掛け、青いちゃんちゃんこのいずれか)をクリックすると、ID画面で色分けされた部分がマスクとして塗りつぶしレイヤーに登録されます。

これを必要な色の数繰り返すと(今回は赤、黒、青)を塗り分けが出来ました。

後は適当に質感などの効果を追加したり、ちゃんちゃんこの柄を入れたりの作業を行いって完成です。

 

今回はマテリアルが一つなので、テクスチャーを出力した場合、UV展開した通りのテクスチャーが生成されました。出力したテクスチャーをunityで指定して、(※シェーダーをstandardshaderにしました)VRCにアップすればリアル風なさるぼぼの出来上がりです。

 

f:id:mokiti111:20200429131912p:plain

VRCに持ち込めました

 

今後の課題点

fbxを取り込んだ時にオブジェクトが近すぎたり接触してたりすると綺麗にSubstance Painterで取り込めないようです。※実際に頭巾のあたりや顔と胴体のつなぎ目当たりが変な影が出来てしましました。

f:id:mokiti111:20200429132842p:plain

顔の部分や頭巾の一部に色のはみだしが…


これを解消するためにSubstance Painterで取り込むため際に、配置を調整したりするテクニックがあるようなのですが、これはおいおい確認して試してみようと思っています。

 

追記

初心者向けのSubstance Painter本が出ましたね

www.v-market.work

早速、購入してみました。

こちらも、サンプルファイルが付いてくるので、それを実際にSubstance Painterでいじりながら理解していく内容になっています。

和牛先生の本なので、とても、わかりやすいです。
自分ももう一度、この本で、おさらいしておこうと思います。