iOS
Unity
AR
Swift
ARKit
ARKitDay 3

ARKitのサンプルコード集「ARKit-Sampler」

iOS 11のリリースと同日に、ARKitのサンプル集「ARKit-Sampler」をオープンソースで公開しました。

ARKit Sampler

icon.png

ソースコードは GitHub に置いてあるので、ご自由にご活用ください。

https://github.com/shu223/ARKit-Sampler

使用言語はSwift 4.0です。

ARKitのサンプルは公式のを含めいろいろ出てますが、ARKit-Samplerでは「余計な実装を混ぜずに、できるだけシンプルな実装で伝える」というところに気をつけています。もともとは書籍執筆のために用意したものなので、とくに序盤のサンプルはシンプルで意図が汲みやすいと思います。

ビルド方法

  1. ここから Inceptionv3.mlmodel をダウンロードして mlmodels フォルダ配下に置く
  2. Xcode 9 でビルドしてiOS 11端末にインストール

基本的にビルドするだけですが、Core MLのモデルファイルをダウンロードしてくる必要があります。

サンプル一覧

今のところ12個のサンプルが入っています。随時追加していきます。

3-lines AR

「実質3行」のシンプルなAR。ARKitが簡単に扱えるということがわかります。

Plane Detection

ARKitの基本機能、水平面の検出方法を示したシンプルなサンプル。

Virtual Object

水平面に仮想オブジェクトを設置するサンプル。

AR Interaction

仮想オブジェクトや、検出した水平面に対するインタラクションの実装方法を示したサンプル。

interaction2.gif

AR Measure

もはやARKitの定番実装例となっている、ARKitをメジャー(巻尺)代わりに使うサンプル。

AR Drawing

空中に絵や文字を書くサンプル。

Core ML + ARKit",

Core ML + Visionで認識したオブジェクトに対してARKitで「ARタグ付け」するサンプル。

Metal + ARKit

ARKitの描画にMetalを利用するサンプル。

Metal + ARKit (SCNProgram)

ARKitで追加した仮想オブジェクトのマテリアルをSCNProgramを用いてMetalで描画するサンプル。

Simple Face Tracking

Face-basedなARのサンプル。

Vertical Plane Detection

ARKit 1.5から入った、垂直平面を検出するサンプル。

Irregularly-Shaped Plane Detection

ARKit 1.5から入った、ARSCNPlaneGeometryARPlaneGeometryを使用して「非」矩形な形状の表面を検出するサンプル。

Coming soon...

  • Audio + ARKit
  • Core Location / MapKit + ARKit
  • Face Tracking
  • etc...

関連記事