Slide 1

Slide 1 text

2024/9/24 @limes2018 Microsoft MVP for Mixed Reality & Developer Technologies Apple Vision Proと WebXRで試したこと

Slide 2

Slide 2 text

2 はじめに 6/26のvision OS Engineer Meetup vol.6では、Godot Engine を活用したvision osのアプリ開発方法について説明させていただきました。 Godot Engineを使った vision OSアプリ開発について - Speaker Deck 今回は、さらに別の手段であるWebXRを使った方法を紹介します。

Slide 3

Slide 3 text

XR関係で色々と活動。Babylon.js, Godot, Unity など。 Babylon.js勉強会の共同主催者 Babylon.jsの海外フォーラムで日本の宣伝役 2児の父で休日は公園や図書館に行くことが多い Blog : Cross Road https://www.crossroad-tech.com/ X: @limes2018 3 自己紹介 技術同人誌のイベント「技術書典」にて、 これまで4冊の本を共同で執筆&頒布

Slide 4

Slide 4 text

[1] WebXR(Babylon.js)を使って基本的機能が使えることを確認 (3Dモデル表示、移動、つかむなど) [2] Webサイトを工夫して、他の人が外から変更したらApple Vision Proの環境に反映される ようにしてみた 4 やってみたこと

Slide 5

Slide 5 text

5 [1] WEBXRを使った基本機能

Slide 6

Slide 6 text

6 [1] WEBXRについて https://immersiveweb.dev/

Slide 7

Slide 7 text

7 [1] WEBXRについて https://immersiveweb.dev/ AR/VRヘッドセット、 スマートフォン、 タブレット、 PCでXRコンテンツ を表示可能。

Slide 8

Slide 8 text

8 [1] WEBXRに対応したBABYLONSについて ゲーム/レンダリングエンジン向け、JavaScriptベースのフレームワーク 2013年より開発開始。WebXRにも準拠 https://github.com/BabylonJS/Babylon.js https://doc.babylonjs.com/features/featuresDeepDive/web XR/introToWebXR

Slide 9

Slide 9 text

9 [1] BABYLONJSとAPPLE VISION PRO Apple Vision Pro自体がWebXRに対応しているため、1行追加でVRモー ドを利用可能。 ただし、そのままでは3Dモデルを掴む、テレポート移動する機能が なかったので開発。 (次ページでYouTube動画を表示)

Slide 10

Slide 10 text

10 https://www.youtube.com/watch?v=VuLFv9ofVuY

Slide 11

Slide 11 text

11 [2] 共同編集のプロトタイプ

Slide 12

Slide 12 text

12 [2] 共同編集のプロトタイプ Webを利用して、Macの画面を出しながらVision Proの表示内容を 変更して、開発結果をすぐに確認できる仕組みを考えた。

Slide 13

Slide 13 text

13 [2] 共同編集プロトの構成 Webを利用して、Macの画面を出しながらVision Proの表示内容を 変更して、開発結果をすぐに確認できる仕組みを考えた。 サーバ Node.js runtime Express Websocket クライアント端末1 (Apple Vision Pro) ページ要求 サイト表示 クライアント端末2 (Mac/iPhoneなど) Websocket 3Dmodel, js , html Socket.io [(1)3Dモデルを表示、 仮想空間を移動 (2)3Dモデルの表示や色変 更を操作 (3) 変更指示がsocket.ioに 届く (4)クライアント端末2の 指示によって3Dモデルを 変更

Slide 14

Slide 14 text

14 https://www.youtube.com/watch?v=ln_Mk72_JHM

Slide 15

Slide 15 text

15 こんな感じで、Apple Vision Proを被って開発して (Mac) 、それを 同時に見られる、ということもできるかも・

Slide 16

Slide 16 text

16 今後の予定 ネットワークと連携するとさらにできることが広がるので、 Azureなどのクラウドで使用するとか、色々試してみようと 思います。 (最近あまり触れていないGodot Engineについても引き続き やっていきます!)