トマシープが学ぶ

Unity/VR/AR/デザイン好きのミーハー 記事内容は自分用のメモです

OculusQuestの電池残量/ネットワークを取得して表示する

コントローラーの残量

コントローラーの残量はOVRInputで取得できるっぽい

ここに書いてあった。

https://developer.oculus.com/reference/unity/1.23/class_o_v_r_input/#abed7e5330bf1ef803f06728c48e2aa14

static byte OVRInput.GetControllerBatteryPercentRemaining ( Controller controllerMask )
Returns the battery percentage remaining for the specified controller.
Values range from 0 to 100. Only applicable to controllers that report battery level, such as the GearVR Controller. Returns 0 for controllers that do not report battery level.

 値の範囲は0〜100です。GearVRControllerなど、バッテリーレベルを報告するコントローラーにのみ適用できます。 バッテリーレベルを報告しないコントローラーの場合、0を返します。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

ということで、OculusRiftでやったら0が返ってきました。

右手左手の判別はこんな感じにした。あっているかはわからない

byte rightControllerBattery = OVRInput.GetControllerBatteryPercentRemaining(OVRInput.Controller.RTouch);

 

HMDの電池残量

HMDの残量はOculusにはなさそうだった。

たしかにRiftだったらPCにつながっているから常に満タンだし、QuestはAndroid端末だからその残量を取ればいいのか

baba-s.hatenablog.com

SystemInfo.batteryLevel で0~1のfloatでとれる。

100かけよう

Wifi

ネットワークの接続状況も取れる。

ftvoid.com

docs.unity3d.com

Application.internetReachability

NetworkReachability.NotReachable つながってない

NetworkReachability.ReachableViaCarrierDataNetwork キャリアでつながっている

NetworkReachability.ReachableViaLocalAreaNetwork WiFiや有線でつながっている

時間

 ClockText.text = DateTime.Now.ToLongTimeString();

qiita.com

Photonが切れているか

PhotonNetwork.NetworkClientState == Photon.Realtime.ClientState.Joined

この中にenumで状態が入っている。いろいろあるから一概に切れているのがどれか

以前はPhotonNetwork.connectionStateDetailedだった?変わったっぽい。

http://photonengine.jp/pdf/PhotonNetwork-Documentation_ja.pdf