「VRM」って何?どんなことができる?

2018-04-16 16:30:00 +0900 +0900
最終更新 2021/02/01: update contents (24fe59e)

「VRM」とは

VRMでは「人型」の「キャラクター・アバター」を取り扱うことができます。UnityでVRMファイルを読み書きする標準実装(UniVRM)が提供されます が、 フォーマットは GLTF ベースでクロスプラットフォーム であり他のゲームエンジンやWebでも取り扱うことが可能です。

  • ヒューマノイドを定義しているのでモーションキャプチャーや人型向けの汎用のモーションを再生できる。
  • テクスチャやマテリアルなどすべてのデータが1ファイルにまとまり、簡単に実行時にロードできる
  • 「喜怒哀楽」「瞬き」「あいうえお」といった標準の顔操作が定義されている。ユーザー操作で表情を選択したり、音声からリップシンクしたり、ランダムで瞬きしたり、フェイシャルキャプチャーを割り当てたりできる ➡️ BlendShape
  • 3種類のマテリアル(シェーダー)に対応 ➡️ MToon, Unlit, PBR
  • 3種類の視線制御に対応 ➡️ ボーンによる視線BlendShapeによる視線TextureUVによる視線
  • キャラクターの髪の毛などについて、物理エンジンに依存しない「揺れ物」標準実装を用意 ➡️ SpringBone
  • VRでのアバター利用のための、「一人称視点再現のための情報」 ➡️ FirstPerson
  • タイトル・作者名などのメタ情報だけでなく、サムネイルや VR時代に即した、アバターに特化したライセンス情報 も内包可能 ➡️ Meta

というように単なるモデルデータに留まらず、アプリケーションでロードしてすぐに使えるようになっています

VRMで何ができるの?

VRM対応アプリケーションで同じアバター(3Dモデル)データを使うことができます。 対応アプリケーションが揃うと、こんな未来になるはず…

  • VRM対応のキャラクタ製作ツールで自分のアバターをつくる
  • 自分のアバターで生放送をしていたら、友達も生放送をはじめたので友達の放送に凸しに行った
  • 放送後そのままVRゲームを起動、自分のアバターでVR世界を探索
  • ゲームに飽きたのでVR世界のチャットへ移動。同じアバターで友達と遊ぶ
  • 翌日はVR勉強会にVR参加。もちろんアバターはいつもの姿で

「自分の」アバター(3Dモデルデータ)を「VRM」で取り扱うことで、いろいろなVRM対応アプリケーションやゲームで相互に行き来できるようになります。

生放送、動画作成、ゲーム、チャット…。いまは複数のVR世界が分断されています。この分断されたVR世界をつなぐための第一歩、それがVRMなのです。

VRM applications

➡️ VRMファイルが使えるアプリケーション

VRMの特徴

VR(Virtual Reality)やVTuberなどにおいて 「キャラクターや人型のアバター(の3Dモデル)」 を取り扱おうとした場合、従来はアプリケーションごと・3Dモデルデータごとに独自のシステムを開発したり細かく調整したりする必要がありました。

というのも…

  • 3Dモデルを作成したクリエイターや使用したモデリングツールによって「作法」が違いデータの状況がひとつひとつ異なっている
    • 座標系が異なっていたり (Y-UP, Z-UP, 右手系、左手系)
    • スケールが異なっていたり(メートル単位、cm単位)
    • 初期姿勢が異なっていたり(T-Pose, A-Pose, Z+向き、Z-向き)
    • 表情の表現方法が異なっていたり(Morph, Bone, 識別方法)
    • 骨(ボーン)の入れ方も状況によって異なっていたり(ボーンの識別方法、親子、リグ)
  • 3Dモデルデータを取り扱うフォーマットは、各社各様で仕様が必要以上に複雑であったり、必要な情報が足りなかったりしている
    • 対応ソフトが多い「FBXファイル」はアプリケーションごとに読めたり読めなかったり。どのアプリケーションのどのバージョンで出力したFBXなのか…というのを気にしたかたも多いと思います
    • また、ランタイムロードというよりは、アセットとして取り込む方向性です
  • 3Dモデルデータを「アバターとして使用する」という観点で見ると、必要な情報が整備されていない
    • たとえば一人称視点を実現するための視点の位置はどこか、一人称視点から表示するためには頭部の表示を消さなければならないが、具体的にはどこを消すのか、など

VRでのアバター表現が急速に盛り上がるなか、こういった状況が続くとアプリケーション開発者にとっても、3Dモデルクリエイターにとっても二度手間三度手間になってしまいます。 この状況を改善するために

  • 「人型のキャラクターやアバター」において
  • 細かいモデルデータの差違を吸収・統一し
  • アプリケーション側の取り扱いを簡単にする

「VRM」は、このような特徴のある「プラットフォーム非依存の3Dアバターファイルフォーマット」を提案する ものです。

VRMファイルを投稿する・探す

現在、

でVRMファイルの投稿ができます。 ニコニ立体ではこちらから投稿されたVRMモデルデータのリストが見られます。ライセンスなど確認して使ってみてください。

なお、ニコニ立体にご自分でVRMファイルを投稿する際、「バーチャルキャスト連携」を有効にするとバーチャルキャストから利用できます。

VRMを使うアプリケーションを開発する

➡️ VRMで開発する


VRM - humanoid 3d avatar format for VR