見出し画像

[iOS 17] Object Capture for iOSの公式サンプルのコードを読む #WWDC23 #visionOS

iOS 17では、3D Object Capture周りのAPIが追加され、次のようなインターフェースの3D物体スキャン機能の実装が可能となった。

WWDC23「Meet Object Capture for iOS」セッションより引用

「Meet Object Capture for iOS」セッション内で言及されているサンプルはWWDC23会期中の時点ではまだ公開されていなかったのだが、6月末〜7月頭あたりに公開されたようだ。

本記事ではこちらのサンプルのコードを読みつつ、Object Captureの実装方法を整理する。


ObjectCaptureSession とObjectCaptureView

Object Capture for iOSという新機能は、ObjectCaptureSessionとObjectCaptureViewという2つの新APIに集約される。

ObjectCaptureSessionは、3Dキャプチャーのセッションの状態を管理・制御するクラス。

WWDC23「Meet Object Capture for iOS」セッションより引用

そしてObjectCaptureViewは、ObjectCaptureSession オブジェクトを受け取ってセッションの状態に応じたUIを表示するSwiftUIのビュー。

WWDC23「Meet Object Capture for iOS」セッションより引用

ざっくりとした理解としてはこれだけでOK。

以下、セッションの状態 (ObjectCaptureSession.CaptureState) ごとに公式サンプルの実装を見ていく。

ここから先は

4,942字 / 9画像

文章やサンプルコードは多少荒削りかもしれませんが、ブログや書籍にはまだ書いていないことを日々大量に載せています。たったの400円で、すぐに購読解除してもその月は過去記事もさかのぼって読めるので、少しでも気になる内容がある方にはオトクかと思います。

技術的なメモやサンプルコード、思いついたアイデア、考えたこと、お金の話等々、頭をよぎった諸々を気軽に垂れ流しています。

最後まで読んでいただきありがとうございます!もし参考になる部分があれば、スキを押していただけると励みになります。 Twitterもフォローしていただけたら嬉しいです。 https://twitter.com/shu223/