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
AndroidXR 開発ツールごとの できることできないこと
Search
donabe
February 15, 2025
Technology
0
280
AndroidXR 開発ツールごとの できることできないこと
Android XR触ってみた発表会 (ゆるめ)にて発表
https://iwakenlab.connpass.com/event/345127/
donabe
February 15, 2025
Tweet
Share
More Decks by donabe
See All by donabe
Unityがマルチプラット フォームビルドできる理由は? よく聞くIL2CPPって? 調べてみました!
donabe3
0
11
ハッカソン請負人の 開発ルーティンを紹介!
donabe3
0
54
OutOfRange 【プロトスプリントリーグ】
donabe3
0
54
Unityで都市開発シミュレーションゲーム開発をしてみよう
donabe3
0
270
現実 VS バーチャルのマルチプレイゲームを作ろう
donabe3
0
150
Speech to Textureで 思い通りに世界を改変しよう
donabe3
0
24
院試までなにやったか
donabe3
0
28
XR Interaction toolkit & XRHands & Passthrough API で MR 開発
donabe3
0
260
XRの魅力を語りたい
donabe3
0
40
Other Decks in Technology
See All in Technology
Open Table Format (OTF) が必要になった背景とその機能 (2025.10.28)
simosako
2
390
Observability — Extending Into Incident Response
nari_ex
1
560
「タコピーの原罪」から学ぶ間違った”支援” / the bad support of Takopii
piyonakajima
0
150
AI機能プロジェクト炎上の 3つのしくじりと学び
nakawai
0
130
AI連携の新常識! 話題のMCPをはじめて学ぶ!
makoakiba
0
150
もう外には出ない。より快適なフルリモート環境を目指して
mottyzzz
13
11k
20251029_Cursor Meetup Tokyo #02_MK_「あなたのAI、私のシェル」 - プロンプトインジェクションによるエージェントのハイジャック
mk0721
PRO
5
1.9k
入院医療費算定業務をAIで支援する:包括医療費支払い制度とDPCコーディング (公開版)
hagino3000
0
120
会社を支える Pythonという言語戦略 ~なぜPythonを主要言語にしているのか?~
curekoshimizu
4
890
abema-trace-sampling-observability-cost-optimization
tetsuya28
0
340
AWS DMS で SQL Server を移行してみた/aws-dms-sql-server-migration
emiki
0
250
Dify on AWS 環境構築手順
yosse95ai
0
160
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
Navigating Team Friction
lara
190
15k
Designing for humans not robots
tammielis
254
26k
How to train your dragon (web standard)
notwaldorf
97
6.3k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The Language of Interfaces
destraynor
162
25k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
640
Transcript
AndroidXR 開発ツールごとの できることできないこと 土鍋 2025/2/15 Android XR触ってみた発表会 (ゆるめ) Iwaken Lab.
自己紹介 土鍋 @donadonadonabe XR・Unityエンジニア 大学: 会津大学→筑波大学大学院 活動: XR技術で様々な作品開発・ハッカソン出場&受賞 ポートフォリオ: https://donabe.myportfolio.com
2
目次 1. AndroidXR概要 2. 従来のAndroidアプリの移行 3. Jetpack Composeでの開発 4. Unityでの開発
5. WebXRでの開発 6. OpenXRでの開発 3
AndroidXRの概要(開発関連) 4
スペース ホームスペース フルスペース ・マルチタスク可能 ・空間パネル、3Dモデル、空間環 境はサポートしない ・追加の開発なしでAndroidアプリ が動く ・アプリは1つのみ稼働 ・空間パネル、3Dモデル、空間環
境、空間オーディオをサポート ・Unity、OpenXR、WebXRはフル スペースのみ 5
アプリの種類 6 モバイルアプリ サポートされていない機能 を使用していない限りその ままインストール可能 大画面アプリ アダプティブレイアウトに 対応してどんなサイズでも 問題なく動くアプリ
https://developer.android.co m/docs/quality-guidelines/la rge-screen-app-quality?hl=j a XR差別化アプリ 次のスライドで解説
XR向けに差別化されたアプリの要素 7 空間パネル 3Dモデル(Volume) 空間環境
AndroidXR向けアプリの開発方法 • 従来のAndroidアプリ • Jetpack Compose • Unity • WebXR
• OpenXR 8
エミュレーター 現状、唯一AndroidXR環境を試せるもの。 Jetpack Compose、Unity、WebXRを試したが、 動いたのはJetpack Compose製アプリだけだった 環境構築と起動方法は記事書いたのでご覧ください https://donabenabe.hatenablog.com/entry/AndroidXREmulatorTest 9
Androidアプリ 10
ほとんどのAndroidアプリとの互換性あり 既存のAndroidアプリの多くはそのままPlayStoreに並ぶ サポートされていない機能を利用している場合は並ばない ↓サポート一覧 https://developer.android.com/develop/xr/get-started?hl=ja#app-manifest 11
アダプティブレイアウト アダプティブレイアウトに対応していると、 ウィンドウ端を掴んで形を変えられる https://developer.android.com/develop/ui/compose/layouts/adaptive?hl=ja 12
Jetpack Compose 13
Jetpack Composeとは Android 用Kotlinベースの宣言型 UIフレームワーク Androidネイティブアプリ開発に用いられる 14
ホームスペース ホームスペースアプリはAndroid向けコードから 何も追加で開発せず動く • 移動可能 • リサイズ可能 • マルチタスク可能 15
フルスペース 要素そのままで少し書き換えるだけで フルスペースアプリ化可能 16
公式チュートリアル 2/12公開 初めてKotlinに触れたが分かりやすかった。 Learn Android XR Fundamentals: Part 1 -
Modes and Spatial Panels 17
ARCore ARCoreも使用できるらしい • 平面認識 • 空間アンカー • ハンドトラッキング エミュレーターで動作確認したかったができなそうだった 18
Unity 19
開発方法 XR Interaction ToolkitとAR FoundationとOpenXR Pluginで開発する ↑つまり上と同じ構成で作ったアプリはAndroidXRでも動く ハンドトラッキングにはXR Handsを使用可能 AndroidXR固有機能を使用するためには後述のパッケージが必要
導入方法は記事書いているのでご覧ください https://donabenabe.hatenablog.com/entry/UnityAndroidXRStart 20
開発方法 Unity OpenXR Android XR パッケージ https://docs.unity3d.com/Packages/com.unity.xr.androidxr-openxr@latest/ Unityが提供するパッケージ 21
開発方法 Android XR Extensions for Unity https://github.com/android/android-xr-unity-package Unity OpenXR Android
XR パッケージを補完する 没入型エクスペリエンスの構築に役立つ追加機能が含まれる 単独でも組み合わせても利用できる 22
2つのパッケージどっちを使うのか? 機能の比較表を公式が公開している https://developer.android.com/develop/xr/unity?hl=ja#features_and_c ompatibility_considerations 併用可能なので作るアプリに合わせて OpenXRのFeature Groupsのチェックボックスを切り替える 23
WebXR 24
サポートされるWebXRの機能 • Device API • AR Module • Gamepads Module
• Hit Test Module • Hand Input • Anchors • Depth Sensing • Light Estimation 25
エミュレーターで動かない おそらくフルスペース版のChromeが提供されていないから? 26
OpenXR 27
開発方法 OpenXR向けにビルドしたアプリなら動く エミュレーターが動かない以上確認はできないが、 MetaやSteamVR向けのアプリをOpenXR向けにビルドしていれば AndroidXR上で動く可能性がある 28
参考 Android XR https://developer.android.com/develop/xr?hl=ja Android XR - UI デザイン https://developer.android.com/design/ui/xr?hl=ja
Learn Android XR Fundamentals: Part 1 - Modes and Spatial Panels https://developer.android.com/codelabs/xr-fundamentals-part-1#0 Introducing Android XR SDK Developer Preview https://android-developers.googleblog.com/2024/12/introducing-android-xr-sdk-developer-preview.html Android XR向けのUIデザインについて https://zenn.dev/hololab/articles/androidxr-design Android XR アプリ開発 | 3Dモデルを ActivitySpace に配置する方法 | 技術ブログ | 株式会社OnePlanet https://1planet.co.jp/tech-blog/android-xr-oneplanet-241226-1-3d-model-activity-space 29