ウーパの手習い

私的開発メモ用途なのでご容赦ください。2020年現在はSwiftとUnityでARのお勉強中。

裏地を作った時、UVは表地と共有しないほうがいいかも

f:id:uuupacom:20181216115144p:plain

上の画像のシャツの後ろの裾、少し暗いと思いませんか?
これは後ろの裾だけ、裏地を作成し、表地と同じUVを割り当てているのが原因です。(UVの共有)

 VRChat用のアバターモデリングしていますが、終盤にさしかかってから、スカートの裏地や、ネクタイの裏面を作りたいという状況になりました。

ほぼ見えない裏面ですので、UVは表面と共通でいいかなと考えていましたが、できあがったモデルをFBX形式で書き出し、テクスチャを作成するためにSubstancePainterで開きます。

SubstancePainterでは、最初にBakeして陰影をつける場合が多いと思いますが、その際、裏表の両面のUVを共通化している場合、本来は明るくなるべき箇所が暗くベイクされたりします。

f:id:uuupacom:20181216115213p:plain

※本来ならネクタイやスカートはもう少し明るくベイクされるべきなのですが、裏面のUVを共有しているため、少し暗くなってしまっています。

これは、モデルの裏表面の距離を多少離せばよいという話ではなく、UVを共有していることが原因となって発生している症状ですので、これが嫌な場合は、やはりUVを別にする必要があります。

よって、たかが裏面といえど、表面とUVを共有するぐらいなら、裏面部分のUV面積は小さくてもよいので、それぞれ別個のUV島を確保たほうがよいなと思いました。

f:id:uuupacom:20181216115636p:plain

参考:SubstancePainterでFBXを開いた直後。まだベイクしていないので、ネクタイやスカートの不具合は発生していませんが、ブーツの内側等、暗くなってほしい部分にも陰影が付いていない状態。

f:id:uuupacom:20181216115855p:plain

参考:ベイク後。裏表でUV共有していない部分に関しては、綺麗な陰影がついているので、やはりUV共有を避けたFBXを作り直した方が良さそうです。ただ、凹んだ白目を暗くするのはやめてほしいところ。

余談:この2枚を見比べた時、案外、最初のベイクしていない状態のまま作業していけばいいかもしれないとも考えましたが、SubstancePainter2018.3からの新機能である2Dテクスチャ書き出しは、アンビエントオクルージョンのマップを作成していないと使えないらしく、つまりベイクしておかないといけないようなので、やはりベイクは適応させようと考えています。