VRChat用衣装をXWear形式に変換してVRoidに着せてVRChatで使ってみた
VRoidに新機能が増えたようなのでここにメモしながらトライしてみました。
公式のヘルプページ(着せ替え機能)がわかりやすいですが、あちこちページが飛んでてどこから読んだらいいかちょっと困ったので、記録として残しておきます。
前提
VRoidStudioではXWear形式という(おそらく)今回新たに開発されたファイル形式の服しか取り扱えない。
XWear形式の服はまだ普及していないため、自身でVRChat用服をXWear形式にする必要がある。
XWear形式への変換はUnityで行う必要がある。
1.(初回のみ)Steam:VRoidのアップデート
普通にアプデしても機能追加されません
Steamを開いて ライブラリ>VRoidStudio>右クリック>プロパティ
ベータ>ベータの参加>プルダウンから openbeta-xxxxx を選択。
そうするとVRoidのアプデが始まるので終わるまで待つ。
2.(初回のみ)Unity:VRChat用の服を変換する
事前インストールが前提のアプリケーション
・Unity
・VRChat Creator Companion
このあたりの準備で躓いた人は 150万画素さんの【初心者向け】VRoid>VRCアバター変換講座2024① を参照してください。
Unityパッケージ(XWear Packager)をインストールする
VroidのヘルプページにDLリンクがある
URL → XAvatarデータへの変換方法を知りたい
ブラウザのアドレスバーに上記の赤枠の文字をコピペ
Unityのプロジェクトを作る
MToonシェーダーをインストール
以下をクリックして「VRM-xxxx_xxxx.unitypackage」をダウンロード DL URL : https://github.com/vrm-c/UniVRM/releases
lilToonシェーダーをインストール
BOOTHからファイルをDLしてZIPを解凍
「jp.lilxyzw.liltoon-1.x.x-installer.unitypackage」をプロジェクトにインポートする
次回以降は手順1、2は省略できる
2回目からはVRChat Creator Companionを起動し、前回作成したプロジェクトの OpenProject をクリックすればOK。
3.Unity:VRChat用衣装をXWear形式に変換
公式ヘルプページ:XWearデータへの変換方法を知りたい
今回お借りした衣装は metasukavr様のDOBUITA STYLE 【for Woman】です。
prefab拡張子のデータを探して Hierarchyエリア(左側の矢印のエリア)にドラッグアンドドロップ
※注意※
今回使用した衣装はここでマテリアルファイルもインポートする必要があったのですが、気が付かずそのまま進んでしまっています。
本来はこの時点のUnity画面で服に色柄がついているはずです。
4.VRoidStudio:服を着せる
「衣装を追加」で先程つくったXWearファイルを選択
5.VRoidStudio:服の微調整
以下の順番で調整するとスムーズでした。
1.削られすぎた肌をリセット
2.パーツの大きさ調整や移動をする
3.それでもはみ出した肌を消す
1.削られすぎた肌をリセット
2.パーツの大きさ調整や移動をする
頑張って調整します。
今回は 縮尺変更→どうしてもはみ出す場合だけ位置移動の順で調整しました。(回転は使わなくてもどうにかなりました)
3.それでもはみ出した肌を消す
ブラシ機能で突き抜けた肌を消しゴムで消すように無くしていく。
「突き抜けた肌を一括削除」→「隠れている肌を一括削除」→ 書き足し(ペン)で消えすぎた肌を戻していく が早いかもしれません。
6.VRoidStudio:XAvater形式でエクスポートする
7.Unity:UnityにXAvaterをインポート
公式:着せ替えたモデルをVRChatへアップロードする方法を知りたい
公式サイトの方は色々書いていますが、先程「Unity:VRChat用の服を変換する」で作ったUnityプロジェクトがそのまま使えます。
衣装(下記画像赤四角)はクリック→deleteキーで消しておく
トラブル1:顔が怖い
原因:服を正しく表示させるために別途インポートしていたliltoonシェーダーが顔のマテリアルにも反映されていたことによる。
解決方法:Materialをなおす
①Materialをクリック
②顔~体のMaterialをすべて選択(以降③~④を1つずつ設定するのでも大丈夫ですが面倒なので)
③Cull Mode(描画面)を Off(両面を描画) にする
④描画モードを カットアウト または 半透明 にする
トラブル2:アウトラインがない
トラブル3:髪のハイライトがない
トラブル2,及びトラブル3もliltoonシェーダーが原因です。正しく設定すれば治りますが本記事での記載は省略します。
詳細はなると様の「VRC VRoid Tip3 VRoidのlilToon基本設定」を参照ください。
7.(おまけ)lilToon設定
lilToonを設定すると暗いところでもアバターがきれいに見えます。
最初は顔、肌あたりだけで試しに設定してみるのがおすすめです。
1.体、顔、目、口などのMaterialを選択して、シェーダーをlilToonにする。(今回髪はMtoonとする)
2.(共通)基本設定 >Cull Mode >OFF(または両面) を選択
3.(Materialごとに設定)描画モードを下記画像を参考に選択
4.輪郭線を表示する(まずは体と顔だけ設定がおすすめ)
8.Unity:VRChatへアップロード
下記画像の①~③を順にクリック
※①の名前は作ったデータ毎に異なります。これまでの手順通りにやっていれば上から3番目のやつをクリックすれば大丈夫です。
VRChatのアカウントを入れてSign in する。
最後に動作確認
VRChatでアップロードしたアバターを選択
髪の揺れ幅が動きが大きかったり、ジャンプやしゃがんだりでパンツが丸見えになってしまうなど少々問題はありますが、いったん無事にアバターが使えることを確認しました。
トラブル4:アップロードしたアバターが選べない(security checks failed)
原因:テクスチャサイズが大きすぎるのが原因でした。
解決方法:
①Textureをクリック
②サイズを小さくしても良さそうなテクスチャを選択
③Max Sizeを小さくする( 2048 はかなり大きいと思っていい)
・青紫っぽいやつは 256 とかでいい。
・そのほかにも服等以外は 512 で十分。
④Apply をクリック
⑤再度アバターをアップロードする
トラブル5:VRoidHubへのアップロードエラー
作成したVRMファイルをVRoidHubにアップロードしようとしたけどエラーで出来ませんでした。