visionOSとは
2023年6月6日(日本時間)、Appleは開発者向けカンファレンス「WWDC23」で発表したMR(複合現実)ヘッドセット「Vision Pro」を発表しました。
Vision Proには、新たなOS「visionOS」が搭載されます。visionOSは、最新のAR技術と融合し、現実空間にデジタルコンテンツを投影することで、現実とデジタルの世界が融合したような新たな次元の体験を提供します。
この記事では、visionOSに焦点を当てて、visionOSの概要や、visionOSが持つ要素、使用可能なフレームワークやツールについて解説していきます。
【参考】:visionOS - Apple Developer
visionOSの概要
ここでは、MRヘッドセットであるVisionProに搭載されるvisionOSがどのような役割を持つのか、visionOSが掲げる空間コンピューティングとはどのようなものかなどについて解説します。
visionOSはVisionProに搭載される新OS
Apple Vision Proは、Appleの新たな展開として、3Dデジタルコンテンツを現実世界にシームレスに統合し、周囲とのつながりを保つウェアラブルデバイスとして発表されました。
Vision Proには、世界初の空間OS「visionOS」が搭載され、従来の画面の制約を超えて広がるアプリのためのキャンバスが提供されるとともに、ユーザは自分の目や手、声などを使って、自然な動作で3Dインターフェースを操作できます。
これにより、Vision Proでは、自分の存在している空間に、画像や映像などのデジタルコンテンツが物理的に存在しているような体験を得ることができます。
【参考】:Apple Vision Proが登場 — Appleが開発した初の空間コンピュータ - Apple (日本)
visionOSはVisionProのためにゼロから設計された
visionOSは、macOS、iOS、iPadOSが蓄積してきた様々な革新を受け継ぎながら、ゼロから徹底的にVisionPro向けに設計されたOSです。
ユーザを取り巻く環境を活かしてパワフルな空間体験を提供し、職場や自宅での新たな可能性を開拓する革命的なOSを目指し、空間コンピューティングに求められる高速な処理速度を追求して開発されました。
VisionProとvisionOSが実現する空間コンピューティング
visionOSは、空間コンピューティングのためにデザインされました。空間コンピューティングとは、従来のデスクトップやモバイルコンピューティングとは異なる新しいコンピューティングであり、作業環境が現実世界を背景としてユーザの目の前に浮かび上がることが特徴です。
Vision Proを装着すると、ユーザの周囲の環境にアイコンやウィンドウ、コンテンツが重ねて表示されます。visionOSが提供する空間キャンバスで、ユーザは自然な操作でアプリを操作し、没入感あふれる体験を楽しめます。
visionOSの特徴は、ユーザが3Dの世界に没入するだけではなく、周囲の人々とのコミュニケーションも維持できることです。Vision Proを装着している時に誰かが近づくと、ユーザが相手を認識できるよう、デバイスから周囲を見渡せるように設計されています。
visionOSの3Dインターフェース
visionOSでは、従来のディスプレイの枠から解き放たれた3Dインターフェースが提供され、アプリを自由に、好きな大きさで配置することができます。これにより、よく使用するアプリへのアクセスや、マルチタスクでの作業が強化され、生産性の向上が期待されます。
visionOSの要素
visionOSは、大きく3つの要素で構成されています。ウィンドウ、ボリュームと、これらを配置するスペースです。
ウィンドウ
visionOSアプリは1つ以上のウィンドウを持ちます。ウィンドウはiPadOSやmacOSと同様に、アプリのためのキャンバスとして機能し、自由にリサイズや再配置できます。
ウィンドウはSwiftUIを使用して作成され、従来のビューやコントロールを含むことが可能です。さらに、3Dコンテンツを組み込むことで、臨場感ある体験を提供します。
また、ウィンドウのデザインはすりガラスのような質感を持っており、現実世界の影や光がリアルに反映されます。
ボリューム
ボリュームは、visionOSアプリに立体感を加えるための要素で、SwiftUIのシーン内でRealityKitやUnityを使って3Dコンテンツを表示します。アプリは3Dの「ボリューム」を生成することで、オブジェクトやシーンを内包できます。
ボリュームはあらゆる角度からコンテンツを観察できる特徴があり、3Dコンテンツの活用や3Dゲームにおいて奥行きのあるコンテンツを魅力的に表現することが可能です。
スペース
スペースは、visionOSアプリを表示する空間の状態です。visionOSアプリは、共有スペースかフルスペースのどちらかで表示できます。
共有スペースでは複数のアプリが空中に浮かび、デスクトップのような配置が行われます。ユーザは、visionOSアプリが提供するウィンドウやボリュームなどの要素を自由に移動させることができ、自分の周囲の現実世界も見ながら操作可能です。
一方、フルスペースはアプリ専用の環境で、1つのコンテンツだけを表示する空間です。フルスペースでは、ウィンドウやボリュームを使用して、ユーザを完全な没入感あふれる3Dコンテンツを楽しむことができます。
visionOSに対応したフレームワークとツール
ここでは、visionOSを活用した空間コンピューティング向けに拡張されたAppleのフレームワークと、visionOSアプリ開発に必要なツールについて解説します。
フレームワーク
visionOSアプリを開発する場合に活用できるフレームワークには、SwiftUI、RealityKit、ARKitなどがあります。また、visionOSはアクセシビリティも考慮して設計されています。
■SwiftUI 新たなvisionOSアプリの開発や既存のiOSやiPadOSアプリの移植において、ウィンドウやボリューム、空間体験の構築にはSwiftUIが最適です。
SwiftUIは、3Dの新機能を活かし、奥行き、ジェスチャ、エフェクト、イマーシブなシーンをサポートしており、Apple Vision Pro向けの魅力的なアプリの開発を支援します。
また、コアな3DフレームワークであるRealityKitや、iOSアプリなどのWebアプリケーションを構築するフレームワークであるUIKitとの連携もスムーズで、visionOS向けアプリの開発に役立てることができます。これにより、新しい空間コンピューティング体験を提供するアプリの実現が可能です。
■RealityKit RealityKitは、3Dコンテンツ、アニメーション、ビジュアルエフェクトをアプリに組み込むための3Dレンダリングエンジンです。
RealityKitを活用することで、物理的な照明条件に応じて自動的に影を生成したり、異なる次元へのポータルを生み出したりするなどの、驚くようなビジュアルエフェクトを作成できます。
■ARKit ARKitは、デバイスのモーショントラッキングや、カメラによるシーンの取得などを組み合わせて、AR体験を容易に構築できるようにするフレームワークです。
Apple Vision Proには、ARKitが組み込まれています。これにより、ユーザの周囲の環境を認識し、アプリの共有スペース内で自動的にシステムのコア機能を使用することで、ユーザがAR体験を得ることができます。
また、フルスペースへの移行時には、ユーザの承諾を得て、平面推定、シーン再構築、画像アンカリング、ワールドトラッキング、骨格ハンドトラッキングなどの強力なARKit APIを利用できます。
これにより、水しぶきを壁に飛ばしたり、床上でボールを跳ねさせたり、現実世界とデジタルコンテンツを融合した表現を実現することができます。
■アクセシビリティ visionOSは、アクセシビリティを考慮して設定されており、Apple Vision Proの体験をすべてのユーザが楽しめるよう設計されています。
ユーザは目や音声、あるいはその両方を利用してデバイスを操作可能です。また、コンテンツ内の移動にはポインターコントロール機能を備えており、人差し指や手首、頭を代替ポインターとして使用できます。
ツール
visionOSによる開発に必要なツールとして、Xcode、Reality Composer Pro、Unityがあります。 Apple Developer Programのメンバーになることで、これらのツールを入手することができます。
【参考】:開発 - Apple Developer
■Xcode visionOS SDKに準拠したXcodeを使用することで、visionOSアプリの開発を行うことができます。既存プロジェクトにvisionOSのターゲットを追加するか、新規アプリを構築し、Xcodeプレビューで動作を確認しながら開発を進めます。
新しいvisionOSシミュレータを活用してアプリを操作することで、異なる部屋のレイアウトや照明条件でテストを重ね、視覚的な表現を検証することが可能です。
■Reality Composer Pro Reality Composer Proは、visionOSアプリ向けに、3Dコンテンツを簡単にプレビューできる、新しいツールです。3Dモデル、マテリアル、音源などのアセットの取り込みと整理を容易に行えます。
特にXcodeのビルドプロセスと緊密に統合されており、visionOSアセットをプレビューし、最適化を行うことができます。
■Unity Unityは、多機能で拡張性のあるゲームエンジンです。エディタや拡張機能などの開発環境や、ビルド機能など、統合開発プラットフォームとしての機能も有しています。
UnityでvisionOS向けの新たなアプリやゲームを制作したり、既存のUnityプロジェクトをvisionOS向けに再構築したりすることができます。AR Foundationなどの既存のUnity機能に加えて、パススルーやダイナミックな中心窩レンダリングなど、visionOSのメリットをアプリ内で引き出すことができます。
visionOSが広げる空間コンピューティングの可能性に期待しよう
ここまで、visionOSの概要や、visionOSアプリ開発に活用できるフレームワーク・ツールなどについて解説してきました。
visionOSは、かつてない3D体験を提供するデバイスであるVisionProへの搭載のため、新しく設計されたOSです。Appleが提供する全く新しい体験である「空間コンピューティング」を実現するvisionOSの可能性に、今後も注目です。
編集部オススメコンテンツ
アンドエンジニアへの取材依頼、情報提供などはこちらから