例によって忘備録です。
いおりんの南国移住計画
コイカツサンシャイン発表&キャラメイク体験版公開されましたね。
あまり見た目が変わらないので賛否両論な所もありますが
新しいシェーダーや影の描写が追加されたりUnityの内部バージョンが上がってたり
アウトライン周りの描写方法が改善してたりと見逃せない要素も多くこれは早々に引っ越したいところ。
というわけで、2年くらい手塩にかけて育てた(?)うちのいおりんの引っ越し計画全容です。
現在のいおりん
キャーカワイイ
他にもアイドルちゃんは色々いるんですが、まずはいおりんだけでも南国に連れて行かねばなりません。
というか、構造上ほぼ他者のMODに頼ってないいおりんを連れて行けるかどうかがまず重要。
とりあえずそのまま引っ越した結果
いおりんはHardModが大半なのでまずはファイル群をそのまま持って行ってみますか…
幸いabdataフォルダ内のファイル構造は変わってないようです
(listと実データに分かれている)
HardMODファイルをコピーして、最後にいおりんのカードデータも持って行って…
レッツ読み込み!
!?
ちかりんが…妖怪に…
いおりんですらないのでどうやらロードに失敗しているようです。
カードのロードはいったん諦めて状況を整理していった結果
どうやら各種MODパーツが正しく読み込めていない模様。
(服は読めてるっぽいけど)
というわけで各種パーツの正常化から目指します。
瞳やアイラインの正常化
まずは構造が複雑な髪と服以外の正常化を目指しましょうか。
目指したいんですが何も情報が無い。
ので暫く待っていたら…各種機能系MODが対応し始めてくれたようで。
BepInEx 5.4.11
https://github.com/BepInEx/BepInEx/releases
BepisPlugins r16.3.1 for Koikatsu Sunshine trial
(KKS_BepisPlugins_r16.3.1.zip)
https://github.com/IllusionMods/BepisPlugins/releases
XUnity.ResourceRedirector
(XUnity.ResourceRedirector-BepIn-5x-1.2.0.zip)
https://github.com/bbepis/XUnity.AutoTranslator/releases/tag/v4.16.1
ここまで入れた所で正常にロードに成功!
MODパーツがリストで正常に読めて、ちゃんと反映もされてますね。
髪はまだですが自作の
髪ハイライト、眉、アイライン上、瞳、チーク、鼻(ペイント枠)
のロードに成功。
ただ、まだ問題があって
こんな感じで、自作の柄を入れてると他の柄を選ぶと真っ黒になる謎仕様が発生。
うーん……柄だし自作のヤツは今使ってないしいいか…
(この問題は自作の柄をリストから削除すると解消することは確認済)
しかし何でうまく行ったんだろう(今更)
何となくですが、そもそも自分の前提が間違っていて、外部データを追加するには
最低限BepinExなりなんなりのベースMOD環境が必要だったんでしょうか…?
(それかサンシャインに外部データ破棄する仕組みがあるのかも)
まあいいや!(思考放棄)
とりあえず髪行こうか。
髪の正常化
ここからが本題よ。
現在の髪MODをそのまま使うと
こんな感じで、描写が壊れちゃうんですよね。
色々調べた結果の推測ですが
これは髪が呼び出してるシェーダー(正確にはマテリアル)が旧コイカツ用で、
サンシャイン用ではないから描写がおかしくなってるからです(多分)
というわけで、まずは新しいシェーダーに切り替えないと。
SB3Utility
https://gitea.com/enimaroah/Sb3UGS/releases
いおりん召喚の際にもお世話になったアレです。
サンシャイン(のUnityバージョン)にも対応してくれたのでこいつでデータの中身を確認&編集できます。
では早速、中身拝見。
これはサンシャインのデータから自作パーツの元データになっている
「デコ出し横流し」の髪パーツと、自作のMODパーツの設定を並べたものです。
MC(カラーマップ)、MD(ディティールマップ)などのテクスチャ情報には過不足が無い。
メッシュやボーンも同様。
となると…やはり赤枠で囲ったシェーダーが大きな差異でしょうか。
シェーダーとは、3Dデータを画面上にレンダリングする際に、どうやってレンダリングするかの設定群(?)です。
これはプリティウェイトレス作ってる時にも触れたかな。
とりあえずこのシェーダーをいただきますかね。
Materialsタブからコピーして…
むっ。何かエラーが。
どうやらUnityのバージョンが違うファイル同士でコピーできないと思うよ~
ってことらしいです。
つまり、(現在のSB3Uのバージョンでは)コイカツ仕様のunity.3dのファイルから
サンシャイン仕様のunity.3dファイルへは一切移動・コピーが出来ない事に…
いやーキツイっす
一括でバージョンアップできるコンバーターでも出てこない限りこれは厳しい。
それかModdingToolsが対応してくれないと…
中々辛い状況ですが…元々私のいおりんの髪は全てコイカツ産です。
なら、コイカツ時代でやった手段を繰り返せばサンシャインに持っていけるはずです。
https://ch.nicovideo.jp/iorin_kawaii/blomaga/ar1795232
https://ch.nicovideo.jp/iorin_kawaii/blomaga/ar1800433
この辺やね。
書いててよかった忘備録。
というわけで昔に戻って同じ工程をサンシャインでも繰り返してみます。
・サンシャインのunity.3dファイルを適当にコピー
・ガーっと全部消す
・元データの髪をコピー
・コピーした髪データに昔作った改造メッシュに置き換え
・list側のunity.3dデータにさっきコピーしたのを登録
うぉぉ…またこれ繰り返すのか……
以下作業時の追加メモ。
・メッシュ置き換え時にMaterial設定が吹っ飛ぶ場合があるのでちゃんと確認&登録
これ。
・Animator消したい時はFilter Included Assetsのチェックを外してFilteredタブから全部消す
まっさらな空データを作る時に重要。
まあAnimator無いファイルでやりゃいいんだけど。
以上、地道な作業をした結果…
髪も召喚成功!
ハイスクールメイトはそのまま持っていけたのでとりあえずいおりんのベースは引っ越し完了!
(シェーダーが違うから服も同じ工程踏んだ方がいいかも)
後はABMXとMaterial Editorでの微調整が残ってますがそっちはまだMOD待ちですね~
(もう来た)
柄の正常化と柄のカラー
いおりんにはもう使ってないのでほっといても良かったんですが最後に柄の正常化しますかね。
自作の柄ファイルとサンシャインの柄ファイルの比較
柄ファイルはImg(Texture)のみの構造になっています。
うーん…DXT5とRGB24しか差がないなあ。
他のデータを見るとRGBA32とかDXT1とかもあるのでうまく行かない原因ではなさそう。
サイズも問題無し。
とりあえず、ファイル自体のサンシャインバージョンの差し替えしてみますかね。
空のunity.3d作って何かそれっぽい柄つくってほい。
やったぜ。
やってぜなのは良いんですが結局何でうまく動かなかったのかよく分からんやいね……
とりあえず柄はunity.3dのバージョン合わせないと駄目かも。
思ったより早く終わったのでついでで研究。
サンシャインにはデフォルトで固定カラーが乗ってる柄があるんですよね。
これとか。
コイカツ時代にハイスクールメイト作る時に柄に色を乗せるのは諦めたんですが、
何かしらやり方はありそうですね…
結論から言うとすぐ分かりました。
色を乗せる方法は以下。
・固定のカラーを乗せたい場所はカラーのアルファを100以外にする
(テストしたのはアルファ35%~40%くらい)
・服の色を乗せたい場所は白
・柄の色を乗せたい場所は黒
・RGBA32/ARGB32のフォーマットでunity.3dに入れる
ARGB32フォーマットは圧縮無しTGA形式からSB3Uでインポートできます。
ただ、解像度(画像サイズ)が低いとアルファ有りのカラーと白の境界線に意図せず色が乗る場合があるので、解像度高めのテクスチャにしておく必要がありそうです。
また、SB3UはTGAファイルからARGB32フォーマットでインポートできるだけで、
ミップマップが無いので本編とかでちょっと重くなるかも。(詳しくは知らん)
癖はありそうですが、これマスターすれば複雑なカラーのチェック柄とか作れそうですね。
変えられる色は服色+柄色だけですがね。
まとめ
・挙動がおかしい時はとりあえずサンシャインバージョンのunity.3dファイルに入れる
・SB3UではUnityバージョン違いのファイル間でデータのコピーは出来ない
・柄に固定カラー乗せる場合はアルファを付けてTGAでインポート
発売までまだまだ先ですがそれまでにいっぱい水着作りますかねー
それでは