#はじめに
Hololensアプリの作り方の記事は沢山ありますが、割と情報がバラバラになっているイメージがあるので、導入からビルドするまでの工程を全て1つの記事にまとめました。
MixedRealityToolkitのバージョン(特に無印とv2)によって使い方が変わるので、気をつけてください。
#準備〜コンテンツを作る
- Unityのダウンロード。Unity Hubを使うと複数のバージョンのUnityを同時に扱うことができるので便利。
- Unityをインストールするときに、Universal Windows Platform(UWP)の名前がついたBuild TargetとVisual Studioをダウンロード。
- Visual Studioでは、「C++によるデスクトップ開発」「ユニバーサルWindowsプラットフォーム開発」「Unityによるゲーム開発」のワークロードをダウンロード。
- Hololens Toolkitの任意のバージョンをダウンロード。個人的にHoloToolkit 2017.4.3.0 - Refreshが安定しており使いやすいと感じるが、MixedRealityToolkit v2も正式版がリリースされたので、これから始める人はそちらの方がいいかもしれない(少なくとも2020年のベータ版Unityと2017年版のHoloToolkitは相性が悪いのでやめた方がいい)。ダウンロードできるアセットはAssetsの中にあり、無印やFoundationが最低限開発に必要なアセットなのでこれをダウンロードする。
- Unityを起動してプロジェクトを作成し、File>Build SettingsからBuild TargetをUWPに変える(後からでもできるが、開発後に変えると時間がかかる)。
- UnityのメニューバーからAssets>Import Package>Custom Packageで落としてきたMixedRealityToolkitのUnityパッケージを選択して、インポートする。
- Hololens Toolkitのドキュメントに従って、プロジェクトとシーンの設定を行う(バージョンによって行う設定方法が異なり、ほぼワンクリックのはずなので説明は省略)。これを行うことでHololensを使えようになる。
- Assets>Import Package>Custom Packageでexampleシーンをダウンロードしたり、コンテンツを作る。作り方は通常の3Dゲームと同じように作ればいいが、カメラは原点から動かさないことに注意し、Hololensの画角が小さいことにも気をつける。
#ビルドする方法
- File>Build Settings>Player Settings>Publishing SettingsのCapabilitiesで、なにか通信やマイクなど機能を使う場合はそれにチェックする必要がある。同じくPlayer Settings>XR SettingsでVirtual Reality Supportedにチェックが入っているかの確認も必要になる。また、Player Settings>Other SettingsのScriptipting Runtime Versionは”.Net 4.x Equivalent”、Api Compatibility Levelは”.Net 4.x”を確認し、必要に応じてScripting Backendを変えることができる。
- File>Build SettingsからBuildする。そのとき、”Add Open Scenes”で現在開いているシーンをビルド対象に入れ、Target Deviceは”Hololens”、Architectureはx86”を選ぶ。
- 生成されたフォルダの中にある.sln(ソリューションファイル)をダブルクリックして、Visual Studioを起動する。
- Visual StudioでBuildの下のドロップダウンメニューから”Release”, “x86”, “Device”に設定し、Hololensを繋いだ状態でDeviceのボタンを押すとビルドを行うことができる。
- 初めてのビルドではHololensとのペアリングを求められるが、HololensでSetting>Update&Security>For Developpersの中に”Pair”というボタンをクリックすると認証コードが出現し、それをPC側に入力するとペアリングを行うことができる。
- ビルド中にエラーが生じた場合の多くの原因は以前のアプリを消してないことにより起こるが、再ビルドすれば解決する。アプリを再インストールする時は事前に昔のアプリをアンインストールしておくとスムーズにビルドが実行できる。これで解決しないエラーはどこかで問題が起こっている。
#Deviceが表示されないとき
Scripting BackendをIL2CPPにしたとき、ビルドする方法の4番の工程で"Device"が表示されないことがあるが、以下の記事の通りに実行すれば解決します。
Unity Hololens(UWP)をIL2CPPでビルドするときにDeviceが出てこないときにすること
#最後に
もし間違っている箇所や分かりづらい箇所があればコメントください。最後まで読んで頂きありがとうございました!