HoloLens 開発のおさらい

#はじめに
HoloLens 入手当初は、簡単なデモなど興味と暇を見つけて Unity ベースで構築していました。
その頃は、Unity をあまり理解しないまま、力業 (^＿^; で形にしていました。
最近は少し離れてしまっていたので、”おさらい”の意味も込めて、まとめ直します。
まぁ、リハビリを兼ねた備忘録と思ってください。

![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/0989b5d5-d0ef-f267-1325-4d38ece4e2b0.png)![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/beff9469-bc8c-9451-ebf3-f33a01b53e46.png)

#まずは、材料集め・インストール
[公式ページ](https://developer.microsoft.com/en-us/windows/mixed-reality/install_the_tools) の「Install the　tools」を参考に開発環境を整えます。　必要なモノは以下の通りです。
※英語が苦手って方は、[hololensdev](http://www.hololensdev.jp/) さんが日本語訳の記事を書かれています。

<TABLE ALIGN=CENTER><TR><TD WIDTH=400px>
 <A HREF="http://www.hololensdev.jp/entry/2016/08/11/190606" TARGET="_blank"><STRONG>HoloLens 開発環境構築手順 (公式ドキュメント日本語訳: Install the tools) - How to Develop Apps for Microsoft HoloLens</STRONG></A>
</a>
</TD>
 <TD WIDTH=150px>
 <A HREF="http://www.hololensdev.jp/entry/2016/08/11/190606" TARGET="_blank"><IMG STYLE="float:left;margin-right:.5em;" SRC="https://qiita-image-store.s3.amazonaws.com/0/175896/3735ba66-0f00-84d0-778c-60a5a2ffe665.png" ALT="" WIDTH="100" HEIGHT="100" /></A>
 </TD></TR>
</TABLE>

  
1. Visual Studio 2015 Update 3  
Community Edittion： http://go.microsoft.com/fwlink/?LinkId=534599  
気を付ける点は、インストール時に「機能の選択」で以下の 2 項目のチェックがあることくらいでしょうか。  
  - ユニバーサル Windows アプリ開発ツール 配下 
      - "ツール(1.4.1) および Windows 10 SDK (10.0.14393)"  
      - "Windows 10 SDK (10.0.105863)"  
2. HoloLens Emulator (build 10.0.14393.0)  
http://go.microsoft.com/fwlink/?LinkID=823018
3. Unity 5.5.2  
https://unity3d.com/jp/get-unity/download?thank-you=update&download_nid=45968&os=Win

#HoloToolkit-Unityが便利
Microsoftが提供している[Holographic Academy](https://developer.microsoft.com/ja-jp/windows/mixed-reality/academy) の Tutorials に含まれているサンプルをベースに作っていってもいいのですが、Microsoft から Academy とは別に [HoloToolkit-Unity](https://github.com/Microsoft/HoloToolkit-Unity) というモノが github に公開されています。
こちらの方が便利そうなので、今回は HoloToolkit-Unity を使っていきます。  
なお、HoloToolkit-Unity には、以下のように Unity の推奨バージョンがありますので、合わせておく方がいいと思います。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/e049cb04-7627-68ce-c06d-321af134944c.png)


※ここで少し注意
　HoloToolkit-Unity はバージョンが変わると実装アプローチも変わる場合があります。　互換性無視って感じですので、バージョンには注意してください。　まぁ、過去を引きずらないって点はいいと思います。

#HoloToolkit-Unityの導入
1. Unity で新規にプロジェクトを作成します。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/ee017384-591d-a97f-f353-53a07861831e.png)  
  
2. HoloToolkit-Unity をダウンロードします。
github リポジトリのクローンでもいいですが、[Releases](https://github.com/Microsoft/HoloToolkit-Unity/releases)  から unitypackage をダウンロードする方が簡単だと思います。  
  
3. Assets に追加します。
ダウンロードした unitypackage をドラッグ＆ドロップで、Assets にコピーします。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/b02926dc-5d06-13ef-240f-12e1905c41e9.png)  
取り込む対象を選択することができます。　今回は、すべてを取り込みます。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/2c8e353d-9c24-53b6-a08d-8db9710b7080.png)  
取り込みが完了すると以下のようになります。　メニューにも追加されます。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/e626e6c7-18a2-6252-3103-9adaee9eb844.png)  
  
4. 設定を簡単に変更
HoloToolkit の Configuure メニューで、
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/acfafb7d-0656-4b60-7b00-2f954c576593.png)
例えば、"Apply HoloLens Scene Settings" を実行すると、次のようなダイアログが表示され、変更項目を選択することができます。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/1fbcac3f-8e63-8893-c6f7-983f7520f465.png)
シーンやプロジェクトなどを一発で変更できるので、非常に便利です。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/64979cbf-a1a8-c500-3104-01c4468a83e3.png)
今回は、"Apply HoloLens Project Settings"、"Apply HoloLens Scene Settings" の順で行いました。
※"Apply HoloLens Project Settings" を実行したら、Scene の Camera 設定が戻ってしまったので、上の順にしています。

#ビルドまで
1. Hierarchy の右クリックで、Cube を追加します。  
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/b9cda675-08bf-ba66-5d83-a6ab9c46d273.png)  

2. 配置した Cube の Inspector タブの Transform - Position を "0, 0, 20" にします。  
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/bbf6d6e2-594c-ef84-68c4-f7dee7d4c04c.png)
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/ff257e16-ef28-acd8-32f3-982909b0d2d4.png)  

3. とりあえず、ビルド ・・・　その前に Scene を保存
適当な名前で、Scene を保存します。 
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/d84c31a1-3150-bc5e-13d0-caf250dd13fc.png)
Scene に名前が付きました。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/b254dbcd-b970-773f-1aa7-c23f01d511b9.png)  

4. いよいよ、ビルド
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/c7bd4f01-577f-2658-9e1f-e9d2e88a79b9.png)
Scene を追加し、 Build を実行します。　保存先のフォルダを指定するとソリューションが生成されます。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/7b7afff5-11b3-c445-bee3-17dcfd143abb.png)![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/006c3aa6-f368-4d37-3aa4-1af3e48c901e.png)  
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/061846f6-40b7-a566-0002-ce8f1906e81f.png)  

5. VisualStudioへバトンタッチ
生成されたソリューションを VisualStudio で実行します。
Unity プロジェクトにも .sln 拡張子のファイルがあるので、間違わないように…
ビルドの設定を変更します。
![image.png](https://qiita-image-store.s3.amazonaws.com/0/175896/ea1d7ea9-b671-8aa5-0c16-3e88900d8444.png)

6. ビルド＆Run
ビルドを行います。
<img src=https://qiita-image-store.s3.amazonaws.com/0/175896/3f51282c-e201-5ea8-0013-8b1d2933f8a2.png width=400px>
成功すると、エミュレータが起動します。
<img src=https://qiita-image-store.s3.amazonaws.com/0/175896/2e55075a-6423-93a2-9f14-8dd75cc276be.png width=400px>
メニューが表示され、その後、アプリ画面に切り替わります。
<img src=https://qiita-image-store.s3.amazonaws.com/0/175896/8f943161-dce0-960c-9554-507ce4090006.png width=400px>
矢印カーソルやマウスで視点を移動させることもできます。

#今回はこの辺で
また、次回、お会いしましょう。
<p>