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対応 MRTK v2 ハンズオン / HoloLens2 MRTKv2 H...
Search
HoloLab
December 05, 2019
Technology
0
3.6k
HoloLens 2対応 MRTK v2 ハンズオン / HoloLens2 MRTKv2 Hands on
HoloLab
December 05, 2019
Tweet
Share
More Decks by HoloLab
See All by HoloLab
2021年のふりかえり / hololab-2021
hololab
1
1.6k
日本建築学会 情報シンポ2021 / AIJISA 2021
hololab
1
210
AR/VR/MRと3次元/BIMの取り組みご紹介 / SPAR2021
hololab
0
200
HoloLensで変わる行動のカタチ / Tech-on MeetUp Online 7
hololab
0
680
XR Kaigi 2021 ホロラボでのHoloLens 2アプリ 開発事例紹介 / XR Kaigi 2021
hololab
0
2.2k
HoloLensコミュニティ HoloMagiciansのご紹介 / DevRel Japan CONFERENCE
hololab
0
77
Azure Remote Renderingを活用した mixpace Remote Renderingのご紹介 / msdd2021 mrr
hololab
0
1.7k
第8回 全日本コンピュータビジョン勉強会 / Japan CV
hololab
0
1.1k
リモートワークの課題をモブワークで解決する試み / Scrum Fest Osaka
hololab
1
2.5k
Other Decks in Technology
See All in Technology
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
1
240
エンジニアのためのドキュメント力基礎講座〜構造化思考から始めよう〜(2025/02/15jbug広島#15発表資料)
yasuoyasuo
15
5.5k
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
5.8k
インフラをつくるとはどういうことなのか、 あるいはPlatform Engineeringについて
nwiizo
5
2.1k
エンジニアの育成を支える爆速フィードバック文化
sansantech
PRO
3
660
APIファーストで実現する運用性の高い IoT プラットフォーム: SORACOMのアプローチ
soracom
PRO
0
240
急成長する企業で作った、エンジニアが輝ける制度/ 20250214 Rinto Ikenoue
shift_evolve
2
880
事業継続を支える自動テストの考え方
tsuemura
0
300
Ask! NIKKEI RAG検索技術の深層
hotchpotch
13
2.8k
データの品質が低いと何が困るのか
kzykmyzw
6
1k
まだ間に合う! エンジニアのための生成AIアプリ開発入門 on AWS
minorun365
PRO
4
580
Developers Summit 2025 浅野卓也(13-B-7 LegalOn Technologies)
legalontechnologies
PRO
0
150
Featured
See All Featured
Code Review Best Practice
trishagee
66
17k
How to Ace a Technical Interview
jacobian
276
23k
BBQ
matthewcrist
86
9.5k
KATA
mclloyd
29
14k
Building an army of robots
kneath
302
45k
Site-Speed That Sticks
csswizardry
3
370
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
Become a Pro
speakerdeck
PRO
26
5.1k
How to Think Like a Performance Engineer
csswizardry
22
1.3k
YesSQL, Process and Tooling at Scale
rocio
171
14k
A designer walks into a library…
pauljervisheath
205
24k
Transcript
Unity 2018.4.12f1, Visual Studio 2017/2019, MRTK v2.1.0対応 最終更新日 2019/12/05 株式会社ホロラボ
45分でHoloLens 2アプリ開発 1
タイムテーブル 1. 5分:オープニング 2. 5分:Unityプロジェクトの作成 3. 5分:Mixed Reality Toolkitの取り込み 4.
5分:プロジェクトの初期設定 5. 5分:オブジェクトの配置 6. 5分:ハンドジェスチャーでオブジェクトが落ちる処理を作成 7. 5分:実機デプロイ 8. 5分:空間マッピングの設定 9. 5分:アイトラッキング 10. 5分:クロージング 2
1.オープニング いまからやることをお伝えします。 3
事前準備 • HoloLens 2実機 • 開発PC • Windows 10(Home/Pro) •
Unity 2018.4.12f3(固定)のインストール(Personal可, Unity Hubより) • Visual Studio 2017 15.5.6以降(含UWP SDK)のインストール • Microsoft Mixed Reality Toolkit v2.1.0(固定)のダウンロード 4
今日のゴール 7
2.Unityプロジェクトの作成 最初にUnityのプロジェクトを作りましょう。 8
Unityプロジェクトの作成(1) 1. Unity Hubを起動し[新規作成]から該当バージョン(2018.4.x)をクリックします。 9
Unityプロジェクトの作成(2) 1. プロジェクト名を入力します。 2. プロジェクトのフォルダを選択します。 3. [作成] をクリックします。 10 1
3 2
Unityプロジェクトの作成(3) プロジェクトが作成されました。 11
3. Mixed Reality Toolkitの取り込み 便利機能がたくさん入っているMixed Reality Toolkitを追加しましょう。 12
MixedRealityToolkit-Unityのダウンロード(1) 1. https://github.com/microsoft/MixedRealityToolkit-Unity/releases/tag/v2.1.0 から [Microsoft.MixedReality.Toolkit.Unity.Foundation.2.1.0.unitypackage] をダウンロードします。 13
1. Platformを[Universal Windows Platform]に変更します。 2. [Switch Platform]をクリックします。 ※MRTKがプロジェクト設定を変更するため、先にHoloLensのプラットフォームに変更する。 UWPビルドの設定 1
14 2
1. [Microsoft.MixedReality.Toolkit.Unity.Foundation.2.1.0.unitypackage]ファイルを Unity の [Project] ビューに入れます。 Mixed Reality Toolkitの取り込み(1) 15
Mixed Reality Toolkitの取り込み(2) 1. [Import Unity Package] ダイアログが表示されるので [Import] を押します。
16
Mixed Reality Toolkitの取り込み(3) 1. プロジェクト設定の変更を行うので[Apply]をクリックする。 17
MixedRealityToolkit-Unityの取り込み(3) MixedRealityToolkit-Unityが取り込めました。 18
オプション:Unityエディターの配置を変える(1) 1. 右上にある [Layout] をクリックします 2. [2 by 3] をクリックします。
1 19 2
オプション:Unityエディターの配置を変える(2) 1. [Project] ビューの右上の小さなボタン (ハンバーガーメニュー) をクリックします。 2. [One Column Layout]
をクリックします。 1 20 2
オプション:Unityエディターの配置を変える(3) [Project]ビューがツリー表示されるようになりました。 21
4. プロジェクトの初期設定 MixedRealityToolkitの機能を使ってプロジェクトの初期設定を行います。 22
プロジェクトの初期設定(1) 1. メニューの [Mixed Reality Toolkit] にある [Add to Scene
and Configure…] をクリックします。 23
プロジェクトの初期設定(2) 1. プロファイルの選択画面が表示されるので[DefaultHoloLens2ConfigurationProfile]を選択します。 24
プロジェクトの初期設定(3) 1. プロファイルが追加されます。ここでHoloLens 2の動作に関する設定を行います。 25
プロジェクトの初期設定(4) 1. 空間マップを使用するときなどはプロファイルを変更可能にする必要があります。「Copy & Customize」で プロファイルをCloneします。 2. CloneされたプロファイルはCustomProfilesに生成されます。 26 1
2
プロジェクトの初期設定(5) 1. この状態でEditor実行すると、Diagnosticsが表示されます。またSHIFTキーを押すとHand Jointが表示され ます。 27
5.オブジェクトの配置 HoloLensに表示する世界を作りましょう。 28
オブジェクトの配置(1) 1. [Hierarchy] ビューの何もないところで左クリックし、選択を外します。 2. [Hierarchy] ビューの何もないところで右クリックし、[3D Object]→[Cube] を選択します。 29
1 2
オブジェクトの配置(2) Cubeを配置できました。 30
Cubeの “Inspector” ビューを操作します。 1. [Position] を [0.5,0,1] に変更します。 2. [Scale]
を [0.2,0.2,0.2] に変更します。 単位はメートル(m)です。 オブジェクトの配置(3) 31 1 2
オブジェクトの配置(4) 1. 同様に “Hierarchy” ビューで [Sphere] を配置します。 2. [Position] を
[0,0,1] に変更します。 3. [Scale] を[0.2,0.2,0.2]に変更します。 32 1 2 3
オブジェクトの配置(5) 1. 最後に “Hierarchy” ビューで [Capsule] を配置します。 2. [Position] を
[-0.5,0,1]に変更します。 3. [Scale] を [0.2,0.2,0.2] に変更します。 33 1 2 3
6. ハンドジェスチャーでオブジェクトが 落ちる処理を作成 ジェスチャーを認識させてインタラクションの機能を作りましょう。 34
ハンドジェスチャーでオブジェクトが落ちるようにする(1) 1. Cubeに「Rigidbody」、「Near Interaction Touchable」、「Manipulation Hander」を追加する。 35
ハンドジェスチャーでオブジェクトが落ちるようにする(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のチェックを入れる(落ちるようにする)。 36 1 2 3
1. 同じように [Sphere] と [Capsule] も設定することでハンドジェスチャーで落ちるようになります。 ハンドジェスチャーでオブジェクトが落ちるようにする(4) 38
ハンドメッシュを表示します。 1. 全体のプロファイルの「Input」にあるプロファイルをCloneします。 2. さらに「Hand Tracking」のプロファイルをCloneします。 3. 「Hand Mesh Visualization
Modes」を「Player」にします。 ハンドジェスチャーでオブジェクトが落ちるようにする(5) 39 1 2 3
7. 実機デプロイ 実機で動かします。 40
1. メニューの [File | Build Settings] または [Shift+Ctrl+B]で “Build Settings”
画面を表示します。 2. [Add Open Scenes] ボタンで先ほど保存したシーンを追加します。 実機デプロイ(1) 2 41
実機デプロイ(2) 1. [Build] ボタンをクリックします。 2. 表示された Windows エクスプローラーで [新しいフォルダー] ボタンをクリックします。
3. フォルダー名を [UWP] とします。 4. [フォルダーの選択] ボタンをクリックするとビルドが開始します。 1 2 3 4 42
実機デプロイ(3) 1. ビルドが実行されます。 • エラーが発生するとコンソールにエラーログが表示されます。 43
実機デプロイ(3) 1. [プロジェクト名] フォルダーの [UWP] フォルダーにある [<プロジェクト名>.sln] ファイルを開きます。 44
実機デプロイ(4) 1. Visual Studioの構成部分を[Release],[ARM],[Device] に変更します。 2. USBケーブルをPCとHoloLens間で接続して[Device]ボタンをクリックします。 1 2 45
PINの設定 1. 初回のみVisual StudioとHoloLensでペアリングを求められます。 2. HoloLens 2の「設定」アプリの「更新とセキュリティ」にある「開発者向け」から「ペアリング」ボタンを 押し、表示される数字をVisual Studioに入力します。 46
8.空間マッピングの設定 空間マッピングを表示させてオブジェクトが落ちないようにしましょう。 49
1. プロファイルの「Spatial Awareness」にある「Enable Spatial Awareness System on Startup」にチェック をいれます。 空間マッピングの設定(1)
50
空間マッピングの設定(1) 51 1. UnityのPlayer SettingsのPublishing SettingsのCapabilityにある「SpatialPerception」とUnityから出力後の Visual Studioのmanifestの機能にある「空間認識」の両方にチェックがあることを確認する(なければチェッ クする)。初回ビルド以外はVisual Studioに反映されないので注意。
9. アイトラッキング 視線を使ったインタラクションを作ってみましょう 52
アイトラッキング(1) 1. 全体のプロファイルの「Input」にあるプロファイルをCloneします(ハンドメッシュなどで済んでいれば不要)。 2. 「Input Data Provider」の「+ Add Data Provider」をクリックします。
3. 「New Data Provider」の「Type」を「WindowsMixedRealityEyeGazeDataProvider」に設定します。 53 1 2 3
アイトラッキング(2) 1. 「Input Simulation Service」のプロファイルをCloneします。 2. 「Simulate Eye Position」にチェックを入れます。 54
1 2
アイトラッキング(3) 1. 「Main Camera」の「Gaze Provider」の「Use Eye Tracking」にチェックがあることを確認します(なけれ ばチェックします)。 55
アイトラッキング(4) 1. テスト用コードをプロジェクトに追加します。 2. Cube、Sphere、Capsuleに追加します(デフォルトでは未選択時に水色、選択時に白に色が変わります)。 56 1 2
アイトラッキング(5) 1. Unityから出力しVisual Studioのマニフェストの機能で「視線入力」にチェックします。 2. UnityでMRTKのBuild Windowを使用してビルドする場合、「Appx Build Options」の「Gaze Input
Capability」にチェックします。 57 1 2
10.クロージング 58
本日使用したHoloLens固有の機能 • 〇:視線入力(Eye tracking) • 〇:ハンドジェスチャー入力(Hand gesture input) • -:音声入力(Voice
input) • -:空間(3次元)音響(Spatial sound) • 〇:空間マッピング(Spatial awareness) 59
60