顔が暗いなおし - 暗い場所で沈む顔・明るい場所で飛ぶ顔を、実際に描いて測って直す
- 日本語ダウンロード商品¥ 700
- Englishダウンロード商品¥ 700
- 한국어ダウンロード商品¥ 700




「集合写真を撮ったら、自分の顔だけ真っ黒に潰れていた」。 顔が暗いなおしは、アバターの顔の受光の下限と上限を、実際に描いて測って決めるUnity Editorツールです。Blenderは使いません。 ◆ 何をするのか 暗い場所で顔が沈むのも、明るい場所で顔が白く飛ぶのも、シェーダーの「受光の下限」と「受光の上限」で直せます。問題は、その2つをいくつにすればいいかが計算では出せないことです。シェーダーの版によって光の混ざり方が違い、肌の明るさやテクスチャの作りでも変わります。 このツールは推定しません。暗いワールドと明るいワールドを実際に作って、あなたのアバターの顔をその中で描き、出てきた絵の明るさから逆に2つの数字を解きます。 ◆ 手で動かすツールとの違い 受光の下限を手で動かす仕組みは、すでにいくつもあります。それらは「値を変える手段」を渡すもので、いくつにすればいいかは使う人が目で探します。アバターを買い替えるたび、衣装を着せ替えるたびに探し直しになります。 こちらは値そのものを出します。顔を見つけるところから、値を決めて確かめるところまでが1回のボタンで終わります。 ◆ 1回で当てにいかない理由 受光の効き方は直線ではありません。2点を測って直線とみなし、1回で当てにいくと行き過ぎます。実測で、狙い0.420に対して0.553になりました。 そこで、解いた値を入れてもう一度描き、ずれていたら今描けた点を足して引き直します。これを最大3回。しなので0.446まで寄りました。画面に出る数字は、最後に実際に描いて確かめた値です。 ◆ 上限は1より下も探します 明るいワールドで白く飛ぶのを止めるには、受光の上限を既定の1より下げる必要があります。上げる側だけを探す作りだと、すでに飛んでいるアバターを1体も救えません。実測でしなの0.935、Felis 0.938。どちらも既定のままで飛んでいました。両方向を探して0.875と0.877まで下げています。 ◆ 顔の見つけ方 Humanoidなら目のボーンを狙います。目と目の間隔から枠の大きさも決めるので、素体の大きさが違っても枠が合います。 「全体の高さの何割」では決めません。ネコ耳・アホ毛・帽子・尻尾が上下の端を押し広げて、枠が頭のてっぺんへ逃げるためです。開発中に実際にそうなり、後頭部を測っていたことがあります。 顔が画面に写らなかったときは、数字を出さずに止まります。写っていない絵から出した中央値は、数字の形をした嘘だからです。 ◆ 元に戻せます ・元のマテリアルには書き込みません。複製を作って差し替えます ・Ctrl+Z で戻せます ・複製は Assets/顔が暗いなおしGenerated/<アバター名>/ にまとまります ・2回続けて実行しても複製が積み上がりません。同じ複製に入れ直します ・「測る」だけを押した時点では、何も書き換えていません ◆ 使い方 1. unitypackage を Import 2. Tools > tool > 顔が暗いなおし を開く 3. アバターをシーンに置いて、そのアバターをドラッグ 4. 「測る」を押す 5. 結果を見て、よければ「このアバターに反映する」を押す ◆ 検証 テスト36件すべて通過。うち5件は実際に描いて直すところまでを通しています。 実物のアバター6体での実測(顔の明るさ 0〜1、既定の狙いは暗0.420 / 明0.860): しなの 暗 0.234→0.446 / 明 0.935→0.875 Felis 暗 0.431→0.442 / 明 0.938→0.877 LUMI 暗 0.402→0.446 / 明 0.877→0.878 ツールとは別に書いた物差し(透視投影・別の背景・別の平均の取り方)でも同じ向きに動くことを確認しています。素体の入っていない衣装だけのプレハブでは、測れないと言って止まることも確認しました。 ※ lilToon か Poiyomi が必要です。同梱していません(再配布になるため)。 ※ 受光の下限・上限を持たないシェーダーは、理由を画面に出して対象から外します。 ※ Unlitとして描く設定のマテリアルは、光の設定が効かないので外します。 ※ 元から暗くないアバターでは、ほとんど値が動きません。LUMIがその例です。 ※ 顔の明るさは中央値で測ります。表情や口の中の色までは合わせません。 内容物: unitypackage / README / CHANGELOG / TEST_REPORT / LICENSE / ツール画面のスクリーンショット 動作環境: Unity 2022.3.54f1 / VRChat SDK3 (Avatars) / lilToon か Poiyomi




