27
25

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【Unity】Oculus Questのコントローラ入力の取得方法まとめ

Last updated at Posted at 2019-06-11

はじめに

この記事は、OculusQuestのコントローラ入力の取得方法についての記事です。
OculusQuestのセットアップなどは他の人が記事でまとめているので参考にしてください。
筆者が参考にした記事はこちら([Unity] Oculus Questで3Dキャラクターを眺めよう)

OculusQuestのコントローラ入力の取得方法

Oculus系のコントローラ入力は、基本的にOVRInputを用いて取得します。公式リファレンスを参考にまとめました。
公式リファレンスのURL:https://developer.oculus.com/documentation/unity/latest/concepts/unity-ovrinput/

入力可能な値

OculusQuestはOculus Touchコントローラを使用します。
入力として取れるものは以下の通りです。

  • OVRInput.Button:ボタンを押しているかどうか(bool型)
  • OVRInput.Touch:ボタンが指に触れているかどうか(bool型)
  • OVRInput.Axis1D:トリガなどをどれくらい引いているか(float型)
  • OVRInput.Axis2D:3Dスティックなどをどの方向に押しているか(Vector2型)
    ここですごいのがOVRInput.Touch、ボタンを押さずに指が触れているだけで検知されます。

入力の取得方法

コントローラ入力の取得にはOVRInput.Get()を使用します。例えば、「Aボタンを押しているかどうか」取りたい場合は、
OVRInput.Get(OVRInput.Button.One))
を記述することで押していればTrue、押していなければFalseが返ってきます。
ほかにも、押された瞬間を取りたいときはOVRInput.GetDown()を、離した瞬間を取りたいときはOVRInput.GetUp()を使用すれば取れます(SteamVR Ver1.#で同じような関数を使用していたのでかなり使いやすく感じました)。

さいごに

詳細は公式リファレンスを参考にしてください。

参考

Oculus Questで入力全てを確認できるサンプルコードはGitHub(https://github.com/NaoKanata/OculusQuestControllerInputManager)で公開してます。
※使用は自己責任でお願いします。

27
25
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
27
25

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?