visionOS のアップデート。SwiftUI と RealityKit との親和性が高まったことが嬉しい。ハンドトラッキングの即応性が高まったのも嬉しい。あとは、AI、Speech-to-Text、ビデオ周り、エンタープライズ向けのアップデート。
触れる機会はなさそうだが、Enterprise API でウィンドウがユーザー追従してくれそうなのが気になる。
0:00 – Introduction
- visionOS 26のリリースにより、アプリを次のレベルに引き上げる多くの新機能が追加
- 本セッションでは、ボリュメトリック機能、システム機能、ゲーム・アクセサリ、共有体験、没入型メディア、空間Web、エンタープライズAPIなど、幅広い新機能を紹介
1:34 – Volumetric features
- SwiftUIに3Dレイアウトを強化する新機能が多数追加 (Spatiall layout)
depthAlignment
でZ軸方向の整列が簡単にrotation3DLayout
でレイアウトを意識した回転が可能に- その他多くの従来のモディファイアが3Dにも対応
- Volume内でAlert, Sheet, Menu, PopoverなどのUIプレゼンテーションが可能に
- Volumes, Ornaments, Attachments から表示可能
- dynamic bounds restrictions で、アプリの境界を越えてコンテンツをレンダリングし、現実世界とシームレスに融合
.preferredWindowClippingMargins
modifier
- 新しいObject Manipulation API や RealityKit の
ManipulationComponent
で、3Dオブジェクトの直感的な操作を実現 - SwiftUI, RealityKit, ARKit間の連携が強化され
- 座標変換やジェスチャーハンドリングが容易に ( SwiftUI view → ARKit accessor anchor でさえも可能)
- RealityKit の Observable entity が、SwiftUI のアップデートとも連携可能に
ViewAttachmentComponent
: UIをRealityView のコードに対してインラインに実装可能に- Model3D to RealityView
- アニメーションの再生制御が可能
.realityViewSizingBehavior
: 3D content内に対しどうサイズ調整するか
10:28 – System features
- Apple Intelligence 機能の利用
- Foundation Models framework により、オンデバイスLLMへのアクセスが可能に
- Image Playground が進化し、ChatGPT 連携や新しいスタイルを追加
- 新しいSpeech-to-text API
SpeechAnalyzer
と新モデルSpeechTranscriber
が登場。高速・高精度な文字起こしをオンデバイスで実現。 - ウィンドウやシーン、Quick Look コンテンツが再起動後も同じ場所に復元されるように
- SwiftUI の復元APIにより、どのシーンに対し復元を許容するか指定可能に
.defaultLaunchBehavior(.supressed)
.restorationBehavior(.disabled)
- SwiftUI の復元APIにより、どのシーンに対し復元を許容するか指定可能に
- WidgetKitもvisionOSに最適化され、ガラスや紙のような質感調整や、ユーザーとの距離に応じた表示切替が可能に
levelOfDetail
widgetTexture
supportedMountingStyles
15:21 – Games and spatial accessories
- ハンドトラッキングが最大3倍高速化(90Hz)し、ゲームの応答性が向上
- 新しい空間アクセサリ (spatial accessories) に対応
- Sony PlayStation VR2 Sense controller: 6DoFトラッキング可能なゲームコントローラ
- Logitech Muse: 精密な描画や彫刻に適したクリエイティブツール
- Shared space / Full space で有効
- RealityKit / ARKit でトラック
- ハイエンドiPadゲームの Vision Pro 対応
- App Store Connect 経由で、既存のハイエンドiPadゲームをvisionOSに簡単に移植可能に
- Progressive Immersion Styleが拡張され、既存のiOS/iPadOSゲームをvisionOSに最適化しやすく
- Compositor Services
- ホバーエフェクト: Metal immersive apps にも対応
- 動的なレンダー品質 (Dynamic render quality) 調整に対応
- macOS spatial rendering: Macのレンダリング能力を使って、高品質なイマーシブコンテンツをVision Proにストリーミング可能に
- TabletopKit が進化し、カスタムデータやカスタムアクションを簡単に追加・同期できるようになり、共有ゲームの開発が容易に
23:00 – Shared experiences
- SharePlayと 空間ペルソナ(Spatial Personas)により、遠く離れた人とも同じ空間でコンテンツを共有する魔法のような体験が実現
- Nearby Window Sharing により、相手の実際の位置や動きを仮想空間上に再現し、より自然な共同作業や会話を可能にする
25:03 – Immersive media ecosystem
- RealityKit の
ImagePresentatinoComponent
により、3D spatial content の生成が容易に - Apple Immersive Video(AIV)をサードパーティアプリに直接埋め込み可能に
- 180度、360度、WideFov フォーマットへも対応
- Apple Projected Media Profile(APMP)
31:04 – Spatial web
- Spatial Browsing: Safari のナビゲーションバーからボタンを押すだけで体験可能
- visionOSのSafariで、WebXRとmodel要素によるイマーシブなWeb体験をサポート
- Webサイト上で3Dモデルを表示したり、VR/ARコンテンツを体験したりすることが可能に
- Web Backdrop: 開発者用の新しいプレビューツール
- ビジターにカスタム immersive environments を提供する際に使用
- Look to Scroll:
.scrollInputBehavior(.enabled, for: .look)
34:13 – New enterprise APIs
- メインカメラのアクセスを shared space に活かすことができ、他の spatial app と同時にカメラ利用を伴う体験が提供可能
- Stereoscopic Main Session: 左右のメインカメラ個別/同時にアクセス可能
- ARKit の
CameraRegionProvider
: スタビライズされたビデオフィードにアクセス可能 - 新しいAPI Protected Content: .
contentCaptureProtected(bool)
を指定することで、特定のビューをキャプチャーから保護することができる - Window Follow Mode: ユーザーの位置にウィンドウが自動的に追従する
- Nearby Window Sharing for Enterprise
SharedCoordinateSpaceProvider