はいぬっかメモ

キャラクターモデルをVR空間で眺めたい

パーフェクトシンクであそぼう!

f:id:hinzka:20200826210703p:plain

<概要>

iPhoneのデプスカメラを使ったフェイストラッキングで、モデルの顔がリアルタイムにいっぱい動く
このしくみに対応したアプリでVRMモデルを動かしてあそんでみよう
 

1.パーフェクトシンクとは

iOSのARKitで取得できるBlendShapeLocation全52点を、VRMの同名BlendShapeClipに適用させる実装です。(noppeさん命名
 
ARKitのリサーチ中、VRMの仕様と相性がよいことに気づき、noppeさんのアプリ『vear』にBlendShapeClipを参照するモードを実装していただきました
これをきっかけに、現在では VMagicMirrorやLuppet、バーチャルモーションキャプチャーなど、さまざまな環境で利用できるようになっています。
 
BlendShapeやClipの数が激増してしまうデメリットもあり、本来のClipが意図した運用とは異なるのですが、今のところ許容していただけているようです。
 
ARKitとは、Appleによる開発キットの名称で、iOS向けのAR機能を提供するものです。
iPhoneiPadを使った高度な表情トラッキングで、アニ文字のように、豊かで自然な表情アニメーションを実現します。

f:id:hinzka:20200815094421g:plain

アニ文字(iPhoneアバター機能)

これをVRMモデルで手軽に使えるようにしたしくみが「パーフェクトシンク」です。

 

 

FaceID対応端末で動作します。

また、iOS14以降で対応デバイスが追加されました(A12 Bionicチップ搭載機種)

 

■対応機種リスト 2020年11月現在

iPhone

iPhone12

iPhone12 mini

iPhone12 Pro

iPhone12 Pro Max

iPhone 11

iPhone 11 Pro

iPhone 11 Pro Max

iPhone X ※A11チップのため動作が安定しないようです(vearは2020年末でiPhoneXのサポートを終了

iPhone XR

iPhone XS

iPhone XS Max

iPhone SE (2nd generation) ※iOS14以降

 

iPad

iPad Pro 12.9-inch (4th generation)

iPad Pro 12.9-inch (3rd generation)

iPad Pro 11-inch (2nd generation)

iPad Pro 11-inch (1st generation)

iPad mini (5th generation)※iOS14以降

iPad Air (3rd generation)※iOS14以降

iPad Air (4th generation)※iOS14以降

iPad (8th generation)※iOS14以降

 

 

2.パーフェクトシンク対応モデル

2-1.要件

1)ARKitで定義された52個のBlendShapeを全部または一部備えていること
 全部そろっていなくてもOK

f:id:hinzka:20200816105223p:plain

各シェイプキーはBlender等の3Dモデリングツールで作成する必要があります。

形状について別エントリにてまとめています。

hinzka.hatenablog.com

 
2)上記に対応するVRMBlendShapeClipを備えていること
 VRMのしくみで動作させるため、シェイプキーを同名のClipに登録します。
Clipの命名ルールはUnityのEnum ARKitBlendShapeLocationに準じています(Clip名が異なると動作しません)。
 Clipに登録されたBlendShape名称の文字列が共通であれば、コピーツールを利用してClipを既存のモデルからコピーすることができます。手順はこちら 
 

2-2.サンプルモデル

VRoidのデフォルトキャラクターを改変し、パーフェクトシンクに対応させたVRMモデルです。自由に利用できるサンプルとしてVRoid hubにて配布しています。

ハート♡をつけておくと、VRoid hub連携によりvear上ですぐに動かすことができます。

2-3.VRoid雛形からのBlendShapeコピー 

VRoidは、BlendShapeを持つFaceオブジェクトの頂点構成が共通のため、一定の条件下でBlendShapeを丸ごとコピーすることができます。

f:id:hinzka:20200821070645p:plain

f:id:hinzka:20200815144711p:plain

 
Unityアセット『HANA Tool』を使うと簡単に導入ができます。
 
以下はツールを使わずにUnityとBlenderでシェイプキー転送する手順です()
雛形データは最新のHANA_Toolと共通です。

VRoidでかんたん!パーフェクトシンク(2/3) 

VRoidでかんたん!パーフェクトシンク(3/3)

 

作成した顔をBlender上で差し替えることで、衣装違いモデルにも簡単に対応できます。
 

hinzka.hatenablog.com

 

「VRoid Studioから出力後、アクセサリー追加などBlender・Unityで編集済」という場合、メッシュの頂点オーダーが変わってしまっているため、BlendShapeのコピーができません。

.vroidデータがお手元にあれば
 1) いったんVRoid Studioから出力直後のVRMをパーフェクトシンク対応にする
 2) 1)の顔を、上記の手順で完成版モデルの顔と差し替える
の手順で対応することができます。

 

 

 

 

3.パーフェクトシンク対応アプリ

VRMのしくみで動くアプリのリストです

対応アプリ増えてくれると嬉しいです どうぞよろしくよろしくおねがいします!

3-1.iOS単体アプリ

VRoid hubで配布中のサンプルモデル(前述)に♡をつけておくと、VRoid hub連携ですぐに利用できます。

 vear

vear - バーチャルライブ配信アプリ

vear - バーチャルライブ配信アプリ

  • Tomoya Hirano
  • ユーティリティ
  • 無料

apps.apple.com

 ※プレミアムモード機能

 

 Emosign

Emosign

Emosign

  • akihiro ueyama
  • エンターテインメント
  • 無料

apps.apple.com

 

 

 waidayo

github.com

 

3-2.PC併用アプリ

 VMagicMirror

malaybaku.github.io

iFacialMocapiOSアプリ)と連携した外部トラッキング機能(Ex.Tracker機能)

iFacialMocap on the App Store

 

 waidayo

github.com

 

 3tene PRO V2

3tene.com

 フェイストラッキング アプリ 3teneFTと連携した高精細フェーストラッキング

3teneFT on the App Store


 Luppetluppet.appspot.com

iFacialMocapiOSアプリ)と連携した外部トラッキング機能

iFacialMocap on the App Store

 

 VirtualMotionCapture

vmc.info

 全身モーションキャプチャーツール ※VMCプロトコルによるWaidayo連携機能

 

 Oredayo4V

github.com

 VMCプロトコルによるWaidayo連携アプリ Mac版あり

 

 VSeeFace

www.vseeface.icu

 ※VMCプロトコルによるWaidayo連携機能