UniVRM
Unity で VRM 形式のモデルをインポートあるいはエクスポートするためのパッケージ。各種エディタ拡張や glTF (.glb) 形式のエクスポート機能なども含まれる。
参考:
vrm-c/UniVRM: Unity package that can import and export VRM format – GitHub
ドキュメント
参考:
vrm-c/UniVRM/README.ja.md – GitHub
ダウンロード
- UniVRM-X.YY.Z_xxxx.unitypackage:UniVRM のメインパッケージ
- UniVRM-samples-X.YY.Z_xxxx.unitypackage:UniVRM を使用するサンプル
参考:
Releases · vrm-c/UniVRM – GitHub
インストール
パッケージを新しいバージョンに更新する場合は事前に古いバージョンを削除する。
参考:
導入
参考:
キャラの作成方法と Unity で操作する方法 | CG メソッド
VRoid Studio で作った 3D モデルを Unity で動かしてみよう モーション編 | 3oWebCreate
VRoid でモデル作って踊らせる | キャサリン desu
VRoid で作ったキャラを Unity のアニメーションを適応してみるよ | すたじお・くろす
Unity で VRM ファイルをインポートして使うときの覚え書き – Qiita
UniVRM を使って、Unity に VRM ファイルをインポート!| itemstore BLOG
使い方
参考:
自分のアバターを VRM にしてもっと遊ぶ 表情・揺れモノ編 | WhiteAtelier Archives
入門
参考:
パーティクルライブを VRoid Studio と STYLY で作る | STYLY
仕組み
参考:
フォルダ構成 · vrm-c/UniVRM Wiki – GitHub
VRM モデルをインポートする
参考:
VRM ファイルを Unity で編集できるようにする | 神楽ゆのん
UniVRM を導入して VRM ファイルをインポートする方法 | StarGazer
VRM モデルを作成する (変換/エクスポート)
参考:
人型アバターの FBX ファイルを VRM ファイルに変換する | STYLY
FBX アバターを VRM へ変換する方法のご紹介!| ケーキの PC 情報集会所
Vroid と Blender で作った 3D モデルを Unity で VRM 出力する方法 1 | Vtuber の解剖学
Vroid と Blender で作った 3D モデルを Unity で VRM 出力する方法 2 | Vtuber の解剖学
ヒューマノイド · vrm-c/UniVRM Wiki – GitHub
アニメーションのエクスポート対応状況 · vrm-c/UniVRM Wiki – GitHub
サムネイル画像を設定する
参考:
VRoid からエクスポートした VRM ファイルに任意のサムネイルを設定する | Play Rough
VRM モデルの再インポート/モデルデータの更新
Issue #56 に対応して、VRM モデルを再インポートした際に既存の BlendShapeClip, BlendShapeAvatar, Material が存在する場合に自動的には上書きされない仕様になっている。更新した VRM モデルのデータで置き換えたい場合は該当するアセットを VRM モデルの再インポート前に削除しておく。
参考:
設定した関連コンポーネントのプロパティが失われる · Issue #56 · vrm-c/UniVRM – GitHub
VRM を実行時に読み込む
参考:
UniVRM を使って VRM モデルをランタイムロードする方法 – Qiita
シェーダー/マテリアル
エクスポートに対応するシェーダー
VRM モデル (あるいは glTF 形式) のエクスポートに対応しているシェーダーは Standard、Unlit、UniGLTF、VRM 系の以下のシェーダー
- Standard
- Unlit/Color
- Unlit/Texture
- Unlit/Transparent
- Unlit/TransparentCutout
- UniGLTF/UniUnlit
- VRM/UnlitTransparentZWrite
- VRM/MToon
参考:
Material Export Import · vrm-c/UniVRM Wiki – GitHub
Material 設定 · vrm-c/UniVRM Wiki – GitHub
MToon シェーダー
Rendering Type
- Opaque:不透明
- Cutout:カットアウト (閾値で完全透過と不透明を切り替え)
- Transparent:半透明 (アルファチャンネルで透過度をコントロールする)
- TransparentWithZWrite:奥行き情報ありの透過
参考:
Santarh/MToon: Toon Shader with Unity Global Illumination – GitHub
VRM 形式のアバターの半透明の前後関係 | サンフラワーふじ
MToon リファレンス | VirtualCast wiki
VRM 標準シェーダ MToon の使い方 | SlideShare
表情モーフの設定・編集
モデルにアタッチされている VRMBlendShapeProxy コンポーネントの「Blend Shape Avatar」に設定されているアセットが表情モーフを管理するアセットである。設定されているアセット名をダブルクリックするとアセットを選択状態にして Inspector に表示することができる。
VRM モデルをインポートすると、インポートしたディレクトリ下にある「(モデル名).Blendshapes」ディレクトリ内に表情モーフのアセット「BlendShape.asset」及びアニメーションクリップが作成される。
Game Play 中は VRM Blend Shape Proxy に各ブレンドシェイプを 0
~ 1
で操作するスライダーが表れて簡易的に表情モーフのテストが行える。
Project ウィンドウで「BlendShape.asset」を選択すると、Inspector ウィンドウで表情モーフを扱える。
- Editor タブで BlendShapeClip の編集
- List タブで BlendShapeClip を一覧表示
BlendShapeClip
- Neutral:基本 (ニュートラル)
- A:あ (口開け)
- I:い (口を横に引く)
- U:う (すぼみ口)
- E:え (口を横に引く/下唇を下げる)
- O:お (口を開けて唇を突き出す)
- Blink:両目閉じ
- Blink_L:左目閉じ (ウインク)
- Blink_R:右目閉じ (ウインク)
- Angry:怒り (眉下げ/への字口)
- Fun:楽しい (口角上げ)
- Joy:喜び (目閉じ/口開き)
- Sorrow:悲しい (困り眉/すぼみ口)
- Surprised:驚き (目を見開く/口開き)
- Extra:不等号目 (
><
) - LookUp:上を見る
- LookDown:下を見る
- LookLeft:左を見る
- LookRight:右を見る
15~18 の LookUp、LookDown、LookLeft、LookRight は目線をモーフで制御するタイプで使用する。
視線をボーンで制御するタイプのモデルでは、VRMLookAtBoneApplyer コンポーネントを使用する。視線をモーフで制御する場合は VRMLookAtBoneApplyer を削除して、 代わりに VRMLookAtBlendShapeApplyer コンポーネントをアタッチする。
「Add BlendShapeClip」ボタンを押して、新しい表情モーフを追加 (新規の BlendShapeClip を作成) することができる。事前定義された表情モーフを追加する場合は Preset から該当するプリセットを選び、それ以外の表情モーフを追加する場合は Unknown
を選ぶ。(スクリプトから表情モーフをコントロールする際に、事前定義された表情モーフはプリセット名で指定することができる。)
参考:
VRoid で出力した VRM ファイルの表情調整 | しま
VRoid Studio 製モデルには実は表情が6つある。牙も生やせるし2種類もある。これらの使い方と調整の方法 | 友黎火の note
Unity で VRM の表情を追加&編集する | 神楽ゆのん
VMagicMirror 向け VRoid Studio 産 VRM モデルに Unity で新規表情パターンを追加 & 微調整する方法 | Vtuber の雑学メモ帳
UniVRM の VRMBlendShapeProxy で表情アニメーション処理を共通化する – Qiita
VRM で数秒後に表情を変化させる | まゆたまガジェット開発逆引き辞典
キャラクターの表情やまばたきの制御方法 | Unity でゲームを作ろう!(unity.moon-bear.com)
glTF (.glb) をエクスポートする
参考:
glbファイルの作り方 · vrm-c/UniVRM Wiki – GitHub
BVH/モーションキャプチャーデータ
参考:
VRM と BVH (モーションデータ) | 120 のブロマガ
サンプル
参考:
VRM Spring Bone
参考:
UniVRM/Scripts/SpringBone · vrm-c/UniVRM – GitHub
VRM モデルの髪をセットアップする | ForgeVision Engineer Blog
Vroid・Blender で編集したモデルに Unity で物理演算を再設定する方法 | Vtuber の解剖学
バーチャルキャストのアバターの揺れもの設定 | サンフラワーふじ
VRM 変換大作戦!VRM Spring bone で長めのスカートを制御してみた | 闇魔研究所
VRoid モデルの髪を揺らしてみたい!後編 Unity 作業 | 蒼空の下で
VRIK (FinalIK) を適用すると VRM の揺れもの (VRM Spring Bone) の動きがおかしくなる時の対処 – Qiita
VRM 変換大作戦!VRM Spring bone で長めのスカートを制御してみた | 闇魔研究所
VRMSpringBoneCopy
参考:
VRM モデルの SpringBone をコピーするツール (broken55) | BOOTH
VRM モデルの SpringBone をコピーするツールを作りました – Qiita
CopyVRMSettings.cs
参考:
CopyVRMSettings.cs (ぽけもり) | BOOTH
VRMViewer
参考:
VRM ファイルのインポート ローカル版 | Sirohood
MToon to HDRP Shader Change Supporter
参考:
VRoid モデルのマテリアルを簡単にHDRP用に変えるスクリプト (やまぎしラボ) | BOOTH
Change_MToonToUTS2
参考:
MrSlip777/LoadVRM/ChangeShader/Change_MToonToUTS2.cs – GitHub
MrSlip777/LoadVRM/ChangeShader/LoadVRM/README.md – GitHub
URP プロジェクトに VRM のモデル持ってきたときに MToon シェーダーを UTS2 シェーダーに置換するスクリプトを作成しました (KjmCh2s) | Twitter
VRM Tool Kit
参考: