初心者でもできるUnityでの服の着せ方&VRM化!
どうもYUSAMAです。RTA関連の話をすることが多いnoteですが、今回はミントさんで新たに発売されたセーラーワンピースの衣装を着せる際にいろいろと苦労したので備忘録を兼ねて書いていきます。
また、本記事では着せ替えからVRM化までの工程を書いていきます。VRChatなどに使用する場合は一部別の手順を踏む必要があります
尚、本記事の工程の4~7を飛ばすとモデルの単純なVRM化ができます。
では本編どうぞ
用意するもの
ミントさん(もととなる3Dモデル)
※今回の手順でラスクさん、あまなつさんにも着せることが可能です
セーラーワンピース(着せる服)
AvatarTools
UniVRM
※下記URLの下のほうにダウンロードできるところがあります。
Unity
※UnityHubを使用するのでそちらをダウンロードしてください
Unity以外の4つは迷子にならないように1つのファイルにまとめておくといいでしょう。
1、Unityを起動
UnityHubを起動したらアカウントの作成を求められますが適当に画面の指示に従って作成してください。
そしたら左のインストールより「2019.4.17f1」をインストールします。モジュールは初期値のままで構いません。
成功するとこんな感じで出ます。
そのまま
1,左のプロジェクト
2,右上の青い新規作成
3,テンプレートは3Dを選択し、適当に保存先を指定し、わかるようにプロジェクト名を付けます。バージョンは先程インストールした2019.4.17f1を選択します。
右下の作成をクリックし、待機するとUnityが開かれます。
起動出来たらそのままでもいいですが適当にレイアウトをいじります。ウィンドウをドラッグしていくだけです。
私はこんな感じでやってます
それと色味がちょっと変わっているのでHierarchyにあるDirectional Lightを選択して、Colerを白にしておきましょう。
2、Unity Packageをインポートする
ここまで来たらいろいろなUnityパッケージを読み込んでいきます。
先程DLしたものの中からUniVRM,Mint(3Dモデル),Sailor-dress(着せる服),AvatarToolsのUnity PackageをAssetsにドラッグアンドドロップします。ひとつづつ落とすこと。
落とすと下の画像のようなImport Unity Packageという名前のウィンドウが出るので右下のImportをクリック。
この画像はUniVRMを落とした際の画面。チェックボックスをいじる必要はありません。
あとは待てばインポートが終わります。すべてインポートできると画像のようにAssetsの中にファイルがいろいろできて、上にVRMやAvatarToolsといった項目が出ています。
3、モデルデータを読み込む
AssetsからMint→FBX→と開き、中にあるモデルデータをHierarcyにドラッグ&ドロップします。するとSceneに3Dモデルが出てきます。
Hierarchy内のモデルデータを右クリックしてUnpack Prefabを選択します。
Hierarchyにあるモデルデータの名前横にあるアイコンが画像の上から下のようになっていればOKです。
4、必要ないパーツを削除する
服の上に服を着てもしょうがないので、必要ないパーツを削除します。
具体的には髪と靴下,ヘアピン,ケモミミ,尻尾,体以外のパーツは全て決して問題ないです。画像では見せませんが、成功していれば服を脱いだ姿になります。
Armatureというファイルはいらなさそうにも見えますが必要なので残しましょう。
ミントさんの場合Hierarchy内はこのような感じになりました。
5、着せたい服を追加する
AssetsのSugary Boutique→Sailor-dress_full→FBXと進み、中にあるSailor-dress_FullをHierarchy内にドラッグ&ドロップします。するとSceneにセーラーワンピースが出てきます。
そして3と同じようにHierarchy内の服のデータを右クリックしてUnpack Prefabをします。
少しずれてますが後で治るので気にせず進みましょう。
6、結合する
このままだとただ重なっているだけなので結合をしましょう。
上のほうにあるAvatarToolsからAvatarAssemblerを開いてウィンドウを出します。
そして動画のようにBaseObjectに先程服を脱がしたモデルデータを、CombineObjectsの+を押して出てきたCombineObject1に服のデータをそれぞれドラッグ&ドロップします。
そして下のCombine!をクリックすると元のモデルの左に結合されたモデルが表示されます。
もともとのモデルはもういらないのでdeleteしてしまうかinspectorからチェックマークを外して非表示にしましょう。
そしてAvatarToolsから今度はSkinnedMeshCombinerを開きます。
出てきたウィンドウのTargetObjectにHierarchyから先程できたモデルをドラッグ&ドロップしてCombine!をおします。
すると新しく右にモデルが出てくるのでこれで結合は完了です。
古いほうはいらないのでDeleteするかinspectorからチェックマークを外して非表示にしましょう。
7、テクスチャを変える
このままでもいいのですが服の色がラスクさんの色になっているのでこれを変更していきましょう。
Hierarchyで先程できたモデルのBodyを選択するとinspectorにいろいろ出てくるので下にあるSailor-dress_wearとSailor-dress_shoesを開きましょう。
画像のように出てくるのでMain Textureの左のまるいやつをクリックするとでるSelect Textureというウィンドウでそれぞれにあったテクスチャを選択してください。
8、VRM向けの最低限の設定をする
この時点で使用されているシェーダーはVRMでは使用できないので変更していきます。
HierarchyでモデルのBodyを選択すると先程と同様inspectorにいろいろ出るのでスクロールしてすべてのShaderをVRMのMToonに変更します。
すべて変更するとピンクっぽくなっているので、これでいい方はしなくてもいいですが、よくないという方は折りたたんであるのを開いてTextureのShade Colorをすべて白に変えておくと治ります。
9、出力する
まだ作業は続きますが一回出力をします。
上にあるVRMからUniVRM-0.63.0からExport Humanoidを選択すると下の画像のような画面が出るので適当に埋めていきます。
Export Rootにモデルをドラッグ&ドロップしてTitleには名前を、Versionにはバージョンを、Authorには製作者名(自分でOK)を入れていきます。
配布しないのならばすべて適当でもいいです。
配布する場合はちゃんと設定してください。
そのあとMetaの右にあるExportSettingsを開いて上2つのチェックボックスにチェックを入れます。
それができたら右下のExportを押して保存先,ファイル名を指定して保存します。これで仮の出力は完了です。
新しいモデルが生成されるため、古いほうはいらないのでDeleteするかinspectorからチェックマークを外して非表示にしましょう。
10-1、細かい設定をする
出力して生成されたモデルを細かくいじっていきましょう。
Assetsに(モデル名).BlendShapeというファイルがあるのでそれを開き、BlendShapeをクリックするとInspectorに表情設定をする画面が出てきます。
画像右下のがプレビューなので、プレビューを見ながらそれぞれにあったシェイプキーを設定してください。
用途によりますがA,I,U,E,Oはリップシンクに必要なので絶対にやってください。
Add BlendShapeClipから新たな表情を追加することもできます。好みの表情も追加してみてください。
10-2、細かい設定をする2
どうせやるならケモミミや尻尾も揺らしたいですよね?
VRMではVRM Spring Boneを使用して揺れ物の設定ができます。モデルのsecondryを選択し、InspectorでAdd Coponentを選択、「VRM」と検索し、下のほうにあるVRM Spring Boneを選択します。
Commentにはわかるように適当なメッセージを,RootBonesのsizeには揺らすもののボーンの数を,同じくRootBonesのElementには揺らすもののボーンを割り当てていきます。
ボーンはHierarckyのモデルのArmatureの中に全てあるので頑張ってそれっぽい名前のものを探してください。
揺れ方や重力の調整はStiffness Force,Gravity Power,Drag Forceで調整します。
確認方法は中央上の再生ボタン押すと、Sceneでモデルを動かすことができます。動かし方はHierarchyでモデルを選択するとSceneに出る矢印の下のほうをマウスで動かすことで揺らすことができます。
あとはこれを繰り返すことでいろいろなとこを揺らすことができます。
11、出力する2
いよいよ最後です。頑張りましょう。
ここでお好みでスクリーンショットを取りましょう。
まずMain Cameraでスクショの構図を決めます。初期値だと後ろを取る構図になってしまうのでMain CameraのInspectorからRotationのYを180にするといい感じの角度になります。あとはプレビューを見ながら位置を調整してここだという位置に合わせます。
そして上のVRMからUniVRM-0.63.0からExport Humanoidを選択します。
ExportRootに頑張って設定したモデルをHierarchyからドラッグ&ドロップしてください。そしてカメラの位置を合わせた場合はスクリーンショットボタンを押します。
そしてTitleには名前を、Versionにはバージョンを、Authorには製作者名(自分でOK)を入れていきます。
配布しないのならばすべて適当でもいいです。
配布する場合はちゃんと設定してください。
そのあとMetaの右にあるExportSettingsを開いて上2つのチェックボックスにチェックを入れます。
それができたら右下のExportを押して保存先,ファイル名を指定して保存します。これで作業は終わりです。お疲れさまでした。
あとがき
今回の作業でクラフトピアや3teneなどで使えるようになります。この記事が皆様の参考に少しでもなれば幸いです。
では見ていただきありがとうございました!