UnityEngine.VRについて
UnityEngine.VR
公式でVRがサポートされるようになってから追加された名前空間
割と使うなっていうモノがそろってたのでまとめる
unity5.1.3f1での情報です
VRNode
LeftEye,RightEye,CenterEye,Headの4種類がある列挙体
Transformなどを取得する際に必要になる
-
LeftEye
その名の通り左目のノード
-
RightEye
その名の通りry
-
CenterEye
右目と左目の真ん中のノード
-
Head
頭らしい、これはちょっと謎です
VRDeviceType
OculusやMorpheusなどの情報が格納されている
何が接続されているかのチェックなどに使用できる
InputTracking
-
GetLocalPosition(VRNode)
Nodeで指定した部位のPositionをLocalに変換してVector3で返す
ゲームを作るだけなら大体カメラのポジションとるだけで事足りる・・・( 一一)
-
GetLocalRotation(VRNode)
Nodeで指定した部位のRotationをLocalに変換してQuaternionで返す
オブジェクトの位置補正をしたりするのに使う可能性もあるかも
-
Recenter()
現在の位置をセンターとしてトラッキング位置を初期化する
めっちゃ使う
VRDevice
-
GetNativePtr()
VRデバイスシステムのポインタ(IntPtr)を取得する
まず使わないけど自分でVRデバイスシステムをカスタムしたいウィザード級の人向け
-
family
loadされているVRデバイスの名前、string
ロードされているデバイスが一つじゃなかったとき複数返ってくる
複数デバイス持ってないのでどう返ってくるかは検証できない、だれかしてください
-
isPresent
正常にデバイスが動作しているかの真偽値
正常に動作してなかったら再ロードしたりするときに使う
-
model
ロードされてるVRデバイスのモデル名、らしい
あとで調べて追記予定
VRSettings
これ便利です
-
enabled
VRデバイスに画面を出力するかどうかの設定
これを使えばゲーム中にHMDを外させたりつけさせたりする事が出来る
ただ、trueからfalseにしたときHMD側に出力されていた映像がそのまま出力され続けてしまう(更新が止まるだけ)
-
loadedDevice
VRdeviceTypeをセットすることで強制的にそのデバイスをロードする事が出来る
逆に今ロードされているデバイスのタイプも取得可能
上記の映像がそのまま出力され続ける状態を回避するために
loadedDeviceにVRDeviceType.Noneをセットすることで映像を消せるんじゃないか??
試します・・・
-
renderScale
いじるとトラッキングの制度が下がるがテクセルとピクセルの比率を変えられる
わからなければいじらない方がいい
-
showDeviceView
メインディスプレイ上にHMDで表示されている画面をミラーリングするかの真偽値
左目の画面しかミラーリングされない
おわり
参考