はじめに
今回はlilToonにあるUV Modeの使い方を紹介します。
これは3Dモデルに複数UVがある場合、2以上のテクスチャを割り当てて合成する機能です。
↓複数UV、複数テクスチャを使うメリットや活用法はこちらをご覧ください。


lilToonの場合はやや特殊でマットキャップの追加もUV Modeで行えます。
変わった子です。
複数UVとテクスチャ設定方法
3DCGは1つの形状に複数のUVを設定できます。

そしてUnityでlilToonシェーダーを設定。
lilToonの導入方法はこちらをご覧ください。
メインカラーは自動で「UV1」が設定されます。
2つ目以降のUVが使えるのはメインカラー2ndです。
ここのUV Modeで別のUVを選べます。


UVマップの名前は反映されません。
上から「UV0,1,2,3…」のような形で反映されます。
MatCapは球体に環境光の反射などを描いてモデルの形状に合わせて表示する処理です。
こんな感じの金属光沢を作れたりします。

これはlilToonであればマットキャップ1と2で設定できます。
基本はこれで事足ります。

マットキャップ1と2で足りなければメインカラー2か3を有効化。
UV Modeを「MatCap」するとMatCapの挙動で画像が表示されます。


UV ModeをMatCapにした場合、全てのUVは無効化されます。
lilToonはメインカラー3ndがあります。
こちらも使えば最大3つまでUVを設定できます。


UVの最大値は3、マットキャップの最大値は4です。
以上が複数UVとテクスチャ設定方法です。
部分的にテクスチャ解像度を上げるテクニック
この設定を使うことでテクスチャの一部を置き換えて解像度を大きくしたりできます。

この置き換え処理を行うには「置き換え部分の色」設定が重要になります。

どの色にすればいいかは「合成モード」で変わります。

次はこの合成モードについて解説していきます。
合成モード「通常」の挙動
「通常」は文字通り通常の効果です。
ただ画像を重ねるだけになります。

不透明度を下げると透過していきます。

下図の画像を不透明度0.5で重ねるとこんな感じになります。

ペイントソフトで透明度50%にした時とほぼ同じ挙動です。

通常の場合、lilToonはマスクを設定できます。
マスクは白黒の画像で有効範囲を指定するテクスチャです。

これで一部のテクスチャ解像度を上げれます。

ただ、マスクという余計なデータが増えます。

なので通常は使わない方が良いです。
加算、スクリーン、乗算でテクスチャを混ぜる
lilToonは通常のほかにも「加算、スクリーン、乗算」の3つの効果が使えます。
これを使えばマスクなしで不要部分を透過できます。

加算とスクリーンの場合、画像を差し替えたい所を黒色に設定。
乗算の場合、画像を差し替えたい所を白色に設定します。

このあたり挙動や計算式はこちらで解説。

こちらの挙動をペイントソフトで再現します。
画像が無い余白部分の色に注目。(ここが置き換え部分です)

加算は黒色だと処理が無効化されて透過されれます。

スクリーンも同様に黒色で透過。

乗算は背景が白色で透過です。

これで一部の色を別テクスチャに置き換えれます。

以上が加算、スクリーン、乗算でテクスチャを混ぜる方法です。
最軽量は「加算」(誤差の範囲)
lilToonで使える最も軽い画像合成の方式は「加算」と思います。
これは計算式としてやることの多さで選びました。
↓画像合成の計算式は下記。(画像1=A、画像2=B)
【通常(透明度あり)】
(1 - 不透明度)×A+不透明度×B
【加算】
A+B
【スクリーン】
A+B - A×B ÷ 255(Bit数)
【乗算】
A×B ÷ 255(Bit数)
加算の「A+B」は圧倒的にシンプルですね。

昨今のマシンスペック向上を考えると “誤差の範囲” です。
正直、どれでも良いですが…
それだと迷いが出ます。
なので迷ったら「加算」と判断してください。
画像合成の詳細はこちらで解説してます。

加算を使う場合、置き換え部分の色は「黒色」になります。
黒色はユーザー心理的にも分かりやすいので「加算」がおすすめ。

以上が最軽量は「加算」の解説です。
まとめ
今回はlilToonにあるUV Modeの活用方法を紹介しました。
・lilToonは複数UVとテクスチャを設定できる
・UV Modeを使うと参照するUVの種類を変えれる
・UV Modeを「MatCap」にするとマットキャップの挙動で画像を表示できる
・合成モードを工夫すればテクスチャの一部を置き換えて部分的に解像度を上げたりできる
・解像度上げの合成モードは「加算」で置き換え部分は「黒色」にするのがおすすめ
また、ほかにも3DCGについて解説してます。
ぜひ、こちらをご覧ください。
コメント