VSnap Pose Editor 使い方・導入ガイド
VSnap Pose Editor は、Unity Editor 上で Pose / PoseGroup / PoseLibrary
をまとめて扱い、モバイル向けの AssetBundle をビルドするためのツールです。
メニューの VSnap → Pose Editor から開く ひとつのウィンドウの中で、上から順に
「AnimationClip フォルダからの自動生成」と「PoseLibrary のビルド」ができます。
ビルドしたバンドル(.bundle)をモバイルアプリで読み込む手順は、アプリの使い方の「ポーズライブラリ」を参照してください。
事前準備
- Unity は 2022.3 系のプロジェクトにしてください(パッケージが想定しているバージョンです)
- VRChat Creator Companion(VCC)は、すでに入っている状態にしてください
- インターネットにつながる環境にしてください(VPM のリポジトリを取りに行ったり、QR 転送でアップロードしたりするときに必要になります)
- ポーズの元になる
AnimationClipを、あとでAssetsの下に置けるようにしておいてください
VCC でパッケージを導入する
- VCC の Settings → Packages から Add Repository を選びます。
-
次の URL を入れて追加します。
https://vsnap.jp/vcc/index.json - 対象プロジェクトの Manage Project を開いて、VSnap Pose Editor をインストールします。
-
Unity を開き直して、メニューに
VSnap/Pose Editorが出てくるか確認します。
画像(準備中)
VCC の Manage Project で VSnap Pose Editor パッケージを選んでいる画面のスクリーンショット
エディタウィンドウを開く
Unity のメニューから VSnap → Pose Editor を選ぶと、ひとつにまとまったウィンドウが開きます。
ウィンドウの右上あたりにある 日本語 と English で、画面の言語表記を切り替えられます(選んだ内容は EditorPrefs に保存されます)。
画像(準備中)
VSnap Pose Editor ウィンドウ全体。上部に言語切替、その下に「AnimationClip フォルダから Pose / PoseGroup 生成」、さらに下に「PoseGroup から PoseLibrary をビルド」の各ブロックが縦に並んでいる状態
AnimationClip フォルダから Pose / PoseGroup を自動生成する
ウィンドウの上のほうにある AnimationClip フォルダから Pose / PoseGroup 生成(英語 UI だと
Generate Pose/PoseGroup from AnimationClip folder)を使うと、フォルダの中の
AnimationClip をまとめて調べて、クリップと同じフォルダに
Pose アセットと PoseGroup を新しく作ったり、更新したりできます。
手順
-
Assetsの下に、ポーズ用のAnimationClipをフォルダの形のまま置きます(下のフォルダまで再帰的に探します)。 - ポーズが入っているフォルダ(
Pose Folder)に、いちばん上のフォルダを指定します。 - 既存アセットを上書きをオフにすると、もうある
Pose/PoseGroupはそのまま飛ばします。オンにすると上書き・更新します。 - サムネイル生成をオンにすると、それぞれの
Pose用に PNG のサムネイルを作ってアセットに入れます。撮影には、パッケージに入っている Thumbnail シーンの Main Camera を使います。-
キャラクターを変えたいときは、Thumbnail シーンを開く ボタンでシーンを開いて、
CharacterSlotの下に好きな Prefab を置きます。何も置いていないときは、同梱のAvatarSample_Aが使われます。
-
キャラクターを変えたいときは、Thumbnail シーンを開く ボタンでシーンを開いて、
- Pose / PoseGroup を自動生成 を押して実行します。終わったあと、ウィンドウの下のほうの一覧に CREATE / UPDATE / SKIP のログが出ます。
生成されるファイルの例
-
クリップが
Example.animなら、同じフォルダにExample_Pose.assetができます(サムネイルをオンにしているときはExample_Pose.pngも)。 -
PoseGroupの名前は、「ルートフォルダから見た相対パス」を_でつないだ形になります(例:サブフォルダがDance/WaveならDance_Wave.asset)、 そのフォルダの中に 1 つずつ作られます。昔のPoseGroup.asset形式が残っている場合は、できるだけ新しい名前にリネームされます。
自動生成された Pose / PoseGroup を削除 は、今選んでいるルートフォルダの下だけを対象に、ツールが作ったアセットを確認してから消すためのボタンです。違うフォルダを選ばないように気をつけてください。
画像(準備中)
Pose Editor ウィンドウ上部の「AnimationClip フォルダから Pose / PoseGroup 生成」ブロック。Pose Folder・上書き・サムネイル・Thumbnail シーンを開くボタン・実行ボタンが見える状態
画像(準備中)
Thumbnail シーンの Hierarchy で CharacterSlot と Main Camera が確認できるスクリーンショット
PoseGroup から PoseLibrary をビルドする
ウィンドウの下のほうの PoseGroup から PoseLibrary をビルドでは、PoseLibrary を自分で先に作っておかなくても、
ライブラリ名とビルドに入れる PoseGroupを指定するだけで大丈夫です。ビルドするときに
PoseLibrary が自動で作られて、次からも同じアセットが更新されながら使い回されます。
手順
- ライブラリ名(
Library Name)に、好きな名前を入れます。これを全部小文字にした文字列が、AssetBundle のファイル名のもとになります(例:MyPosesならmyposes.bundle)。 - PoseGroup リストを更新 を押すと、プロジェクトの中の
PoseGroupを読み直して、ビルドに入れたいグループにチェックを付けます。 - プラットフォームで Android か iOS のどちらかを選びます。
- AssetBundle をビルドして QR コード生成なら、ビルドしたあと転送サービスにアップロードして、スマホで読む QR と短い URL が出ます。 転送用のパスを取得の説明に沿って、パスの欄にパスワードを入れてください(入れた値は EditorPrefs に残ります)。
- AssetBundle をビルドしてローカルフォルダに保存なら、アップロードはせず、Unity の一時フォルダの下のビルド出力先に
.bundleだけ出します。 - 選択している PoseGroup のサムネイルを自動生成・更新は、ビルドとは別に、今チェックを付けているグループの中の
Poseのサムネイルだけを作り直します。
自動で作られる設定・ライブラリアセット
-
ビルド設定:
Assets/VSnap/PoseEditor/BuildPoseLibrarySettings.asset -
PoseLibrary:Assets/VSnap/PoseEditor/の下に、ライブラリ名に合わせた.assetが作られたり更新されたりして、選んだPoseGroupがposeGroupsに入ります。
ビルドがうまくいって条件も揃っていれば、ウィンドウに スマホで開く 用の QR と URL が出ます。アップロードに失敗したときは、出てきたダイアログと Console のメッセージを見てください。
画像(準備中)
Pose Editor ウィンドウ下部の「PoseGroup から PoseLibrary をビルド」ブロック。Library Name・PoseGroup のチェックリスト・プラットフォーム・パス入力・ビルドボタンと QR 表示エリアが見える状態
うまくいかないとき
- VCC のリポジトリ URL を打ち間違えていないか、ブラウザで
index.jsonが開けるか確かめてみてください - Unity をいったん終了してから開き直す、または
Assetsの再インポートを試してみてください -
「AnimationClip が見つかりません」と言われたら、ポーズが入っているフォルダの指定が、実際に
.anim(AnimationClip)が入っているフォルダのひとつ上になっていないか見てみてください -
PoseGroup が一覧に出てこないときは、プロジェクトの中に
PoseGroupがあるか、先に自動生成まで終わっているか確認してください - ビルドに失敗したら、Console のエラーログを開いて内容を見てください
- QR 転送でうまくいかないときは、パスの期限切れ、打ち間違い、ネットワークの状態を確認してください