はじめに
Oculus Questで文字入力する場合には、通常ソフトウェアキーボードが表示されて入力することになるのですが、あまり入力しやすくはないように思います。
そこで物理キーボードを使えないか調べてみたところ、Bluetoothでキーボード接続を実現されている方がいて、やり方を公開されていました。
[Oculus Quest も文章書き&開発マシンにする]
(https://wlog.flatlib.jp/?itemid=1878)
(2019/8/7追記)
Oculus Quest Build 7.0アップデート後は、普通に設定メニューからペアリングできるようになったため、上記の手順は不要と思われます(試してはいませんが、メニューに設定項目があることは確認しました)。
Oculus Questをつけた状態では当然キーボードが見えないのですが、自分はブラインドタッチは無理だったので、キーボードのモデルを作って物理キーボードと位置合わせして入力してみました。
#開発環境
Unity 2019.1.9f1
Oculus Integration for Unity - 1.37
TVLauncherGo 1.0
Logicool K380BK Bluetooth ワイヤレス キーボード
動作例
キーボードのモデルの位置を、物理キーボードの位置と合わせて・・・
全然正しく入力できてません。
位置が微妙にずれているためか、思ったようにキーボードが押せていないです。
所感
キーボードのモデルは写真をテクスチャとして張り付けただけですが、VR空間中でのサイズが物理キーボードのサイズと一致するようにする調整が若干面倒でした。後から気が付いたのですが、VR空間内で調整すれば簡単だったかも・・
このままではとても実用に耐えないので、やはりソフトウェアキーボードを使うことになりそうです。
補足
キーボードの入力確認に使用したのは以下のコードです。
OVRDebugConsole.Logは通常はログ出力に使うものなので1文字入力ごとに改行されてしまいますが、とりあえず確認には使えるかと。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class OVRDebugConsoleTest : MonoBehaviour
{
void Update()
{
if (Input.inputString != null && Input.inputString != "")
{
OVRDebugConsole.Log(Input.inputString);
}
}
}
追記
カメラで手元のキーボードを見えるようにすると、多少操作しやすいような気がします。
ROSを使ってAndroidスマホからカメラ画像をPublish=>OculusQuestで画像をSubscribeして表示してみました。
— 高浜 (@SatoshiTakahama) February 25, 2020
手元のキーボードを見ながら操作しています。 pic.twitter.com/i7AEpEtnR4