前提
webcam(vmc) -> vrm4u(vmc)
- ue 5.5
- vrm4u
- webcam motion capture(有料機能)
手順
# vrm vmc
ip : 0.0.0.0
port : 39539
ignore local rotation : true
その後、vseefaceがなければ動かないことに気づきました。最初は動いていたような気がしたのですが、なぜか今やるとvseefaceなしでは動かない。
古い手順
webcam(vmc) -> vseeface(vmc) -> vrm4u(vmc)
- macbookのwebcam motion capture(有料機能)でvmc(外部アプリ)を送信します。この際、
ip:$windows
,port:39539
にしてください。
# cmd(pwsh)
$ ipinfo /all
192.168.11.30
この場合はip:192.168.11.30
です。
- windowsのvseefaceで
一般設定 -> osc/vmcプロトコル -> 送信(127.0.0.1:39540), 受信(192.168.11.30:39539)
にします。これをueに合わせます。
一般設定 -> osc/vmcプロトコル -> 送信(127.0.0.1:39540), 受信(192.168.11.30:39539)
- windowsからueのprojectを開いてabpでvrm(vmc)を設定します。
# vrm vmc
ip : 127.0.0.1
port : 39540
ABPを切り替えることで操作とモーションキャプチャができるようにしています。また、ABPのidleにvmcを追加してもいいかもしれません。この場合、キーを押す必要はありません。
- 入力でABPを切り替える方法
- ABPのidleにvmcを入れる方法
issue
- 表情が動かない #9
livelink
build後に表情が動かない場合はlivelinkを使用します。これはiphoneにlivelink face
というappがあります。ueでいくつかのpluginを有効にします。
- live link
- apple arkit
- apple arkit face support
/VRM4U/Util/Actor/latest/BP_LiveLinkFace
をmapにおいて、live link subject -> iphone
, target actor sk -> SK_$name
を設定します。
character(player)にlivelinkを当てるにはblueprintを編集する必要があります。characterのdirにでもBP_LiveLinkFace
をcopyしてBP_Player(CBP_Character)
に追加します。
ここでBP_LiveLinkFace -> livelink subject -> iphone
をセットしておきます。
次にBP_LiveLinkFace
を以下のような形でsk_$name
に置き換えます。場所はコメントを参考にしてください。私の場合は見た目をカスタマイズしているので少し複雑です。
https://blueprintue.com/blueprint/pu_xl52s/
vmcで行くべきか
基本的には依存関係が少なく使うアプリが少ないほうがいいですね。vmcの更新頻度やclient, vrm1のsupport状況を見るとueはlivelink路線のほうがいいかもしれません。
仮にwebcam motion capture -> vrm4u
で表情も体も動かせるならvmcで問題ないですが、表情にlivelinkを使うなら全部統一するのがいいですね。