• Stars
    star
    151
  • Rank 246,057 (Top 5 %)
  • Language
    Swift
  • License
    MIT License
  • Created about 6 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

ARKitの実践入門書「実践ARKit」のサンプルコードです。

ARKitBook

ARKitの実践入門書「実践ARKit」のサンプルコードです。

一部サンプルはモデルファイルのダウンロードが必要です。mlmodels/readme.md を参照してください。

書籍の概要

作りながら学ぶネイティブARKitアプリケーション開発の実践入門書です。はじめの一歩として3行で書ける最小実装のARから始めて、平面を検出する方法、その平面に仮想オブジェクトを設置する方法、そしてその仮想オブジェクトとインタラクションできるようにする方法・・・と、読み進めるにつれて「作りながら」引き出しが増えていき、最終的にはARKitを用いたメジャーや、空間に絵や文字を描くといった、ARKitならではのアプリケーションの実装ができるよう構成しています。

全118ページ。ARKit 2.0 (iOS 12), Xcode 10, Swift 5対応。

書籍の目次

第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 ARFrameからデプスデータを取得する
  • 12.2 制約

第13章 ビデオフォーマット

  • 13.1 ARConfiguration.VideoFormat
  • 13.2 ビデオフォーマットを指定する
  • 13.3 使用可能なビデオフォーマット
  • 現行デバイスで使用可能なビデオフォーマット一覧
  • ビデオフォーマットはどう使い分けるのか?

第14章 アプリケーション実装例1: 現実空間の長さを測る

  • 14.1 ARKitにおける座標と現実のスケール
  • 14.2 現実空間における二点間の距離

第15章 アプリケーション実装例2: 空中に絵や文字を描く

  • 15.1 スクリーンの中心座標をワールド座標に変換する
  • 15.2 頂点座標の配列から、線としてのカスタムジオメトリを構成する
  • 15.3 その他の実装のポイント

第16章 アプリケーション実装例3: Core ML + Vision + ARKit

  • 16.1 CoreML・Vision・ARKit連携のポイント

第17章 Metal + ARKit

  • 17.1 マテリアルをMetalで描画する
  • 17.2 他のSceneKitとMetalの連携機能
  • 17.3 Metalによるカスタムレンダリング

More Repositories

1

iOS-9-Sampler

Code examples for the new features of iOS 9.
Swift
3,448
star
2

iOS-10-Sampler

Code examples for new APIs of iOS 10.
Swift
3,320
star
3

iOS8-Sampler

Code examples for the new features of iOS 8.
Objective-C
3,159
star
4

iOS7-Sampler

Code examples for the new features of iOS 7.
Objective-C
2,939
star
5

AnimatedTransitionGallery

A gallery app of custom animated transitions for iOS.
Objective-C
2,531
star
6

PulsingHalo

iOS Component for creating a pulsing animation.
Objective-C
1,771
star
7

ARKit-Sampler

Code examples for ARKit.
Swift
1,473
star
8

Pulsator

Pulse animation for iOS
Swift
1,376
star
9

iOS-Depth-Sampler

Code examples for Depth APIs in iOS
Swift
1,113
star
10

watchOS-2-Sampler

Code examples for new features of watchOS 2.
Swift
1,074
star
11

UIActivityCollection

A collection of UIActivity providers.
Objective-C
501
star
12

SlowMotionVideoRecorder

120/240 fps SLO-MO video recorder using AVFoundation. Including convenient wrapper class.
Objective-C
486
star
13

BlockchainSwift

A simple Blockchain with Swift
Swift
361
star
14

MLModelCamera

A camera app to test .mlmodel files.
Swift
348
star
15

Stats

In-app memory usage monitoring for iOS
Objective-C
172
star
16

vImageCategory

UIImage category which have vImage wrapper functions and the demo project
Objective-C
170
star
17

CoreImageTransition

A sample app for transition effects using Core Image, including a useful helper class.
Objective-C
141
star
18

UIKitForGame

UIKit subclasses and categories with useful animation functions for game.
Objective-C
111
star
19

FilterDemo

A catalogue of all the Core Image Filters.
Objective-C
98
star
20

DepthBook

iOSのデプス(深度)の解説書「Depth in Depth」のサンプルコードです。
Swift
55
star
21

iOSMLBook

Swift
31
star
22

TwitterArchiveViewer

A viewer app for twitter archive.
JavaScript
30
star
23

iOS-BLE-Tutorials

Step-by-step examples of Core Bluetooth written in Swift.
Swift
30
star
24

APIClientCollection-for-iOS

A collection of API clients & SDKs for iOS.
29
star
25

LinguisticTaggerSample

A sample app for Natural Language Processing using NSLinguisticTagger.
Objective-C
24
star
26

SocialAPIHelpers

Twitter and Facebook API Helper classes for iOS using Social.framework
Objective-C
20
star
27

TweenDemo

Simple app demonstrating some tween libralies.
Objective-C
19
star
28

iOS-Experiments-Contents

Table of Contents of my repo "iOS-Experiments"
17
star
29

Metal-SDF-Examples

Shape Animation Examples using SDF with MSL (Metal Shader Language)
Metal
17
star
30

CAEmitterSample

A sample app for Particle Effects using Core Animation (CAEmitterLayer and CAEmitterCell).
Objective-C
15
star
31

NYXImagesKitDemo

Objective-C
12
star
32

csv2plist

Script to convert CSV file to plist file.
PHP
11
star
33

CCTransitionHelper

cocos2d transition helper
Objective-C
11
star
34

TokyoOlympicEmblem-for-iOS

Swift
10
star
35

Remote-Video-Recorder-for-iOS

Objective-C
9
star
36

CrunchBase-API-Client-for-iOS

CrunchBase API Client for iOS.
Objective-C
7
star
37

PeripheralLogger

Logger for Core Bluetooth development.
Objective-C
6
star
38

Klout-API-Client-for-iOS

Klout API Client for iOS.
Objective-C
5
star
39

misc

Objective-C
2
star
40

echo-library

Automatically exported from code.google.com/p/echo-library
Objective-C
1
star