基礎から学ぶ ARKit

ARKitはiPhoneやiPadを使ったAR(拡張現実)アプリを作るためのフレームワークです。

ARを使うとカメラで映る映像をリアルタイムに解析して、物理空間がどのようになっているかを認識し、3Dの仮想コンテンツをコンテンツを配置して、合成した映像を作り出すことができます。そしてリアルタイムに行い、あとかもそこに本当に物体があるかのように振る舞うことができす。

これだけではエンターテイメントのためのもののように思うかもしれません。しかし、ARの本質はiPhoneやiPadに搭載された様々なセンサーを通して、物理空間がどのようになっているのかを「認識」「知る」ことにあります。その上で映像を作り出したり、物理空間で起きたことをトリガーにして何かしらの機能を起動する、仮想コンテンツに動的な情報を組み合わせて、現実世界を拡張する。楽しむだけではなく、利便性を向上させたり、できなかったことを可能にすることができます。

iOS / iPadOS には「認識」するためのARKitの他にも、リアルな表示を行うためのSceneKitやRalityKitといったフレームワークがあります。高度な演算を高速に行うためのMetalがあります。デバイスには現実世界を知るためにLiDARやGPS、モーションセンサー、TrueDepthカメラなどのセンサー群、高度な演算を行うためのニューラルエンジンを搭載したBionicチップがあります。

これら、様々な機能を使ったARアプリを作るためのARKitを解説しています。また、SceneKitやRealityKitについてもARKitを使うために解説しています。

目次

追加情報・訂正情報

iOS 16 / Xcode 14 対応情報 (2023年5月12日追加)

iOS 16 / Xcode 14 への対応方法については次の記事をご覧ください。

メイキング記事

「基礎から学ぶARKit」の制作の裏側を紹介するメイキング記事を公開しています。 → メイキング記事一覧

発売日

2022年4月16日

目次

  • CHAPTER 1 はじめてのARKit
  • CHAPTER 2 状態遷移
  • CHAPTER 3 RealityKit入門
  • CHAPTER 4 画像認識
  • CHAPTER 5 物体認識
  • CHAPTER 6 顔のトラッキング
  • CHAPTER 7 レンダリングへの環境反映
  • CHAPTER 8 コリジョン
  • CHAPTER 9 物理シミュレーション
  • CHAPTER 10 モーションキャプチャとポストプロセス

CHAPTER 1 はじめてのARKit

ARKitについての基礎知識と、SceneKitとARKitを使った基本的なARアプリの作り方と流れを解説します。

CHAPTER 2 状態遷移

ARセッションの状態遷移について解説します。

CHAPTER 3 RealityKit入門

ARKitとRealityKitを使ったARアプリの作り方と基本的な流れを解説します。

CHAPTER 4 画像認識

ARKitの画像認識機能を使って、印刷したカードを認識させて仮想コンテンツを表示したり、光源を作成するサンプルアプリを作って解説します。

CHAPTER 5 物体認識

ARKitの物体認識機能の使い方をサンプルアプリを作って解説します。

CHAPTER 6 顔のトラッキング

ARKitの顔のトラッキング機能の解説とビデオマテリアルを使ったサンプルアプリを作って解説します。Combineを使ってRealityKitのイベントを受け取って処理する方法についても解説します。

CHAPTER 7 レンダリングへの環境反映

環境テクスチャーマッピングとオクルージョン、ピープルオクルージョンを使ったサンプルアプリを作って解説します。

CHAPTER 8 コリジョン

コリジョンを使ったサンプルアプリを作って解説します。

CHAPTER 9 物理シミュレーション

物理シミュレーション機能を使い、配置したモデルに衝撃を与えたり、押したり、回転させるサンプルアプリを作って解説します。

CHAPTER 10 モーションキャプチャとポストプロセス

モーションキャプチャとトリガーボリューム、ポストプロセスエフェクトを使ったサンプルアプリを作って解説します。

出版社公式ページ

基礎から学ぶ ARKit – 書籍詳細 | 株式会社 C&R研究所

著書紹介

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

Akira Hayashi (林 晃)のアバター Akira Hayashi (林 晃) Representative(代表), Software Engineer(ソフトウェアエンジニア)

アールケー開発代表。Appleプラットフォーム向けの開発を専門としているソフトウェアエンジニア。ソフトウェアの受託開発、技術書執筆、技術指導・セミナー講師。note, Medium, LinkedIn
-
Representative of RK Kaihatsu. Software Engineer Specializing in Development for the Apple Platform. Specializing in contract software development, technical writing, and serving as a tech workshop lecturer. note, Medium, LinkedIn

目次