Game Development Reference
In-Depth Information
A portability layer : Assuming that you have selected an AR toolkit, a
relative amount of work may be required to port/compile this toolkit for
Android. Even though there are some C/C++ toolkits designed to run
in multiple platforms (including Linux), it may take some time to get it
running in Android. C/C++ is definitely the language of choice for this
kind of work.
Video drivers : Because of the nature of AR, where 3D objects get
rendered on top of real time video (usually provided by a webcam or
phone camera), a video driver will have to be developed to access the
video from the phone or tablet. This may seem simple in a Linux-based
OS like Android, but the caveat is that Google doesn't expose low-level
video hardware natively (or in Java for that matter). I believe this will be
the toughest part: writing a video driver to access the camera on your
phone/tablet and bind it to the AR library.
Finding a Suitable AR Library
While scouting the Web for a suitable AR library, I came across the ARToolKit by the Human
Interface Technology Laboratory of the University of Washington 1 . It suddenly occurred
to me that this would be the perfect toolkit for AR apps in Android. It has the following
desirable qualities that make it relatively easy to use in mobile:
It is built in portable C/C++.
It is multi-platform, supporting SGI IRIX, Linux, Mac OS and Windows
out of the box.
It has a complete set of samples and utilities.
It is open source with GPL license for non-commercial use.
Here are some of the most used Augmented Reality libraries existing for Android:
ARToolKit
ARLab
ARmsk
Moodstocks
popcode
QCAR
SATCH
A later section looks at how to bring the ARToolKit to Android, but first, let's take a look
at a simple example to understand how the ARToolKit works. Refer to
http://artoolkit.sourceforge.net/ for more information.
1 Human Interface Technology Laboratory of the University of Washington
www.hitl.washington.edu/home/ .
 
Search WWH ::




Custom Search