HoloLens 2 ハンズオン(ショート) / HoloLens Hands on labs

A645e7c3a6635ead8fa323c583769591?s=47 HoloLab
August 20, 2020

HoloLens 2 ハンズオン(ショート) / HoloLens Hands on labs

A645e7c3a6635ead8fa323c583769591?s=128

HoloLab

August 20, 2020
Tweet

Transcript

  1. Unity 2019.4.2f1, Visual Studio 2019 16.6.3, MRTK v2.4.0対応 最終更新日 2020/08/20

    株式会社ホロラボ 45分でHoloLens 2アプリ開発
  2. タイムテーブル 1. 5分:オープニング 2. 5分:Unityプロジェクトの作成 3. 5分:Mixed Reality Toolkitの取り込み 4.

    5分:プロジェクトの初期設定 5. 5分:オブジェクトの配置 6. 5分:ハンドジェスチャーでオブジェクトが落ちる処理を作成 7. 5分:実機デプロイ 8. 5分:空間マッピングの設定 9. 5分:アイトラッキング 10.5分:クロージング Copyright© HoloLab Inc. 2020 All rights reserved 2
  3. 1.オープニング いまからやることをお伝えします。 3 Copyright© HoloLab Inc. 2020 All rights reserved

  4. 事前準備 • HoloLens 2実機 • HoloLensに[Holographic Remoting]アプリをインストール • HoloLensのストアからアクセスした場合のみインストールできます •

    開発PC • Windows 10(Home/Pro) • HoloLens 2 エミュレーターを利用する場合はWindows 10 Pro のみ • Unity 2019.4.2f1のインストール(Personal可) • Unity HubからUnity 2019.4の最新版をインストールします • 同じバージョンはアーカイブページからダウンロードします • 必須項目: Universal Windows Platform Build Support • Visual Studio 2019 15.5.6 以降のインストール(Community可) • Unityと一緒にインストールできます • 必須項目:ユニバーサル Windows アプリ開発ツール • MixedRealityToolkitのダウンロード • Microsoft Mixed Reality Toolkit v2.4.0 • Unityのバージョンに合ったMRTKバージョンを選択します 4 Copyright© HoloLab Inc. 2020 All rights reserved
  5. 今日のゴール 7 Copyright© HoloLab Inc. 2020 All rights reserved

  6. 2.Unityプロジェクトの作成 最初にUnityのプロジェクトを作りましょう。 8 Copyright© HoloLab Inc. 2020 All rights reserved

  7. Unityプロジェクトの作成(1) 1. Unity Hubを起動し[新規作成]から該当バージョン(2019.4.x)をクリックします。 9 Copyright© HoloLab Inc. 2020 All

    rights reserved 1
  8. Unityプロジェクトの作成(2) 1. プロジェクト名を入力します。 2. プロジェクトのフォルダを選択します。 3. [作成] をクリックします。 10 1

    2 3
  9. Unityプロジェクトの作成(3) 1. 起動を待ちます 11 Copyright© HoloLab Inc. 2020 All rights

    reserved
  10. Unityプロジェクトの作成(4) プロジェクトが作成されました。 12 Copyright© HoloLab Inc. 2020 All rights reserved

  11. 3. Mixed Reality Toolkitの取り込み 便利機能がたくさん入っているMixed Reality Toolkitを追加しましょう。 13 Copyright© HoloLab

    Inc. 2020 All rights reserved
  12. MixedRealityToolkit-Unityのダウンロード(1) 1. https://github.com/microsoft/MixedRealityToolkit-Unity/releases/tag/v2.4.0 から [Microsoft.MixedReality.Toolkit.Unity.Foundation.2.4.0.unitypackage] をダウンロードします。 14 Copyright© HoloLab Inc.

    2020 All rights reserved 1
  13. メニューの [File | Build Settings] または [Shift+Ctrl+B] で Build Settings

    画面を表示します。 1. [Add Open Scenes] ボタンで[SampleScene]を追加します。 2. “Platform” で [Universal Windows Platform] を選択します。 • この項目がない場合は Unity の “Universal Windows Platform Build Support” がインストールされていない可能性があり ます。「Unityのインストール」の項を再度確認してください。 3. [Switch Platform] ボタンを押します。 • [Universal Windows Platform] に Unity アイコンが移動します。 UWPビルドの設定 15 Copyright© HoloLab Inc. 2020 All rights reserved 1 2 3
  14. プロジェクトの設定(1) 16 Copyright© HoloLab Inc. 2020 All rights reserved 1.

    [Build Settings]の[Player Settings…]をクリックします。 2. [Project Settings]の[Player]から[Publishing Setting]を開きます。 3. [Package name]を[Template 3D]から任意のプロジェクト名に変更します。 • これがHoloLens 2アプリの名称になるので、同じ名称だとインストール時に上書きされたりエラーになったりします。 3 1 2
  15. プロジェクトの設定(2) 1. [XR Settings]を開きます。 2. [Virtual Reality Supported]にチェックします。 3. [Virtual

    Reality SDKs]に[Windows Mixed Reality]を選択します。 4. [Depth Format]を[16-bit depth]に変更します。 17 Copyright© HoloLab Inc. 2020 All rights reserved 2 3 4 1
  16. 1. [Microsoft.MixedReality.Toolkit.Unity.Foundation.2.4.0.unitypackage]ファイルを Unity の [Project] ビューに入れます。 Mixed Reality Toolkitの取り込み(1) 18

    Copyright© HoloLab Inc. 2020 All rights reserved 1
  17. Mixed Reality Toolkitの取り込み(2) 1. [Import Unity Package] ダイアログが表示されるので [Import] を押します。

    1 9 Copyright© HoloLab Inc. 2020 All rights reserved 1
  18. Mixed Reality Toolkitの取り込み(3) 1. Importを待ちます 20 Copyright© HoloLab Inc. 2020

    All rights reserved
  19. Mixed Reality Toolkitの取り込み(4) 1. プロジェクト設定の変更を行います 2. [Audio spatializer]を[MS HRTF Spatoalizer]に変更します

    3. [Apply]をクリックします 2 1 Copyright© HoloLab Inc. 2020 All rights reserved 2 1
  20. Mixed Reality Toolkitの取り込み(5) Mixed Reality Toolkitが取り込めました。 22 Copyright© HoloLab Inc.

    2020 All rights reserved
  21. オプション:Unityエディターの配置を変える(1) 1. 右上にある [Layout] をクリックします 2. [2 by 3] をクリックします。

    1 23 2 Copyright© HoloLab Inc. 2020 All rights reserved
  22. オプション:Unityエディターの配置を変える(2) 1. [Project] ビューの右上の小さなボタン (ハンバーガーメニュー) をクリックします。 2. [One Column Layout]

    をクリックします。 1 24 2 Copyright© HoloLab Inc. 2020 All rights reserved
  23. オプション:Unityエディターの配置を変える(3) [Project]ビューがツリー表示されるようになりました。 25 Copyright© HoloLab Inc. 2020 All rights reserved

  24. 4. プロジェクトの初期設定 MixedRealityToolkitの機能を使ってプロジェクトの初期設定を行います。 26 Copyright© HoloLab Inc. 2020 All rights

    reserved
  25. プロジェクトの初期設定(1) 1. メニューの [Mixed Reality Toolkit] にある [Add to Scene

    and Configure…] をクリックします。 27 Copyright© HoloLab Inc. 2020 All rights reserved
  26. プロジェクトの初期設定(2) プロファイルが追加されます。ここでHoloLens 2の動作に関する設定を行います。 1. プロファイルを[DefaultHoloLens2ConfigurationProfile]に変更します。 28 Copyright© HoloLab Inc. 2020

    All rights reserved 1
  27. プロジェクトの初期設定(3) ハンドメッシュや空間マップを使用するときなどはプロファイルを変更可能にする必要があります。 1. 「Copy & Customize」でプロファイルをCloneします。 2. CloneされたプロファイルはCustomProfilesに生成されます。 29 Copyright©

    HoloLab Inc. 2020 All rights reserved 1 2
  28. プロジェクトの初期設定(4) この状態でEditor実行すると、Diagnosticsが表示されます。またSHIFTキーを押すとHand Jointが表示されます。 30 Copyright© HoloLab Inc. 2020 All rights

    reserved
  29. 5.オブジェクトの配置 HoloLensに表示する世界を作りましょう。 31 Copyright© HoloLab Inc. 2020 All rights reserved

  30. オブジェクトの配置(1) 1. [Hierarchy] ビューの何もないところで左クリックし、選択を外します。 2. [Hierarchy] ビューの何もないところで右クリックし、[3D Object]→[Cube] を選択します。 32

    1 2 Copyright© HoloLab Inc. 2020 All rights reserved
  31. オブジェクトの配置(2) Cubeを配置できました。 33 Copyright© HoloLab Inc. 2020 All rights reserved

  32. Cubeの [Inspector]ビューを操作します。 1. [Position] を [0.5,0,1] に変更します。 2. [Scale] を

    [0.2,0.2,0.2] に変更します。 単位はメートル(m)です。 オブジェクトの配置(3) 34 1 2 Copyright© HoloLab Inc. 2020 All rights reserved
  33. オブジェクトの配置(4) 1. 同様に[Hierarchy]ビューで [Sphere] を配置します。 2. [Position] を [0,0,1] に変更します。

    3. [Scale] を[0.2,0.2,0.2]に変更します。 35 1 Copyright© HoloLab Inc. 2020 All rights reserved 2 3
  34. オブジェクトの配置(5) 1. 最後に[Hierarchy]ビューで [Capsule] を配置します。 2. [Position] を [-0.5,0,1]に変更します。 3.

    [Scale] を [0.2,0.2,0.2] に変更します。 36 Copyright© HoloLab Inc. 2020 All rights reserved 1 2 3
  35. 6. ハンドジェスチャーでオブジェクトが 落ちる処理を作成 ジェスチャーを認識させてインタラクションの機能を作りましょう。 37 Copyright© HoloLab Inc. 2020 All

    rights reserved
  36. ハンドジェスチャーでオブジェクトが落ちるようにする(1) 1. Cubeに「Rigidbody」、「Near Interaction Touchable」、「Manipulation Hander」を追加する。 38 Copyright© HoloLab Inc.

    2020 All rights reserved
  37. ハンドジェスチャーでオブジェクトが落ちるようにする(2) 1. Rigidbodyの「Use Gravity」のチェックを外し、「Is Kinematic」にチェックします(落ちないようにする) 2. Near Interaction Touchableの「Event To

    Recieve」を「Pointer」に変更する(タッチを認識するように)、 [Fix Bounds]および[Fix Center]のボタンを押します(CUBEの範囲を決定する)。 3. Manipulation Handlerの「On Manipulation Ended」にCubeを入れ、RigidbodyのIsKinematicのチェックを外 し、RigidbodyのuseGravityのチェックを入れます(落ちるようにする)。 39 1 2 3 Copyright© HoloLab Inc. 2020 All rights reserved
  38. 1. 同じように [Sphere] と [Capsule] も設定することでハンドジェスチャーで落ちるようになります。 ハンドジェスチャーでオブジェクトが落ちるようにする(4) 41 Copyright© HoloLab

    Inc. 2020 All rights reserved
  39. ハンドメッシュを表示します。 1. 全体のプロファイルの「Input」にあるプロファイルをCloneします。 2. さらに「Hand Tracking」のプロファイルをCloneします。 3. 「Hand Mesh Visualization

    Modes」を「Player」にします。 ハンドジェスチャーでオブジェクトが落ちるようにする(5) 42 1 2 3 Copyright© HoloLab Inc. 2020 All rights reserved
  40. 7. 実機デプロイ 実機で動かします。 43 Copyright© HoloLab Inc. 2020 All rights

    reserved
  41. メニューの [File | Build Settings] または [Shift+Ctrl+B]で “Build Settings” 画面を表示します。

    1. シーンが追加されていることを確認します(なければ[Add Open Scenes] ボタンで追加します)。 実機デプロイ(1) 1 44 Copyright© HoloLab Inc. 2020 All rights reserved
  42. 実機デプロイ(2) 1. [Build] ボタンをクリックします。 2. 表示された Windows エクスプローラーで [新しいフォルダー] ボタンをクリックします。

    3. フォルダー名を [UWP] とします。 4. [フォルダーの選択] ボタンをクリックするとビルドが開始します。 1 2 3 4 45 Copyright© HoloLab Inc. 2020 All rights reserved
  43. 実機デプロイ(3) 1. ビルドが実行されます。 • エラーが発生するとコンソールにエラーログが表示されます。 46 Copyright© HoloLab Inc. 2020

    All rights reserved
  44. 実機デプロイ(3) 1. [プロジェクト名] フォルダーの [UWP] フォルダーにある [<プロジェクト名>.sln] ファイルを開きます。 47 Copyright©

    HoloLab Inc. 2020 All rights reserved 1
  45. 実機デプロイ(4) 1. Visual Studioの構成部分を[Release],[ARM64],[デバイス] に変更します。 2. USBケーブルをPCとHoloLens間で接続して[デバイス]ボタンをクリックします。 1 2 48

    Copyright© HoloLab Inc. 2020 All rights reserved
  46. PINの設定 初回のみVisual StudioとHoloLensでペアリングを求められます 1. HoloLens 2の「設定」アプリの「更新とセキュリティ」にある「開発者向け」から「ペアリング」ボタンを押します 2. 表示される数字をVisual Studioに入力します。 49

    Copyright© HoloLab Inc. 2020 All rights reserved 2 1
  47. 8.空間マッピングの設定 空間マッピングを表示させてオブジェクトが落ちないようにしましょう。 52 Copyright© HoloLab Inc. 2020 All rights reserved

  48. 1. プロファイルの「Spatial Awareness」にある「Enable Spatial Awareness System on Startup」にチェックをい れます。 空間マッピングの設定(1)

    53 Copyright© HoloLab Inc. 2020 All rights reserved 1
  49. 空間マッピングの設定(2) 54 空間マップが正常に表示されない場合の確認事項 Unityの[Player Settings]の[Publishing Settings]内[Capability]にある[SpatialPerception]とUnityから出力 後のVisual Studioのmanifestの機能にある「空間認識」の両方にチェックがあることを確認します(なければチェックしま す)。初回ビルド以外はVisual Studioに反映されないので注意してください。

    Copyright© HoloLab Inc. 2020 All rights reserved
  50. 9. アイトラッキングで落ちる処理を作成 視線を使ったインタラクションを作ってみましょう 55 Copyright© HoloLab Inc. 2020 All rights

    reserved
  51. アイトラッキングで落ちる処理を作成(1) 1. 全体のプロファイルの「Input」にあるプロファイルをCloneします(ハンドメッシュなどで済んでいれば不要)。 2. 「Input Data Provider」の「+ Add Data Provider」をクリックします。

    3. 「New Data Provider」の「Type」を「WindowsMixedRealityEyeGazeDataProvider」に設定します。 56 1 2 3 Copyright© HoloLab Inc. 2020 All rights reserved
  52. アイトラッキングで落ちる処理を作成(2) 1. 「Input Simulation Service」のプロファイルをCloneします。 2. 「Simulate Eye Position」にチェックを入れます。 57

    1 2 Copyright© HoloLab Inc. 2020 All rights reserved
  53. アイトラッキングで落ちる処理を作成(3) 1. 「Pointers」のプロファイルをCloneします。 2. 「Simulate Eye Position」にチェックを入れます。 58 1 2

    Copyright© HoloLab Inc. 2020 All rights reserved
  54. アイトラッキングで落ちる処理を作成(4) 1. Cubeに「EyeTrackingTarget」を追加します。 2. EyeTrackingTargetの「On Dwell」にCubeを入れ、RigidbodyのIsKinematicのチェックを外し、Rigidbodyの useGravityのチェックを入れます(落ちるようにする)。 3. 落ちるまでの時間は「Dwell Time

    in Sec」で変更できます。 59 Copyright© HoloLab Inc. 2020 All rights reserved 2 1 3
  55. アイトラッキングで落ちる処理を作成(5) 62 アイトラッキングが正常に動作しない場合の確認事項 Unityの[Player Settings]の[Publishing Settings]内[Capability]にある[GazeInput]とUnityから出力後の Visual Studioのmanifestの機能にある「視線入力」の両方にチェックがあることを確認します(なければチェックします)。 初回ビルド以外はVisual Studioに反映されないので注意してください。

    HoloLens 2の実機では視線調整を行ってください。 Copyright© HoloLab Inc. 2020 All rights reserved
  56. 10.クロージング 63 Copyright© HoloLab Inc. 2020 All rights reserved

  57. 本日使用したHoloLens 2固有の機能 • 〇:視線入力(Eye tracking) • 〇:ハンドジェスチャー入力(Hand gesture input) •

    -:音声入力(Voice input) • -:空間(3次元)音響(Spatial sound) • 〇:空間マッピング(Spatial awareness) 64 Copyright© HoloLab Inc. 2020 All rights reserved
  58. 65 Copyright© HoloLab Inc. 2020 All rights reserved