ARToolKit professional for Android の開発手順やTipsの紹介
About
ARToolKitは拡張現実感アプリケーションの開発に使用される世界で最も人気のあるライブラリです。 現在(2013年時点)、特に携帯電話……スマートフォン上で動作させることを重要視し様々なハードウェア及びソフトウェアのプラットフォームに移植されています。
ここで説明しているライブラリは ARToolKit Professinal を Android に移植したバージョンで、ARToolKit for Mobile に含まれています。
このライブラリは、Android NDKとAndroid SDKを用いるライブラリセットになっています。計算コア部分をAndroid NDK、それ以外をAndroid SDKという比較的簡単な実装方法から、全てAndroid NDKで実装する方法などを選択してアプリケーションを開発することになります。
そのため、Androidの開発について、Android SDKのみならずAndroid NDKの知識も必要になる場面がありますので、基礎的なところは各種書籍を利用して事前に学習してください。
なお、このライブラリは ARToolKit for Mobile のライセンスを購入する事で利用する事ができます。
この文書以外に、ARToolKit関連についてはGPL版のARToolKitを解説した本【 3Dキャラクターが現実世界に誕生! ARToolKit拡張現実感プログラミング入門 (amazon) 】を購入されることをお勧めしています。
ここで説明している内容はアプリケーションを組み上げる事を目的としています。そのため、実際に内部でどのようなことを行っているか?
理論や用語、出てくる変数(行列)についてそれほど触れません。それらの補完として上記本を使用して頂ければと思います。
それ以外に、Android開発の本、Android NDKに関連する本【 Android NDKネイティブプログラミング (amazon) 】などを購入する事をお勧めします。
また、この開発を始める前に、カメラアプリ、OpenGL ESを用いたアプリ開発のサンプルはひと通り作ってください。
何も知らずに始めると躓きやすいと思います。
開発概論
ARToolKit for Androidのライブラリ構造とアプリケーションを作成する際の手法について簡単に説明します
ARToolKitWrapper と ARBaseLib を用いた開発手順
UIやカメラ制御、GL等を用いた表示をAndroid SDKで行い、画像解析等のARToolKitのコア部分をAndroid NDKに任せる手法です。
Android NDKを用いる必要が無いので開発は比較的簡単です。
Android NDKを用いた開発手順
一部を除いてほとんどをNDKで処理する方式です。ほとんどJavaを経由しないためアプリの高速化が図れますが、開発の難易度は高くなります。
技術文書
- ARToolKit for Android
ARToolworks 公式ドキュメント(英語)