Closed9

visionOS 1 beta を雑に触ってみる

Kenta WatashimaKenta Watashima

ところで NDA 大丈夫なんだっけ

https://developer.apple.com/support/downloads/terms/apple-developer-agreement/Apple-Developer-Agreement-20220606-Japanese.pdf

第 4 条を参照。

要するに Apple Developer しか知り得ない情報を公開するのは NG。Apple 公式のドキュメントは一般に公開されており、問題ない。また、WWDC で開示された情報に関しても問題ない。ただし、スクリーンショットの公開は規約上、NG と思われる(まあ、すでに大勢の人が上げまくってるけど…)。

Kenta WatashimaKenta Watashima

サンプルアプリ

(確認した限りでは)現状 4 つ公開されている。

https://developer.apple.com/documentation/visionos/world/

Hello World というくらいだから必要最低限のソースコードなのかと思ったら全くそんなことはなく、これのどこが Hello World やねんってくらい分量がある。

The app shows how the Earth’s tilt creates the seasons, how objects move as they orbit the Earth, and how Earth appears from space.

本当の意味での「Hello World」アプリだった。

https://developer.apple.com/documentation/visionos/diorama

文字通り、ジオラマを重畳表示するアプリ。Reality Composer Pro の使用方法について学ぶのにちょうどよさそう。

https://developer.apple.com/documentation/visionos/happybeam

ゲームアプリ。ゲームとしてはシンプルだけれど、一通りの体験フローは網羅されている。

https://developer.apple.com/documentation/visionos/destination-video

映像再生アプリ。複数人での共有再生にも対応している。

Kenta WatashimaKenta Watashima

Window と Volume


https://developer.apple.com/jp/design/human-interface-guidelines/windows#visionOS

Window は一般的な用語としての Window とほぼ同義とみてよさそう。メールや Web ブラウザなど 2D 主体のコンテンツは Window、ゲームなど 3D 主体のコンテンツは Volume と使い分ける。Window 自体に 3D コンテンツを追加することもできるが、Window の表面からはみ出たコンテンツはクリップされてしまう。Volume であれば、ユーザは任意の角度でコンテンツを見ることができる。

Kenta WatashimaKenta Watashima

Shared Space と Full Space


https://developer.apple.com/videos/play/wwdc2023/10260/

複数のアプリが共有している空間を Shared Space と呼ぶ。アプリは起動後、デフォルトで Shared Space 内に配置され、他のアプリと並んで表示される。より没入感のある体験のために、アプリは専用の Full Space を開くことができる。

Shared Space がデスクトップのようなイメージだとすれば、Full Space はゲームの全画面表示のようなイメージ。

Kenta WatashimaKenta Watashima

Immersion Style


https://developer.apple.com/visionos/planning/#add-a-new-dimension-to-your-interface

Full Space に移行する場合は openImmersiveSpace を呼ぶ。このとき、没入感の度合いを決めるパラメータとして Immersion Style がある。Immersion Style には mixed progressive full がある。

mixed

パススルーの映像とアプリのコンテンツを重ねて表示する。

full

パススルーの映像を隠してアプリのコンテンツだけを表示する。ただし、ユーザの手元は見えているらしい。

progressive

mixedfull の組み合わせ。初期状態はある程度のパススルーが可能だが、デバイス上部にあるデジタルクラウンを回すことで、没入感の度合いを full まで変更できる。

Kenta WatashimaKenta Watashima


https://developer.apple.com/jp/design/human-interface-guidelines/windows#visionOS

Window に関しては、ほとんどのものは iOS アプリで SwiftUI を書くのと同じようなテンションで書ける、と思ってよさそう。

Window の背景には、基本的に Glass マテリアルが使用される。これは、周囲の物理環境によって明るさが自動で調整される。

Window のサイズや配置はユーザ側で任意に変更できる。また、ユーザとの位置関係によって Window のスケールが決まる。Window がユーザから離れると Window のスケールは自動的に大きくなり、近づくとスケールが小さくなる。ユーザの位置によらず、スケールを固定にすることもできる。

このスクラップは2023/07/03にクローズされました