GoogoleマップにARナビが搭載されるなど、私たちの生活にもARが少しずつ、しかし確実に浸透してきました。
これからさらにARが普及するのを見越して、AR開発に取り組む人が増えてきています。
あなたもきっと、その一人でしょう。
しかし、AR開発について学ぶといっても何から始めてみたら良いか分からない、という人も多い。
そこでこの記事では、AR開発にどんなツールが用いられているのか、さらにAR開発・プログラミングを学ぶのに最適な学習本を、入門編~上級編まで、レベル別に紹介します。
ぜひ記事を最後までご覧になって、自分が読むべきAR開発の学習本を見つけてください。
目次
|AR(拡張現実)とは?
まずは、ARについてのおさらいから。
ARは「Augmented Reality(アグメンティッド・リアリティ)」の略で、日本語では「拡張現実」と訳されます。
スマホなどのカメラを通してCG映像を現実の風景に重ねて表示し、現実世界とバーチャルの情報が一体化したかのような視覚効果をもたらします。
例えば、スマホのGoogleナビアプリで目的地までのナビを開始する際に「ライブビュー」をタップして周囲の景色を読み込ませると、目的地の方向が矢印で表示されます(スマホがARに対応している必要があります)。
このように、現実世界にCGの映像や情報を『拡張表示』させる技術が、ARです。
特別な機器を必要とせず、手持ちのスマホで気軽に利用できるため、ARは今後さらに活用されていくと考えられているのです。
|ARの種類
ARには、ARを起動する対象(トリガー)の違いによって、以下の4つの種類が存在します。
マーカー型:画像や写真をトリガーとするAR。
「画像認識型」や「ビジョンベース型」とも呼ばれ、マーカーとして設定された画像や写真を読み込むことによってARが出現する。
GPS型:スマホのGPS情報をトリガーとするARで、「ロケーションベース型」とも呼ばれる。
特定の位置や場所に紐づけて、ARを表示させることができる。GoogleマップのライブビューもこのGPS型。
空間認識型:部屋の中など、立体的な空間の情報を読み込んでARを出現させる。
家具着せ替えアプリなどではこの空間認識型ARを利用し、自分の部屋の中に家具などを「試し置き」することができる。
物体認識型:「立体認識型」とも呼ばれ、特定の立体物をトリガーとして発動するAR。
対象物なら360度どこからでも認識することができる。
ARを利用するシーンや目的によって、開発するARのタイプも異なってくるという点を覚えておいてください。
|AR開発で使用されるツール
では、AR開発にはどんなツールが用いられているのでしょうか?
ここからはAR開発でよく用いられているツールと、対応するプログラミング言語をそれぞれ紹介していきます。
Apple ARKit
「Apple ARKit(アップルARキット)」は、Apple社が提供するiOS向けのARプラットフォーム。
iPhoneやiPad用のARアプリ開発に用いられています。
インスタントARやロケーション・アンカー、ピープルオクルージョンなどの多彩な機能を備えています。
開発に利用するのは、iOS向けに作られたプログラミング言語である「Swift」、もしくは「Objective-C」。
2022年12月時点の最新のバージョンはARKit6で、iOS 11.0以降またはA9以降のプロセッサを搭載したiOSデバイスが対象となっています。
Apple ARKitで開発したARアプリは特別な機器を必要とせず、対応するiPhoneやiPadのカメラを使って利用することができるため、続々と新たなアプリがARKitを使って開発されています。
Meta Spark Studio(旧Spark AR Studio)
「Meta Spark Studio」はMeta社が開発したAR開発ツールで、Facebookからの社名変更に伴ってツール自体の名称も「Spark AR Studio」から変更されています。
Spark AR Studioではプログラムを組む必要はなく、用意されているツールをつなぎ合わせる感覚で誰でも簡単にARエフェクトを作成することが可能。
作成したARエフェクトは、InstagramやFacebookで公開することができます。
Meta Spark Studioは無料で利用でき、詳細なチュートリアル動画やテンプレートも豊富に用意されているため、簡単なARエフェクトなら30分程度で作成可能。
とりあえずAR開発に触れてみたいという人は、Meta Spark Studioから始めてみると良いでしょう。
Google ARCore
「Google ARCore(ARコア)」は、Google社が提供するAR開発ツール。
Androidネイティブ(Java、Kotlin)だけではなく、UnityやUnreal、さらにiOSネイティブ(Swift、Objective-C)にも対応する幅の広さが特徴です。
そのため ARCoreでARアプリを開発すれば、AndroidとiOSの両プラットフォーム向けにリリースすることも可能。
2021年12月に公開された最新版では、新たにスマホのカメラだけで奥行きを含む空間情報を取得できる「Depth API」と、より正確な深度測定と空間認識が可能になる「Raw Depth API」が追加されました。
Amazon Sumerian
「Amazon Sumerian(アマゾンスーメリアン)」は、Amazon社が提供するをAWSベースのAR開発ツールで、HTMLとJavaScriptのプログラミング言語で動作します。
ブラウザベースのARアプリのほか、OculusシリーズやAndroid、iOS端末向けのARアプリも開発可能。
しかしAmazon Sumerianの最大の特徴は、プログラミング未経験者でもオブジェクトを配置するという直感的な操作でARコンテンツを作成できる点にあります。
ブラウザベースのARアプリなら既存のWebサイトにも簡単に組み込めるため、利用者も急上昇中のAR開発ツールとなっています。
Snapchat Lens Studio
「Snapchat Lens Studio(スナップチャットレンズスタジオ)」は、写真共有アプリの「Snapchat」やスマートグラスの「Spectacles」で知られる、アメリカのsnapchat社が開発・提供するAR開発ツール。
その名の通り、Snapchatアプリ用のARフィルターを作成することができます。
スマホのカメラで撮影した写真や動画に、ARでエフェクトなどのフィルターをかけるアプリや機能は世界中で大人気。
特にアメリカでのSnapchaの人気の高さは凄まじく、Instagramを超えるとも言われています。
Snapchat Lens Studioにはテンプレートも豊富に用意されているので、これでARフィルター作成を学ぶのもおすすめです。
ARToolKit
「ARToolKit(ARツールキット)」は日本で開発されたAR開発ツール。2015年のオープンソース化以降、世界中で広く利用されて、AR開発ツールのスタンダード的な存在になっています。
ARToolKitはマーカー型のARアプリを開発することができ、WindowsやMac、iOS、Androidのほか、Linux、FLASHなど様々なプラットフォームに対応。
ライブラリ形式で提供されるためARToolKit単独では動作せず、連携する周辺機能を組み合わせることによって実行させることができます。
ARToolKitはこれもおなじみのC言語用のライブラリであるため、まずはこれでARアプリ作りを始める開発者も非常に多く、使いやすいARアプリ開発ツールの一つです。
Vuforia
「Vuforia(ヴューフォリア)」は、スマホやタブレット、スマートウォッチなどのウェアラブル端末にも対応するAR開発ツールです。
Google ARCoreやUnityにも対応するVuforiaは、WindowsやAndroid、iOSなどそれぞれのデバイスに応じて自動的に切り替わるため管轄環境を選ばず、効率的なARアプリ開発が可能。
またトラッキングの精度が非常に高いため、マーカー作成の自由度が高いのも特徴です。
特にゲーム開発経験者にとっては「Unity+Vuforia」は鉄板の組み合わせで、初めて使ったAR開発ツールがVuforiaだっというエンジニアも多い。
Unityに慣れているなら、まずはVuforiaを使ってARアプリを開発するのがおすすめです。
|おすすめのAR学習本6選
ではここからは、AR開発を学ぶのにおすすめの学習本を紹介しましょう。
入門編、中級編、上級編とレベルごとにそれぞれ2冊ずつ取り上げますので、自分にあった本を選んでください。
入門編
まずは入門編から。
アプリ開発自体も初めて、またはこれからARアプリ開発を学び始めるという人におすすめなのが、以下の2冊です。
- SwiftでつくるARKit超入門
- よくわかるAR〈拡張現実〉入門
では、それぞれ詳しく見ていきましょう。
SwiftでつくるARKit超入門
出典:https://booth.pm/ja/items/1036430
AR開発の初心者向けとして最初に紹介するのが、Apple ARKitのアプリ制作を学べる「SwiftでつくるARKit超入門」です。
この本では16個のサンプルを使って、iOS用のプログラム言語であるSwiftでのARアプリ開発を学ぶことができます。
イラストが豊富で、章ごとに一つのサンプルを使って学んでいくという構成のため、非常にシンプルで分かりやすい。
ARKitが経験が全くない人でもARアプリの基礎からしっかり学べますし、サンプルを使って一通りのコードを動かすことができるでしょう。
ARKitのアプリ開発を学びたいけれど、何から始めたら良いか分からないという人に特におすすめです。
本書はBOOTHで2,000円で販売中。
一度購入すると、今後のアップデート時に無料でPDFをダウンロードできるのも安心です。
よくわかるAR〈拡張現実〉入門
出典:https://www.sogensha.co.jp/productlist/detail?id=1506
続いて紹介する「よくわかるAR〈拡張現実〉入門」は、ARの仕組みや歴史、実際の活用事例やARを体験できるアプリの紹介に今後の展望など、ARにまつわる幅広い知識を学ぶことができます。
ARアプリを開発する前に、まずはARがどういうものかをしっかり知っておきたい、ARを体験してみたいという人におすすめ。
テキストだけではなく、書籍内の見本動画のリンクも収められているため、動画からも学ぶことができます。
本書は電子版のみで、Kindle版は現在880円のセール価格で販売中。
ぜひこの機会に、手に取られてみてください。
中級編
続いて、中級編。
ここではある程度プログラミングの経験はあるけれど、ARアプリを開発したことはないというような人におすすめの次の2冊を紹介します。
- ARKitとUnityではじめるARアプリ開発
- 詳細!Swift iPhoneアプリ開発 入門ノート iOS 12+Xcode 10対応
ではこの2冊についても、それぞれ内容を見ていきましょう。
ARKitとUnityではじめるARアプリ開発
出典:https://www.shuwasystem.co.jp/book/9784798054360.html
「ARKitとUnityではじめるARアプリ開発」は、UnityとARKitを使ってARアプリを開発するための学習本。
サンプルコードをダウンロードしながら、ARKitでどんなことができるのか?ARKitアプリ開発の流れからXCodeのビルドまで、実際にARアプリの制作方法を学ぶことができます。
特にUnityを使っているが、ARアプリ開発はしたことがないという人におすすめ。
逆に言うと、Unityについてある程度の知識や経験がないと、本書はちょっと難しいかもしれません。
また発刊が2018年のため、情報が少し古くなっている部分もあります。
しかし、まずは手始めにUnityを使ってARKitでのARアプリ開発を学びたいという人にはおすすめできる一冊です。
詳細!Swift iPhoneアプリ開発 入門ノート iOS 12+Xcode 10対応
出典:http://www.sotechsha.co.jp/sp/1223/
Swiftを使ってのiOS向けのアプリ開発だけではなく、ARアプリ開発についても学びたいという人におすすめなのが、この「詳細!Swift iPhoneアプリ開発 入門ノート iOS 12+Xcode 10対応」。
タイトルにARの文字こそないものの、ARKitの解説に多くのページが割かれており、ARアプリ開発についてもしっかり学ぶことができます。
大量のサンプルとサポートサイトからファイルをダウンロードしながら、実際に動かし方を学習できるのも特徴。
プログラム経験がある人がSwiftについても学びたい、またはSwiftについてある程度理解していて、さらにARアプリ開発にも取り組みたいという人におすすめです。
Kindle版は3,344円で発売中。
発行年は2018年と少し時間が経っていますが、今でも十分に使えます。
上級編
最後に、現役バリバリのエンジニアというような上級者におすすめの2冊を紹介します。
- ARの教科書
- UnityによるARゲーム開発:作りながら学ぶオーグメンテッドリアリティ入門
これらの本から学べば、すぐにでもARアプリを開発することができるでしょう。
ARの教科書
出典:https://book.mynavi.jp/ec/products/detail/id=91748
「ARの教科書」は、ARの原理や実例について詳しく書かれている解説書です。
ARアプリの開発方法というよりも、ARの技術や方法論的な記述の方に重きが置かれています。
しかし現役エンジニアなら、こうした理論をしっかり学んでからのほうが、結果的に効率よくアプリを開発できるということをよくご存知でしょう。
さらに本書は参照されている論文の数も多く、ARの原理や活用事例も体系的に紹介されているため、リファレンスとしても利用可能。
ARアプリ開発にとどまらず、将来的にはARについて教える側にまわりたい、という人にも最適の本となっています。
UnityによるARゲーム開発:作りながら学ぶオーグメンテッドリアリティ入門
出典:https://www.oreilly.co.jp/books/9784873118109/
「ポケモンGO」のようなGPS型のARゲームを開発したい、という人におすすめなのが、この「UnityによるARゲーム開発:作りながら学ぶオーグメンテッドリアリティ入門」です。
本書では「Foody GO」という、まさにポケモンGOライクなARゲームを実際に作りながら、ARゲーム開発を学ぶことができます。
ARゲーム開発の仕組みや流れ、関連技術について順を追いながら学べるため、アプリ開発経験者ならすんなりとARゲーム開発に取り組めるでしょう。
GPS型のARゲーム、スマホアプリはこれからますます注目されるに違いありません。
本書でロケーションベース型のARの作り方を学んで、ぜひ私たちをうならせるARゲームを開発なさってください。
|AR学習の本を選ぶ際の注意点
最後に、AR学習本を選ぶ際の注意点について触れておきましょう。
AR開発について説明している学習本の数はまだまだ少なく、どうしても発行から時間が経過しているものを選ばざるを得ない、という実情があります。
そのため、収められている情報がすでに古くなっている、または使えなくなっている技術もあるという点を念頭におきながら読み進めていく必要があります。
ARなどの先端テクノロジーはアップデートも早いため、本だけではなくインターネットの情報も活用しながら学ぶことが大事になるでしょう。
|【まとめ】ARの学習本は自分のレベルに合わせて選ぶのがおすすめ!
ARはスマホアプリを中心に、これからますますその活用が進んでいくでしょう。
そのため、今からAR開発について学んでいくことがとても重要になっていきます。
しかし学習に大切なのは、何よりも少しずつ着実に、ステップ・バイ・ステップで学んでいくこと。
AR開発を学ぶにも、自分のレベルにあった学習本を選ぶことが何より必要です。
ぜひ今回の記事を参考に、自分に合った学習本を見つけ、AR開発に取り組んでください!