HoloLensまとめ
-2017年9月16日更新- HoloLens勉強用のリストです。 HoloLensってなんぞやってところから、開発環境の構築、実際の開発まで時系列順に役立つリンクをまとめました。
基礎知識
MR(Mixed Reality、複合現実)とは
手前味噌ですが以下の記事を参考にしてください。
- Qiita | HoloLens体験したのでVR, AR, MRまとめてみた
Microsoftが目指すMR像とは
以下の講演前半でHoloLens概要やMixed Realityについて学べます。後半では開発の進め方も解説しています。
- Unite 2017 Tokyo | Microsoft HoloLens が実現する Mixed Reality の世界
https://www.youtube.com/watch?v=Ojrr8rrcS5M&feature=youtu.be
スペック
製品詳細情報は公式を確認してください。
- Microsoft | HoloLens
開発の前に確認すること
必要なもの
Windows 10 Proが入ったマシン。 8GB以上メモリがあるそこそこ新しいものなら十分でしょう。 細かい要求スペックは次項参照。 MacにWindowsをデュアルブートすれば開発できなくもないみたいですが、お勧めはしません。
- QOOQのブログ | HoloLens開発をMacで
HoloLens実機は30万円以上と高額で、個人で購入するのは勇気がいる投資です。
以下のような機材を貸出ししているコワーキングスペースを利用してみてはいかがでしょうか。
要求スペック
こちらでわかりやすくまとまっていました。
- ナレコムAzureレシピ | HOLOLENS 開発に必要なシステム要件と確認方法
必ず公式も確認してください。
- Microsoft | Mixed Reality Install the tools
RAMに関して、最低8GBと記述がありますが、少々きついです。 UnityとVisual Studioを起動すると結構メモリを食います。 さらにエミュレータを起動したり、ChromeやSlackも立ち上げているとあっという間にメモリが足りなくなります。 僕の環境では8GBでエミュレータを起動するには一々Chrome、Slackを落とす必要がありました。 がつがつ開発するには結構ストレスフルだと思います。増設できるなら16GBにしておくのが良いでしょう。 エミュレータを使わないなら8GBでもよいかもしれません。 個人的には実機があれば普段エミュレータは使いません。操作しづらいし。重いし。
開発環境構築
2017/08/23時点の内容を以下の記事でまとめました。 http://roy29fuku.com/virtual-reality/hololens/environment-establishment/ 必ず公式で最新の情報を確認してください。
- Microsoft | Mixed Reality Install the tools
2017/09/14現在、安易に最新版UnityやVisual Studioを利用するとビルドエラーが発生します。 詳しくは以下の記事を参考にしてください。
- Qiita | Visual Studioをアップデートしたら3日間ハマった話
チュートリアル
操作方法の認識
公式のチュートリアルが手厚いのですが、予めHoloLensの操作方法は把握しておくとよいと思います。 基本的には視線、音声、ジェスチャーで操作します。
- ナレコムAzureレシピ | HOLOLENS 3つの操作方法
HoloLens Academy
予習ができたらHoloLens Academyを進めましょう。動画形式で基本的な開発を学べます。
- Microsoft | HoloLens Academy
英語が苦手な方は日本語の書き起こしがあるので併用してください。
- Github | HolographicAcademyJP
HoloLensエミュレータの使い方
Visual Studioで起動するHoloLensエミュレータの操作は詳しく触れられていませんのでこちらを参考にしてください。
- 常に右往左往 | HoloLensエミュレーターを触ってみた
動作確認
作ったアプリの動作を確認するには以下の3つの方法があります。
- HoloLensエミュレータ
- 実機(Wi-fi接続)
- 実機(USB接続)
エミュレータは重いしPCのリソースを食います。 Wi-fi接続もなぜかこけることが多く感じます。 有線で歩き回ったりはできなくなるのですが、個人的にUSB接続が一番ストレスなく動作確認を行うことができます。
開発のコツ
Unite 2017 Tokyoと被る部分がありますが。 オブジェクトはどれぐらいの距離感で配置すればいいかなどについて解説してあります。
- de:code 2017 | 本気で始める HoloLens - プラン/設計/開発の勘どころ -
僕が他のMicrosoftエバンジェリストの方にいただいたアドバイスは、「とにかくシンプルに操作できるように」でした。 スマホやPCのようにたくさんボタンがあって、ポチポチ操作すると疲れてしまうので。 たとえば、オブジェクトを動かすのではなく、Room-scaleで人の方が動くことができるという特徴を活かす方がいいとかです。
デザインのコツ
UI的にはどういったものが適しているか。 これに関してはまだまだ手探りといった状態でしょうが、Microsoft公式で手引きがあるので参考にしてみてください。
- Microsoft | Design
またWindows Mixed Reality Design teamが上記のルールに基づいて作成したサンプルアプリが公開されています。直感的に理解できます。 ソースも公開されているので開発の足掛かりになると思います。
- Github | MRDesignLabs_Unity
詳しくは以下の便利なツール③を確認して下さい。 他にもここら辺の記事も参考になると思います。
- Medium | Designing for Mixed Reality
- Medium | Best Practices For Mixed Reality Design in 2017
O’ReillyからMRのデザインについての電子書籍が無償で配布されています。 まだ読めていないのですが、読了したらまとめでも書こうと思います。
- O’Reilly | Designing for Mixed Reality
便利なツール
HoloLens Academy
初めはAcademyで使ったコンポーネントを流用して慣れるといいでしょう。 その後は以下のMicrosoftが公開しているツールキットを使用すると開発効率が向上します。 ちなみに、チュートリアルとツールキットのどちらを使う方がいいのという疑問に対しては、デベロッパーフォーラムで似たような質問に対して回答がありました。 要するにツールキットの方がGithubで更新されるから動作が担保されているよという感じです。
I’ve found that using the holoacademy packages is a good way to get started, although the tutorials are not updated frequently so a lot of the scripts are outdated. I would use the holotoolkit since it IS updated frequently on the GitHub. 引用: Microsoft | Windows Mixed Reality Developer Forum: Hololens Academy vs Hololens tool kit
MixedRealityToolkit(旧 HoloToolkit)
Microsoftが公開しているMixed Realityアプリの開発を促進するツールキットです。
HoloToolkitとMixedRealityToolkitの違い
MicrosoftのHoloLens用ツールキットについて調べているとHoloToolkit(通称HTK)というものの情報が多くヒットすると思います。 これは、もともとHoloToolkitという名前で提供されていたものが2017年8月11日にMixedRealityToolkitという名前に変えられたのです。 つまり「MixedRealityToolkit(旧 HoloToolkit)」です。 今後はMixedRealityToolkitで調べるといいでしょう。
HELLO MIXED REALITY TOOLKIT. We have renamed repositories to align with Mixed Reality instead of ‘Holo’. Hyperlink redirection is handled by GitHub automatically. This aligns well with our product direction. 引用: Microsoft | Windows Mixed Reality Developer Forum: MixedRealityToolkit-Unity has an updated landing page
MixedRealityToolkitをUnityに最適化したものがMixedRealityToolkit-Unityです。 Githubページは以下です。
- Github | MixedRealityToolkit-Unity
導入方法はこちらの記事で紹介しました。
ちなみに、近いうちにMRDesignLabs_Unityの部品を再利用可能な形でツールキットに追加するとのことです。
MRDesignLab
MicrosoftのデザインチームがMixed Realityのデザイン規定に沿って作った素材やアプリを公開したものです。 以下の記事で使い方を紹介したので参考にしてください。 http://roy29fuku.com/virtual-reality/hololens/mrdesignlabs/ 随時、細かな部分も調査次第記事にしていきます。
以下の記事ではMRDesignLabsの内容の一覧を日本語でわかりやすくまとめています。
- Weed.nagoya | HoloLensのMRDesignLabに入っているプレハブ、インターフェースの一覧
なお、MRDesignLabs_UnityはMITライセンスです。 利用範囲と制限については以下の記事で勉強しました。有料製品に使用してもOKとのこと。 有効活用しましょう。
- ITキヨスク | GPLやMITやCCなど主要ライセンスの内容と意味のまとめ
デバッグ(確認中)
UnityではDebug.Logを使うことでコンソールにデバッグを表示できます。
- Unity Documentation | Debug.Log
Visual Studioでエミュレータを起動しているときは、Visual Studioのコンソールに表示されるらしいです。 HoloLensでアプリを実行中にデバッグメッセージを確認したいときは専用の3D Textを作ってあげればよいとのこと。
- Microsoft | Windows Mixed Reality Developer Forum: How can I see the Unity Debug.Log() output from a running app on the device?
情報収集
- 凹みTips
- D.YAMA Blog
- Natural Software (HoloLab 中村薫さんのブログ)
- 高橋 忍のブログ
- 高橋 忍のブログ | HoloLens で試してみたいアプリ 20選
開発者コミニュティ
アップデートが頻繁に起こる領域です。 ソフトウェアのアップデート後にビルドできなくなったりするので、そういう時はまずコミュニティの情報をチェックしましょう。
- Facebook | VR/AR勉強会(世界の最先端をキャッチアップ)
- Facebook | HoloLens Developers
- Facebook | HoloLens/Windows Mixed Reality ユーザーズグループ
- Microsoft | Windows Mixed Reality Developer Forum
- Unity | Unity Community Support HoloLens
頻発エラー
増えてきたので別途こちらにまとめした。 http://roy29fuku.com/virtual-reality/hololens/error-list/