狠狠撸

狠狠撸Share a Scribd company logo
takabrz1 Takahiro Miyaura
Mixed Reality Toolkit 3
「MRTK XR Rig」と「Bounds Control」
2022/09
XRミーティング
宮浦 恭弘 (Miyaura Takahiro)
? 大阪駆動開発(とHolomagicians)コミュニティに生息
? HoloLens日本販売してからxR系技術に取組む
?最近はMixed Reality Toolkit 3と戯れている。
? 新しい技術や、MRに使えそうな技術を調べる
技術Tips : https://qiita.com/miyaura
@takabrz1 ※よかったらこれを機にお知り合いになってください
(貢献領域:Mixed Reality)
Microsoft MVP for Mixed Reality 2018-2023
某会社でSE(アプリケーション領域のアーキテクト的なお仕事なはず)= XRは趣味です
本日の内容
? Mixed Reality Toolkit 3の機能を見てみる
? MRTK XR Rig
? カメラやコントローラの基本Prefab
? (おまけ) Bounds Control
? 実装方法がV2と異なるか
2022/9/21 Copyright ? 2022 Takahiro Miyaura 3
経緯
ML2ハッカソンみたいなことがあった
2022/9/21
MRTK3がMagic Leap 2で動くかな?
とかしていた。
Copyright ? 2022 Takahiro Miyaura 4
経緯
ML2ハッカソンみたいなことがあった
実際のところどうだったの?
2022/9/21
○ 頭の6DOFは特に何もしなくても動いてた
○ ただ、原点位置がいまいちわかっていない???
○ ハンドトラッキングは作り込みがいるかもしれない(要調査)
○ 現状、ML2はOpenXR対応していない
○ モーションコントローラも作り込みは必要
※おさわり会の時はMRTKのハンドコントローラの動きを乗っ取った。
○ 1個だけ認識する前提での部品が必要
○ 一応XRI経由で制御可なのは確認
ML2のOpenXR対応次第かな。。。
それまでに無理してやるべきか
(技術的興味だけあるw)
Copyright ? 2022 Takahiro Miyaura 5
Mixed Reality Toolkit 3
おさらい
2022/9/21 Copyright ? 2022 Takahiro Miyaura 6
Mixed Reality Toolkit 3はPublic Preview版だから
検証目的で使ってね!
Microsoft 公式でもそう書かれています。
2022/9/21 Copyright ? 2022 Takahiro Miyaura 7
Mixed Reality Toolkit 3に至る経緯
- Mixed Reality Toolkit とは
Unity向けのMicrosoft公式のOSSライブラリ
2022/9/21 Copyright ? 2022 Takahiro Miyaura 8
?Unity向け
?クロスプラットフォーム
?最新バージョンはV2.8.2
?基本コンポーネント
?共通のインタラクション
?UIコントロール
※Unreal向けのMRTKもあります。
※実はBabylon.js版もある
Holotoolkit
HoloLens向け
Mixed Reality Toolkit
Windows Mixed Reality Devices対応
Mixed Reality Toolkit V2
HoloLens 1/2,VR Devices,Mobile AR…
Mixed Reality Toolkit 3
New!!!
既存ライブラリへの対応、標準化
? MRTK V2までで持つしかなかった機能や仕組みを改めて既存ライブラリを利用するように変更
MRTK3のポイント
2022/9/21 Copyright ? 2022 Takahiro Miyaura 9
業界標準、冗長な機能に対応するためのリファクタリングにより
扱いやすいライブラリへ
引用元:Microsoft Developer,「Getting started with your first MRTK3 project」, https://youtu.be/aVnwIq4VUcY, (参照
2022/06/11)
MRTK3のポイント
(参考)開発環境とパッケージ要件
開発に必要な環境とパッケージ
2022/9/21 Copyright ? 2022 Takahiro Miyaura 10
○ Mixed Reality Feature Tool
○ Unity 2020.3.35,2021.3.4 or newer
○ packages
? Mixed Reality OpenXR Plugin(from Mixed Reality Feature Tool)
? Input System*
? XR Management*
? XR Interaction Toolkit*
? OpenXR Plugin*
○ Visual Studio 2022
? Windows 10 SDK version 10.0.19041.0 or 10.0.18362.0, or Windows 11
SDK
? USB Device Connectivity (required to deploy/debug to HoloLens over USB)
? C++ (v142) Universal Windows Platform tools (required when using Unity)
*印はMRTK3を導入すると自動的に依存関係のあるpackageとしてインポートされます。
MRTK3での開発について
2022/9/21 Copyright ? 2022 Takahiro Miyaura 11
MRTK3の開発について
基本的にはMRTK V2と違いはなさそう
2022/9/21
○ 一方でアーキテクチャのベースがOpenXRやXR Interaction Toolkitになっているためお作法は変わっている
(OpenXRやXRI知ってる方が理解はしやすいです)
Copyright ? 2022 Takahiro Miyaura 12
MRTK3の開発について
サンプル試したい方
2022/9/21 Copyright ? 2022 Takahiro Miyaura 13
○Qiitaにまとめています。
○Getting started with your first MRTK3 project
https://qiita.com/miyaura/items/df5947d45cb3b86bbf18
○MRTK3について
○空のプロジェクトの作成~デプロイ
○Hand Interaction Example等のサンプルについて
Mixed Reality Toolkit 3
MRTK XR Rig
2022/9/21 Copyright ? 2022 Takahiro Miyaura 14
? XRIでのXRRigに相当
カメラや各種入力系のコンポーネントをまとめたもの
Mixed Reality Toolkit 3
MRTK XR Rig
2022/9/21 Copyright ? 2022 Takahiro Miyaura 15
○Main Camera
○デバイスの頭の位置に相当
○Tracked Pose Driverコンポーネントで位置制御
? XRIでのXRRigに相当
カメラや各種入力系のコンポーネントをまとめたもの
Mixed Reality Toolkit 3
MRTK XR Rig
2022/9/21 Copyright ? 2022 Takahiro Miyaura 16
○MRTK RightHand(LeftHand) Controller
○両手(モーションコントローラ)に相当
○NearInteractionModeDetector
○指先制御と掴む制御のモード切替え
○IndexTip PokeInteractor
○人差し指先のInteractor
○Far Ray
○遠方を指すためのレイ
○GrabInteractor
○掴む動作に関するInteractor
○GazePinchInteractor
○ピンチ操作に関するInteractor
(参考)XR Interaction Toolkit
https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.0/manual/installation.html
デバイス操作とコンテンツ動作を容易に相互作用する
2022/02/16 Copyright ? 2022 Takahiro Miyaura 17
Interactables
選択したり、アクティブに
することができるシーン内
のオブジェクト
Controllers
入力データを抽象化し、Interactorがそ
れを使ってInteractionの状態に変換する
方法を提供
Interaction Manager
InteractorsとInteractablesの管理と仲介
Register Register
Interactors
選択したりするアク
ションを処理
Select
Action Control
(参考)XR Interaction Toolkit
MRTK3の定義からみると。。。
MRTK RightHand Controllerでの関係
2022/9/21 Copyright ? 2022 Takahiro Miyaura 18
? XRIでのXRRigに相当
カメラや各種入力系のコンポーネントをまとめたもの
Mixed Reality Toolkit 3
MRTK XR Rig
2022/9/21 Copyright ? 2022 Takahiro Miyaura 19
○MRTK Gaze Controller
○Head Gazeに相当
○GazeInteractor
○MRTK Interaction Manager
○複数のInteractorの優先度付けを行い1つを選択
以下の課題を解消するための仕組み
? オブジェクトとの位置関係や操作に応じて複数
のInteractorが動作
? 複数の操作が同時に発生し誤動作につながる
(掴む動作と指先で押す動作など)
○Canvas Proxy Interactor
○UGUI上のイベント用
○XRIの仕組みに乗せるためのプロキシ
? XRIでのXRRigに相当
カメラや各種入力系のコンポーネントをまとめたもの
Mixed Reality Toolkit 3
MRTK XR Rig
2022/9/21 Copyright ? 2022 Takahiro Miyaura 20
UGUI側イベントはProxy XRI Interactorでフィードバック
MRTK3からのUI表現
Volumetric UI With Unity Canvas
2022/6/23 Copyright ? 2022 Takahiro Miyaura 21
従来のXRIでの関係
UGUIのイベントを
XRI Interactorに通して
処理を可能にする
(おまけ)
Mixed Reality Toolkit 3
Bounds Control
2022/9/21 Copyright ? 2022 Takahiro Miyaura 22
?操作対象にMRTKの幾つかのコンポーネントを設定
MRTK V2とほぼ一緒ですね。
(おまけ)Mixed Reality Toolkit 3
Bounds Control
2022/9/21 Copyright ? 2022 Takahiro Miyaura 23
○Object Manipulator
○オブジェクトをコントローラで操作する
○Constraint Manager
○Object Manipulator/Bounds Control等の制約
を管理
○Min Max Scale Constraint
○オブジェクト操作時のサイズを制限
○Bounds Control
○辺/角の操作点を使ってサイズや向きを調整
本日の内容
? Mixed Reality Toolkit 3の機能を見てみる
? MRTK XR Rig
? カメラやコントローラの基本Prefab
? XRIをベースに開発者が楽をできる構成で提供
? 近距離、遠距離、掴む、押すといった複数の操作を調整
? UGUIとの区別なく制御可能
? 各種デバイスへの対応も容易(※OpenXRだと。。。)
? 未対応デバイスへも大掛かりな改修なく対応できそう
? (おまけ) Bounds Control
? 実装方法はあまりV2と変わらない
2022/9/21 Copyright ? 2022 Takahiro Miyaura 24
MRTK V2を触っているとなんとなく同じように開発できる。
XRI等知っておくとMRTK3の理解はしやすそう。
MRTK3に関する情報
? Github - Mixed Reality Toolkit 3
? https://github.com/microsoft/MixedRealityToolkit-Unity/tree/mrtk3
? MTRK3ドキュメント
? https://aka.ms/mrtk3
? MRTK3 Tutorial : "Zappy's Playground"
? https://aka.ms/ZappysPlayground
? Mixed Reality Dev Days 2022
? 再生リスト:https://www.youtube.com/watch?v=U1BSqLbW-PM&list=PLlrxD0HtieHhkPlibqfQf1pGvM0vLNPpL
1. Introducing MRTK3 – Shaping the future of the MR Developer Experience.(https://youtu.be/fjQFkeF-ZOM)
→過去のMRTKの取組みから振返り、MRTK3がどういったコンセプトで今回作られたのか
2. Getting started with your first MRTK3 project(https://youtu.be/aVnwIq4VUcY)
→MRTK3動かしてみようぜ
3. MRTK3 Interaction building blocks(https://youtu.be/naVziEJ-yDg)
→MRTK3の入力系についての設計や構造
4. Building Rich UI for MR in MRTK3(https://youtu.be/g2HF5HMy-2c)
→MRTK3の素敵なUIをどう構築しているか
5. Working with Dynamic Data and Theming in MRTK3(https://youtu.be/IiTpZ2ojyno)
→データバインディングとテーマ制御について
6. Deploy Everywhere with OpenXR and MRTK3(https://youtu.be/LI6lyW9TG9o)
→MRTK3のOpenXR対応で色々デバイスで動く話
2022/9/21 Copyright ? 2022 Takahiro Miyaura 25
大阪駆動開発
関西を中心に、IT系のおもしろそうなことを
楽しんでやるコミュニティ
2022/9/21

More Related Content

Mixed Reality Toolkit 3 - 「MRTK XR Rig」と「Bounds Control」