Upgrade to Pro — share decks privately, control downloads, hide ads and more …

HoloLens 2 × Photon PUN 複数人での低遅延コンテンツ共有公式サンプルを動かしてみた

HoloLens 2 × Photon PUN 複数人での低遅延コンテンツ共有公式サンプルを動かしてみた

2020/06/17(Wed) XRMTG ― LT登壇資料

堀尾風仁 Futo Horio

June 17, 2020
Tweet

More Decks by 堀尾風仁 Futo Horio

Other Decks in Technology

Transcript

  1. HoloLens 2 × Photon PUN
    複数人での低遅延コンテンツ共有
    公式サンプルを動かしてみた
    神 戸 デ ジ タ ル ・ ラ ボ
    新 事 業 創 造 係 堀 尾 風 仁
    X R M T G L T 登 壇 資 料 - 2 0 2 0 / 0 6 / 1 7
    複 数 人 で リ ア ル タ イ ム に コ ン テ ン ツ 共 有 を 実 現

    View Slide

  2. 堀 尾 風 仁
    株 式 会 社 神 戸 デ ジ タ ル
    新 事 業 創 造 係 M R 班 班 長
    M i x e d R e a l i t y ア プ リ ケ ー シ ョ ン
    企 画 ・ 導 入 ・ 開 発 な ど を 担 当
    神 戸 デ ジ タ ル ・ ラ ボ 入 社 ( 2 0 1 5 )
    I o T / M R な ど の 新 規 事 業 担 当 ( 2 0 1 6 - 2 0 1 8 )
    Microsoft Mixed Reality パートナープログラム
    M R P P 認 定 ( 2 0 1 8 / 0 7 )
    M i x e d R e a l i t y 専 任 ( 2 0 1 8 - 現 在 )
    コ ミ ュ ニ テ ィ 運 営
    A z u r e T e c h L a b . ( 2 0 1 9 - )
    A R K O B E ( 2 0 1 9 - )
    T w i t t e r
    ( @ F u t o _ H o r i o )

    View Slide

  3. Multi-user Capabilities チュートリアル動かしてみた (動画)
    Wikipedia 「ランダー」ページより引用。
    Photon PUN と Azure Spatial Anchors を
    組み合わせて、複数人でランダーを完成させ、
    宇宙に飛ばすことができるデモ
    今日19時過ぎにようやくサンプルが動きました!

    View Slide

  4. M i c r o s o f t H o l o L e n s 2 公 式 チ ュ ー ト リ ア ル
    https://docs.microsoft.com/en-us/windows/mixed-reality/tutorials
    HoloLens 2 公式チュートリアル (全5種類)
    1.Getting started tutorials
    - プロジェクトの新規作成/MRTK概要/デプロイ方法
    2.Azure Spatial Anchors tutorials
    - Azure Spatial Anchors を用いたデモ
    3.Azure Speech Service tutorials
    - Azure Speech API を用いてデモ
    4.Multi-user capabilities tutorials
    - Photon PUN, ASA を用いたデモ
    5.Spatial audio tutorials
    - 空間音響に関するデモ
    Unity / Unreal

    View Slide

  5. 今 回 の 検 証 環 境
    ・Windows 10 バージョン 2004 / OSビルド番号 19041.207
    ・Windows SDK 10.0.18362.0
    開発用PC : Windows 10 (Pro)
    使用ソフトウェア 一覧
    ・Visual Studio 2019 Community 最新版
    ・Version 16.6.2
    ・Unity 2019.2.21f1
    ・UWP - ユニバーサル Windows プラットフォーム Build Support
    ・IL2CPP - Windows Build Support
    ・MRTK ( Mixed Reality Toolkit-Unity ) v2.3.0
    ※ 2020/06/17 現在、公式チュートリアルも MRTKv2.3 の状態で更新無し

    View Slide

  6. W h a t ’ s P h o t o n P U N
    Exit Games 社 (USA/Germany) が提供する マルチプラットフォーム対応の Unity ネットワークエンジン ( Unity Package )
    PUN ( Photon Unity Network ) を使えば、複数人で低遅延なコンテンツ共有が可能になります。
    マルチプラットフォーム対応
    Unity Package 提供
    (Unity PUN アカウント作成必要)
    Photon Cloud 仕組み
    (マスタサーバー/ゲームサーバー)
    マスターサーバー
    ゲームサーバー
    ロビー
    ルーム ルーム

    View Slide

  7. W h a t ’ s A z u r e S p a t i a l A n c h o r s ( A S A )
    Azure Mixed Reality サービスで、2020年5月 Microsoft Build にて、GA (一般提供開始) となりました。
    現実空間をトラッキングしたデータ (空間情報) をクラウド上で管理、複数端末間で共有できるサービス。
    https://docs.microsoft.com/ja-jp/azure/spatial-anchors/tutorials/tutorial-share-anchors-across-devices?tabs=VS%2CAndroid
    ASA では、アンカー情報
    ・空間トラッキング データ
    ・仮想オブジェクトの配置位置
    を複数端末で、永続的に (再)利用可能

    View Slide

  8. シ ス テ ム 構 成 ( 処 理 フ ロ ー )
    HoloLens 2
    (ユーザー1)
    HoloLens 2
    (ユーザー2)
    Photon PUN サーバー
    Azure Spatial Anchors
    HoloLens 2 複数台(2台) でアプリケーションを動作させる場合の処理フロー
    ① コネクション確立
    ② ルーム、ユーザーの作成
    ③ アンカー作成、共有
    ④ オブジェクトのインスタンス生成、同期
    ⑤ コネクション確立
    ⑥ ユーザー作成、ルーム入室
    ⑦ アンカー情報問い合わせ
    ⑧ アンカー情報返却
    ⑧ オブジェクトの同期

    View Slide

  9. 利 用 方 法 ( 手 順 )
    ・Unity 上での Photon PUN 設定方法
    ・ネットワーク上で同期させるオブジェクトの生成・破棄 (処理)
    ・Photon PUN 導入手順
    ・詳細 Qiita に書く予定です。
    https://qiita.com/Futo_Horio/items/d1b828db2aeadaa46288
    基本的には、公式チュートリアルの手順通りに進めれば動きます... (たぶん)

    View Slide

  10. U n i t y 上 で P h o t o n P U N 設 定 方 法
    サーバーへの接続情報は、Unity PUN Wizard より 確認することができます (GUI)
    ・接続リージョンの指定
    ・開発時にログを見たい場合は、
    Support Logger にチェックを入れる

    View Slide

  11. P h o t o n P U N の 処 理 概 要 ( P h o t o n L o b b y / P h o t o n R o o m )
    ( 1 ) P h o t o n L o b b y . c s
    ( 2 ) P h o t o n R o o m . c s
    ・Photon サーバーへの接続
    ・ルームの作成
    ・プレイヤーの作成
    ・同期するオブジェクトの生成

    View Slide

  12. 既 知 の 問 題
    ― Windows 10 SDK 10.0.19041 を使用した際、デプロイは成功するが、アプリ上でエラーが発生する。
    Windows 10 SDK 10.0.19041 で Photon サーバーに接続できない
    https://github.com/MicrosoftDocs/mixed-reality/issues/2212

    View Slide

  13. 解 決 方 法
    Unity Build Settings / Visual Studio ビルドプロパティを修正する
    グローバルメニュー デバッグ > デバッグプロパティ
    グローバルメニュー ファイル > ビルド設定
    ― 特に、Windows 10 SDK 10.0.19041 インストール済みの場合、Latest Installed になっていないことを確認する

    View Slide

  14. 解 決 方 法
    Unity Build Settings / Visual Studio ビルドプロパティを修正する
    グローバルメニュー デバッグ > デバッグプロパティ
    グローバルメニュー ファイル > ビルド設定
    ― それでもエラーが発生する場合は、Windows 10 SDK 10.0.19041 をアンインストール

    View Slide

  15. ・Microsoft HoloLens 2 Tutorials | Multi-user capabilities tutorials
    https://docs.microsoft.com/en-us/windows/mixed-reality/mrlearning-sharing(photon)-ch1
    ・Microsoft Azure / Spatial Anchors (公式)
    https://azure.microsoft.com/ja-jp/services/spatial-anchors/
    ・Photon PUN 構造 (公式)
    https://doc.photonengine.com/ja-jp/pun/v2/getting-started/pun-intro
    ・PUN2で始めるオンラインゲーム開発入門【その1】
    https://connect.unity.com/p/pun2deshi-meruonraingemukai-fa-ru-men-sono1
    参 考 文 献

    View Slide

  16. ま と め
    ・Photon PUN を使用することで気軽にマルチユーザーでのシェアリング体験をつくることができる
    ・相手が操作しているときに、多少オブジェクトがカクつく気がした
    ・複数人でオブジェクトを共有、操作できる体験はやっぱり最高!

    View Slide

  17. @ F u t o _ H o r i o
    ご 質 問 、 ご 相 談 等 お 気 軽 に ど う ぞ !
    https://twitter.com/Futo_Horio
    ご 清 聴 あ り が と う ご ざ い ま し た !
    T h a n k s

    View Slide