東屋書店

一つのブログは一冊の本である

広告

OpenVR-InputEmulatorでViveコントローラーをハックする!

どうもふしめろです。

お久しぶりですね。

更新間隔が空くことが日常茶飯事なのでお久しぶりとかもう良いんじゃ無いかとか思ってしまいます。

 

さて、この間仲間内で話題に上がったことがありまして、それがこちらのソフト。

github.com

 

Viveのコントローラー機能を拡張する

このソフト、ざっくり言うと

 

Viveコントローラーのキーバインドをするソフト

 

と言っても過言ではないでしょう。

 

VRソフトは基本的にコントローラーのみで操作が完結出来るように設計されているわけで、基本的にはこのようなソフトを使う状況というのはごくごく限られた二つの状況しかありません。

 

一つはあなたがVRソフトの開発者である場合

もう一つはごく一部のデスクトップモードが存在するVRソフトを使用している場合

 

この二つです。

今回は後者の場合において話題に上がってきたソフトであるので、デスクトップモードが存在するVRソフトとはどういう意味かを説明します

キーボードでしか操作できない機能がある

VRソフトでデスクトップモードが存在するのは比較的少ないと思うのですが、そうしたデスクトップモードでは何を使ってゲームを操作するかというと、ほとんどの場合キーボード+マウスを使うことになるでしょう。

このときにキーボード上で行う特殊なショートカットキーがViveコントローラーに割り当て、またはVRソフトに用意されたメニューに設定が表示されていないと困ったことになります。具体例を挙げましょう。

 

これは僕が入り浸っているVRChatで起きている話なのですが*1、VRChatではキーボード上でCtrl+Nを押すと、ネームタグが消えます。いわゆるUI非表示機能ですね。

 

スクリーンショットを取りたいときはこの機能を使うと非常に自然な風景が撮れて良いのですが、通常時は出していた方が便利です。デスクトップモードではこの操作になんの問題もないのですが、VRモードでプレイしているといちいちキーボードを操作しに机へ戻らなければなりません。

 

VRをやったことがある人ならこの作業の難易度がどれほど高く煩雑な作業かがご理解いただけることでしょう。こうした操作をコントローラーに割り当てることが出来ればどれほどいいか! 

 

こうした特殊なキー操作をコントローラーに割り当てることが出来るのがこのソフトな訳です。

 

設定方法-使用は自己責任で

とりあえず大まかにReadmeを流し見て、既知のバグや危険性を確認しておきます。

確認し終わったら下記のリンクから最新版exeをダウンロードしてインストールします。

github.com

そうしたら特別な設定はいらないのでSteamVRを起動しSteamメニューを開きます。

そうすると下のメニューにこんなのが増えているので選択すると設定画面に飛びます。

gyazo.com

ここから先はGitのReadmeを読む方が理解が早いと思うので割愛しますが、キーバインドの設定だけ触れていきます。

なお、VRだとうまいことメニューのスクショがとれないのでデスクトップモードで説明します。*2

 

まずは開いた先のこの画面からDeviceプルダウンを開いてコントローラーを選択します。

gyazo.com

識別ナンバーではどちらに持っている方か解らないと思いますが、選択した後右にあるIdentityを選択すれば選択している方が震えるので確認して先に進みます。

なお、片方ずつ独立して設定するので左右のコントローラーの同じボタンに別々の機能を割り振ることも可能です。

 

次にInput Remappingを押します。

gyazo.com

このような画面が出るので、好きなボタンを選びます。

今回はシステムボタンにCtrl+Nを割り当ててみましょう。

SystemのNo Remappingを選択します。

こんな画面が出ます。

gyazo.com

 

うえから、ワンクリック、長押し、ダブルクリックの再割り当てが出来ます。今回は長押しにしてみましょう。

Long Pressをチェックし、再度No Remappingを選択します。

gyazo.com

プルダウンを開いてKeyboardを選択。

こうなるので、今回のCtrl+Nを割り当てます。

KeyプルダウンからNを選択し、CtrlにチェックしてSaveを押します。

gyazo.com

押したら最初の画面に戻ってこうなります。

gyazo.com

あとは、Long Press Threshold、長押しする秒数を100ミリ秒単位でえらび、必要であればImmediate Key Release*3をチェックします。

 

最後にSaveを押すとこの画面に行くので割り当てがされていることを確認したら、さらに左上の矢印で戻って

gyazo.com

たしかApplyを押すんだか押さないんだったかで設定が完了します。このままSystemボタンを押してゲームに戻りましょう。

gyazo.com

 

おわりと注意点

これらの操作はプロファイルがうまく動作していないため、SteamVRの起動の度に行わなければなりません。しかし、これによってコントローラーですべての操作が完結することがあるのでその利便性を考えたら十分すぎるほどおつりが出ます。

 

メリットデメリットをみて導入したいですね。

 

それでは以上です! よきVRライフを!

*1:このソフトもそのコミュニティで話題に上がりました

*2:これはデスクトップでプリセットを編集するための物だと思うのですが、現在プリセット周りでのバグが発生している見たく、プリセットを編集して保存してもうまくよみこみません

*3:即時キーリリース:この場合は長押ししたときに発生するボタンダウンイベントの直後にボタンアップイベントを挿入します。要は押したらすぐ離す感じになるわけです。