前回パーフェクトシンクで遊びました
その時に知ったwaidayoというVRMを動かせるiPhoneアプリ。
公式PCクライアントやUnityと連携してiPhoneのfaceTrackingで取得した表情データをPCに送れるけど、前回なぜかうまくいかなかったのでリベンジ
waidayo+waidayoPC
Windows+Macで動く公式PCクライアント
wikiの使用方法だとIPアドレスを入れて連携すると書いてあったけど、入れなくてもできるらしい
waidayo最新バージョン1.0.3の配信がAppStoreで始まりました!
— nmちゃん (@nmch1222) 2020年6月11日
IPアドレスの入力、めんどくさかったですよね?
最新バージョンではもう必要はありません!
自動デバイス探索機能によりwaidayoと対応するビューワを起動するだけで自動でペアリング!配信やテレビ会議にすぐ参加することができます! pic.twitter.com/83P4DA6Wyz
ただ私は失敗過程で何回もIPアドレス入れてしまったので改めてiPhoneアプリに入れたらつながった!Portは39540
IPアドレスはPCソフトの上の部分に表示されている。
ほぼ遅延なくてすごい!
これをOBSに取り込んで、仮想カメラとして会議に参加したけど楽しかった。
やったこと
・PCとiPhoneは同じWifiにつなぐ必要がある。(ネットワーク詳しくないから知らなかったけど、2Gと5Gは違っててもつながった)
・モデルはVroidHubから読み込むのではなく、アプリにはiTunes経由でdefault.vrmというファイル名にしたvrmを読み込む。
WIndowsにiTunes入れてUSBでPCとiPhoneつないで、ファイル共有
アプリ選択して、ファイルを追加
PCも同様にdefault.vrmにしたファイルをwaidayo_pc.exeと同じ層に置く
その他設定は以下の質問集参考
よくある質問集 · nmchan/waidayo Wiki · GitHub
こちらの記事にも導入方法書いてあった
Unity連携(EVMC4U)
EVMC4Uというunitypackageを入れたら連携できるらしい
EVMC4Uの使い方はこちら
How to use · gpsnmeajp/EasyVirtualMotionCaptureForUnity Wiki · GitHub
動画もある
v3.7をダウンロードしてUnity2019.4に入れた。
UniVRMも同梱しているので空っぽのプロジェクトに入れたほうが良さそう。
既にunivrmとかいろいろ入っているプロジェクトに入れたらエラーが出た気がする
#waidayo もUniVRM v0.53の利用を推奨します。 https://t.co/NkDrpKrgre
— nmちゃん (@nmch1222) 2020年4月8日
ExternalReceiverシーンを開く。
vrmファイルをシーンに置く
ExternalReceiverオブジェクトに付いているExternalReceiverのModelにシーンに置いたvrmモデルをセット
これでUnityをPlayする
iPhoneアプリではポートを39539にする
基本的な使い方 · nmchan/waidayo Wiki · GitHub
動かない(解決した)
これで行けるかと思ったけど動かない~
IPアドレスが違うのかな~?黒い画面でipconfigしてでたIPアドレス入れたりもしたんだけど
Unity2018で試したけど無理
StatusはWaiting for VMC
ちなみに途中でwaidayPCを立ち上げたら自動でiPhoneアプリのポートが39540になってつながってた
Windowsファイアーウォール
discordで教えていただきました。
おおむね下の記事通りにやったら動きました。
Windowsの検索窓からでFirewallで検索
詳細設定
受信の規則
記事では「UnityEditor」を選んで消去と書いているけど、私は個別のUnity2019.4.xを選んで消さないとダメだった
エディタ起動。セキュリティのポップアップが出るので、両方チェック
私は上のPrivateネットワークでの通信を許可するみたいなのにチェック入ってなかった。
これで動いた!
(技術)VMCProtocol
技術的にはVMCProtocolという「バーチャルモーションキャプチャーの情報を送受信するためのプロトコル」を使っている。
仕様が公開されていてUnityPackageもあるので、自分で組み込んで使える。そのUnityPackageが上で使ったEVMC4U
こちらの記事が詳しかった