で、結局なんでVRoidってVRChat最適化が必要なの?
こんにちは、がそさんです。
これまで私のnoteでは「フルトラ対応」や「ハンドサイン修正」「ワンピース挙動調整」など、VRoidのモデルにおける様々な最適化方法を記してきました。
でも、これらのnoteのタイトルをSNS等でご覧になった方の中には、少なからずこう感じた方もいらっしゃるかもしれません。
「なんでBlenderまで使った最適化が必要なの? VRMConverterで一発変換できるし、いまならXAvatar経由でそのまま簡単にアップロードできるじゃん」
と。
この記事は「そもそも最適化って必要なの?」という部分と「最適化が必要なポイント」の2項に分けて、さらに個別の最適化ポイントを解説していこうと思います。
そもそも最適化って必要なの?
まず結論ですが「絶対に必要!」というわけではありません。
アップロードだけであれば現状のVRMConverterだけでも十分に実施できますし、XAvatarを利用すればUnityの知識が十全でなくても簡単に実行可能です。もちろん、それらの機能を利用してアップロードしたアバターに満足しているのであれば、それで構わないと思います。
しかしながら、素のVRoidのモデルはVRChatの仕様に合っていない部分が少なからず存在するのも事実です。
「アップロードはできるけど、思い描いてた動作をしない」
「VRoidStudio上と見た目が違う気がする」
そのように感じたことはないでしょうか。
もしかするとそれはVRMConverterやXAvatarだけでは対処できない処理が抜けているからかもしれません。
最適化が必要なポイント
ここからは、実際に最適化が必要なポイントを一つずつ解説していきます。
併せて「VRMConverterで変換したアバター」「XAvatarからインポートしたアバター」で対処可能か否かも記載します。
MToon
VRoidほかVRMを利用するサービスで使用されているシェーダー「MToon」は、実はあまり(現状の)VRChatで多用されるライティングには適していません。
というのも、PointLightやSpotLightのような照明が当たった時、lilToonにあるような「影の打ち消し」のパラメーターがMToonにはないので、MToonでは設定していない影がアバターに落ちてしまい、フィギュアのような見た目になってしまったり、光の当たり方によっては真っ暗になってしまったりするのです。
これを回避するには「シェーダーを変更する」作業が必要です。
外部記事にはなりますが、このようなTipsがあるのでぜひお試しください!
【VRMConverterで変換したアバター】対応可能〇
【XAvatarからインポートしたアバター】対応可能〇
ハンドサイン
VRoidは指周りのボーン設計に少し癖があるようで、VRChatのデフォルトのハンドサインでは指の動きがすこしおかしくなります。
グッジョブやハンドガンのサインで親指が千切れそうなくらい伸びてしまうのを経験したことはないでしょうか?
この問題は「VRoidのモデル向けに調整されたハンドサインアニメーションに差し替える」ことで解決できます!詳しくは下記の記事で解説しておりますので、ぜひお試しください。
【VRMConverterで変換したアバター】対応可能〇
【XAvatarからインポートしたアバター】対応可能〇
なで肩
VRoidは肩回りのボーンの設計がVRChat向きに調整されていないので、VRChatのVRIKだとなで肩になってしまいます。
この問題は
・なで肩になっても気にならない程度に肩の位置を上げる
もしくは
・肩の下がり具合の値を調整する
いずれかで回避可能です。
VRMConverterで変換したアバターについてはこちらで対処方法を解説しておりますので、ぜひお試しください!
なお、XAvatarからインポートしたアバターについては現在対処方法がありません。(2024/12/6現在)
【VRMConverterで変換したアバター】対応可能〇
【XAvatarからインポートしたアバター】対応不可×
ワンピーススカート挙動
VRoidそのままのワンピーススカートは重力設定がなく、またボーン構造に問題があり、座るとシルエットが大きく崩れてしまいます。
この問題は、Unity上でボーン構造やPhysBoneのパラメーターを調整することで回避できます。
Unpack作業を回避したい場合は、VRMConverterで変換する場合であれば外部ツールでの対処も可能です。
【VRMConverterで変換したアバター】対応可能〇
【XAvatarからインポートしたアバター】対応可能〇※Unpack作業回避不可
フルトラ対応
VRoidの背骨の設計はVRChatの仕様に合わせていないので、そのままのモデルでフルトラを実施しようとすると猫背になったり胸を反るような姿勢になってしまいます。
これを修正する場合、前提としてBlenderでの作業が必須となってしまいます。(2024/12/6現在)
修正手順は以下のとおりとなります。
*腕に覚えのある人向けの要約版はこちら
【VRMConverterで変換したアバター】対応不可×(緩和策はあります)
【XAvatarからインポートしたアバター】対応不可×
おわりに
いかがでしょうか。
ここに挙げたポイントはあくまで数ある修正点の一部ですが、逆にこのポイントを修正しさえすれば、ある程度VRoidStudio上の見た目に近い状態でVRChatでも利用できるようになります。
「フルトラ対応」はBlenderほぼ必須のちょっと面倒な作業ですが、ここで上げたポイントがVRMConverter/着せ替え機能/その他のツールでのちのち修正される可能性も十分にあります。
この記事がいずれ「古い情報」になることを信じて、この記事を終わりたいと思います。
ここまでお読みいただきありがとうございました!