Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
続・SharePlayの歴史と進化 iOS18とApple Vision Proにおける新展開
Search
tokorom
August 22, 2024
Technology
1.2k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
続・SharePlayの歴史と進化 iOS18とApple Vision Proにおける新展開
tokorom
August 22, 2024
More Decks by tokorom
See All by tokorom
CursorでアプリをBuild/Lint
tokorom
0
310
SharePlayの歴史と進化 そしてvisionOSへ (iOSDC 2023)
tokorom
3
1.4k
5分でSharePlay入門
tokorom
3
1.6k
HomeKit 2020
tokorom
7
2.9k
Advanced Segue 2019年のSegue事情
tokorom
9
6.6k
tvOSアプリUIの勘所
tokorom
1
2.5k
カッコ悪くリアクティブじゃダメですか?
tokorom
7
13k
古き良きsendAction (in potatotips #26)
tokorom
1
4k
画面遷移と私(iOS)
tokorom
4
4k
Other Decks in Technology
See All in Technology
SDDの運用にめげずに向き合った話
sansantech
PRO
0
130
[2026 Oracle Technical Deep Dive] オンプレミスDBのCloud移行アプローチ:移行計画に基づくメソッドとツールの選択 (2026年9月17日開催)
oracle4engineer
PRO
0
140
生成AIと進める探索的データ分析(2026.10.03 第122回Tokyo.R勉強会)
tatamiya
2
1.4k
freeeらしさをAIとともに作る / Creating the freee Experience with AI
ymrl
0
200
Execution in the Kingdom of Agents: Reflections on Abstraction and Complexity
bcantrill
0
840
AgentCoreで実践するハーネスエンジニアリング
yakumo
1
280
Futexes the good, the bad, the ugly
ennael
PRO
0
120
FinTech 1-2 : Overview of FinTech
ks91
PRO
0
150
2026-10-01_MagicPod_QAハーネスエンジニアリングとQA組織の未来像
ynisqa1988
1
530
[2026 Oracle Technical Deep Dive] AI時代のデータベース基盤をどう選ぶ? Exadata Database Serviceの選択肢と使い分け (2026年9月17日開催)
oracle4engineer
PRO
0
220
ミイダス株式会社 テックチームのご紹介 / MIIDAS Tech Team
miidas
0
150
「とりあえず動く」の先へ。 AI時代のチーム開発と内部設計/2026-slsdays
slsops
0
150
Featured
See All Featured
Skip the Path - Find Your Career Trail
mkilby
1
240
Test your architecture with Archunit
thirion
2
2.4k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
840
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
500
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
2
930
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
720
Exploring anti-patterns in Rails
aemeredith
4
520
Embracing the Ebb and Flow
colly
88
5.2k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
290
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3.2k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
520
Transcript
ॴ༑ଠ:VUB5PLPSP J04UW04WJTJPO04"QQ1SPHSBNNFS ଓɾ4IBSF1MBZͷྺ࢙ͱਐԽ J04ͱ"QQMF7JTJPO1SPʹ͓͚Δ ৽ల։ J04%$+BQBO 5SBDL$
@tokorom tokorom Spinners Inc. ॴ ༑ଠ / Yuta Tokoro
"HFOEB w 4IBSF1MBZͬͯͳʹʁ w 4IBSF1MBZͷྺ࢙ͱਐԽ w ͷΞοϓσʔτ w "QQMF7JTJPO1SPͰͷ4IBSF1MBZ
4IBSF1MBZͬͯͳʹʁ
4IBSF1MBZͱ 'BDF5JNF௨தʹΕͨॴͷΓ߹͍ͱΞϓϦͷίϯςϯπΛڞ༗
4IBSF1MBZͱ 'BDF5JNF௨தʹΕͨॴͷΓ߹͍ͱΞϓϦͷίϯςϯπΛڞ༗ ʹఫഇ
4IBSF1MBZͱ 'BDF5JNF௨தʹΕͨॴͷΓ߹͍ͱΞϓϦͷίϯςϯπΛڞ༗ ʹఫഇ ʹఫഇ
4IBSF1MBZͱ ΞϓϦͰ༏Εͨ ڞ༗ମݧ Λఏڙ͢Δ͜ͱΛతͱͨ͠ػೳ
छͷ4IBSF1MBZ ը໘ڞ༗ ಈըɾԻָͷڞࢹௌ ΧελϜ
छͷ4IBSF1MBZ ը໘ڞ༗ ಈըɾԻָͷڞࢹௌ ΧελϜ
4IBSF1MBZͷྺ࢙ͱਐԽ
4IBSF1MBZొʂ w ͨͩ͠'BDF5JNFͷ௨தʹ͔͠ൃՐ͠ͳ͍
'BDF5JNF௨தͰͳͯ͘ൃՐʂ w 'BDF5JNFͰͷ௨தͰͳͯ͘ΞϓϦओಋͰ։࢝Ͱ͖ΔΑ͏ʹ w J.FTTBHF͔Β։࢝Ͱ͖ΔΑ͏ʹ w ͨͩ͠ʮ࿈བྷઌΛ͍ͬͯΔ૬खʯͷΈ
"JS%SPQͰ୭ͱͰ͙͢ʹ։࢝ʂ
"JS%SPQͰ୭ͱͰ͙͢ʹ։࢝ʂ w "JS%SPQʹରԠ͠ʮ࿈བྷઌΛΒͳ͍૬खʯͱ4IBSF1MBZՄೳʹ w J04ͷJ1IPOF̎Λ͚ۙͮͯ"JS%SPQʹରԠ ࠓͷϥϯν Ͳ͏͢Δʁ λίεΛ4IBSF1MBZͰ ΈΜͳͰങ͓͏ʂ ͋ɺςΟϛϥ
จՃͯ͘͠ΕͨͶ
ͦͷଞͷόʔδϣϯΞοϓ
J04 w ૹ৴Ͱ͖ΔϝοηʔδαΠζ͕,#͔Β,#ʹ֦େ
J04 w ϨΠςϯγͷվળ w ༏ઌͷ͍ϝοηʔδΛ6%1ͰϨΠςϯγͰૹ৴Ͱ͖ΔΑ͏ʹ
ߴ
J04 w 4IBSF1MBZͷ։࢝Λ؆୯ʹαϙʔτ͢ΔͨΊͷ (SPVQ"DUJWJUZ4IBSJOH$POUSPMMFS
J04 w ϑΝΠϧΛૹ৴Մೳʹ
ͷΞοϓσʔτ
J04 w )-4ΠϯλʔεςΟγϟϧͷಉظʹରԠ
WJTJPO04 w ಈըͷϑϧεΫϦʔϯ࠶ੜ࣌ʹಉ͡ڥʹ for await session in MyActivity.sessions() { playerViewController
.player? .playbackCoordinator .coordinateWithSession(session) playerViewController .groupExperienceCoordinator .coordinateWithSession(session) }
WJTJPO04 w ͋ͱ̎ͭʮ"QQMF7JTJPO1SPͰͷ4IBSF1MBZʯͰհ
"QQMF7JTJPO1SPͰͷ4IBSF1MBZ
ϗʔϜը໘͔Β'BDF5JNF4IBSF1MBZ w WJTJPO04Ͱ'BDF5JNF4IBSF1MBZ͕ಛผͳѻ͍ʹ
ϗʔϜը໘͔Β'BDF5JNF4IBSF1MBZ w WJTJPO04Ͱ'BDF5JNF4IBSF1MBZ͕ಛผͳѻ͍ʹ
4IBSF1MBZಋઢ͕ৗʹදࣔ w 'BDF5JNFதશΟϯυͷ্෦ʹৗʹ4IBSF1MBZಋઢ
Οϯυ4IBSF1MBZத
ۭؒͰͷ4IBSF1MBZ
ۭؒϖϧιφ 4IBSF1MBZ
WJTJPO04 4IBSF1MBZ People expect most visionOS apps to support SharePlay.
ۭؒϖϧιφͷςϯϓϨʔτ w ࢀՃऀͷϖϧιφ͕ίϯςϯπͷपลͰͲ͏ฒͿ͔Λ੍ޚՄೳ
ۭؒϖϧιφςϯϓϨʔτͷΧελϚΠζ w WJTJPO04 ৽ͨʹۭؒϖϧιφςϯϓϨʔτͷΧελϚΠζ͕Մೳʹ
ۭؒϖϧιφςϯϓϨʔτͷΧελϚΠζ w αϯϓϧίʔυ systemCoordinator.configuration.spatialTemplatePreference ɹ ɹɹ= .custom(CustomTemplate())
ۭؒϖϧιφςϯϓϨʔτͷΧελϚΠζ w αϯϓϧίʔυ struct CustomTemplate: SpatialTemplate { let elements: [any
SpatialTemplateElement] = [ .seat(position: .app.offsetBy(x: 0, z: 4)), .seat(position: .app.offsetBy(x: 1, z: 4)), .seat(position: .app.offsetBy(x: -1, z: 4)), .seat(position: .app.offsetBy(x: 2, z: 4)), .seat(position: .app.offsetBy(x: -2, z: 4)), ] }
ۭؒϖϧιφςϯϓϨʔτͷΧελϚΠζ w 3PMFʢׂʣͷׂΓͯ .seat( ɹɹposition: .app.offsetBy(x: -3.5, z: 2.5), ɹɹrole:
Role.blueTeam )
ۭؒϖϧιφςϯϓϨʔτͷΧελϚΠζ w 3PMFʢׂʣͷׂΓͯ
ۭؒϖϧιφςϯϓϨʔτͷΧελϚΠζ w 3PMFʢׂʣͷׂΓͯ // ੨νʔϜʹׂΓͯ systemCoordinator.assignRole(Role.blueTeam) // RoleΛղআ systemCoordinator.resignRole()
ۭؒϖϧιφςϯϓϨʔτͷΧελϚΠζ w ͲͷํΛ͔͘ͷࢦఆ .seat( ɹɹposition: .app.offsetBy(x: -3.5, z: 2.5), ɹɹdirection:
.lookingAt(xxxSeat) )
ۭؒϖϧιφςϯϓϨʔτͷΧελϚΠζ w ͲͷํΛ͔͘ͷࢦఆ .lookingAt(xxxSeat).rotatedBy(.degrees(30))
ۭؒϖϧιφςϯϓϨʔτͷΧελϚΠζ
γϛϡϨʔλͰ4IBSF1MBZ
γϛϡϨʔλͰ4IBSF1MBZ
8SBQ6Q w 4IBSF1MBZ'BDF5JNF͕ͳͯ͘࿈བྷઌΛΒͳ͍૬खͱͰՄೳ w 4IBSF1MBZWJTJPO04ͷࠜװΛ୲͏ w શͯͷΞϓϦ͕4IBSF1MBZରԠ
͓·͚ w 5BCMFUPQ,JUʹ4IBSF1MBZͷػೳ͕แ