メインコンテンツまでスキップ

VRChatアバターを使用する

VRChatアバターを利用する方法は大きく2パターンあります。

  • スタジオアプリで利用したい場合 : *.avatar.lsb で出力した後、アプリで読み込んで利用します。
  • オリジナル配信アプリに組み込む場合 : 上記に加えて *.unitypackage で出力して、Unityプロジェクトにインポートして利用します。

alt text

必要環境​

  • Windows PC
  • Unity 2022.3 以降(Unity 2022.3.22f1 で動作確認済み)
  • VRChat 用アバタープロジェクト一式

クイックスタート​

環境設定​

1. Lilium VPM Registry を追加​

VPM クライアントに下のリポジトリを追加します。

https://you-ri.github.io/LiveStudio/vpm.json

VCC では Settings > Packages > Add Repository、ALCOM では Settings > User Packages > Add Repository から上記 URL を追加します。

alt text

警告

jp.lilium.vrchatavatartransfer は現在 prerelease バージョンで配信されています。VCC では Settings > Packages > Show Pre-release Packages を ON にしないとパッケージ一覧に表示されません。 alt text

プロジェクトの準備をする​

1. Lilium VRChat Avatar Transfer をインストール​

プロジェクトを作成した後もしくは既存のプロジェクトに、手持ちのVPM (VRChat Package Manager) を使って Lilium VRChat Avatar Transfer と Lilium Live Studio Virgo Extension をインストールします。

注記

変換するだけなら Lilium Live Studio Virgo Extension パッケージは不要ですが、ここではVirgoMotionと接続して動作確認するためにインストールします。

alt text

画像はVRChat非公式 VPMの一種である ALCOM を使用した場合の画面です。

VRChatAvatarTransfer でアバターを変換する​

変換の流れ​

Modular Avatar / NDMF を使わない場合

Modular Avatar / NDMF で Manual Bake する場合

1. Unity でプロジェクトを開く​

初回は依存パッケージ(VRChat SDK 含む)の解決に時間がかかります。 途中、VRMのパッケージをインストールする旨のダイアログがでるので OK を押してインストールしてください。

必要なパッケージのインストールが終わり起動するとInspectorにReadmeアセットの内容が表示されています。

alt text

2. VRChat アバターを用意する​

変換したい VRChat 用アバターをプロジェクトに取り込みます。

2-1. Modular Avatar の bake 結果をプレファブ化する (任意)​

Modular Avatar (NDMF) で Manual Bake を行うと、シーン上に Avatar(Clone) のような bake 済み GameObject が生成されます。このとき bake 処理によって作られたメッシュ・マテリアル・AnimationClip などはメモリ上にしか存在しない「インメモリアセット」であり、そのままプレファブ化したり別プロジェクトに持ち出すと、これらの参照が失われてマテリアルやメッシュが消える状態になります。

これを避けるため、シーン上の bake 済みアバターを選択した状態で Tools > VRChat Avatar Transfer > Make Baked Prefab を実行してください。インメモリアセットを 1 つのコンテナアセットにまとめて永続化したうえで、プレファブとして保存します。

出力先は Assets/VRCAT_GeneratedAssets/Baked/<アバター名>.prefab (アセット本体は同フォルダの <アバター名>.Assets.asset) で、変換 (Convert) の出力フォルダとは分離されています。

注記

Modular Avatar / NDMF を使っていないアバターや、すでにすべての参照がプロジェクト内アセットとして存在しているアバターでは、この手順は不要です。

3. VRChat Avatar Transfer ウィンドウを開く​

Unity 起動時に表示される Readme の 「VRChat Avatar Transfer を開く」 ボタン、または Tools > VRChat Avatar Transfer > Transfer からウィンドウを開きます。

alt text

4. アバターを変換する​

用意したアバターを VRChat Avatar Transfer ウィンドウにドロップし、Convert ボタンを押します。

alt text

動作確認をする​

1. 新しいシーンを作成する​

File > New Scene から Studio Template を選択して新しいシーンを作成します。

alt text

2. シーンに配置する​

Main Avatar の下にセットアップしたプレファブを配置します。

alt text

3. プレイして動作確認をする​

プレイボタンを押して正しくアバターが動作するか確認してください。

alt text

スタジオアプリで利用したい場合​

スタジオアプリに持ち込む場合は Avatar Bundle(.avatar.lsb)フォーマットを利用します。

警告

スタジオアプリのバージョンアップで読み込めなくなる場合があります。その場合、利用するスタジオアプリと同じバージョンのVRChatAvatarTransferを使って出力しなおす必要があります。

1. Avatar Bundle(.avatar.lsb)形式でエクスポート​

動作に問題がなければ、Export as Avatar Bundle (.avatar.lsb) ボタンを押して .avatar.lsb ファイルを書き出します。

alt text

2. 配信アプリで読み込む​

スタジオアプリを起動します。シーンから Main Avatar の モデルファイルの選択 ボタンを押して、出力した .avatar.lsb ファイルを選択します。

alt text

alt text

オリジナル配信アプリに組み込む場合​

VRChat SDK は VRChat 以外のアプリで使用してはならないという規約があります。 このままオリジナルのアプリを作成すると、VRChat SDK がアプリに含まれてしまいます。規約違反になるため、VRChat SDK が含まれていない別のプロジェクトを作成して変換したアバターを取り込む必要があります。

1. UnityPackage 形式でエクスポート​

動作に問題がなければ、Export as UnityPackage ボタンを押して UunityPackage ファイルを書き出します。

alt text

2. アプリ用プロジェクトを作成する​

VTuber配信アプリを作る を参考に VirgoMotionStudioTemplate を複製してプロジェクトを作成します。

3. プロジェクトにアバターを取り込む​

書き出した .unitypackage をプロジェクトにインポートします。

警告

アバターをインポートした際にいくつかのコンポーネントがMissing状態になっていることがあります。そのままだと編集に支障がでるため、問題のプレファブを選択して右クックメニューから Lilium Live Studio > Remove Missing Scirpts を選択してMissing状態のコンポーネントを削除します。

alt text

4. シーンにアバターを配置する​

StudioScene.unity を開きます。

Main Avatar の下にセットアップしたプレファブを配置します。

alt text

Playして動作確認します。

alt text

5. 配信アプリを作成する​

VTuber配信アプリを作る を参考にビルドしてアプリを作成します。

動作確認済みアバター​

関連リンク​