コンテンツにスキップ

SDK2のアバターをAvatars 3.0へ移行する

折角なので、うちのカミカゼ君モデルをAvatars3.0に移行する手順を書き残してみました。ひとまず、

  • SDK2相当の機能をAvatars 3.0で再現する

ところまでやろうと思います。

執筆段階のバージョン:
VRC : w_2020.3.2 Build 968
SDK : VRCSDK3-AVATAR-2020.08.06.16.30_Public

SDK2で作った古いアバターをUnityPackageに書き出す

まずはモデルデータをUnityPackageに書き出します。DynamicBoneの設定など再設定するのは面倒なのでなるべくデータを残すためです。

セットアップ済のシーンがあれば、シーンからモデルをプロジェクトフォルダにドラッグアンドドロップしてPrefabを作っておきます。

その後、書き出ししたいフォルダを選択して、右クリック→Export Package...を選択し、不要なアセットのチェックを外して、Export...ボタンを押してUnityPackageにします。

新しくプロジェクトを作成する

UnityでAvatars3.0用のプロジェクトを作ります。そうしたらまずは必要なアセットを導入します。

  • 最新のVRCSDK3-Avatars
  • DynamicBone (必要なら)
  • シェーダー(自分のアバターはArktoonを使っているのでそれをインポート)

VRCSDK3はAvatarsと書かれているほうをダウンロードするのに注意!

アバターをセットアップする

古いAvatar Discripterの入れ替え

インポートが完了したら、先ほど作ったアバターのUnityPackageをインポートし、アバターのPrefabをシーンに設置します。当然アバターについているAvatar DiscripterコンポーネントがMissingになっているので削除します。Pipeline Managerは生きているっぽいのでそのままにします。

次に、新たにAvatar Discripterを追加します。

ビューポイントの設定

ビューポイントはViewEditボタンでギズモを使って編集できるようになりました。便利。

リップシンクの設定

SDK2の時にLip SyncViseme Blend Shapeを選択していたので、Modeは同じモードを選択し、Face MeshにはリップシンクのBlendShapeが入ったメッシュを指定します。 名前が正しければ、Visemeの割り当ては勝手に埋めてくれます。

表情の設定

ここからが大きく変わります。SDK2のころはAnimater Override Controllerで表情の設定をしていましたがなくなりました。代わりにPlayable Layersというのを使うようです。

まず、Projectウィンドウで、VRCSDK/Examples3/Animation/Controllersの中にある、vrc_AvatarV3HandsLayerというAnimation Controllerを選択し、 Ctrl+D を押し複製します。

複製したらアバターのフォルダなどに移動し、名前を変えておきます。とりあえず自分は適当にKamikaze_HandsLayerとしておきました。

次に、モデルのAvatar DiscripterからPlayable Layersという項目の、Customizeというボタンを押ます。

するといろいろ出てきますが、Base->FXDefault Non-Transformボタンをクリックし、

そこに先ほど作ったKamikaze_HandsLayerを追加します。

Note

Gestureじゃないの?
Gestureはどうやらボーンアニメーション用(指の形など)で、それ以外のアニメーションにはFXを使うようです。表情はBlendShapeでやっているのでこちらに設定します。

登録が完了したら、Kamikaze_HandsLayerをダブルクリックしてAnimatorウィンドウを開きます。そして、LayarsタブからLeft HandRight Handを開いて、指の形を選択し、アニメーションを入れ替えます。

右手と左手の両手分設定があるので注意してください。左右で別々の設定ができるのはイイですね。

ひとまずここまででSDK2までの頃と同じ設定になりました。

ビルドテストする

Avatars3.0でアバターのローカルビルドが追加されました。使い方としてはまず先にVRChatを起動しておきます。次に、VRCのコントールパネルから、Build & Testを押します。

ビルドが完了すると以下のようなウィンドウが出ます。

そしたら、VRChatに戻りアバターメニューを開くと、Otherという項目が増えており、ローカルビルドされたアバターが表示されます。これを選択し、Changeボタンを押せばローカルでの見た目が代わりチェックができます。アバターを選択したときに左のアバター表示は変わりませんがChangeを押せば変わります。

参考