O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

20190615HoloLensMeetup

1.311 visualizações

Publicada em

Tokyo HoloLens ミートアップ vol.15
https://hololens.connpass.com/event/129033/

「HoloLens2 Development」資料

Publicada em: Tecnologia
  • My friend sent me a link to to tis site. This awesome company. They wrote my entire research paper for me, and it turned out brilliantly. I highly recommend this service to anyone in my shoes. ⇒ www.HelpWriting.net ⇐.
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • If you’re looking for a great essay service then you should check out ⇒ www.WritePaper.info ⇐. A friend of mine asked them to write a whole dissertation for him and he said it turned out great! Afterwards I also ordered an essay from them and I was very happy with the work I got too.
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • Yes you are right. There are many research paper writing services available now. But almost services are fake and illegal. Only a genuine service will treat their customer with quality research papers. ⇒ www.WritePaper.info ⇐
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • Can you earn $7000 a month from home? Are you feeling trapped by your life? Stuck in a dead-end job you hate, but too scared to call it quits, because after all, the rent's due on the first of the month, right? Are you ready to change your life for the better? ➤➤ http://ishbv.com/ezpayjobs/pdf
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • If you want to enjoy the Good Life: making money in the comfort of your own home with just your laptop, then this is for YOU... ★★★ https://tinyurl.com/vd3y33w
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui

20190615HoloLensMeetup

  1. 1. HoloLens 2 Development 株式会社ホロラボ 2019年6月15日 加藤 広務 Tokyo HoloLens ミートアップ vol.15
  2. 2. 自己紹介 • • • 2
  3. 3. アジェンダ • 会社紹介 • Mixed Reality Dev Days • HoloLens 2の概要 • HoloLens 1とHoloLens 2の同異点 • HoloLens 2の開発環境 • HoloLens 1のアプリをHoloLens 2に移植する • HoloLens 2アプリの新規開発方法(Unity / UE4) 3
  4. 4. 注意事項 • 本内容は開発中のHoloLens 2をもとにした情報が含ま れています。製品版では変更される可能性があります。 4
  5. 5. 会社紹介
  6. 6. 会社紹介 株式会社ホロラボ 株式会社ホロラボ 事業内容 HoloLensやWindows MRなどxR技術やセンサー技術に関する ・システム/アプリケーションの企画開発 ・調査研究 ・普及啓発活動 設立 2017/01/18 住所 東京都品川区西五反田2-25-1 インテックス五反田ビル3F 資本金 30,000,000円 取締役 5名 従業員 16名 Web https://hololab.co.jp/ 6
  7. 7. mixpace – ホロラボ自社サービス 7
  8. 8. mixpace のフロー • 3D CAD/BIMデータを簡単にMRで活用 8
  9. 9. Mixed Reality Dev Days
  10. 10. Mixed Reality Dev Days • 2019/5/2~3マイクロソフトにより開催された開発者イベ ント@Redmond • 世界中から約400人の開発者が参加 10 https://docs.microsoft.com/en-us/windows/mixed-reality/mr-dev-days
  11. 11. Mixed Reality Dev Days • HoloLens 2 や Azure Kinect, また Azure などの様々 なテクニカルセッションとハンズオンが行われた 11
  12. 12. Mixed Reality Dev Days • ハンズオン開発風景 12
  13. 13. HoloLens 2 概要
  14. 14. ハードウェアスペック(1/2) 14 区分 項目 概要 ディスプレイ 光学 シースルーディスプレイ 解像度 2k 3:2 密度 2.5k ラジアン以上 (light points per radian) レンダリング 3次元で目の位置を追跡して最適化する センサー ヘッドトラッキング アイトラッキング Depth Azure Kinect センサー IMU 加速度、ジャイロ、地磁気 カメラ 静止画: 8M, 動画: 1080p30 音声 マイク 5チャンネル スピーカー 空間
  15. 15. ハードウェアスペック(2/2) 15 区分 項目 概要 人間の理解 ハンドトラッキング 両手の関節に対応、ダイレクトマニピュレーション アイトラッキング リアルタイムトラッキング 音声 音声コマンド 環境理解 6DoFトラッキング ワールドスケールの位置追跡 Spatial mapping リアルタイムに環境メッシュを作成する Mixed reality capture コンピューター SoC Qualcomm Snapdragon 850 Compute Platform HPU 第2世代 holographic processing unit WiFi 802.11ac 2x2 Bluetooth 5.0 USB USB Type-C
  16. 16. 細かい話 • フリップアップはハードウェア的にその状態を認識しない • USB-Cポートはホスト機能を持っている • USB機器をHoloLens 2内で認識する 16
  17. 17. HoloLens 1 とHoloLens 2 の同異点
  18. 18. 視野角 18
  19. 19. 装着 19
  20. 20. ゲイズ(Gaze) • HoloLens 1 • Gaze(といっても頭の向き、Head Gaze) • HoloLens 2 • Head Gaze → アプリ内では引き続き使用可能 • Hand Rays → OSの操作含めて一番多く使用する • Eye Gaze → アイトラッキングが可能になったため本来の意味のもの 20
  21. 21. ジェスチャー • HoloLens 1 • GazeとAirTapによる選択 • HoloLens 2 • Push → 近くの操作(Near Interaction) • Point and commit → 遠くの操作(Far Interaction) 21
  22. 22. ブルーム(Bloom) • HoloLens 1でスタートメニューを呼び出すBloomは、 ハンドジェスチャーの追加に伴って廃止 • HoloLens 2では手首に指をあてることでスタートメニューが表示 される 22
  23. 23. HoloLens 2 の開発環境
  24. 24. 開発環境 24 Unity 2018 Unity 2019 Unity Unity 2018.4.x Unity 2019以降 Visual Studio Visual Studio 2017以降 Visual Studio 2017以降 Windows SDK 18362 18362 サポート環境 ARM ARM, ARM64 バックエンド .NET, IL2CPP IL2CPP ネットワーク UNET --- MRTK MRTK v2 MRTK v2
  25. 25. 開発環境選定の方針 • Unity 2019を使う必要がある場合を除いて、 Unity 2018で環境を作るほうが良い • Unity 2019の場合、Unityからの出力がIL2CPPのみと なるので、ビルド時間およびデバッグ時間が長くなる 25
  26. 26. HoloLens 1 のアプリを HoloLens 2 に移植する
  27. 27. HL1からHL2機能へ移植する 27https://docs.microsoft.com/ja-jp/windows/mixed-reality/mrtk-porting-guide
  28. 28. ポイント • CPUがARMに変わったので、DLLを使っている場合は ARM用にビルドを確認する • マネージドかつAnyCPUでビルドされているDLLの場合はそのまま使用可能 • HTKからMRTK v2への移植は(現状では)結構大変 • (現状では) UI/UXについてHL1とは別で考えたほうが良 いと考えている • 視野角、ハンドトラッキング、アイトラッキング、性能などハードウェア的な機能が大きく変わ るため 28
  29. 29. 現状の注意点 • VuforiaがUWPのARMに対応していないのでARMビル ド時にエラーになる(Vuforia側の対応待ち) • HL1のアプリをそのままHL2用にビルドした場合、Head GazeがHand Raysに変わる • ソフトウェア側の対応で戻すことも可能 29
  30. 30. DLLのHoloLens 2対応について 30 if else if else if else
  31. 31. ハードウェアの違いについて 31 HoloLens 1 HoloLens 2 CPU X86 ARM アプリ使用可能メモリ量 900MB 2048MB
  32. 32. アーキテクチャの判別 • 下記コードでアプリがビルドされたアーキテクチャの判別が 可能 32 var 値 ターゲット 備考 X86 HoloLens 1 Arm HoloLens 2 Arm64 HoloLens 2 OSやSDKのバージョンが古い場合、「12」という数値で返る https://docs.microsoft.com/en-us/uwp/api/windows.system.processorarchitecture ProcessorArchitecturere列挙体
  33. 33. 移植の戦略 33
  34. 34. 移植の戦略 それぞれメリット、デメリットがあるので、 ビジネス視点、開発視点、デザイン視点で決定する 34
  35. 35. 移植含めたアプリの考慮事項 • HL1とHL 2でアプリを共通にするか • HL1ベースでそのままARMビルドしてHL2で動作させる • 同じプロジェクトでHL1とHL2それぞれの特徴にあったアプリにする • HL1とHL2でUnityプロジェクトを共有するか • 操作系をHL1のままにするのであれば、プロジェクトの共通化は可能 (x86かARMビルドかの差) • 操作系をHL1とHL2で分けるのであれば、プロジェクトごと分けたほうが安全 (と現状では考えている) 35
  36. 36. ポーティング参考サイト • Porting Guide • Bringing the Periodic Table of the Elements app to HoloLens 2 with MRTK v2 36 https://microsoft.github.io/MixedRealityToolkit- Unity/Documentation/HTKToMRTKPortingGuide.html https://medium.com/@dongyoonpark/bringing-the-periodic-table- of-the-elements-app-to-hololens-2-with-mrtk-v2- a6e3d8362158?postPublishedType=repub
  37. 37. ポーティング時の注意 • 現状のMRTKで対応していない機能がある 37 https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/HTKToMRTKPortingGuide.html
  38. 38. HoloLens 2 アプリ 新規開発方法
  39. 39. Unity
  40. 40. 注意事項 • 本資料の内容はMRTK(後述)のバージョンとして Microsoft Mixed Reality Toolkit v2.0.0 RC2 を基にしています • 正式リリース版では変更される可能性があります 40 • Microsoft.MixedReality.Toolkit.Unity.Foundation-v2.0.0-RC2 は以降 MRTK Foundation と表記 • Microsoft.MixedReality.Toolkit.Unity.Examples-v2.0.0-RC2 は以降 MRTK Examples と表記
  41. 41. Mixed Reality Toolkit • Mixed Reality Toolkit(以降MRTK)はMicrosoftが Githubで公開しているオープンソースプロジェクト • Unity上でMRアプリ開発を加速するための基本的なコ ンポーネントと機能のセットを提供する 41 https://github.com/microsoft/MixedRealityToolkit-Unity
  42. 42. MRTK ロードマップ • 現在公開されている最新のバージョンは Microsoft Mixed Reality Toolkit v2.0.0 RC2.1 • 正式リリースは2019年7月予定 42 https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/Contributing/Roadmap.html?q=roadmap ・まだPre-releaseの段階
  43. 43. MRTK ロードマップ • MRTK v2 RC1 • HoloLens 2 をサポート • API規約確定 (以降破壊的変更は発生しない) • MRTK v2 RC2 • UXのアップデート • MRTK v2 Release • 正式リリース • HoloLens1/2, WMR, OpenVRをサポート 43 https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/Contributing/Roadmap.html?q=roadmap
  44. 44. 開発環境 • MRTK v2ではUnity 2018.4.xが推奨されている(Unity 2019ではない)点に注意が必要 • ARM64でビルドする場合はUnity 2019以降が必要 44
  45. 45. HoloLens 2 emulator • エミュレータのダウンロード • https://docs.microsoft.com/en-us/windows/mixed-reality/using-the-hololens- emulator の HoloLens 2 Emulator and holographic project templates からイン ストーラをダウンロードして実行することでEmulatorを利用可能 • エミュレータでの動作はARMではなくx86なので本番環境とは異なる点に注 意 45 https://docs.microsoft.com/en-us/windows/mixed-reality/using-the-hololens-emulator
  46. 46. Hyper-Vの有効化 • HoloLens 2 emulator を 利用するにはHyper-Vを 有効化する必要がある 46 https://docs.microsoft.com/ja-jp/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v
  47. 47. HoloLens 2 emulatorの実行 • エミュレータの実行 • UWPのプロジェクトファイルの実行環境からHoloLens 2 Emulatorを選択する • デバッグ -> デバッグの開始でエミュレータが起動する 47
  48. 48. HoloLens 2 emulatorの実行 • コマンドラインによるエミュレータの起動 • なお、ハードスペックによって3Dアプリが動作しない場合があるようです 48 https://qiita.com/miyaura/items/d3e0768ece174eb2e613
  49. 49. HoloLens 2 emulatorの実行 • エミュレータの実行 • 初回起動時は以下確認ダイアログが表示され、配置エラーになる 49
  50. 50. HoloLens 2 emulatorの実行 50
  51. 51. HoloLens 2 emulatorの操作 51 操作 マウス&キーボード Xboxコントローラ 前後左右への移動 W,A,S,Dキー 左スティック カメラの移動 マウスドラッグ, カーソルキー 右スティック エアタップ 右クリック, エンターキー Aボタン ブルーム/システムジェスチャー Windowsキー, F2キー Bボタン スクロールのための手の動き Altキーとマウス右ボタンを押しながら マウスを上下に移動 右トリガーとAボタンを押しながら 右スティックを上下に移動 手の動きと回転(HoloLens 2 Emulator のみ) Altキーを押しながらマウスを上下左右に移 動(手を動かす),カーソルキーとQ / Eキー(回 転,傾き) LBまたはRBを押しながら左スティック(手を 前後左右に動かす), 右スティック(回転),方 向パッド上下(手を上げ下げ)
  52. 52. MRTKの特徴 • MRTK FoundationはアプリケーションがMixed Realityプラ ットフォーム間で共通の機能を利用できるようにする一連の パッケージ • MRTK Foundationは以下で構成される • Core Package : 必須のコンポーネント • Platform Providers : 様々なデバイスを利用可能にするためのコンポー ネント • System Services : コアパッケージで定義されているMRTKのシステム サービスインターフェイスのデフォルト実装が含まれている • Feature Assets : Unityアセットおよびスクリプトとして提供される関 連機能の集まり 52 https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/Packaging/MRTK_Packages.html
  53. 53. MRTKの特徴 • MRTK Foundation および MRTK Examplesインポート 後のProjectの状態 53 Feature Assets 一般的にはSDK(および一部のServices)を 利用するだけでアプリケーションを構築可能 Core Package Platform Providers System Services 様々なサンプル
  54. 54. MRTK Examples
  55. 55. MRTK Examples • MixedRealityToolkit.ExamplesのDemos配下に35個 のシーンが用意されている 55
  56. 56. MRTK Examples • 各シーンには概要および、対応プラットフォームが記載さ れたパネルが配置されている(パネルが無いシーンも一部あり) 56
  57. 57. MRTK Examples • AudioLoFiEffectDemo 57 Audio
  58. 58. MRTK Examples • AudioOcclusionDemo 58 Audio
  59. 59. MRTK Examples • BoundaryVisualization 59 Boundary ※Unityエディタ上では視覚化の確認できず
  60. 60. MRTK Examples • DiagnosticsDemo 60 Diagnostics
  61. 61. MRTK Examples EyeTrackingはほかのサンプルとビルド方法が異なる 61 EyeTracking
  62. 62. MRTK Examples 62 EyeTracking • EyeTracking ビルド方法
  63. 63. MRTK Examples 63 EyeTracking • EyeTracking ビルド方法
  64. 64. MRTK Examples 64 EyeTracking DEMO
  65. 65. MRTK Examples • Glb-Loading-Demo • Glbファイルの読み込みサンプル • ネットワークからの動的読み込み • Gltf-Loading-Demo • Gltfファイルの読み込みサンプル • ローカルファイルの動的読み込み 65 Gltf https://raw.githubusercontent.com/KhronosGroup/glTF-Sample- Models/master/2.0/BoomBox/glTF-Binary/BoomBox.glb ¥GltfModels¥Lantern¥glTF¥Lantern.gltf
  66. 66. MRTK Examples • HandInteractionExamples 66 HandTracking
  67. 67. MRTK Examples 67 HandTracking DEMO
  68. 68. MRTK Examples • HandInteractionGestureEventsExample 68 HandTracking
  69. 69. MRTK Examples • HandInteractionPanZoomExample 69 HandTracking
  70. 70. MRTK Examples • HandInteractionUnityUIExample 70 HandTracking
  71. 71. MRTK Examples • Dictation 71 Input RC2で追加
  72. 72. MRTK Examples • HandJointChaserExample 72 Input ハチドリのデモはこのサンプルを参考にしたらつくりやすいかも https://youtu.be/k5SMABo4jwM
  73. 73. MRTK Examples • InputActionsExample 73 Input RC2で追加 以下のカスタムプロファイルを作成している • Input Actions profiles • Controller Mapping profile • Speech Commands profile • Gestures profile
  74. 74. MRTK Examples • PointerResultExample 74 Input RC2で追加
  75. 75. MRTK Examples • Speech 75 Input RC2で追加
  76. 76. MRTK Examples • SolverExamples 76 Solvers
  77. 77. MRTK Examples • SpatialAwarenessMeshDemo 77 SpatialAwareness
  78. 78. MRTK Examples • MaterialGallery 78 StandardShader
  79. 79. MRTK Examples • StandardMaterialComparison 79 StandardShader
  80. 80. MRTK Examples • StandardMaterials 80 StandardShader
  81. 81. MRTK Examples • InspectorFieldsExamples 81 Utilities
  82. 82. MRTK Examples • BoundingBoxRuntimeExample 82 UX RC2で追加
  83. 83. MRTK Examples • ObjectCollectionExamples 83 UX
  84. 84. MRTK Examples • InteractablesExamples 84 UX
  85. 85. MRTK Examples • LineExamples 85 UX
  86. 86. MRTK Examples • PressableButtonExample 86 UX
  87. 87. MRTK Examples • SliderExample 87 UX
  88. 88. MRTK Examples • TooltipExamples 88 UX
  89. 89. アプリ実装の基本
  90. 90. アプリ実装 • Unityでプロジェクトを新規作成 • Microsoft.MixedReality.Toolkit.Unity.Foundation-v2.0.0- RC2.unitypackage インポート • メニューの Mixed Reality Toolkit -> Add to Scene and Configure… を選択 90
  91. 91. アプリ実装 • プロファイル選択画面が表示された場合(新規でシーンを作成した場 合)は DefaultMixedRealityToolkitConfigurationProfile を選択 (プロファイルについては後述) 91
  92. 92. アプリ実装 • Build Settingsにて Universal Windows Platform を選択し Switch Platform ボタンを押下する 92
  93. 93. アプリ実装 • Playボタンを押下するとエディタ上でアプリの動作確認可能 93
  94. 94. ビルド • Build Settings の Buildボタンを押下でビルドを開始する • この際、エラーが表示されるがビルドは成功しておりUWP用のプロジェク トが生成される 94 参考: Unity UWP Build: Reference Rewriter found some errors#3939 https://github.com/microsoft/MixedRealityToolkit- Unity/issues/3939 Unityのバグにより起こるエラーのようですが、無視しても 問題ないと記載されています
  95. 95. ビルド • Windows 10 SDK (10.0.18362.0)がインストールされていない場合、 エラーが表示されビルドは失敗する 95
  96. 96. プロファイル
  97. 97. プロファイル • MRTKはProfileで設定を構築していく • 参考:Mixed Reality Toolkit configuration guide 97 ←プロファイル設定
  98. 98. プロファイル • デフォルトプロファイル(編集不可)が準備されている • コピーしてカスタムプロファイルを作成していく • 新規で作成することも可能 98
  99. 99. プロファイル • プロファイルは継承関係を辿るとScriptableObjectから派生し たものであることが分かる • 設定内容はassetファイルとして保存されるため一度構築する ことで再利用も可能 99 継承関係 ScriptableObject └ BaseMixedRealityProfile └ MixedRealityToolkitConfigurationProfile
  100. 100. 主要なプロファイル • Camera Profile • Input System Profile • Boundary Visualization Profile • Spatial Awareness System Profile • Diagnostics Profile 100
  101. 101. Camera Profile • カメラの設定を行う • HoloLensにおける設定は Transparent Display Settings • Opaque Display Settingsは VRデバイス用の設定 101
  102. 102. InputSystem Profile • インプットに関する設定を行う • InputSystem Profile配下には、さらに細分化されたカテゴリに分類さ れている 102
  103. 103. InputSystem Profile 103 Pointers Input Actions 入力とアクションの紐づけ設定ポインタの設定 Input Data Providers データ提供の設定
  104. 104. InputSystem Profile 104 Controller Mapping コントローラマッピングの設定 コントローラ視覚化の設定
  105. 105. InputSystem Profile 105 Gestures Speech Commands Hand Tracking Profile ジェスチャーの設定 音声コマンドの設定 ハンドトラッキングの設定 利用したい音声コマンド とキーボードショートカット、 アクションを登録
  106. 106. Boundary Profile • バウンダリー(VRの境界)の 視覚化における設定を行う 106
  107. 107. Spatial Awareness Profile • 環境認識の設定を行う • 環境認識を行うかどうか、メッシュ の更新間隔、マテリアルの設定 等が可能 107
  108. 108. Diagnostics Profile • 診断システム視覚化の設定 を行う • 診断システムは開発時に利 用することが推奨されている が、製品版では無効化する よう注意が必要 108
  109. 109. ハンドトラッキング・アイトラッキング実装
  110. 110. ハンドトラッキング実装 • 掌(Palm)の位置を取得する実装例 • ジョイントは enum TrackedHandJoint で定義されている 110
  111. 111. アイトラッキング実装 • 目の位置、方向を取得するための準備 • Input System Profile の Windows Mixed Reality Eye Gaze Provider ->Typeを WindowsMixedRealityEyeGazeDataProviderにする 111 https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/EyeTracking/EyeTracking_BasicSetup.html
  112. 112. アイトラッキング実装 • Main CameraのインスペクタでGaze Providerの Prefer Eye Trackingにチェックを入れる • UWPプロジェクトのPackage.appxmanifestを開き「視線入 力」の機能にチェックを付ける 112
  113. 113. アイトラッキング実装 • Unity Editor上でアイトラッキングの動作確認を行う場合は、 Simulate Eye Positionにチェックを入れる必要がある • MRTK Configuration Profile → Input System Profile → Data Providers → Input Simulation Service 113
  114. 114. アイトラッキング実装 • 目の位置、方向を取得する実装例 • EyeGazeProviderから取得可能 114 https://microsoft.github.io/MixedRealityToolkit-Unity/Documentation/EyeTracking/EyeTracking_EyeGazeProvider.html
  115. 115. 参考:Eye-gaze デザインガイドライン 1. 目の視線入力 != 頭の視線入力 • 高速だが不規則な目の動きが入力タスクに合っているかどうかを検討する • ユーザーの視線入力に何か (カーソルなど) を直接に取り付けるのは避ける 2. 目の視線入力と他の入力を組み合わせる 3. 視線追跡入力の繊細なフィードバック 4. 入力としての不自然な目の動きを強制しない 5. 不正確さを考慮に入れる • 操作する対象として十分大きいターゲットを用意する等 115 https://docs.microsoft.com/en-us/windows/mixed-reality/eye-tracking#eye-gaze-design-guidelines
  116. 116. 参考:Build セッション 116 Intro to Building Apps for HoloLens 2 Using Unity and Mixed Reality Toolkit https://mybuild.techcommunity.microsoft.com/sessions/77094?source=sessions#top-anchor
  117. 117. 参考:公式チュートリアル 117 MR Learning ベースのモジュールのプロジェクトの初期化と最初のアプリケーション https://docs.microsoft.com/ja-jp/windows/mixed-reality/mrlearning-base-ch1 MR Learning ベースのモジュールのユーザー インターフェイスでは、手 Tracking、および現実ツールキットの構成を混在 https://docs.microsoft.com/ja-jp/windows/mixed-reality/mrlearning-base-ch2 動的なコンテンツの配置とソルバー MR Learning ベース モジュール https://docs.microsoft.com/ja-jp/windows/mixed-reality/mrlearning-base-ch3 MR Learning ベースのモジュールの 3D オブジェクトの相互作用 https://docs.microsoft.com/ja-jp/windows/mixed-reality/mrlearning-base-ch4 入力を高度な MR Learning ベース モジュール https://docs.microsoft.com/ja-jp/windows/mixed-reality/mrlearning-base-ch5 MR Learning ベース モジュール - 旧暦モジュール アセンブリ サンプル エクスペリエンス https://docs.microsoft.com/ja-jp/windows/mixed-reality/mrlearning-base-ch6
  118. 118. 参考:非公式チュートリアル 118 MR Learning Base Module で学ぶHoloLens 2アプリ開発 その1 動作確認 https://www.tattichan.work/entry/learningmodule1 MR Learning Base Module で学ぶHoloLens 2アプリ開発 その2 UIとハンドトラッキング https://www.tattichan.work/entry/learningmodule2 MR Learning Base Module で学ぶHoloLens 2アプリ開発 その3 動的なコンテンツ配置とソルバー https://www.tattichan.work/entry/learningmodule3 MR Learning Base Module で学ぶHoloLens 2アプリ開発 その4 3Dオブジェクトインタラクション https://www.tattichan.work/entry/learningmodule4 MR Learning Base Module で学ぶHoloLens 2アプリ開発 その5 高度な入力 https://www.tattichan.work/entry/learningmodule5
  119. 119. 参考:IL2CPPデバッグ方法 • UnityのIL2CPPプロジェクトをC#デバッグする方法 119 http://www.hiromukato.com/entry/2019/03/24/200057
  120. 120. Unreal Engine 4
  121. 121. UE4対応 121 https://www.unrealengine.com/ja/blog/epic-games-announces-unreal-engine-support-for-microsoft-hololens-2 https://www.unrealengine.com/ja/blog/unreal-engine-4-support-for-hololens-2-released-in-early-access?lang=ja
  122. 122. Streaming 122 https://www.youtube.com/watch?v=r0ubiU3PRHw
  123. 123. Streaming • HoloLensにHolographic Remoting Playerをインストール • PluginsでMicrosoft Windows Mixed Realityを有効にする • Project Settings のPlatformsで Windows Mixed Realityを選択し、 HoloLensのIPアドレスを入力し Connectする 123 https://docs.unrealengine.com/en-US/Platforms/AR/HoloLens/QuickStart/index.html
  124. 124. 参考:Streaming 124 https://qiita.com/EGJ-Axel_Riffard/items/58799a1dd1db0e9e7351 • 以下の記事でも日本語で分かりやすく説明されています
  125. 125. エンジンビルド準備 • EpicGamesのGitHubからUnrealEgineのdev-vr- hololens2ブランチをクローンする 125 https://github.com/EpicGames/UnrealEngine/tree/dev-vr-hololens2 (READMEに書かれている)必要環境 • Microsoft HoloLens 2 HMD • Windows Insider Account • Microsoft Windows 10 Insider Preview Build (version 18317 or later) • Windows Insider Preview SDK (version 190501 or later) • Visual Studio 2017 (with current updates) 動作確認できた環境 Visual Studio 2017
  126. 126. エンジンビルド準備 • Visual Studio 2017のインストール • 「C++によるゲーム開発」にチェックを入れる • 個別コンポーネントの「Unreal Engine のインストーラー」 「Nuget パッケージマネージャー」にチェックを入れる 126 https://github.com/EpicGames/UnrealEngine (言語は英語がいいようですが後から変更できます)
  127. 127. エンジンビルド準備 • Setup.batを実行する(Windows環境の場合) 127 必要なバイナリデータのダウンロードが始まる (データ量は約10GBなのでそれなりに時間がかかる)
  128. 128. エンジンビルド準備 • この時点(エンジンビルド前) のフォルダサイズ約32GB 128
  129. 129. エンジンビルド • GenerateProjectFiles.bat を実行するとUE4.slnが生成される 129
  130. 130. エンジンビルド • Visual Studio で UE4.sln を読み込む • ソリューションの構成を「Development Editor」、ソリューション プラットフォームを「Win64」に設定する 130
  131. 131. エンジンビルド • (保存フォルダ)¥Engine¥Source¥Runtime¥Core¥Public¥Misc¥Char.h の以 下のコメント部を削除 • これをしないと UNREAL EDITOR のパッケージ作成の際にエラーが出る 131 UATHelper: Packaging (HoloLens):(保存フォル ダ)¥unrealengine-dev-vr- hololens2¥engine¥source¥runtime¥core¥public¥Misc/Char.h: error C4819: The file contains a character that cannot be represented in the current code page (932). Save the file in Unicode format to prevent data loss /** * Avoid sign extension problems with signed characters smaller than int * * E.g. 'Ö' - 'A' is negative since the char 'Ö' (0xD6) is negative and gets * sign-extended to the 32-bit int 0xFFFFFFD6 before subtraction happens. * * Mainly needed for subtraction and addition. */ エラー内容 削除する部分
  132. 132. エンジンビルド • ソリューションエクスプローラで UE4 を右クリックし Buildを選択 する(ビルドには数十分かかる) 132
  133. 133. エンジンビルド • ビルド成功時の画面および、 エンジンビルド後のフォルダサイズ 133 参考:エンジンビルド時間約45分
  134. 134. エンジンビルド • ソリューションエクスプローラで UE4 を右クリックし Set As StartUp Project を選択する • F5(デバッグ有り)もしくは Ctrl+F5(デバッグ無し)で UNREAL EDITOR 4.23.0 が起動する 134
  135. 135. 参考:エンジンビルド • うまく行かない場合は以下も参考にしてみてください 135 http://akihiro-document.azurewebsites.net/post/hololens2_unrealengine4emulator/
  136. 136. サンプルプロジェクト • 以下サイトサンプルプロジェクトへのリンクがあるため取得 してzipを展開する • HoloLens2Example.uproject を UNREAL EDITOR で開く 136 https://www.unrealengine.com/ja/blog/unreal-engine-4-support- for-hololens-2-released-in-early-access?lang=ja
  137. 137. サンプルプロジェクト • なお言語を English にしておかないと、パッケージ作成の ログメッセージが文字化けします(パッケージの作成自体 はできた) 137
  138. 138. サンプルプロジェクト • プロジェクト変換のダイアログが表示されるが「より多くの オプション」を選択し「同じ場所で変換」を選択する • 「コピーを開く」を選択したらパッケージ作成の最後でエラーがでたため 138
  139. 139. サンプルプロジェクト • メニュー 「Edit」 - 「Plugins」を選択する 139
  140. 140. サンプルプロジェクト • HoloLens の Enabled にチェックが入っていることを確認する 140
  141. 141. サンプルプロジェクト • Microsoft Windows Mixed Reality の Enabled にチェック が入っていることを確認する 141
  142. 142. サンプルプロジェクト • メニュー 「Edit」 - 「Project Settings…」を選択する 142
  143. 143. サンプルプロジェクト • Signing Certificate の Generate new を選択する • Create Private Key Password で OK→はい を選択する 143
  144. 144. サンプルプロジェクト • その他以下の通り設定する 144
  145. 145. サンプルプロジェクト • Publisher の Company Name, Company Distinguished Nameに CN=NoPublisher を入力する 145
  146. 146. サンプルプロジェクト • メニュー 「File」 - 「Package Project」 - 「HoloLens」を 選択する 146
  147. 147. サンプルプロジェクト • ビルドが成功するとアプリパッケージが生成される 147
  148. 148. サンプルプロジェクト • HoloLens 2 Emulater 右上の Open Device Potal ボタンを 選択する 148
  149. 149. サンプルプロジェクト • Device Potal が立ち上がるため Views -> Apps を選択し、 「ファイルを選択」から HoloLens2Example.appxbundle を選 択し Install ボタンを押す 149
  150. 150. サンプルプロジェクト • Installed apps から HoloLens2Example を選択し、 Start ボタンを押すとアプリが起動する 150
  151. 151. サンプルプロジェクト実行 151
  152. 152. サンプルプロジェクト実行 • UNREAL EDITOR で実行し、キーボードのキーを(適当 に)押すとボタンや3Dモデルが表示される 152
  153. 153. 参考:Build セッション 153 https://mybuild.techcommunity.microsoft.com/sessions/77095?source=TechCommunity#top-anchor Intro to Building Mixed Reality Apps with Unreal Engine 4
  154. 154. HoloLens 2 が待てないあなたに! • LeapMotionInputForMRTK (@tarukosu 作) 154 https://github.com/HoloLabInc/LeapMotionInputForMRTK • HoloLens 1 + Leap Motion でハンド操作による入力ができる • アタッチメントのCADデータも公開されている(CADデータは @ogacyo 作)

×