2019年3月6日水曜日

Oculus Rift x Vive trackerセットアップガイド(SteamVR Beta 1.3.7対応ver.)

Oculus RiftとVive Trackerを同時に使用したい場合のセットアップガイドです。
本記事はSteamVRのバージョン1.7.15でも動作確認済み。

※1.7より前からアップデートした方は再度最初から設定しなおして下さい。
 1.6.x以前とはプレイエリア周りの処理が変わっているようです。
 Steamのツールファイルの整合性チェック(default.vrsettingが初期化される)と
 2.3項のsteamvr.vrsettingsの中のuseNewChaperoneの行を消し、
 再度設定を行って下さい。


手順通りに設定すれば、Vive trackerを使用できるようになるはずです。


※この方法は正直かなり面倒です。ただ、トラッカーのバッテリーが切れてもプレイエリアが維持されます。

0.前提条件

Oculus Riftのセットアップが済んでおり、SteamVRが起動できること。

1.必要なもの

1.1 ハードウェア(HMDやトラッカーなど)

・Oculus Rift
・ベースステーション(可能なら2.0のほうが良い…なんで単体販売やめてしまったん…)
・Viveトラッカー
・スイッチ付き電源タップ(スイッチは2つ以上あると良い)
・電源タップ(2口以上)


ベースステーションの設置については、こちらのサイトなどを参考に…

HTC Viveが到着するまえに準備しておく事1 ベースステーション設置方法
http://indiegame-japan.com/blog/2016/05/24/post-342/

ベースステーション2.0の場合、
[CEDEC 2018]「Vive Tracker」を使うときの注意点とは?
http://jp.gamesindustry.biz/article/1808/18082402/
ここの「ベースステーション2.0の注意すべき点」も参考になるかと。


1.2 ソフトウェア

・Oculus Software
  Oculus Riftが使えていればOK。

・SteamVR
  Steamで入手したVRゲームが動いていればOK。
  詳しい説明は省きますが、Oculus RiftでSteamVRを使用する場合、
  画像の「Unknown Sources」にチェックを入れておく必要があります。
既にSteamで買ったVRゲームで遊んでいるのであれば問題ないはずです。

・OpenVR Input Emulator
  https://github.com/matzman666/OpenVR-InputEmulator/releases
  こちらのリンクから、「OpenVR-InputEmulator-v1.3.exe」をダウンロード。

・OpenVR Advanced Settings
  https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/releases/tag/v4.0.1
  こちらのリンクから、「AdvancedSettings-4.0.1-Installer.exe」をダウンロード。

・OpenVR-SpaceCalibrator
  https://github.com/pushrax/OpenVR-SpaceCalibrator/releases
  こちらのリンクから、「OpenVR-SpaceCalibrator-0.8.exe」をダウンロード。

2.手順

2.1 ソフトウェアのインストール・準備

Oculus SoftwareとSteamVRについての説明は省きます。
Steamで買ったVRゲームで遊べるようになっていればOK。

まずは、ダウンロードしたソフト、
・OpenVR Input Emulator (OpenVR-InputEmulator-v1.3.exe)
・OpenVR Advanced Settings (AdvancedSettings-4.0.1-Installer.exe)
・OpenVR-SpaceCalibrator (OpenVR-SpaceCalibrator-0.8.exe)
をインストールします。必ずSteamVRインストール後に行うこと。

2.2 SteamVR起動+プレイエリア設定の保存(下準備)

それでは、一度SteamVRを起動します。
まだトラッカーは使いません。電源を入れないでください。

この段階では、Oculus Riftのプレイエリア設定がSteamVRに適用されていると思います。
(SteamVRのウィンドウに「利用可能」と出ていればOK)
※この時点で「利用不可」(ルームセットアップを実行してください。)と出る場合は、
 SteamからSteamVRのファイルの整合性チェックを行ってみてください。
床を見てプレイエリアの範囲を示す四角が表示されていればOK。


2.1で正常に「OpenVR Input Emulator」と「OpenVR Advanced Settings」、「OpenVR-SpaceCalibrator」がインストールされていれば、
メニューが3つ増えているはずです。
「OpenVR-SpaceCalibrator」は「Special」という名前のボタン…ですが押しても何も表示されないようです。


ここでは「ADVANCED SETTINGS」と書かれたボタンを選択します。

続いて、左上の「Chaperone」を選択し…

「New Profile」を選択します。

「Name」の横の四角を選択します。

すると、文字入力画面になります。プロファイルの名前はなんでもいいです。
今回は適当に「oculus」と入れて「Done」をクリック。

「Chaperone Geometry」の左にあるチェックボックスにチェックを入れます。

「OK」をクリック。

これでプレイエリア設定の保存はおしまい。

ここまで済んだら、SteamVRを閉じます。


2.3 SteamVRの設定ファイル書き換え

※書き直しました。default.vrsettings直接編集は推奨されません。
 すでに書き換えてしまった場合は、プロパティから
 ツールファイルの整合性チェック機能を使うことで初期化されます。

steamインストールフォルダ→configフォルダに、「steamvr.vrsettings」というファイルがあります。

注)SteamVRのインストールフォルダではなく、Steamのインストールフォルダです。

これに追記をしていきます。

まずはバックアップしておきましょう。
ドキュメントなど別の場所にコピーするだけ。
どこにバックアップしたか忘れないように!

それでは、「steamvr.vrsettings」をメモ帳などのテキストエディタで開きます。


そうしたら、

   "steamvr" : {

で始まるセクションを探します。(SteamVRを一度でも起動していればあるはず)
そこに下記を追記します。

"activateMultipleDrivers": true,
"useNewChaperone" :  false,

ついでに追記しておくと良い設定をご紹介。

・トラッカー起動時にSteamVRが複数起動しようとするのを防ぐ
"autoLaunchSteamVROnButtonPress" : false,


・動きがないトラッカーがスタンバイになるまでの秒数
"turnOffControllersTimeout" : 600.0,
数値を変えることで秒数を変更できます。
0にすると、トラッカーのボタンで電源を切るか、バッテリーが切れるか、SteamVRを落とすまでトラッカーの電源は入ったままとなります。


一例として、こんな感じになります。

   "steamvr" : {
      "activateMultipleDrivers" : true,
      "useNewChaperone" : false,
      "autoLaunchSteamVROnButtonPress" : false,
      "turnOffControllersTimeout" : 600,
      "haveStartedTutorialForNativeChaperoneDriver" : true,
      "installID" : "16949657364801621014",
      "lastVersionNotice" : "1.7.15",
      "lastVersionNoticeDate" : "1567820716",
      "supersampleScale" : 1.5
   },

上の4行が追記したものです。他のは気にしないでOK。
一番下の行以外はカンマ「,」で終わっていることを確認してください。

設定を書き換えたら保存して閉じます。


2.4 SteamVRでの設定

2.4.1 トラッカーのペアリング

ここまでの設定を済ませてあれば、RiftとトラッカーがSteamVRに読み込まれます。

※最初はベースステーションの電源は入れずに作業します

まずは、SteamVRを立ち上げ、Viveトラッカーをペアリングします。
ペアリングの方法はこちらのサイトをご覧ください↓

VIVE トラッカー(2018)のペアリング
https://www.vive.com/jp/support/accessory/category_howto/pairing-vive-tracker.html

トラッカーがペアリングされると、灰色の六角形かトラッカーマーク(点滅)が現れるはずです。
今はトラッカーマーク点滅が表示されると思います。仕様変更で今後また変わるかも。

とりあえず、Oculus RiftとTouchコントローラー、センサー以外に何かトラッカーっぽいものが認識されていればOK。

2.4.2 ベースステーションのチャンネル設定

Oculus RiftとVive trackerを使う場合、トラッカーが最初に見つけるベースステーションは毎回同じである必要があります。

そのため、最初に電源を入れるベースステーションを決めておく必要があります。

一番目に電源を入れるベースステーションを決めてください。
今後、そのベースステーションを(勝手に)「基準ベースステーション」と呼びます。


それでは、ベースステーションの電源をすべて入れます。
チャンネル設定前は、ベースステーションは1つしか認識されないかもしれませんが、問題ありません。同じチャンネルのベースステーションは1つとして認識されてしまいますから。

・ベースステーション1.0の場合
 背面のボタンを押すことで、a→b→c→a…と切り替えられます。
 チャンネルはベースステーションの正面にあるインジケーターに表示されます。
 基準ベースステーションのチャンネルは「b」としてください。
 もう一台は「c」にします。(1台だけの使用なら「b」のみとします)

・ベースステーション2.0の場合
 背面に小さな穴があり、その奥にボタンがあります。
 つまようじなどでそのボタンを押すことで、チャンネルが1→2→3→…
 と切り替わります。(16チャンネルまで?)
 ベースステーション2.0はインジケーターなどがないため、
 ボタンを押してはSteamVRの画面でチャンネルを確認する、
 という手順が必要になります。
 基準ベースステーションのチャンネルは1とします。
 他はチャンネルがかぶらないようにします。


全てのベースステーションが読み込まれればOK。

ここで一度SteamVRを閉じ、ベースステーションの電源をすべて切ります。


2.4.3 プレイエリア設定の読み込み

2.4.2でSteamVRを閉じたところから再開。

再度SteamVRを起動します。

すると、SteamVRは「利用不可」となると思います。
これは、プレイエリアの設定が読み込めていないためです。
床のプレイエリアを示す四角が表示されていない状態になるかと思います。

まずは、2.2で保存したプレイエリア設定を読み込みます。


2.2と同様に「ADVANCED SETTING」を開き、
「Chaperone Profile:」の横の四角をクリック。

2.2で入力したプロファイル名をクリック

隣の「Apply」をクリック

これでOculus使用時のプレイエリアが読み込まれました。
(SteamVR起動するたびにこの作業が必要になります)


2.4.4 トラッカーの位置調整

続いて、トラッカーの位置調整をします。

1.基準ベースステーションの電源を入れます。

2.トラッカーの電源を1つずつ入れます。
 ここで、最初にLEDの色が緑に変わったトラッカーがどれか覚えておきます。
 (SteamVRが最初に認識したトラッカーです)

3.SteamVRで、ベースステーション1つとトラッカー全てが認識されていることを確認します。

4.他のベースステーションの電源を入れます。

5.ベースステーションが全て読み込まれるまで待ちます。

この時点では、トラッカーは現実と全く異なる位置にあるはずです。

ここまで出来たら、デスクトップを表示し、SteamVR起動と同時に立ち上がる
OpenVR-SpaceCalibratorのウィンドウを開きます。
(起動時は最小化されています。)
こんな感じの画面が開きます。

左上の「oculus」からは、右か左のコントローラーを選びます。
(Left ControllerかRight Controllerのどちらか)
右上の「Lighthouse」からは、「Vive Tracker~~」の一番上のものを選択します。
(一番上が最初に認識されたトラッカーです)

そうしたら、選択したコントローラーとトラッカーを一緒に持ちます。

※持ち方の一例
 あくまで一例ですが…

 この持ち方だと、ベースステーション1.0を使用する場合は安定しません。
 コントローラーとトラッカーの間に大き目の厚紙を入れるなど、
 赤外線の干渉対策をしてください。
 (トラッカーが飛んでいく場合は赤外線が干渉しています)
 厚紙を入れる例(トラッカーを覆うくらいのサイズは欲しいかも)

それでは、位置調整を開始します。

OpenVR-SpaceCalibratorの「Start New Calibration」をクリック。
その瞬間から、コントローラーとトラッカーを大きく、ゆっくり、トラッキングが切れないように動かし続けます。

前後に移動しながら振り回すとより精度よくキャリブレーションできる気がする。


参考動画

…毎回こんなにうまくいくわけではないです。
トラッキングが切れないように、大きく、ゆっくりを意識して動かしましょう…

納得いかなかったら、キャリブレーション後に出る「Close」ボタンをクリックし、
再度「Start New Calibration」します。

少しのズレはあまり気にしないほうがいいです。
完全に合わせるのは困難なので…。

位置調整が終わったらOpenVR-SpaceCalibratorは閉じてOKです。
閉じなくていいです。また再調整したくなるかもしれないので。

これで設定終わり。
(SteamVR起動するたびにこの作業が必要になります)

3. 次回以降のSteamVR起動時・注意点

3.1 次回以降のSteamVR起動時について

さて、やっと完了しましたが…
一部設定は、SteamVRを立ち上げた時、毎回設定が必要になります。
面倒ですが、この記事の方法でやる場合は必須です。

設定手順はこちら…
1.SteamVRを立ち上げる
2.「2.4.3 プレイエリア設定の読み込み」を行う

~~トラッカー使わないゲームならここまででOK~~

3. 「2.4.4 トラッカーの位置調整」を行う

はい。
手順はそう多くないのですが、毎回これをやらなくてはいけません…


3.2 トラッカーが飛んで戻ってこない時

たまに、トラッカーが飛んで行って(現実ではなく仮想空間での話)
戻ってこなくなることがあります。

その場で回転してみたり、ベースステーションの電源を切って順番に入れなおしたりすると直るかも。




4 設定戻したいとき

steamvr.vrsettingsから、「"useNewChaperone" : false,」の行を抹消すればOK。


5 Oculusのルームセットアップをやり直した時

steamvr.vrsettingsから、「"useNewChaperone" : false,」の行を消して、
2.2から設定をやり直せばOK。



2019年1月7日月曜日

Oculus Rift + Vive Tracker セットアップガイド

2019/03/11 追記

このページに書いてあるのより少し簡単にできるやり方あります↓

Oculus Rift x Vive trackerセットアップガイド(SteamVR Beta 1.3.7対応ver.)

https://si-nounai.blogspot.com/2019/03/oculus-rift-x-vive-trackersteamvr-beta.html
Trackerを使用しない時もひと手間かかるようになりますが、いろいろ楽です。

――――――――――――――――――――――――――――――

Oculus Rift + Vive Trackerのセットアップについて。

方法は他にもあるけれど、とりあえずこの手順でやっておけばOK!
というものをまとめます。
RiftとViveトラッカーの同時利用と、PlaySpace Moverの使用について
一通りの手順です。

※SteamVRのバージョンによってはうまく動きません。
 きっとValveに嫌われているんだと思います。悲しいね。
 おすすめは1.1.4です。それより後のバージョンは毎回プレイエリアの設定が必要です。

――――――――――――――――――――――――――――――

0.前提条件

Oculus Riftのセットアップが済んでおり、SteamVRが起動できること。

1.必要なもの

1.1 ハードウェア(HMDやトラッカーなど)

・Oculus Rift
・ベースステーション(2.0のほうが良い)
・Viveトラッカー
・高さ15.5~16cmくらいの台
・マスキングテープやシール(粘着力が弱いもの。切れ端程度でOK)
・スイッチ付き電源タップ(スイッチは2つ以上あると良い)
・電源タップ(2口以上)
   

1.2 ソフトウェア

・Oculus Software
  Riftが使える状態にしておきます。
   
・SteamVR
  Steamからインストールし、起動できるようにしておきます。
  バージョンは1.1.4がおすすめです...
   
・OpenVR Input Emulator
  https://github.com/matzman666/OpenVR-InputEmulator/releases
  こちらのリンクから、「OpenVR-InputEmulator-v1.3.exe」をダウンロードし、
  SteamVRインストール後にインストールします。
   
・OpenVR-SpaceCalibrator
  https://github.com/pushrax/OpenVR-SpaceCalibrator/releases
  こちらのリンクから、「OpenVR-SpaceCalibrator-0.5.zip」をダウンロードし、
  任意のフォルダに解凍(展開)しておきます。(インストール不要)
   
・PlayspaceMover
  https://github.com/naelstrof/VRPlayspaceMover/releases
  こちらのリンクから、「PlayspaceMover-v0.1.8.zip」をダウンロードし、
  任意のフォルダに解凍(展開)しておきます。(インストール不要)


2.手順

2.1 Riftの床高さ設定

Oculus Softwareから、床高さを再設定します。

2.1.1 Oculus Softwareの操作

まずは、下の図の通り、
「Devices」→「Configure Rift」→「Floor Position」を選択します。
(日本語表記の場合は、「デバイス設定」→「Riftを設定」→「床の位置」です。)


次の画面では、本来であれば自分の身長を入力するのですが、
今回は30cmを入力します。

①「Metric Units」をONに、②「30」を入力、③「Continue」をクリックします。
(日本語表記の場合は、①「メートル法」→②「30」を入力→③「次へ」です。)

Oculus Software内での操作はこれで一旦おしまいです。


2.1.2 Oculus Riftの細工?

2.1.1の手順の後は、本来であればHMDをかぶって指示に従うところですが、
今回はちょっと手順が異なります。

まずは、Riftにあるセンサーに少し細工をします。
細工と言っても、分解したり改造したりするわけではないのでご安心ください。


Riftの中央、少し上あたりに、
黒い楕円のテカテカした部品と、
その右にLEDが光っている場所が
あります。

これは、HMDをかぶっているかを
判別するための近接センサーです。
ここにマスキングテープやシール
を貼って…





こんな感じにします。
黒い楕円を覆うと、その右にある
LEDが消え、HMDの画面が表示されます。

このテープは、床高さの設定が終わったら
剥がしますので、
跡が残らないよう、粘着力が弱いものを
選びましょう。






2.1.3 Riftを置く

続いて、Riftを設置します。

2.1.1と2.1.2の手順が完了したら、
プレイスペースの中心あたりに15.5cm~16cmの高さの台を置き、
その上にRiftを置きます。


写真ではKinect oneの箱(約15.7cm)に
乗せています。












2.1.4 床高さの設定

ここまでできたら、Touchコントローラーのトリガーを一度引き、
床高さを設定します。

HMDをかぶって床高さが大体合っているか確認しましょう。
確認したら、もう一度トリガーを引いて、床高さを確定します。

2.1.5 マスキングテープ,シールを剥がす

2.1.2で貼ったマスキングテープ・シールはこれで役目が終わったので、
剥がしておきましょう。


これでRiftの床高さが設定されました。

ここからはSteamVRの設定に入ります。


2.2 SteamVRの設定ファイル書き換え

SteamVRにOculus RiftとViveトラッカーを認識させるためには、
「default.vrsettings」という設定ファイルの書き換えが必要です。

保存場所は…




Steamの「ライブラリ」→「VR」を選択し、
「SteamVR」を右クリック→「プロパティ」を選択します。

「ローカルファイル」タブの「ローカルファイルを閲覧」をクリックすると、
SteamVRがインストールされているフォルダが表示されます。



ここの、「resources」フォルダ→「settings」フォルダ内にあります。

「default.vrsettings」を、メモ帳などのテキストエディタで開いて、

25行目あたり(SteamVRのバージョンによって変わる)の
    "activateMultipleDrivers": false,
というのがあるので、false を true に書き換えて…
    "activateMultipleDrivers": true,
こうします。

これだけで、Oculus RiftとViveトラッカーが同時にSteamVRに
読み込まれるようになります。


以下、ついでに書き換えておくと良い設定です。

・Vive Trackerを動かさないと5分でスタンバイになるのを止める

135行目あたり(SteamVRのバージョンによって変わる)にある、
"turnOffControllersTimeout" : 300.0,
  を、
"turnOffControllersTimeout" : 0,
  に書き換えることで、スタンバイにならなくなります。
  600なら10分になるのかな?

・「SteamVRをアップデート中にエラーが発生しました(アプリ実行中)」が出る場合

複数のTrackerを起動する際、
「SteamVRをアップデート中にエラーが発生しました(アプリ実行中)」
という警告が出る場合があります。
とりあえず設定しておきましょう。

 138行目あたり(SteamVRのバージョンによって変わる)にある、
"autoLaunchSteamVROnButtonPress" : true
 を、
"autoLaunchSteamVROnButtonPress" : false
 に書き換えます。



2.3 Oculus RiftとViveトラッカーの調整


2.3.1 ベースステーションの設置

ベースステーションを設置しましょう。
参考サイトをいくつか紹介します。

HTC Viveが到着するまえに準備しておく事1 ベースステーション設置方法


ベースステーション2.0の場合、
[CEDEC 2018]「Vive Tracker」を使うときの注意点とは? 
「Vive」の最新情報が披露された講演をレポート
ここの「ベースステーション2.0の注意すべき点」も参考になるかと。

ベースステーションの固定方法についてですが、僕の場合は、
カーテンレールやワイヤーラックに取り付けています。




ベースステーションの電源についてですが、
Oculus Rift+Viveトラッカーを使用する際、気をつける点があります。

2.3.6で、Riftとトラッカーの位置調整をしますが、
その際、どのベースステーションが最初に認識されたかが重要となります。

細かい説明は省きますが、基準のベースステーションを一つ決めてください。
なるべく見晴らしのいい場所にあるベースステーションを選ぶといいかも?
どれでもいいですけどね

この基準のベースステーションだけの電源を最初に入れられるよう、
スイッチ付きの電源タップを使って配線します。

配線例は…下手な絵でごめんね
こんな感じです。
これなら、一番左のベースステーションだけの電源を最初に入れられます。


2.3.2 トラッカーのペアリング

2.2の設定を済ませてあれば、RiftとトラッカーがSteamVRに読み込まれます。

※最初はベースステーションの電源を切って作業します。

まずは、SteamVRを立ち上げ、Viveトラッカーをペアリングします。
参考:VIVE トラッカー(2018)のペアリング
https://www.vive.com/jp/support/accessory/category_howto/pairing-vive-tracker.html



トラッカーがペアリングされると、灰色の六角形トラッカーマーク(点滅)
現れるはずです。
とりあえずは、Riftとコントローラー、センサー以外に何か認識されていればいいかと。

※SteamVRの左上は、「利用可能」「利用不可」どちらが表示されていてもOKです。

2.3.3 トラッカーを認識させる

2.3.2でトラッカーをペアリングしたら、
全てのベースステーションの電源を入れます。



トラッカーをベースステーションのトラッキング範囲に置き、しばらく待つと、
上の画像のようになると思います。
この時点では、ベースステーションが複数台あるのに1つしか認識されないかも
しれませんが、とりあえずは無視して進めてください。

※SteamVRの左上は、「利用可能」「利用不可」どちらが表示されていてもOKです。

読み込まれない場合、Trackerがペアリングされているか、
Trackerからベースステーションが見えるか、
Riftのエラーが発生していないか確認してください。


2.3.4 ベースステーションのチャンネル設定をする

ベースステーションのチャンネルはすべてバラバラである必要があります。

ベースステーション1.0の場合、背面のボタンを押すことで、a→b→c→a…と
切り替えられます。
チャンネルはベースステーションの正面にあるインジケーターに表示されます。
基準のベースステーション(2.3.1参照)のチャンネルは「b」としてください。
もう一台は「c」にします。(1台だけの使用なら「b」のみとします)

ベースステーション2.0の場合も、背面の小さな穴の奥にあるボタンを押すことで、
1→2→3→…とチャンネルを切り替えられます。(16まであるのかな?)
ベースステーション2.0はインジケーターなどがないため、
ボタンを押してはSteamVRの画面でチャンネルを確認する、という手順が必要に
なります。
カーソルを合わせると、右下にチャンネル番号が出ます。
全部のベースステーションのチャンネルがバラバラになるよう、調整します。
基準のベースステーション(2.3.1参照)のチャンネルはなんでもいいです。
こだわりがなければ1にしておくのが無難かと。

2.3.5 ルームセットアップを実行する

まずは、ルームセットアップをします。

SteamVRに「利用可能」の表示が出ている場合、全てのベースステーションの
電源を切ると、上に「ルームセットアップを実行」と出ます。

SteamVRに「利用不可」の表示が出ており、上に「ルームセットアップを実行」
と出ている場合は、そのままルームセットアップを実行してください。


※SteamVRに「利用不可」と出ていても、Riftのトラッキングが切れていると
「ルームセットアップを実行」が出ません。Riftを動かしてトラッキングさせましょう。



それでは、Riftを再度15.5~16cm程度の高さの台に乗せ、
プレイエリアの中央あたりに置きましょう。(位置は大体でいいです)

ルームセットアップは「立位のみ」を選択します。
ここで立位のみと設定しても、プレイエリアの壁(Guardian System)は
Riftで設定したものが出てきます。(設定してある場合)

「次へ」をクリック
※「次へ」が押せない場合は、Riftのトラッキングが切れているかもしれません。
 少しゆすったり動かしてトラッキングさせましょう。

「中央を測定」をクリック
※「ヘッドセット 障害物あり」と出る場合、Riftのトラッキングが切れているかも
 しれません。Riftを少しゆすってみましょう。

床の高さは、15.7cmの台の場合14.3cmくらいがいいと思います。
数値入力後、「床をキャリブレーション」をクリック。

「次へ」をクリックして終了。

これで、Rift+トラッカー使用時のプレイエリアが設定されます。


2.3.6 Riftとトラッカーの位置調整

・SteamVRを閉じます。

・SteamVRを閉じると、トラッカーの電源が全て切れるはずです。
 電源が切れていないトラッカーがあれば、電源を切ります。
 トラッカーの電源は、中央のボタンを5秒以上押し続けることで切ることができます。

・ベースステーションの電源をすべて切ります。

・SteamVRを起動します。

・トラッカーの電源を入れます。複数ある場合、一つずつ起動し、
 最初にSteamVRに認識されたトラッカーを覚えておきましょう。
 (いっぺんに立ち上げると、どれが最初に認識されるかわからない)


基準のベースステーション(2.3.1参照)の電源を入れます。
 そしてトラッカーが認識されるのを待ちます。
 すると、下の図のようになると思います。

・きちんとすべてのトラッカーがトラッキングされたことを確認してから、
 他のベースステーションの電源も入れます。


※ここで「ルームセットアップが無効です」とエラーが出る場合、
 2.3.5の通り、ルームセットアップを行ってください。

この時点では、Riftから見るとTrackerは現実とは全く異なる位置にあるはずです。
位置を調整する必要があるため、OpenVR-SpaceCalibratorを使用します。

・1.2でダウンロードし、適当な場所に展開した、
 「OpenVR-SpaceCalibrator.exe」を実行します。
 すると、下の図の画面が開くはずです。

左上の「oculus」からは、右か左のコントローラーを選びます。
(Left ControllerかRight Controllerのどちらか)
右上の「Lighthouse」からは、「Vive Tracker~~」の一番上のものを選択します。

それでは、選択したコントローラーと、最初に認識されたトラッカーを一緒に持ちます。

※持ち方の例
 この持ち方だと、ベースステーション1.0を使用する場合は安定しません。
 コントローラーとトラッカーの間に大き目の厚紙などを入れるなど、
 赤外線の干渉対策をしてください。


ここまで準備出来たら、以下の動画のようにキャリブレーションを行います。
無編集、撮ったまま。

手順としては、
コントローラー選択→トラッカー選択→「Start New Calibration」
あとはゆっくり大きく、コントローラーとトラッカーがずれないように動かすだけ。

ゆっくり大きくです。早く動かすとズレやすいです。

キャリブレーションは基本的には初回だけでOK。
次にSteamVRを立ち上げるときは、OpenVR-SpaceCalibratorを起動するだけで、
今回のキャリブレーション結果が適用されます。

ズレが気になるようなら再度キャリブレーションしてください。


2.3.7 PlaySpace Moverについて

PlaySpace Moverというのは、VR空間内の位置調整などに使えるものです。
VRChatでフルトラ勢が空飛んだりするのに使ってます。

使い方が厄介なので、バッチファイルの作り方だけ書いときます。

1.2でダウンロードして、適当な場所に展開したPlaySpace Moverのフォルダに、
テキストファイルを新規作成し、以下の黄色い背景の部分の内容をコピーして
貼り付けます。

cd /d %~dp0
PlayspaceMover.exe -l 128 -r 128 --resetButtonMask 2

上書き保存し、拡張子を「.txt」から「.bat」に書き換えます。

SteamVRで、OpenVR-SpaceCalibratorでの位置調整が終わったら、

OpenVR-SpaceCalibratorを閉じてからこのバッチファイルを実行してください。

順番を間違えないように。
PlaySpace Moverが立ち上がっているとOpenVR-SpaceCalibratorでの
位置調整ができないし、
OpenVR-SpaceCalibratorを閉じないとPlaySpace Moverが効きません。


このバッチファイルを起動することで、
・コントローラーの「A」もしくは「X」ボタンを押しながら
 コントローラーを動かすことで移動、
・コントローラの「B」と「Y」を同時押しすることで初期位置に戻る

ということができます。



3 次回以降の手順まとめ

今回は初回セットアップなので、かなり面倒な手順でした。
次回以降はかなり短く済みます。

①SteamVRを立ち上げる
②使用するトラッカー全ての電源を入れる
③基準のベースステーションの電源を入れる
④トラッカーがトラッキングされるのを待つ
⑤ほかのベースステーションも電源を入れる

※ここで「ルームセットアップが無効です」とエラーが出る場合、
 本記事の2.3.5の通り、ルームセットアップを行ってください。
 おそらくSteamVRのバージョン1.2.xと1.3.xの場合は毎回これが必要かと…
 Valveが何とかしてくれないとどうしようもない、困った、たすけて

⑥OpenVR-SpaceCalibratorを起動する

PlayspaceMoverを使用する場合
⑦OpenVR-SpaceCalibratorを閉じる
⑧PlayspaceMover用のバッチファイルを起動する


おしまい。