Author: Stephen Cawood and Mark Fiala
Publisher: Pragmatic Bookshelf, 2008
Aimed at: Game developers
Pros: A useful and practical introduction to AR
Cons: A bit amateurish
Reviewed by: Ian Elliot
Augmented reality is a re-write of virtual reality and we all know what happened to VR. Despite being promoted by TV programs, movies, books and the “press” in general it really is still a speciality technology.
You need special hardware and lots of computer power to do VR even in a crude form. AR however is a little different in being a fusion of VR and real graphics. In short it aims to put computer generated objects into a video of the real world. If VR is about putting you into the virtual world AR is about putting the virtual into the real world.
It turns out that this task is actually a lot easier than full VR and we are much more likely to accept the result of a fairly low resolution AR display. For example, you can create a fairly crude 3D graphic of a tank or a robot and place it in a live video scene and it sort of works.The key is to have the crude representation behave as if it was a real object and then allow human psychology to invest it with the reality that it is mimicking. It's an extension of what we do to inanimate objects every day when we treat them as proxy humans.
This book is a complete introduction to using the freely down-loadable ARTag software SDK in C++ and C#. There is also a brief introduction to using OpenGL to create 3D graphics but if you have never used a 3D API before you will probably need to consult another book.
The book also emphasises hobbyist/enthusiast approached to applying AR to games which being honest are never going to be commercial propositions. Don’t let this put you off - there are probably countless real commercial applications of AR just waiting for the right programmer to notice them. Apart from the obvious applications of AR such as allowing clients to walk around augmented rooms and game playing this is a technology that is in search of its killer application.This is a good introduction and might just spark such an idea.
To keep up with our coverage of books for programmers, follow @bookwatchiprog on Twitter or subscribe to I Programmer's Books RSS feed for each day's new addition to Book Watch and for new reviews.