Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Unity で HoloLens 2 アプリを開発しよう!公式 SDK の MRTK-Unit...
Search
Shinya Tachihara
December 15, 2020
Programming
1
1.2k
Unity で HoloLens 2 アプリを開発しよう!公式 SDK の MRTK-Unity の紹介
【Mixed Reality Dev Days Japan 前夜祭】(
https://hololens.connpass.com/event/197070/
) の HL2 アプリ開発の紹介です。
Shinya Tachihara
December 15, 2020
Tweet
Share
More Decks by Shinya Tachihara
See All by Shinya Tachihara
TokyoHoloLensMeetUp_vol21.pdf
decoc
1
1.1k
Other Decks in Programming
See All in Programming
Claude Codeの「Compacting Conversation」を体感50%減! CLAUDE.md + 8 Skills で挑むコンテキスト管理術
kmurahama
1
560
認証・認可の基本を学ぼう前編
kouyuume
0
260
非同期処理の迷宮を抜ける: 初学者がつまづく構造的な原因
pd1xx
1
740
手が足りない!兼業データエンジニアに必要だったアーキテクチャと立ち回り
zinkosuke
0
780
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
150
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
130
ローターアクトEクラブ アメリカンナイト:川端 柚菜 氏(Japan O.K. ローターアクトEクラブ 会長):2720 Japan O.K. ロータリーEクラブ2025年12月1日卓話
2720japanoke
0
740
JETLS.jl ─ A New Language Server for Julia
abap34
2
420
宅宅自以為的浪漫:跟 AI 一起為自己辦的研討會寫一個售票系統
eddie
0
510
愛される翻訳の秘訣
kishikawakatsumi
3
330
ZOZOにおけるAI活用の現在 ~モバイルアプリ開発でのAI活用状況と事例~
zozotech
PRO
9
5.8k
S3 VectorsとStrands Agentsを利用したAgentic RAGシステムの構築
tosuri13
6
360
Featured
See All Featured
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandezseo
0
83
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Faster Mobile Websites
deanohume
310
31k
Getting science done with accelerated Python computing platforms
jacobtomlinson
0
73
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
2
61
We Are The Robots
honzajavorek
0
110
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.3k
Design in an AI World
tapps
0
91
ラッコキーワード サービス紹介資料
rakko
0
1.7M
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
0
59
Transcript
Unity で HoloLens 2 アプリを開発しよう! 公式 SDK の MRTK-Unity の紹介
MRDevDays Japan 前夜祭
自己紹介 株式会社ホロラボ 立原 愼也 (@deco_c_) おしまい!
アジェンダ • MRTKの紹介 • 環境構築 • MRTKのインポートとセットアップ • アプリケーションのビルド
Mixed Reality Toolkit (MRTK) クロスプラットフォームでMRアプリ開発を加速するためのコンポーネントと機能群 microsoft/MixedRealityToolkit-Unity: Mixed Reality Toolkit (MRTK)
provides a set of components and features to accelerate cross-platform MR app development in Unity. (github.com)
MRTKが提供する多様な機能 MRTKが提供する入力システムや認識した環境を 処理する機能 MRTKの機能を使ったUI/UX コンポーネント群
クロスプラットフォームサポート • Microsoft HoloLens • Microsoft HoloLens 2 • Windows
Mixed Reality headsets • OpenVR headsets (HTC Vive / Oculus Rift) • Ultraleap Hand Tracking • iOS や Android などのモバイルデバイス プラットフォームが異なってもボタンやオブジェクトの操作が同じようにできる
MRTKの歴史 2016/05 HTK 2020/09 MRTK v2.5 2017/01 MRTK v1 2018/08
MRTK vNext α 2019/08 MRTK v2.0 HL gen 1 向け ライブラリの作りを一新 リブランディング HoloLens gen 1 の頃から、4年以上MRアプリ開発の知見を積み重ねていっている
開発環境 • Windows SDK 18362+ • Unity 2018.4.x • Visual
Studio 2019 Visual Studio Installer 経由でそろいます
Visual Studio のインストール • Visual Studio 2019
Visual Studio Installer - C++ によるデスクトップ開発 - ユニバーサル Windows プラットフォーム開発
- Unity によるゲーム開発
Visual Studio Installer - Unity Hub 以前は、Unity 201x.x でしたがいつの頃か Unity
Hub をインストール するようになっています - USBデバイスの接続 - C++ (v142) ユニバーサル Windows プラットフォーム - C++ (v141) ユニバーサル Windows プラットフォーム
Unity Hub Unity のインストール Unity Hub -> インストール 推奨 リリースのUnityにチェック
Universal Windows Platform Build Support にチェック
Unity Hub プロジェクトの作成 Unity Hub -> プロジェクト インストールしたUnity バージョンを指定 •
3Dを指定 • プロジェクト名をつける(ex. MRDD) ※ 保存先のパスはあまり深くならないようにする
Unity Universal Windows Platform 環境に切り替える File -> Build Settings… Universal
Windows Platform を 選択して Switch Platform
MRTKのPackage Foundation Tools Examples Extensions Test Utilities MRTKの本体 MRTKを使った サンプル集
シーン遷移 などのMRTKの拡張 サービス MRTKの開発を便利 にするツール群 (主にEditor拡張系) 2.5 から追加された インタラクションを 使ったテストをしや すくするツール
MRTKのインポート Unity Package Unity Package Manager • Unity Package をDLしてきてUnityにイン
ポートする方法 • Manifest ファイルを弄らず、D&Dでで きるので心理的に楽 • PackageをEditor GUIで管理する方法。 • バージョン管理が楽 Mixed Reality Toolkit and Unity Package Manager | Mixed Reality Toolkit Documentation (microsoft.github.io)
MRTKのインポート Unity Package 版 Releases · microsoft/MixedRealityToolkit- Unity (github.com) リリースページへアクセス
Mixed Reality Foundation をDL
MRTKのインポート Unity Package 版 Assets -> Import Package -> Custom
Package DLしたパッケージを指定 して開く Import 下記の方法でもインポートできます • EditorのProjectsタブでAssets にD&D • DLしたUnityPackageを実行
MRTKのインポート Unity Package Manager 版 Microsoft Mixed Reality https://pkgs.dev.azure.com/aipmr/MixedReality-Unity- Packages/_packaging/Unity-packages/npm/registry/
com.microsoft.mixedreality com.microsoft.spatialaudio Edit -> Project Settings…. Package Manager に次を入れる
MRTKのインポート Unity Package Manager 版 Assets -> Show in Explorer
Packages を開く manifest.json を VSやVSCode など のテキストエディタで開く
MRTKのインポート Unity Package Manager 版 dependencies に "com.microsoft.mixedreality.toolkit.foundation": "2.5.1", を追加してUnityに戻る
Window -> Package Manager Microsoft Mixed Reality Toolkit Foundation が 追加されていればOK
MRTKのセットアップ Unity Package インポート後に出てくる 設定をApply もし、Later で飛ばしてしまっても後からやり 直すことができます Mixed Reality
Toolkit -> Utilities -> Configure Unity Project
シーンのセットアップ Mixed Reality Toolkit -> Add to Scene and Configure
Hierarchy に下記が生成される - Mixed Reality Toolkit - Mixed Reality Playspace
セットアップ済みのシーンを使う (UPM版) UPM版では、サンプルの構築済 みのシーンをインポートできる Assets -> Samples -> Mixed Reality
Toolkit Foundation -> Scene System Resources -> DefaultManagerScene
MRTKのセットアップ Profile Mixed Reality Toolkit Profile Camera Profile Camera Settings
Profile Input System Profile Input Pointer Profile ・・・ MRTKは複数のProfileと呼ばれる機能ごとの設定によって動作が決まる
MRTKのセットアップ HoloLens 2 用に設定する Default Mixed Reality Toolkit Configuration Profile
を押す Default HoloLens 2 Configuration Profile を選択 Game Scene が真っ暗になって いたらOK
Sceneを再生してみる Shift キーを押す 手が出たらOK Play ボタンを押し てSceneを再生する
Cubeを動かしてみよう Cube の配置 + ボタン -> 3D Object -> Cube
Hierarchy -> Cube Position (0, 0, 1) Rotation (0, 0, 0) Scale (0.2, 0.2, 0.2)
Cubeを動かしてみよう Object Manipulator をつける Object Manipulator 片手または両手でオブジェクトの - 移動 -
拡大・縮小 - 回転 ができるようになる (旧) Manipulation Handler
Cubeを動かしてみよう Simulator で動かす Shift で手を出して マウスを左クリック これでCubeを掴んだ 状態になる マウスを動かせば 上下左右に
ホイールを動かせば 前後に
Button を配置しよう Mixed Reality Toolkit Foundation -> SDK -> Features
-> UX -> Prefabs -> Pressable Button HoloLens 2 を Hierarchy に D&D Position (0, -0.02, 0.2) Rotation (0, 0, 0) Scale (1, 1, 1)
Button を配置しよう Scene を再生して、Shift を押しな がらマウスホイールを動かすとボ タンが押せる ポコッ♬ 音とアニメーションでフィードバック が返ってくる
Button などのコンポーネントを参照しやすくする Tools Package を追加する Unity Package Manager "com.microsoft.mixedreality. toolkit.tools":
"2.5.1", を追加 Unity Package Microsoft.MixedReality.Toolkit.Un ity.Tools.2.5.1.unitypackage
Button などのコンポーネントを参照しやすくする Toolbox からコンポーネントを配置する
Button を押してCubeの色を変えよう Material を作ろう + ボタン -> Material で 2つのマテリアルを作る
右クリックでRenameして - Before - After としておく Shader を Mixed Reality Toolkit -> Standard に設定する
Button を押してCubeの色を変えよう Material を設定する Before Main Maps Albedo を (0,
100, 0) After Border Light にチェック Inner Glow にチェック Color を (0, 200, 255)
Button を押してCubeの色を変えよう Material を適応する Before を Cube に D&D
Button を押してCubeの色を変えよう Button を押したときのアクションを決めよう Pressable Button の Button Config Helper
の Basic Events の On Click () に Cube を D&D
Button を押してCubeの色を変えよう
Button を押してCubeの色を変えよう
Button を押してCubeの色を変えよう
まとめて動かそう Create Empty で空のオブ ジェクトを生成 名前をTreeにする 複数のオブジェクトをD&D でTreeの下に置く
まとめて動かそう Tree に Object Manipulator をアタッチするでもまとめて動かすことができるが、 今回は Joy Stick という
Experimental な機能を使う MRTKでは実験的な機能も公開されている Microsoft Mixed Reality Toolkit 2.5.0 release notes | Mixed Reality Toolkit Documentation
まとめて動かそう Joy Stick と入力 Joystick Prefab を Hierarchy に D&D
Position (-0.2, -0.1, 0.4) Target Object に Tree を D&D
まとめて動かそう Debug Text の文字がすごいでかいので、 3 くらいにする 遠方にあって操作しづらいものや、オブ ジェクトのサイズがすごい大きいor小さ いものでも、簡単に操作できる
空間を認識できるようにしよう Profilerの設定 • デフォルトではパフォーマンスの観点から 空間認識はOffになっている • MRTKで用意されているテンプレートのプロ ファイルは直接編集できず、テンプレート を複製して設定する Clone
で複製する チェックボックス を有効にする
アプリのビルド Package 名を変更する Unity で HoloLens (UWP) アプリを作る際のパッ ケージ名をプロダクト名に変更するスクリプト -
たるこすの日記 (hatenablog.com) HoloLensにインストールされている他アプリの パッケージ名と重複しない名前に変更する ※ 名前は何でもいい
アプリのビルド VR を有効にする
アプリのビルド アプリをビルドする ビルド先のフォルダを作成する ※ 名前は何でもいい ビルドを選択 フォルダーの選択
アプリのビルド アプリをビルドする ビルド後の.slnファイルを開く • Release • ARM64 • デバイス に切り替えてHoloLensをPCに接続してデバイスを押す
None
もっといいデモなかったのか… 10分は厳しかった…
Examples で使い方を覚えよう Unity Package Manager "com.microsoft.mixedreality. toolkit.examples": "2.5.1", を追加 MRTK
Examples Hub | Mixed Reality Toolkit Documentation (microsoft.github.io)
日本語ドキュメント MRTK へようこそ | Mixed Reality Toolkit Documentation (hololabinc.github.io)
MRTK UX components v2.5.0 1:30pm – 1:55pm Session 4 MRTK
UX components v2.5.0 より詳しいセッションは明日! Mixed Reality Dev Days Japan - Mixed Reality | Microsoft Docs