弊社にもNreal Light Developer Kit が届いたので、開発環境を整備します。サンプルアプリを動かすところまでやってみます。
## 前提とする環境
- Windows PC
- Unity 2019.4 LTSがインストール済
- Android Studio を利用し、Android SDK8.0 (API Level26:Oreo) 以降がインストール済
- Unity向けのSDKである NRSDK がダウンロード済
手元にあるNreal LightはDev-Kit用の赤いヤツです。
まずNreal Light Dev-Kitですが、これはザックリ言うとAndroidスマホのディスプレイ・タッチパネル・コンピュータ部分が分かれたものと考えて良さそうです。
コンピュータユニットにはSnapdragon 845が搭載されており、同様に845以降のチップセットが搭載されているAndroidスマホであればNreal Lightの性能を引き出せます。最新のハイエンドAndroidスマホであれば対応できると思われます。
このSnapdragon 845から自己位置推定と環境マッピングが同時に行われるなどが可能となったということがあり、それ以前のチップセットではハードウェア的に無理があるようです。
メガネにはカメラが付いており、これと加速度センサーとジャイロセンサーが組み合わさることでメガネ自体の動きが計測されます。
あとメガネのツルの部分にボタンらしきものがあります。ボタンの存在には後で気付きました。
コンピュータユニットにもボタンが付いていますが、これは電源ボタンと音量ボタンですね。
タッチパッドの部分が分離するのですが、こちらにも電源スイッチがあります。先端部分を押すと選択、黒い部分全面がタッチパッドになっており、手前側を押すとホームに戻るそうです。
これが曲者で、手前側をポチっと押してもアプリから離れられず困りました。何か上手い押し方があるのでしょうか。
ほか、付属品として目が悪い方向けのレンズを付けるためのマグネット付きフレーム、鼻の高さに応じて変えられるアタッチメントなどが付属品となっています。
## Quickstartを試す
私が確認したタイミングでは以下の環境が記載されていました。素直にそろえました。
・Unity 2019.4 LTS with Android Build Support
・NRSDKForUnity_1.5.7
・Android SDK 8.0 (API Level 26) or later, installed using the SDK Manager in Android Studio
## Computer Unitをパソコンにつなぐ
公式だとscrcpyが推奨されていたのでダウンロードします。
https://github.com/Genymobile/scrcpy
USB-Cの穴の横にあるのが電源ボタンなのですが、いつの間にか電源が付いている?…
USB-Cの穴の反対側のライトが光っていたら電源が付いている状態です。
長押しでシャットダウンします。何か困ったときは再起動…。
USB-CのケーブルでWindows PCと繋ぎ、scrcpy.exeを起動するとAndroidの画面が表示されました。
WifiやBluetooth接続なども出来ます。分離型のタッチパッドはBluetooth接続です。
## NRSDKForUnityというunitypackage をダウンロードする
メールアドレスの登録が必要です。
https://developer.nreal.ai/download
ダウンロード自体は難しいものでなく、またUnityへのインストールも他のunitypackageと同様なので難しいところはないように思います。
## unitypackageからデモ用のシーンを読み込みビルドする
Assets > NRSDK > Demos のところに、いくつものサンプルアプリが入っています。
どのサンプルアプリでも選択して構わなそうです。
ビルドの対象にシーンを追加し、公式ドキュメントにあるとおりにBuild Settingsを変更します。
(変更しなくても良いものも書いてあるので注意)
Graphics APIsの項目にOpenGLES3しか記載がないので、Vulkanを削除しました。
USB-Cでコンピューターユニットに接続した状態であれば、Run Deviceの項目に Android SDM845 という端末が表示されるので選択します。
メガネとコンピュータユニットを繋ぎ、実行すれば動くはずです。
タッチパッドの手前側をタップすればアプリ終了ダイアログが出るはずですが、出ません…
長押ししたり二度押ししたりするうちに出ました。この辺はもう少し調べたいと思います。