【Unity】【Oculus Quest2】コントローラーの位置と角度の取得
目次
- コントローラー座標と回転の取得方法の種類
- 1. コントローラーオブジェクトのTransformを取得する
- 2. OVRInputクラスの
GetLocalControllerPosition
,GetLocalControllerRotation
を使用する - 参考
コントローラー座標と回転の取得方法の種類
コントローラーの座標の取得方法は2通りの方法があります。
- コントローラーオブジェクトのTransformを取得する
- OVRInputクラスの
GetLocalControllerPosition
、GetLocalControllerRotation
を使用する
1. コントローラーオブジェクトのTransformを取得する
以下の画像の赤枠のオブジェクト2つがそれぞれ右手コントローラーと左手コントローラーのオブジェクトになります。
サンプルコード
1 |
|
備考
- Inspectorの参照忘れが起こりそうなうえ、あまり美しくない気がする
2. OVRInputクラスのGetLocalControllerPosition
,GetLocalControllerRotation
を使用する
OVRInputクラスに用意されている、GetLocalControllerPosition
、GetLocalControllerRotation
を使用することで、コントローラーのローカル座標を取得することができます。
取得した、ローカル座標をTrackingSpace
座標空間に変換することで、コントローラーのワールド座標を取得することができます。
TrackingSpaceは以下の赤枠のオブジェクトです。
サンプルコード
- 右手 : OVRInput.Controller.RTouch
- 左手 : OVRInput.Controller.LTouch
1 |
|
備考
- 1の方法よりはInspectorの参照忘れが起こらなさそう?
参考
- 2.で取得したローカル座標のワールド座標変換について
【Unity】【Oculus Quest2】コントローラーの位置と角度の取得
https://blog.djima.net/2021/07/26/【Unity】【Oculus-Quest2】コントローラーの位置と角度の取得/