顔トラ、つまりフェイストラッキングを試してみようと思い、VIVE XR Eliteを入手しました。ざっと動かしてみた感じを書き留めておこうと思います。
検証時のバージョン
- VIVE XR Elite Software – 1.0.999.738
- VIVE Hub – 2.3.3b
- VIVE Streaming- 2.2.4a
セットアップ
セットアップはスマートフォンのアプリから行います。日本語の音声案内と共にセットアップを進めるので、難解な部分はないと思います。
接続するアクセサリーに合わせてセットアップ内容が変わるようです。
新規登録する場合は大丈夫だと思いますが、いつ作ったか覚えていないVIVEアカウント(Googleアカウント連携しかしていない)でログインしようとして権限不足で弾かれてしまったので、パスワードの設定はちゃんとしておくことをおすすめします。
コントローラー
USB Type-Cで充電するタイプのコントローラーです。
143g程の重さがあり、リング付きとなっています。出っ張りがあるのが少し気になりますね。
Quest 2のコントローラーと比較するとこんな感じです。
PICO 4やPICO 4 Ultraのコントローラーと比べてもダントツで長いですね。
長いことは特に問題ありませんが、バッテリー持ちがちょっと悪い気がします。最大15時間とのことですが、VRChatで使ってみた感じでは大体5~6時間ぐらいでしょうか。中古なのでへたってる可能性はあります。充電しながらの利用は可能でした。
USB Type-Cでの充電はコントローラーのINPUTが5V/1A(5W)となっているので、10W以上出せる充電器であれば2個同時に充電可能です。
コントローラーのボタン設定やタッチセンサーについて
VIVE XR EliteのコントローラーはVIVE Focus 3やVIVE Focus Visionと同じ仕様のコントローラーです。トリガーやグリップは、ニンテンドーゲームキューブのコントローラーのように最後まで押し込むと「カチッ」とクリックが入るタイプの感触となっています。これは好みが分かれそうです。
ジョイスティックは軸の部分が太くて倒したときの感触も硬く、かなり頑丈そうです。Focusコントローラーのジョイスティックはドリフトする気配がないという感想もありました。見た目は安っぽいですが、HTC VIVEシリーズは初代VIVEの頃からやたら頑丈なようです。トリガーを押し込んだときの感触はともかくとして、耐久性についてはPICOコントローラーと同様に安心して使えそうな感じはします。
ABXYボタンにタッチセンサーはありませんが、すぐ隣に凹凸の付いたサムレストが用意されています。このサムレスト部分がタッチセンサーとして機能します。
スティックやトリガーにタッチセンサーがあるので、VRChatでのハンドサインによる表情変更は全て機能しますが、スティックはオフにしてABXYボタンでピースサインを出すのが好みという方は、サムレストのタッチセンサーに割り当てをすると似たような使用感になります。
具体的には、SteamVRのコントローラーバインド設定で「/input/parking」に「gesture_activator_thumb」を入れておけばサムレストを触れたときにピースサインを出せるようになりますし、組み合わせて他のハンドサインにもできます。
コントローラーの互換モードについて
VIVE Hubの互換モードがオンだと「VIVE Cosmos コントローラー」、オフだと「VIVE Focus3 コントローラー」として認識されるようです。
2025年2月20日のVRChatアップデート(ビルド1585)でVIVE Focusシリーズ向けのデフォルトバインドが追加されましたので、互換モードはオン・オフどちらでも動作します。

VRChatとしては、VIVE XR Eliteの場合は互換モードがオンになっている状態を想定しているように見えます。
ALVRで使うときは
ALVRで動かす場合は様々なコントローラーをエミュレート可能ですが、Quest 2として設定しておくのが無難そうです。Thumbrestのタッチセンサーも使用できます。
ただ、スケルトン設定周りでハンドジェスチャーにトラブルが生じたので、ハンドトラッキングをしない場合はスケルトン設定から「未使用」に設定しておくとジェスチャーが正常に動作します。設定に不備があったと考えてALVR側でHand skeltonをオフにしてみましたが、変化がなかったのでどうなっているのかよく分かっていません。
ハンドトラッキングについて
トラッキング用カメラが真正面と真横にしかないため、奥行き方向のトラッキングがイマイチです。そのため、VRChat内での移動が困難でした。
具体的には視点移動と横方向への移動は行えますが、前進しようとすると一瞬しか進めません。VIVEリストトラッカーを使う前提なのかもしれませんね。
バッテリークレードル
VIVE XR Elite本体と合体させて使うアクセサリーです。バッテリークレードル部分は約341gありました。
カウンターウェイトとして機能するので、装着感は比較的良好です。バッテリークレードル装着時はメガネのつるに当たる部分が広がって頭を圧迫しなくなりますので、長時間使用する場合はバッテリークレードルがあったほうが頭痛がしなくなって楽です。
ちなみに、PICO 4 Ultraの場合は本体304g、後部276gの合計580g程度あるのに対して、VIVE XR Eliteは前後共に350g程度のバランスで使用する感じになるので、全体の重さは結構あります。それでも重たさは感じにくいのでバランスって大事なんだなと改めて実感しました。
フリップ機能はありません。バッテリークレードルを使わない状態だと後頭部に何もないので仰向けで寝転がれますが、左右のつるが頭をキツく圧迫してくるので寝るのには向いてないと思います。
フェイシャルトラッカー
さて、今回の目玉です。VIVE XR Elite本体と一緒にご紹介します。フェイシャルトラッカーはフェイスガスケットの間に装着します。
本体のみの時と比べてフェイシャルトラッカー分の厚みが増えるので、少し視界が狭くなります。フェイストラッキングの反応が悪いときは、付属のガスケットスペーサー(2枚)を取り付けて調整できます。
2枚全て取り付けるとかなり厚みが増します。
ガスケットスペーサーとバッテリークレードルなしの状態で、フェイシャルトラッカーとフェイスガスケットを装着すると372g程あります。
バッテリークレードルと合わせると、テンプルパーツ分を差し引いてギリギリ700g行かないぐらいになりますね。
アイトラッキングしか使わない場合は、口元のパーツを畳んでおけます。
フェイシャルトラッカーを畳まずに飲み物を飲もうとするとトラッカーにぶつけてしまうか、マグカップの場合はトラッカーが水没してしまう可能性がありますので、十分ご注意ください。
MRガスケットも使用可能
フェイシャルトラッカーを使っていてもMRガスケットは取り付け可能です。額当ての面積が小さいのと、弾力性があるので少し安定感に欠けるように感じました。
どのぐらい視野角が狭くなるのか
VIVE XR Eliteのスペック表記によると、最大110度の視野角があります。
フェイスガスケットの取り付けだけであれば、水平104度・垂直90度程度は見えていますが、フェイシャルトラッカー装着時は水平90度・垂直82度ぐらいまで視界が狭くなってしまいました。VRChatでたとえるなら、PICO 4 Ultraの感覚で左端にフェイスミラーを表示していると見えなくなるぐらいの狭さです。ふたまわりぐらい狭い感じがします。
また、小型機ゆえにレンズが非常に小さいです。フラットなPICO 4 Ultraと違ってレンズが曲面になっているので保護フィルムも売ってないようです。メガネを掛けて使用することはできませんが、視度調節ダイヤルがあるので、VIVE XR Elite側で調節可能な範囲内の視力であればクッキリと見えます。
フェイシャルトラッカーを使って2対1で会話をしていると、視界が狭くて目線だけ動かして相手を見ることは難しい状況になります。常に左右に首を振っているということに加え、2人を同時に見るために後ろに移動して距離を取ることになりますから、相手の顔も遠くなってしまいます。正直、VRChatでの体験としてはあまりよろしくないです。
レンズが小さいせいか視界周辺の黒枠も気になるため、VRChatプレイ後に思い返してみると、まるでぼんやりとした夢を見ていた感じの記憶として残ってしまいました。広い視界のHMDで遊ぶと現実であったことのような記憶の残り方をするのですが、VIVE XR Eliteとフェイシャルトラッカーを使用して遊んだときは同じワールドといつものメンバーであっても、仮想「現実」感はかなり薄れます。
MRガスケットを使用したり、フェイストラッキングの安定性のためにガスケットスペーサーで距離を調節すると視野は更に狭くなります。VIVE XR Eliteはバッテリークレードルを取り外してメガネのような形で使ったり、持ち運びを想定しているようですので、VIVEでフェイストラッキング最優先な方はVIVE Focus Visionを選ぶ感じになると思いました。(※VIVE Focus Visionは未体験)
VIVE HubとVIVEストリーミング
VIVEストリーミングの解像度設定
設定 | 解像度 |
---|---|
ウルトラ | 片目3072px |
品質 | 片目2048px |
バランス | 片目1728px |
パフォーマンス | 片目1536px |
VRCFTとVIVEストリーミングフェイストラッキングモジュールを入れる
これまではVRChatでフェイストラッキングをする場合、実質VIVEストリーミングとVRCFT(ViveStreamingFaceTrackingModule)を使う方法一択でした。現在は2025年2月に「VRCFT ALVR module v1.3.0」がリリースされたので、ALVRでもフェイストラッキングが行えるようになりました。(※ALXRの方ではなく通常のALVRで可能に)
まずはVIVEストリーミングの方を先に解説します。
「OSC経由でアバターデータをVRChatにストリームする」を有効にしただけでは動作しないらしく、VRCFTを入れることを通知で案内されます。
VRCFTをインストールしたら、モジュールも導入しましょう。
マニュアルにはGitHubからモジュールをダウンロードするように案内がありますが、現在のVRCFTではその必要はありません。Module Registryに「ViveStreamingFaceTrackingModule」がありますので、一覧から探してインストールを押すだけでOKです。
VIVEストリーミングではなく、ALVRでフェイストラッキングをする場合
2025年2月にALVRのVRCFTモジュールへVIVEとPICO向けのサポートが入りました。ALVRを使う場合は、VRCFTのModule Registryから「ALVR Module」を入れます。
ALVR streamerはv20.13.0を使用しました。見づらいですが、Eye and face trackingの欄を「VRCFaceTracking」にしておけばOKです。
ALVRを初めて触る場合、adb経由でXR Elite本体へインストールしたり、ALVRをSteamVRのアドオンとして登録して接続したりといったところで苦戦するかと思いますが……。XR Elite側でALVRを立ち上げておいて、ALVR Dashboardの「Launch SteamVR」を押すと、Device欄にTrustボタンが出てくるはずです。
手元の環境では、HMDのエミュレーションモードをQuest 2にしていると上手く動作しませんでした。何かおかしいときはVIVEかQuest Proとしてエミュレートすると良いかもしれません。コントローラーはQuestコントローラー扱いで大丈夫です。
画質設定はh264かHEVCのどちらかを選んで色々と頑張ってください。遅延が大きく調整が色々と大変なので、すんなりと行かないようならVIVEストリーミングに戻るのが無難です。
ALVRでの設定については以下の記事にまとめました。

動画
マイクのノイズ抑制をオンにし忘れたので、ガスストーブの動作音を拾ってしまってリップシンクで口元が動いてます。
更新履歴やその他の方法について
VIVE Hubやそれに付属するVIVEストリーミングの更新履歴を見ると、2025年に入ってからも更新がされていますし、フェイストラッキング周りも明らかな不具合はなくちゃんと動作しているように見えます。口を閉じたときの不具合なども見受けられませんでした。
今回はVIVEストリーミングとVRCFaceTracking(ViveStreamingFaceTrackingModule)を使う方法と、ALVRとVRCFaceTraking(ALVR Module)を紹介しました。
その他の手段としてVIVEストリーミング単体ではなくSRanipal(SRanipalTrackingModule)を組み合わせるか、ALXRとVRCFaceTraking(ALXR Remote Module)を使う方法がありますが、SRanipalは導入が面倒なうえに正常に動作しませんでした。ALXRもベースに使われているALVR streamerのバージョンが古いようで、手元の環境ではストリーミング自体の動作が不安定かつ瞬きなどが不完全という状態でした。
少なくともSRanipalは既に古くなってしまったアプリケーションを使いますのでおすすめはしません。ALXRの方は時々更新されているので、そちらを使いたい方はアップデート情報をチェックしておくと良いでしょう。
個人的な見解としては、「VIVEストリーミング(最も簡単)」か「ALVR」を使うのが無難かと思います。ALVRは設定が非常に細かい事や、遅延が大きかったり映像が乱れたりした場合にどこがおかしいのかを特定するのが難しいので上級者向けです。