Oculus VR Tips
色々
Oculus XR Pluginのエラー
最新(Unity2020.2.5f1, Oculus XR Plugin 1.8.1) だとビルド時にエラーとなってしまう. ので一度消してダウングレードする. 1.7.0で動いた.
OVRInput.Button
Map Controllers | Oculus Developers
- ボタンを押したかの判定だけでなく, 接近している(NearTouch), 触れた(Touch) ことの判定も出来る
- 左が
Primary, 右がSecondaryになる(逆転する可能性あり?)
HMDの傾き取得
OVRCameraRig についてのあれこれ - Qiita
replacement for InputTracking.GetLocalPosition in unity
InputTracking.GetLocalRotation() がObsoleteになり InputTracking.GetNodeStates() が推奨されているが取得出来なかった.
var list = new List<XRNodeState>();
InputTracking.GetNodeStates(list);
var headState = list.First(n => n.nodeType == XRNode.Head);
var q = new Quaternion();
Debug.Log(headState);
var result = headState.TryGetRotation(out q);とりあえず OVRCameraRig に任せることに
OVRCameraRig についてのあれこれ - Qiita
Canvas
Oculus QuestでuGUIを操作する - Qiita
todo : Canvasの文字が周りのオブジェクトとかより奥に描画されてしまうのはどうすればよいのか
移動方法
HMD回転: カメラ回転
左スティック: プレイヤー移動
右スティック: プレイヤー回転
→ とても酔う
Distance Grabbable & Distance Grabber
遠距離の物を掴み寄せることができるコンポーネント
Assets/Oculus/Usageにサンプルあり, 掴みたいオブジェクトにRigitBodyとDistance Grabbableをつけ, 掴む側にOVRGrabManagerを設定する.

todo CharacterControllerと共存する方法
→ PlatformProviderの値によってSetActive切り替えしている