0.5.1
アバター改変向けの小さなエディタ拡張の詰め合わせです。使うツールだけを有効にして利用できます。
Unity の Tools > Candy Box から設定ウィンドウを開き、使うツールを有効にしてください。ツールは既定ですべて無効です。
ドキュメントサイトを公開しました。 各ツールの使い方と、うまくいかないときの対処をまとめています。
https://ghp.maaaaa.net/Candy-Box/
0.5.0 からの変更点
04_Hair Tone Matcher の書き込み方法を見直し、適用したあとの調整をできるようにしました。あわせて、色が一部にしか反映されない不具合を修正しています。
既定の書き込み先が「複製 + テクスチャ焼き込み」になりました
補正をマテリアルの設定として持つ方法では、シェーダーがフォールバックすると補正ごと消え、髪の色が元に戻ります。 アバターを別のプロジェクトへ移したときや、対応シェーダーが入っていない環境で起こります。
新しい既定では、マテリアルとメインテクスチャをどちらも複製し、補正を新しいテクスチャの画素へ焼き込みます。元のマテリアルとテクスチャは変更されず、フォールバックしても色が保たれます。
補正をマテリアルの設定として持ちたい場合は、これまでどおり「複製して差し替え(補正は設定として保持)」を選べます。
適用したあとに調整できるようになりました
適用後、ウィンドウの下部に「反映の切り替え」が出ます。
- 色調補正と、コピーしたマテリアル設定の反映を切り替えられます。外すと適用前の値へ戻ります
- 色相・彩度・明度・ガンマと、コピーした設定の値をその場で直接編集できます
- 「適用時の値」と「編集中の値」のテクスチャが左右に並び、結果を見比べられます
- テクスチャへ焼き込んだ場合は、「この値で焼き直す」で元のテクスチャから作り直せます。生成済みのファイルが同じパスで更新されるため、ファイルは増えません
- コピーしたマテリアル設定は機能グループごとに折りたためます
この切り替えは、ウィンドウを閉じるかスクリプトが再コンパイルされるまで有効です。焼き直しは元に戻す操作(Undo)では取り消せません。
修正
- 髪の一部にしか色が反映されない問題を修正しました。 前髪・後ろ髪・アホ毛のように複数の
Rendererが同じマテリアルを共有している場合、1 つ目のRendererが使っている範囲しか対象になっていませんでした - 焼き込みで、半透明の毛先が元の色のまま残らないようにしました。境界に色の段差が出なくなります
- 高解像度のテクスチャで焼き込みにかかる時間を短縮しました
- 適用結果に、複製したマテリアルと生成したテクスチャのパス、補正した画素数を表示するようにしました
表示の改善
- 設定ウィンドウで、「開く」と「適用 / 破棄」を別の行に分けました。ツールの一覧はスクロールし、ボタンは常に見える位置に固定されます
- ツールの有効・無効を切り替えたときに警告が出ても、一覧が読める高さを保つようにしました
- 各ウィンドウの既定サイズを広げました
- マテリアル設定の一覧に列見出しを付け、どの値が「適用前」「改変元」「現在」なのかが分かるようにしました
動作環境
- Unity 2022.3
- エディタ専用
- 基本機能に追加の依存パッケージは不要です
01_Helper for MA Blendshape Syncを使う場合は Modular Avatar 1.17.0 以降が必要です02_Helper for AAO Merge PhysBoneと03_Helper for AAO Merge Boneを使う場合は AAO: Avatar Optimizer 1.9.0 以降が必要です04_Hair Tone Matcherに追加の依存パッケージは不要です。対応シェーダーは lilToon と Poiyomi です
導入方法
VCC などのパッケージマネージャから導入するか、添付の net.maaaaa.candy-box-0.5.1.unitypackage をプロジェクトへインポートしてください。
ご注意
適用した変更は元に戻す操作(Undo)で取り消せますが、重要なプロジェクトでは事前のバックアップを推奨します。04_Hair Tone Matcher で生成したファイルは、元に戻す操作では削除されません。テクスチャの焼き直しは元に戻せません。
04_Hair Tone Matcher の Poiyomi での動作は未検証です。 シェーダーのソースをもとに実装していますが、実機での確認は行っていません。想定と異なる動作を見つけた場合はご連絡ください。lilToon での動作は確認済みです。