Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
HoloLens 2 ハンズオン(ショート) / HoloLens Hands on labs
Search
HoloLab
August 20, 2020
Programming
1.6k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
HoloLens 2 ハンズオン(ショート) / HoloLens Hands on labs
HoloLab
August 20, 2020
More Decks by HoloLab
See All by HoloLab
2021年のふりかえり / hololab-2021
hololab
1
1.9k
日本建築学会 情報シンポ2021 / AIJISA 2021
hololab
1
290
AR/VR/MRと3次元/BIMの取り組みご紹介 / SPAR2021
hololab
0
280
HoloLensで変わる行動のカタチ / Tech-on MeetUp Online 7
hololab
0
760
XR Kaigi 2021 ホロラボでのHoloLens 2アプリ 開発事例紹介 / XR Kaigi 2021
hololab
0
2.5k
HoloLensコミュニティ HoloMagiciansのご紹介 / DevRel Japan CONFERENCE
hololab
0
140
Azure Remote Renderingを活用した mixpace Remote Renderingのご紹介 / msdd2021 mrr
hololab
0
2k
第8回 全日本コンピュータビジョン勉強会 / Japan CV
hololab
0
1.2k
リモートワークの課題をモブワークで解決する試み / Scrum Fest Osaka
hololab
1
2.7k
Other Decks in Programming
See All in Programming
Developing with AI Agents — Codex, Claude Code & Cowork Practical Guide
x5gtrn
PRO
0
1.3k
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.2k
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
710
Contextとはなにか
chiroruxx
1
290
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
160
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
130
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
240
Agentic UI
manfredsteyer
PRO
0
140
技術記事、 専門家としてのプログラマ、 言語化
mizchi
4
2.7k
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
210
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
110
技術記事、AIに書かせるか、自分で書くか? 〜それでも私が自分の手で書く理由〜 / #QiitaConference
jnchito
2
1.4k
Featured
See All Featured
Into the Great Unknown - MozCon
thekraken
41
2.6k
New Earth Scene 8
popppiees
3
2.3k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.6k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
840
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Chasing Engaging Ingredients in Design
codingconduct
0
220
Google's AI Overviews - The New Search
badams
0
1k
Technical Leadership for Architectural Decision Making
baasie
3
400
Making the Leap to Tech Lead
cromwellryan
135
9.9k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.2k
Documentation Writing (for coders)
carmenintech
77
5.4k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
390
Transcript
Unity 2019.4.2f1, Visual Studio 2019 16.6.3, MRTK v2.4.0対応 最終更新日 2020/08/20
株式会社ホロラボ 45分でHoloLens 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
1.オープニング いまからやることをお伝えします。 3 Copyright© HoloLab Inc. 2020 All rights reserved
事前準備 • 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
今日のゴール 7 Copyright© HoloLab Inc. 2020 All rights reserved
2.Unityプロジェクトの作成 最初にUnityのプロジェクトを作りましょう。 8 Copyright© HoloLab Inc. 2020 All rights reserved
Unityプロジェクトの作成(1) 1. Unity Hubを起動し[新規作成]から該当バージョン(2019.4.x)をクリックします。 9 Copyright© HoloLab Inc. 2020 All
rights reserved 1
Unityプロジェクトの作成(2) 1. プロジェクト名を入力します。 2. プロジェクトのフォルダを選択します。 3. [作成] をクリックします。 10 1
2 3
Unityプロジェクトの作成(3) 1. 起動を待ちます 11 Copyright© HoloLab Inc. 2020 All rights
reserved
Unityプロジェクトの作成(4) プロジェクトが作成されました。 12 Copyright© HoloLab Inc. 2020 All rights reserved
3. Mixed Reality Toolkitの取り込み 便利機能がたくさん入っているMixed Reality Toolkitを追加しましょう。 13 Copyright© HoloLab
Inc. 2020 All rights reserved
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
メニューの [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
プロジェクトの設定(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
プロジェクトの設定(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
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
Mixed Reality Toolkitの取り込み(2) 1. [Import Unity Package] ダイアログが表示されるので [Import] を押します。
1 9 Copyright© HoloLab Inc. 2020 All rights reserved 1
Mixed Reality Toolkitの取り込み(3) 1. Importを待ちます 20 Copyright© HoloLab Inc. 2020
All rights reserved
Mixed Reality Toolkitの取り込み(4) 1. プロジェクト設定の変更を行います 2. [Audio spatializer]を[MS HRTF Spatoalizer]に変更します
3. [Apply]をクリックします 2 1 Copyright© HoloLab Inc. 2020 All rights reserved 2 1
Mixed Reality Toolkitの取り込み(5) Mixed Reality Toolkitが取り込めました。 22 Copyright© HoloLab Inc.
2020 All rights reserved
オプション:Unityエディターの配置を変える(1) 1. 右上にある [Layout] をクリックします 2. [2 by 3] をクリックします。
1 23 2 Copyright© HoloLab Inc. 2020 All rights reserved
オプション:Unityエディターの配置を変える(2) 1. [Project] ビューの右上の小さなボタン (ハンバーガーメニュー) をクリックします。 2. [One Column Layout]
をクリックします。 1 24 2 Copyright© HoloLab Inc. 2020 All rights reserved
オプション:Unityエディターの配置を変える(3) [Project]ビューがツリー表示されるようになりました。 25 Copyright© HoloLab Inc. 2020 All rights reserved
4. プロジェクトの初期設定 MixedRealityToolkitの機能を使ってプロジェクトの初期設定を行います。 26 Copyright© HoloLab Inc. 2020 All rights
reserved
プロジェクトの初期設定(1) 1. メニューの [Mixed Reality Toolkit] にある [Add to Scene
and Configure…] をクリックします。 27 Copyright© HoloLab Inc. 2020 All rights reserved
プロジェクトの初期設定(2) プロファイルが追加されます。ここでHoloLens 2の動作に関する設定を行います。 1. プロファイルを[DefaultHoloLens2ConfigurationProfile]に変更します。 28 Copyright© HoloLab Inc. 2020
All rights reserved 1
プロジェクトの初期設定(3) ハンドメッシュや空間マップを使用するときなどはプロファイルを変更可能にする必要があります。 1. 「Copy & Customize」でプロファイルをCloneします。 2. CloneされたプロファイルはCustomProfilesに生成されます。 29 Copyright©
HoloLab Inc. 2020 All rights reserved 1 2
プロジェクトの初期設定(4) この状態でEditor実行すると、Diagnosticsが表示されます。またSHIFTキーを押すとHand Jointが表示されます。 30 Copyright© HoloLab Inc. 2020 All rights
reserved
5.オブジェクトの配置 HoloLensに表示する世界を作りましょう。 31 Copyright© HoloLab Inc. 2020 All rights reserved
オブジェクトの配置(1) 1. [Hierarchy] ビューの何もないところで左クリックし、選択を外します。 2. [Hierarchy] ビューの何もないところで右クリックし、[3D Object]→[Cube] を選択します。 32
1 2 Copyright© HoloLab Inc. 2020 All rights reserved
オブジェクトの配置(2) Cubeを配置できました。 33 Copyright© HoloLab Inc. 2020 All rights reserved
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
オブジェクトの配置(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
オブジェクトの配置(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
6. ハンドジェスチャーでオブジェクトが 落ちる処理を作成 ジェスチャーを認識させてインタラクションの機能を作りましょう。 37 Copyright© HoloLab Inc. 2020 All
rights reserved
ハンドジェスチャーでオブジェクトが落ちるようにする(1) 1. Cubeに「Rigidbody」、「Near Interaction Touchable」、「Manipulation Hander」を追加する。 38 Copyright© HoloLab Inc.
2020 All rights reserved
ハンドジェスチャーでオブジェクトが落ちるようにする(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
1. 同じように [Sphere] と [Capsule] も設定することでハンドジェスチャーで落ちるようになります。 ハンドジェスチャーでオブジェクトが落ちるようにする(4) 41 Copyright© HoloLab
Inc. 2020 All rights reserved
ハンドメッシュを表示します。 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
7. 実機デプロイ 実機で動かします。 43 Copyright© HoloLab Inc. 2020 All rights
reserved
メニューの [File | Build Settings] または [Shift+Ctrl+B]で “Build Settings” 画面を表示します。
1. シーンが追加されていることを確認します(なければ[Add Open Scenes] ボタンで追加します)。 実機デプロイ(1) 1 44 Copyright© HoloLab Inc. 2020 All rights reserved
実機デプロイ(2) 1. [Build] ボタンをクリックします。 2. 表示された Windows エクスプローラーで [新しいフォルダー] ボタンをクリックします。
3. フォルダー名を [UWP] とします。 4. [フォルダーの選択] ボタンをクリックするとビルドが開始します。 1 2 3 4 45 Copyright© HoloLab Inc. 2020 All rights reserved
実機デプロイ(3) 1. ビルドが実行されます。 • エラーが発生するとコンソールにエラーログが表示されます。 46 Copyright© HoloLab Inc. 2020
All rights reserved
実機デプロイ(3) 1. [プロジェクト名] フォルダーの [UWP] フォルダーにある [<プロジェクト名>.sln] ファイルを開きます。 47 Copyright©
HoloLab Inc. 2020 All rights reserved 1
実機デプロイ(4) 1. Visual Studioの構成部分を[Release],[ARM64],[デバイス] に変更します。 2. USBケーブルをPCとHoloLens間で接続して[デバイス]ボタンをクリックします。 1 2 48
Copyright© HoloLab Inc. 2020 All rights reserved
PINの設定 初回のみVisual StudioとHoloLensでペアリングを求められます 1. HoloLens 2の「設定」アプリの「更新とセキュリティ」にある「開発者向け」から「ペアリング」ボタンを押します 2. 表示される数字をVisual Studioに入力します。 49
Copyright© HoloLab Inc. 2020 All rights reserved 2 1
8.空間マッピングの設定 空間マッピングを表示させてオブジェクトが落ちないようにしましょう。 52 Copyright© HoloLab Inc. 2020 All rights reserved
1. プロファイルの「Spatial Awareness」にある「Enable Spatial Awareness System on Startup」にチェックをい れます。 空間マッピングの設定(1)
53 Copyright© HoloLab Inc. 2020 All rights reserved 1
空間マッピングの設定(2) 54 空間マップが正常に表示されない場合の確認事項 Unityの[Player Settings]の[Publishing Settings]内[Capability]にある[SpatialPerception]とUnityから出力 後のVisual Studioのmanifestの機能にある「空間認識」の両方にチェックがあることを確認します(なければチェックしま す)。初回ビルド以外はVisual Studioに反映されないので注意してください。
Copyright© HoloLab Inc. 2020 All rights reserved
9. アイトラッキングで落ちる処理を作成 視線を使ったインタラクションを作ってみましょう 55 Copyright© HoloLab Inc. 2020 All rights
reserved
アイトラッキングで落ちる処理を作成(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
アイトラッキングで落ちる処理を作成(2) 1. 「Input Simulation Service」のプロファイルをCloneします。 2. 「Simulate Eye Position」にチェックを入れます。 57
1 2 Copyright© HoloLab Inc. 2020 All rights reserved
アイトラッキングで落ちる処理を作成(3) 1. 「Pointers」のプロファイルをCloneします。 2. 「Simulate Eye Position」にチェックを入れます。 58 1 2
Copyright© HoloLab Inc. 2020 All rights reserved
アイトラッキングで落ちる処理を作成(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
アイトラッキングで落ちる処理を作成(5) 62 アイトラッキングが正常に動作しない場合の確認事項 Unityの[Player Settings]の[Publishing Settings]内[Capability]にある[GazeInput]とUnityから出力後の Visual Studioのmanifestの機能にある「視線入力」の両方にチェックがあることを確認します(なければチェックします)。 初回ビルド以外はVisual Studioに反映されないので注意してください。
HoloLens 2の実機では視線調整を行ってください。 Copyright© HoloLab Inc. 2020 All rights reserved
10.クロージング 63 Copyright© HoloLab Inc. 2020 All rights reserved
本日使用したHoloLens 2固有の機能 • 〇:視線入力(Eye tracking) • 〇:ハンドジェスチャー入力(Hand gesture input) •
-:音声入力(Voice input) • -:空間(3次元)音響(Spatial sound) • 〇:空間マッピング(Spatial awareness) 64 Copyright© HoloLab Inc. 2020 All rights reserved
65 Copyright© HoloLab Inc. 2020 All rights reserved