概要
Nrealアプリの「環境構築手順」の解説サイトはいくつかありますが、
「開発イテレーション」に触れているのは少なかったので、まとめておきます。
筆者の開発環境
- Windows 10
- Unity2020.3.23
- Nreal DevKit(2022年4月購入。メガネはNreal Lightコンシューマー版と同じ)
- Computing Unit(Android端末)は Android 8.1.0
- NRSDK v1.8.0
開発イテレーション
- PC と Android端末をWiFi接続(scrcpyとの接続が切れたときのみ)
- Unity Editor で開発
- Unity上の Addressables Groups で Build(リソース修正したときのみ)
- Unity上の Build Settings... で Build
- 作成された apk を scrcpy にドラッグ&ドロップ
- scrcpyコンソールで「xxx.apk successfully installed」と表示されたら、NrealメガネとAndroid端末を接続しているケーブルを抜いて、挿す
- メガネをかけて実機で確認
- エラー発生時は、Android Studio のログをコピペして確認
- 以下、2~7 の繰り返し
図
- メガネとAndroid端末を接続し、メガネをかける時に抜いて挿す
その挿抜がNRホーム画面起動のトリガになる - PC とAndroid端末をつなぐのは、WiFi設定が切れた時のみ
具体的には、PC再起動 or Android端末再起動した時のみ - WiFi設定は残っているが、WiFi接続が切れた時は、後述の adb_wifi.bat を叩く
- Unity, scrcpy, Android Studio は起動したまま
scrcpy が黒画面のときはAndroid端末がスリープしており、右クリックでスリープ解除
構築手順
DevKit が赤メガネだったときの古い記事も多いので、2022年4月時点では以下の2つを参考にすればOKだった。
PC と Android端末をWiFi接続するスクリプト
192.168.11.50 の部分は、各自のローカルネットワークに合わせる。
adb devices adb tcpip 5555 adb connect 192.168.11.50:5555 adb devices
PCとAndroid端末を接続した状態で、上記 adb_wifi.bat を一度実行しておく。
出力結果が以下のようになれば成功。
最初の adb devices では物理接続されている abcdefg0 が出力されるが、
WiFi接続後は、192.168.11.50:5555 としてもデバイス検出されている。
WiFi接続できているのでPCとのケーブルを抜き、メガネに接続しておく。
C:\Users\ユーザー名\Desktop>adb devices List of devices attached abcdefg0 device C:\Users\ユーザー名\Desktop>adb tcpip 5555 restarting in TCP mode port: 5555 C:\Users\ユーザー名\Desktop>adb connect 192.168.11.50:5555 connected to 192.168.11.50:5555 C:\Users\ユーザー名\Desktop>adb devices List of devices attached abcdefg0 device 192.168.11.50:5555 device
備考
- Nreal Light用の矯正レンズは JUN ZINZA にて作成した
Nreal Air用とあるが、注文時の備考欄に「Nreal Light用」と記載すればOK(店員に確認済)
サイトの料金は両眼のもの - 実機の表示が点滅する際は、近接センサーを疑う
当初は自前メガネの上からNRメガネをかけていたので、「NRメガネをかけていない」とセンサに判定され、表示が消えることがあった - 次は、Nrealアプリ開発前に NRSDK の Demo を実行
- 実機でエラー発生時にエラーログを画面内に表示しておくとよい
初めてアセットバンドル対応した時などは実機でエラーが発生しがち
Android Studio のログでエラー内容を確認できるが、コピペの手間もかかる
Nrealアプリで追従UIやエラーログを表示する方法 にて解説