【VRChat】アバターを頭だけにする
着せ替え改変に備えてアバターを頭だけにする方法です。お使いのアバターの構造によっては対応できない場合もあります。
この記事のやり方では首から下に設定されているダイナミックボーン、ダイナミックボーンコライダーの設定を引き継ぐことができません。ご了承ください。
この記事で使用したUnityのバージョンは2018.4.20f1です。
このページで必要なもの
ツール
● MeshDeleterWithTexture(無料DLあり。入手先は後述)
Unityを起動します。
Unityの画面のレイアウトは右上の Layout▼ から変更でき、この手引きでは 2 by 3 のレイアウトを使用しています。
頭だけにしたいアバター名の上で右クリックし、Unpack Prefabをクリックします。(Unpack Prefabが一覧に表示されない場合は省略してください)
頭だけにしたいアバター名の横の▼をクリックして展開します。
メッシュ名をクリックするとSceneビューにオレンジのアウトラインが表示されますので、首から下のメッシュを見つけてクリックし、Delキーで削除します。
非表示メッシュがあった場合は、Inspectorウィンドウのチェックをクリックして一旦表示させ、首から上に関係がありそうだった場合は削除はせず残しておき、再びチェックをクリックして非表示に戻します。
このような表示になりました。
続いて、Delキーだけでは削除しきれなかった細かい部分の不要メッシュを削除していきます。
Delキーだけでは削除しきれなかった不要メッシュの削除には、がとーしょこら様の「MeshDeleterWithTexture beta」を使用させていただきます。
下記から入手できます。
MeshDeleterWithTexture beta | がとーしょこらのおみせ @gatosyocora(https://gatosyocora.booth.pm/items/1501527)
※詳しい使い方はMeshDeleterWithTexture betaのREADMEをご覧ください。この記事で使用したバージョンはv0.6bです。バージョンによって内容が変わる可能性があります。
MeshDeleterWithTexture betaをインポートし、上部メニューから起動します。
細かく消したい部分があるメッシュ名をクリックし、Renderer欄目掛けてドラッグアンドドロップします。
Texture(Material)のプルダウンから、消したい部分と連動しているテクスチャを探します。
消したい部分をPENで塗りつぶします。
塗りつぶし終えたら、Delete Meshをクリックします。
塗りつぶした部分のメッシュが消えました。
頭だけにしたいアバター名の横にある▼を順にクリックして展開していき、画像を参考にHeadボーンを表示させます。(必ずしも「Head」という名前ではないかも知れません)
表示させたHeadボーンをクリックし、頭だけにしたいアバター名目掛けてドラッグアンドドロップします。
ボーンの一番上の階層(「Armature」や「Hips」といった名前であることが多いです)をクリックし、Delキーで削除します。
※この時、アバターの表示がおかしくなったら(首の付け根が伸びる等)、Ctrl+Zキーを押して、ひとつ前の(Delキー削除前の)段階まで戻ってください。
続いて、ボーンの一番上の階層(「Armature」や「Hips」といった名前であることが多いです)をクリックし、Headボーン目掛けてドラッグアンドドロップしてください。
アバターを頭だけにできました。