MRが楽しい

MRやVRについて学習したことを書き残す

Unityでのhololensアプリの開発プロジェクト作成手順

おいかけっこアプリの再設計にてプロジェクトを新規作成する際に気付いたことがありました。
これまでサンプルプロジェクトを用いていたため、hololensアプリ向けのプロジェクトの新規作成方法をまとめていません。
メモがないと不便なので以下を参考に新規プロジェクトの作成方法をまとめます。
・初めてのHoloLens開発(2D/Holographicアプリ)[環境準備~実行、HoloToolkit-Unity活用]
 http://www.buildinsider.net/small/hololens/002


1.Unityを起動したら、右上の[New]アイコンをクリックしてプロジェクト名を設定する。[Create project]ボタンをクリックして新規プロジェクトを作成する。
f:id:bluebirdofoz:20170508005839j:plain


2.HoloToolKit-UintyのAssetsフォルダにある「HoloToolkit」をプロジェクトのAssetsフォルダにコピーする。f:id:bluebirdofoz:20170508005504j:plain
これによりメニューバーに「HoloToolkit」が追加される。


3.メニューバーから「HoloToolkit」->「Configure」->「Apply HoloLens Scene Settings」をクリックする。
f:id:bluebirdofoz:20170508005510j:plain
これにより、以下の設定が行われる。
・Move Camera to Origin: アプリ起動時にカメラ位置を0,0,0にする
・Camera Clears to Black: カメラのBackgroundを黒にする
・Update Near Clipping Plane
・Update Field of View


4.メニューバーから「HoloToolkit」->「Configure」->「Apply HoloLens Project Settings」をクリックする。
f:id:bluebirdofoz:20170508005518j:plain
これにより、「Build Settings」が自動的に設定される。


5.メニューバーから「File」->「Save Scene As...」でシーンを保存する。
f:id:bluebirdofoz:20170508005612j:plain


6.「Build Settings」で「Add Open Scenes」を選択し、作成したシーンを追加する。
f:id:bluebirdofoz:20170508005621j:plain


7.「Build Settings」で「Build」を実行する。初回時は出力先のフォルダ選択が必要となる。
これで完了です。新規プロジェクトとして最低限必要な設定は以上となります。


以下、必須作業ではないですが、追加で行った設定もメモとして残しておきます。
1.「Holograms 101」のAssetsフォルダから「Holograms」を取り込み、Lightsオブジェクトを配置する。
f:id:bluebirdofoz:20170508005700j:plain
初期配置のライトだと単一ライトのため、現実世界と合わせたとき、違和感のある光源になります。
何らかの方法で光源を動的に判断することがない限り、hololens用のライト設定を用意しておくと楽かも。


2.「Build Settings」で「Unity C# Project」をチェックする。
f:id:bluebirdofoz:20170508005726j:plain
これを行っておくと、ビルド時にC# Projectとして出力が行われるため、VisualStudio側でのコード修正が可能となります。


また、参考先にある以下の設定は空間のワイヤーフレーム表示を利用する際に設定する項目です。
機能が不要な場合は設定を行わなくても大丈夫です。
1.「HoloToolkit」->「Input」->「Prefabs」->「HoloLensCamera」を「Hierarchy」ウィンドウにドラッグする。
f:id:bluebirdofoz:20170508005741j:plain


2.「Build Settings」->「Player Settings」から「SpatialPerception」にチェックを入れる。
f:id:bluebirdofoz:20170508005753j:plain
空間認識の利用選択のようです。「Spatial Mapping」などを使う際にはチェックを入れていないと機能が利用できません。