- ダウンロード商品電子書籍 v1.3.1(PDF)¥ 1,680
- 物販商品(倉庫から発送)ネコポス可能製本版 第5版(v1.3.1)¥ 1,680
- 物販商品(倉庫から発送)ネコポス可能製本版+電子版セット 第5版(v1.3.1)¥ 2,480
- ダウンロード商品無料サンプル版 v1.1¥ 0
作りながら学ぶネイティブARKitアプリケーション開発の実践入門書です。はじめの一歩として3行(!)で書ける最小実装のARから始めて、平面を検出する方法、その平面に仮想オブジェクトを設置する方法、そしてその仮想オブジェクトとインタラクションできるようにする方法・・・と、**読み進めるにつれて「作りながら」引き出しが増えていき**、最終的にはARKitを用いたメジャーや、空間に絵や文字を描くといった、ARKitならではのアプリケーションの実装ができるよう構成しています。
製品仕様
A5版、本文146ページ。iOS 17, Swift 5, Xcode 15対応。サンプルコードはGitHubよりダウンロード可能です。 (補足)電子版は一度購入していただくと今後のアップデート版も無料でダウンロードしていただけます。
著者プロフィール
京都大学にて電気電子工学、京都大学大学院にて信号処理を学び、NTTデータにて音声処理、キヤノンにて画像処理を専門として研究開発に従事。カヤックにてiOSアプリ開発者としてフルスクラッチで30本以上のアプリを開発しリリースする。その後シリコンバレーの500Startupsのインキュベーションプログラムに参画。続いてサンフランシスコのFyusion社にてシニア・プリンシパルエンジニアとしてH-1Bビザで3年間勤務。現在は日本でフリーランスとして活動中。オープンソース活動も積極的に行い、GitHubの累計スター数は23,000超。
改訂履歴
- v1.3.1(第5版)2023.11.12刊行 -- 全体的に細かい加筆・修正を行いました。 -- 本文146ページ、iOS 17), Xcode 15, Swift 5対応 - v1.3.0(第4版)2019.9.22刊行 -- ARKit 3の機能について大幅加筆しました。(オクルージョン、モーションキャプチャの章を追加、Metalの章にカスタムレンダリング時のオクルージョンの項を追加) -- 本文142ページ、ARKit 3.0 (iOS 13), Xcode 11, Swift 5.1対応 - v1.2.0(第3版)2019.4.14刊行 -- 装丁を一新。全体的に細かい加筆・修正を行いました。 -- 本文118ページ、ARKit 2.0 (iOS 12), Xcode 10, Swift 5対応(iOS 13, Xcode 11, Swift 5.1でも動作確認済み) - v1.1.0(第2版)2018.12.29刊行 -- ARKit 1.5, 2.0の機能について大幅加筆しました。(画像検出・画像トラッキング、3D物体検出・スキャン、AR体験の共有と永続化、ビデオフォーマット、デプスの章を追加) -- ARKit+Metalの章を加筆しました。(+その他細かい修正) - v1.0.0(初版)2018.10.8刊行 -- 本文 92ページ
目次(v1.3.1)
第1章 入門編その1 - 最小実装で体験してみる - 1.1 手順1:プロジェクトの準備 - 1.2 手順2:ViewControllerの実装 - 1.3 基本クラスの解説 第2章 入門編その2 - 水平面を検出する - 2.1 水平面を検出するためのコンフィギュレーション - 2.2 平面検出に関するイベントをフックする - ARSessionDelegate - 2.3 平面検出に関するイベントをフックする - ARSCNViewDelegate - 2.4 検出した平面を可視化する 第3章 入門編その3 - 検出した水平面に仮想オブジェクトを置く - 3.1 3Dモデルを読み込む - 3.2 仮想オブジェクトとして検出した平面に置く 第4章 ARKit 開発に必須の機能 - 4.1 トラッキング状態を監視する - 4.2 デバッグオプションを利用する - 4.3 トラッキング状態をリセットする / 検出済みアンカーを削除する 第5章 平面検出の基礎 - 5.1 垂直平面の検出 - 5.2 検出した平面のアラインメントを判別する - 5.3 平面ジオメトリの取得 - ARPlaneGeometry と ARSCNPlaneGeometry 第6章 画像検出と画像トラッキング - 6.1 画像検出 - 6.2 画像トラッキング - 6.3 画像検出と画像トラッキングのの違い 第7章 3D物体検出と3D物体スキャン - 7.1 3D物体検出 - 7.2 3D物体スキャン 第8章 AR空間におけるインタラクションを実現する - 8.1 ヒットテスト(当たり判定)を行う - 8.2 デバイスの移動に対するインタラクション 第9章 AR体験の永続化と共有 - 9.1 ARWorldMap - 9.2 ワールドマップを取得する - 9.3 ワールドマップを永続化・共有する - 9.4 ワールドマップからセッションを復元する - 9.5 ワールドマップ取得タイミング 第10章 フェイストラッキング - 10.1 フェイストラッキングを開始する - ARFaceTrackingConfiguration - 10.2 検出した顔のアンカーを取得する - ARFaceAnchor - 10.3 顔の動きを可視化する - ブレンドシェイプでアニ文字風3Dアバター 第11章 特徴点を利用する - 11.1 特徴点を可視化する - 11.2 フレームに含まれる特徴点群データ - 11.3 ワールドマップに含まれる特徴点群データ 第12章 デプスを利用する - 12.1 フェイストラッキング利用時のデプスデータ - 12.2 People Occlusion利用時のデプスデータ - 12.3 LiDAR 由来のデプスデータ: シーンデプス (Scene Depth) 第13章 オクルージョン - 13.1 People Occlusionの実装方法 - 13.2 personSegmentationとpersonSegmentationWithDepthの違い - 13.3 利用可能なコンフィギュレーション - 13.4 segmentationBufferとestimatedDepthData 第14章 モーションキャプチャ - 14.1 2D Body Detection - 14.2 3D Body Tracking 第15章 ビデオフォーマット - 15.1 ARConfiguration.VideoFormat - 15.2 ビデオフォーマットを指定する - 15.3 使用可能なビデオフォーマット - 現行デバイスで使用可能なビデオフォーマット一覧 - ビデオフォーマットはどう使い分けるのか? 第16章 アプリケーション実装例1: 現実空間の長さを測る - 16.1 ARKitにおける座標と現実のスケール - 16.2 現実空間における二点間の距離 第17章 アプリケーション実装例2: 空中に絵や文字を描く - 17.1 スクリーンの中心座標をワールド座標に変換する - 17.2 頂点座標の配列から、線としてのカスタムジオメトリを構成する - 17.3 その他の実装のポイント 第18章 アプリケーション実装例3: Core ML + Vision + ARKit - 18.1 CoreML・Vision・ARKit連携のポイント 第19章 Metal + ARKit - 19.1 マテリアルをMetalで描画する - 19.2 他のSceneKitとMetalの連携機能 - 19.3 Metalによるカスタムレンダリング - 19.4 Metalカスタムレンダリング時のオクルージョン
読者の方々の評判
読んだ方々には好評をいただいております。 『ARKit3で知りたかった情報(People Occlusion や3D Body Tracking)が網羅されており、この値段は安すぎるレベルでした!!』 『実践ARKit買ったんだけど他の人に見せたくないレベルで良い』 『「実践ARKit」 これから調べようとしてたことが全部 事細かに解説付きで大助かり!』 『ARKit + Vision + CoreMLのお勉強中。こんなことが手元のiPhoneでできるとは! SpriteKitからSceneKitにしようと思ったら、「実践ARKit」のサンプルではもう出来てる‥スゴイ、マイリマシタ...』 『本日はお仕事でARKit。まさかARの仕事が来るなんて思いもしなかった。こちらの本に大変お世話になっています。』 『実践ARKit 読了した〜。ARKitでどんなことができるかある程度俯瞰できてよかった 😉』 『はじめてARKitを使った。書籍「iOS 11 Programming」とネットの情報を参照しつつ実装したら簡単に作りたいものができた。堤先生 @shu223 ありがとうございます。』(※) 『ARKitもSceneKitも触ったことないし1日かけてやるかな,今日は入りの部分だけ,って定時30分前に新規プロジェクトしたやつが, https://peaks.cc/iOS11 を見ながらやったらいきなり出来たので,定時にあがれたし明日のタスクがなくなった。』(※) (※注「iOS 11 Programming」のARKitの章は本書の著者が執筆したものです)