Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Augmented Reality Game Development
Augmented Reality Game Development

Augmented Reality Game Development: Create your own augmented reality games from scratch with Unity 5

eBook
$27.98 $39.99
Paperback
$48.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Table of content icon View table of contents Preview book icon Preview Book

Augmented Reality Game Development

Chapter 1. Getting Started

This chapter will introduce you to real-world adventure games—what they are, how they work, and what makes them unique. From there, we will introduce the sample real-world game that we will build through the rest of the book. Finally, after the theory, we will do a brisk walk-through on setting up a mobile development environment with Unity.

For those of you who feel that they understand the terminology of real-world adventure or augmented reality games, feel free to jump ahead to the Introducing Foody GO section of this chapter that will discuss the game design and concept of the sample game we will be building throughout the book.

In this chapter, we will cover the following topics:

  • Defining what a real-world adventure game is
  • Understanding the core elements that make a real-world adventure game
  • Introducing the design of our sample game Foody GO
  • Installing Unity
  • Setting up Unity for mobile development
  • Creating the game project

Real-world adventure games

Real-world adventure games are a genre of games that has surged in popularity recently with the release of Pokemon GO. Chances are, at the time of reading this book, you may have certainly heard of, and likely have played, the popular game. Although many think this genre is an overnight sensation, it has in fact been around for several years. Niantic, the developer of Pokemon GO, released Ingress, its first real-world game, in November 2012. The title was, and is, popular, but has only attracted a niche following of gamers, which was likely more the result of the game's complex theme rather than being specific to the genre.

Now, many can suggest that the primary catalyst that launched Pokemon GO into a gaming sensation is the Pokemon franchise combined with a new augmented reality gaming platform. Certainly, without its integral real-world interaction, Pokemon GO would have been just another popular mobile game.

So, what are the elements that make a real-world adventure or location-based augmented reality game unique?

  • Location-based: Players have the ability to interact with virtual objects or places around them using a map. As the player physically moves in the real world, their device's GPS will update the player's location in the game, thus allowing the player to move to virtual locations and search for or interact with virtual objects or things. We will discover how to integrate the device's GPS and display a map in Chapter 2,Mapping the Player's Location.
  • Augmented Reality (AR): A player interacts with the real world through their device's camera. This allows them to view and interact with the virtual place or thing against the backdrop of the real world around them. Using the device's camera as a game background in order to enhance the user experience will be introduced in Chapter 5, Catching the Prey in AR.
  • Adventure game: Players typically assume the role of an avatar driven by a mission of exploration and puzzle solving in order to ultimately reach some story-driven goal. Of course, other notable games in the real-world genre may loosely fit that definition. For the purposes of this book, we will adhere to that loose definition of adventure game. The Introducing Foody GO section in this chapter will cover the game design and concept of the real-world adventure we will be building through the rest of the book.

Of course, there are many other elements that will be needed to create a successful game, but essentially, location-based and augmented reality are the elements that identify the real-world adventure genre. Astute readers may notice that massively multiplayer network gameplay or MMO was omitted. Although MMO gameplay may be essential to certain game designs, it is not a requirement of this genre.

Location-based

Tracking a player's location in the real world and then overlaying that into the game's virtual world creates a unique level of immersion for players. In fact, in many real-world adventure games, warning messages are presented to players before they start playing. There are many stories of players becoming so immersed that they have hurt themselves due to an avoidable accident while playing a real-world game.

Mapping the real world on top of the game's virtual world provides new challenges to traditional mobile gaming. Developing a map interface and populating it with virtual items require some advanced GIS skills. Many developers will be new or relatively inexperienced in the concepts of GPS and GIS or rendering a map in Unity. Since mapping is a core concept to the real-world genre, it will be the basis for much of the sample game we will be building. We will spend several chapters related to the topic of maps. The following is a list of chapters that will touch on mapping and location:

  • Chapter 2, Mapping the Player's Location, starts with a basic discussion of GPS and GIS and then show you how to load a map texture into a 3D Unity scene
  • Chapter 3, Making the Avatar, introduces the player character avatar and shows how the mobile's devices and the player's movement will control the avatar
  • Chapter 4, Spawning the Catch, is where we start to introduce virtual items onto the map and allow the player to find those items
  • Chapter 7, Creating the AR World, focuses on populating the virtual world around the player based on real-world locations
  • Chapter 8, Interacting with an AR World, allows the player to interact with those virtual locations

Augmented Reality

AR has been around since 1990. The term typically covers a broad range of technologies from virtual surgical devices, Microsoft HoloLens, and mobile apps such as Snapchat. AR technologies have been slow to become mainstream in gaming until just very recently. With the advance of new technologies and the real-world adventure genre being major contributors to increasing popularity of AR in gaming.

As mentioned, AR covers a broad range of technologies or devices that provide an overlaid virtual environment to the user. However, on a mobile device, the AR experience is often a result of rendering a virtual environment over a backdrop of the device's camera. In some cases, the AR game or application will have sophisticated image processing algorithms that identity features. Those identified features may then be annotated virtually with other graphics or game options. Pokemon GO, for instance, limits the use of AR to just the camera background, whereas Snapchat provides a dynamic AR experience to the user through the use of image processing. Yet, both the game and application benefit by providing the user with a more enjoyable experience through AR.

For the purpose of the real-world adventure genre and this book, we will take a basic approach to provide the user with a basic AR experience. That means, we will look at integrating the mobile device's camera as a game backdrop. The gaming experience will be familiar to other popular games in the genre. Even with this basic approach to AR, we will still cover a number of other details and tips in the course of a few chapters. The following is a short description of the AR elements that we will work on in the subsequent chapters:

  • Chapter 5, Catching the Prey in AR, will introduce using the mobile device's camera as our game's background
  • Chapter 9, Finishing the Game, will discuss some ideas for ways to enhance the AR gameplay
  • Chapter 10, Troubleshooting, will help you just in case things don't work as expected; this chapter will identify potential issues and provide tips to resolve them

Adventure games

Adventure games are typically characterized by a quest-driven story where players must explore and solve puzzles in order to complete the game, whereas the current real-world adventure games are more about exploration than puzzle solving and completing a quest. If anything, the current batch of real-world games are more like a Role-Playing Game (RPG) than a classic adventure game. In the future, we may certainly see more true classic adventure games or possibly other real-world mixes, such as real-time strategy, shooters, simulation, educational, sports, and puzzle.

In order to demonstrate how all these new concepts come together, we will be building a sample game throughout the book. This game will loosely follow an adventure style not unlike other popular titles in the real-world genre. In this game, we will be adding many common game elements, such as an avatar, character inventory, particle effects, and more in the course of several chapters; the following is a short introduction to those chapters:

  • Chapter 3, Making the Avatar, helps you to add a 3D rigged and animated character to our map
  • Chapter 4, Spawning the Catch, covers many concepts on GIS and mapping and features a short section on object animation
  • Chapter 5, Catching the Prey in AR, introduces AR and many other gaming concepts, such as texturing, rigid body physics, player input, AI, GUI menus, and particle effects
  • Chapter 6, Storing the Catch, introduces you to developing a persistent character inventory on a mobile device and more GUI development
  • Chapter 8, Interacting with an AR World, helps you add additional GUI elements and more particle effects and introduces visual effect shaders
  • Chapter 9, Finishing the Game, discusses the possibilities of enhancing the sample game or other ideas for a real-world game

Introducing Foody GO

Certainly, the best way to learn any new or advanced concepts is by example. Foody GO will be our example real-world adventure game that we will be building throughout the book. The game will follow a food theme where the player will search for and catch experimental cooking monsters. Once caught, the player must take their monsters to local restaurants in order to sell them for items, power and prestige.

Of course, our sample game will focus on the location-based augmented reality elements, but we will introduce several other technical features, as follows:

  • Player mapping
  • Augmented reality with the camera
  • Rigged and animated 3D avatar
  • Animated objects
  • Simple AI
  • Particle effects
  • GUI menus and controls
  • Persistent database storage
  • Visual shader effects

We won't get into extensive detail on any of the preceding features, as most of these items could cover a book by itself. However, it will be helpful to understand how each of these elements comes together to make a real-world adventure game.

Source code

All of the books source code can be downloaded from SITE. The source code will be broken down chapter by chapter and provided as a progressive project. For each chapter, the starting and ending project's states will be provided. This will allow the more advanced reader to jump ahead in the book. Novice readers are encouraged that you follow all the examples in the book, as later chapters will be more advanced in content.

Getting into mobile development with Unity

Now, with all the background set and our course laid out, let's get started by introducing mobile development with Unity. More advanced readers who have developed Unity games on Android or iOS may want to skip ahead to Chapter 2, Mapping the Player's Location.

This installation guide is intended to be cross-platform compatible and should work on Windows, Linux, or Mac. For the sake of brevity, only screenshots for the Windows platform will be shown.

Downloading and installing Unity

Even if you have installed Unity before, but have not done mobile development, make sure that you follow this section closely. There are a couple of important steps you would not want to miss.

Perform the following steps to install Unity:

  1. Open any browser and go to https://unity3d.com/.
  2. Browse through the site and download the Unity installer for the latest stable release. If you have never downloaded Unity before, you will need to create a new account.
  3. Run the Unity installer, click on Next to accept the license agreement and click on Next again.
  4. On the architecture dialog, shown in the following screenshot, make sure that you select 64 bit:

    Downloading and installing Unity

  5. On the select components dialog, make sure that you choose your preferred mobile platform, Android or iOS. Many users will just select all features and install. However, it is better to be selective and install only what you need. Installing all Unity features will require about 14 GB of space, and this can quickly add up if you have installed more than one version.

    In the following example screenshot, we have selected both Android and iOS. Ensure that you only select the platform you need:

    Downloading and installing Unity

    Choose only the components you need

  6. Select the default installation path for Unity and then click on Next to install.

Even with the limited number of components, the installation will still take several minutes, so grab a coffee and wait until it completes.

Setting up for Android development

If you are using an Android device to test the game, use this section to get ready. Developers who already have experience with Android can briefly review this section or jump ahead to the Getting Started with Unity section in this chapter.

Tip

Always install the same architecture version, 64 or 32 bit.

Installing the Android SDK

Follow the subsequent steps to install the Android SDK on your development computer. Even if you already have the SDK installed, please review these steps to ensure that you have the right path and components set:

  1. If you have not already done so, download and install the Java Development Kit (JDK) from http://www.oracle.com/technetwork/java/javase/downloads/index.html.

    Note

    Always note where you install a development kit like the JDK or SDK.

  2. Download the latest version of Android Studio from https://developer.android.com/studio/index.html.
  3. After Android Studio has finished downloading, follow the instructions on https://developer.android.com/studio/index.html to start installation.
  4. As you install Android Studio, make sure that you also install the Android SDK, as follows:

    Installing the Android SDK

    Install the Android SDK component

  5. For the installation location, change the path to something that is easy for you to remember and locate. In the example screenshot, Android/AndroidStudio and Android/AndroidSDK are used:

    Installing the Android SDK

    Select an installation location that will be easy to find later on

  6. After the installation completes, open Android Studio. Open the Android SDK Manager by selecting menu item Tools | Android | AndroidSDK. In the following example screenshot, only Android 5, API Level 21 is selected because it matches the device:

    Installing the Android SDK

    Set the Android SDK location and select API level that matches your device

  7. On the Android SDK panel, set the location path to the same as you used in step 5. Then, select to install Android API level that matches your Android device and click on Apply. Locate the Android version of your phone from Settings | About phone | Android version. This API installation may take several minutes, so this will be a good time for another coffee or the beverage of choice.
  8. After the API installation completes, close Android Studio.

Connecting to your Android device

For best results when following the examples in this book, you will need to connect a physical device to your computer for testing. It is possible to emulate a GPS and camera in an Android emulator, but that is beyond the scope of this book. Follow these steps to get your device connected:

  1. Install the driver for your Android device by following this guide: https://developer.android.com/studio/run/oem-usb.html#InstallingDriver.
  2. Enable USB debugging on your Android device:
    • On Android 4.2 and higher: The Developer options screen is hidden by default. To make it visible, go to Settings | About phone and tap on Build number seven times. After the seventh tap, you will see a message informing you that the developer options are enabled. Return to the previous screen and select Developer options at the bottom to turn on USB debugging.
    • On older versions of Android, go to Settings | Applications | Development to turn on USB debugging.
  3. Connect your device to the computer. On the device you will be prompted to allow USB debugging. Choose Ok and wait for a few seconds to make sure that the driver connects.
  4. Open a command or console window on your computer and navigate to the Android/AndroidSDK folder where we installed the Android SDK to above.
  5. Run the following command-line commands:
    cd platform-tools
    
    adb devices
    
  6. Your device should show up in the list. If for some reason you do not see your device in the list, consult Chapter 10, Troubleshooting. The following console window shows the commands run and sample output:

    Connecting to your Android device

That completes the bulk of setting up an Android device. We still have a couple more settings to make in Unity, but we will cover that in the next section on project setup.

Setting up for iOS development

In order to keep the content of this book focused and the development platform independent, we will not provide a step-by-step guide here. However, there is an excellent guide for iOS setup on the Unity site at https://unity3d.com/learn/tutorials/topics/mobile-touch/building-your-unity-game-ios-device-testing.

After you complete your iOS setup, return to the book, and we will begin building the example game project.

Getting started with Unity

Unity is a great platform to start learning game development or even shipping a commercial game. It is the choice of game engine for many of the popular games in the Android or iOS app stores. So, what makes Unity such a great platform to develop games on? The following is a short list of things that make Unity such a compelling platform to develop games on:

  • It is free to get started: There is a ton of free assets or code you can use to build games. We will look at a number of free assets in this book.
  • Incredibly easy to use: You could likely build a complete game in Unity without writing even one line of code. Fortunately, you will learn some scripting and how to write code in this book.
  • Entirely cross platform: With Unity, you can develop on or for any environment that suits you. Of course, certain platforms, such as mobile, still have limitations and we will cover that as well.
  • Outstanding community: Unity has a hardcore base of developers who are eager to share experiences and help others. We will be sure to showcase many of the great community resources.
  • Asset Store: The Unity Asset Store can be an invaluable tool to build your first game or even your seventh commercial title. We will show you the deals and what to avoid.

Creating the game project

Let's get started by creating our sample game project Foody GO; we will also take this opportunity to build and deploy this starting project to your mobile device:

  1. Launch Unity and start a new project named FoodyGO. Make sure that 3D is enabled and disable Unity analytics. Of course, you will want to save your project in an easy-to-find folder, such as Games, just as shown in the following sample screenshot:

    Creating the game project

  2. Click on the Create project button and wait for Unity to open.
  3. In the Hierarchy window (top-left corner), you will see a scene named Untitled. Beneath that, there will be the Main Camera and Directional Light attached. Here is the screenshot of what you will see:

    Creating the game project

  4. First thing you will want to do is rename the scene and save it. So, go to File | Save Scene As...
  5. A save dialog will open, allowing you to choose where to save the scene. Just choose the default Assets folder and name your scene Splash. Then, click on Save.
  6. The title of the scene should now read Splash. Notice that there is also a new Splash scene object in the project Assets folder.
  7. Now let's adjust the Unity editor layout to match how our mobile game will run. From the menu, select Window | Layouts | Tall. Then, undock the Game tab from the main window by selecting and clicking the mouse while dragging the tab over. Then, resize the window so both the scene and game windows are roughly of the same width.
  8. Save the layout by opening the menu to Window | Layouts | Save Layout. Name your layout Tall_SidebySide and click on Save. This will allow you to quickly return to this layout later.
  9. Select the Main Camera by double-clicking on it, in either the Hierarchy window or Scene window. Notice how the Scene window will focus on the Main Camera object, and the Inspector window will display all the properties. This is what the Unity editor window should look like now:

    Creating the game project

    Editor layout for mobile development

  10. Before we go further, let's take a look at each of the main windows we will be working with in Unity:
    • Scene window: This window will allow you to view and interact with the game objects in the scene.
    • Game window: This is the players' view of the scene rendered by the main camera.
    • Hierarchy window: This shows a tree view of the game objects in the scene or scenes. In most cases, you will select or add items to the scene in this window.
    • Project window: It provides a view of and a quick way to access the assets in your project. Not much is in our project now, but we will quickly add some new assets in the coming chapters.
    • Inspector window: This view allows you to inspect and alter settings on game objects.
  11. Click on the Play button located at the top middle of Unity editor. The game will start playing, but nothing will happen because we only have a camera and a light. So let's add a simple Splash screen.
  12. In the Hierarchy window, select the scene. From the menu, select Game Object | UI | Panel to add a Canvas and Panel to the scene.
  13. Double-click on the Panel object in the Hierarchy window. This will focus the Scene window on the panel. In the Scene window, switch the view to 2D by clicking the button at the top of the window. This is what you should see now:

    Creating the game project

    Editor window with UI focused on in Scene window

  14. The panel in the scene window is a 2D UI element that allows us to render text or other content to the player. By default, the panel centers itself to the main view of the camera when it is added to the scene. This is why we see the semitransparent panel cover the entire Game window. Since we don't want a transparent background to the splash screen, let's change the color.
  15. Select the Panel in the Hierarchy window. Then, click on the white box beside the Color property in the Inspector window to open the Color settings. You will see the following dialog:

    Creating the game project

  16. Enter FFFFFFFF in the Hex Color field and then close the dialog. Notice how the background of the Game window is now opaque white.
  17. From the menu, select Game Object | UI | Text. In the Inspector window, set the properties of the Text to match the screen extract, as follows:

    Creating the game project

  18. Run the game by clicking on the Play button. Not much happens, but we now have a splash screen for our game. Don't worry, later in the book, we will add some pizazz to this screen. For now though, let's get this game deployed to your device.

Building and deploying the game

Now that we have the foundations of our game and a simple splash screen let's deploy it to your device. Nothing confirms your progress as a game developer other than seeing your game run outside the Unity editor. Follow the section that is specific to your device to complete the build and deployment.

Building and deploying to Android

As long as you have followed the steps for installation in the previous sections of this chapter, deploying your game to Android should be simple. If you do encounter any deployment issues, refer to Chapter 10, Troubleshooting. Follow the next steps to build and deploy to your Android device:

  1. From the menu, select Edit | Preferences. This will open the preferences dialog.
  2. Select the External Tools tab. Change or set the location of your Android SDK Path and Java JDK Path to the installation paths we made a note of when installing. Close the dialog when you are finished. The subsequent sample screenshot shows where you need to enter those paths:

    Building and deploying to Android

  3. Select Edit | Project Settings | Player from the menu. Select the Android Settings tab and then click on Other Settings at the bottom of the panel. Set the Bundle Identifier to com.packt.FoodyGO as shown in the following screenshot:

    Building and deploying to Android

  4. Make sure that your Android device is connected by the USB. Refer to the Connecting to your Android Device section earlier in this chapter if you are unsure.
  5. Open the Build Settings by selecting from the menu File | Build Settings. On the Build Settings dialog, click on the Add Open Scenes button to add the Splash scene. Ensure that you select the Android build from the list of build types. When you are all set and ready, click on the Build and Run button. This is how the Build Settings dialog should look like:

    Building and deploying to Android

  6. A file save dialog will open the project's root folder. Create a folder called Build while you still have the dialog box opened. Open the new Build folder and save your build as com.packt.FoodyGO. The name should match the name we used for the build identifier earlier. Then, click on Save to start the build.
  7. Since this is the first build of the project, Unity will reimport all the project assets and other modules, which may take a few minutes. Subsequent builds should take less time, but if you change platform outputs, everything will need to be reimported.
  8. After the build completes, open your device. You will likely see the Unity screen loading and then the splash screen. Congratulations, you have deployed the game to your device.

Building and deploying to iOS

Assuming you followed the previous section, Setting up for iOS development, you should be able to already build and deploy the game to your device. Just follow the build and deployment steps again in that page to deploy the game to your device. Download the sample project for the chapter and deploy that to your iOS device.

Summary

For this chapter, we started out by introducing what the genre of real-world adventure games is and why it has become so popular. We then went into more detail on the major components that comprise the genre and how we will be covering each component in the book. After that, we introduced the sample game Foody GO that we will be building as a sample real-world adventure game. Then, we dove headfirst into installing Unity and the required dependencies for building, deploying, and testing it on your mobile device. Finally, we created the Foody GO game project and added a simple splash screen.

In the next chapter, we will continue building on the Foody GO game project and start to add mapping. However, before we add maps to our game, we will cover some basics on GPS and GIS.

Left arrow icon Right arrow icon
Download code icon Download Code

Key benefits

  • • Create your own augmented reality game from scratch and join the virtual reality gaming revolution
  • • Use the latest Unity 5 VR SDK to create pro-level AR games like Pokémon Go
  • • Innovate and explore the latest and most promising trend of AR gaming in the mobile gaming industry

Description

The heyday of location-based augmented reality games is upon us. They have been around for a few years, but the release of Pokémon Go was a gamechanger that catalyzed the market and led to a massive surge in demand. Now is the time for novice and experienced developers alike to turn their good ideas into augmented reality (AR) mobile games and meet this demand! If you are keen to develop virtual reality games with the latest Unity 5 toolkit, then this is the book for you. The genre of location-based AR games introduces a new platform and technical challenges, but this book will help simplify those challenges and show how to maximize your game audience. This book will take you on a journey through building a location-based AR game that addresses the core technical concepts: GIS fundamentals, mobile device GPS, mapping, map textures in Unity, mobile device camera, camera textures in Unity, accessing location-based services, and other useful Unity tips. The technical material also discusses what is necessary for further development to create a multiplayer version of the game. At the end, you will be presented with troubleshooting techniques in case you get into trouble and need a little help.

Who is this book for?

This book is for those who have a basic knowledge of game development techniques, but no previous knowledge of Unity is required. Some basic programming knowledge would be desirable, but the book is an introduction to the topic. The book is also suitable for experienced developers new to GIS or GPS development.

What you will learn

  • • Build a location-based augmented reality game called Foodie Go
  • • Animate a player's avatar on a map
  • • Use the mobile device's camera as a game background
  • • Implement database persistence with SQLLite4Unity3D to carry inventory items across game sessions
  • • Create basic UI elements for the game, inventory, menu, and settings
  • • Perform location and content searches against the Google Places API
  • • Enhance the game's mood by adding visual shader effects
  • • Extend the game by adding multiplayer networking and other enhancements
Estimated delivery fee Deliver to Chile

Standard delivery 10 - 13 business days

$19.95

Premium delivery 3 - 6 business days

$40.95
(Includes tracking information)

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Jan 20, 2017
Length: 334 pages
Edition : 1st
Language : English
ISBN-13 : 9781787122888
Category :
Languages :
Tools :

What do you get with Print?

Product feature icon Instant access to your digital eBook copy whilst your Print order is Shipped
Product feature icon Paperback book shipped to your preferred address
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Shipping Address

Billing Address

Shipping Methods
Estimated delivery fee Deliver to Chile

Standard delivery 10 - 13 business days

$19.95

Premium delivery 3 - 6 business days

$40.95
(Includes tracking information)

Product Details

Publication date : Jan 20, 2017
Length: 334 pages
Edition : 1st
Language : English
ISBN-13 : 9781787122888
Category :
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 147.97
Augmented Reality Game Development
$48.99
Unity Virtual Reality Projects
$43.99
Mastering Oculus Rift Development
$54.99
Total $ 147.97 Stars icon
Banner background image

Table of Contents

10 Chapters
1. Getting Started Chevron down icon Chevron up icon
2. Mapping the Player's Location Chevron down icon Chevron up icon
3. Making the Avatar Chevron down icon Chevron up icon
4. Spawning the Catch Chevron down icon Chevron up icon
5. Catching the Prey in AR Chevron down icon Chevron up icon
6. Storing the Catch Chevron down icon Chevron up icon
7. Creating the AR World Chevron down icon Chevron up icon
8. Interacting with an AR World Chevron down icon Chevron up icon
9. Finishing the Game Chevron down icon Chevron up icon
10. Troubleshooting Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Full star icon Full star icon 5
(3 Ratings)
5 star 100%
4 star 0%
3 star 0%
2 star 0%
1 star 0%
Khai Sep 30, 2017
Full star icon Full star icon Full star icon Full star icon Full star icon 5
A very good book, I hope there will be more of the similar book!
Amazon Verified review Amazon
stormcorn Apr 18, 2017
Full star icon Full star icon Full star icon Full star icon Full star icon 5
nice book
Amazon Verified review Amazon
Janie Clayton May 08, 2018
Full star icon Full star icon Full star icon Full star icon Full star icon 5
This is an excellent book for people who are somewhat familiar with Unity and computer programming but are not experts. The author does not assume you know everything about Unity but also doesn't go into weird depths about minutiae that derails the point he's trying to make. Some tech writers either assume you're an expert or an idiot. Lanham threads the needle of giving necessary explanations but not talking down to the reader. Everything is explained well and mathematical concepts are broken down into understandable chunks without abstracting away the actual math. If you are curious about Unity or augmented reality development but don't know where to begin, this is a good place to start.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is the delivery time and cost of print book? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela
What is custom duty/charge? Chevron down icon Chevron up icon

Customs duty are charges levied on goods when they cross international borders. It is a tax that is imposed on imported goods. These duties are charged by special authorities and bodies created by local governments and are meant to protect local industries, economies, and businesses.

Do I have to pay customs charges for the print book order? Chevron down icon Chevron up icon

The orders shipped to the countries that are listed under EU27 will not bear custom charges. They are paid by Packt as part of the order.

List of EU27 countries: www.gov.uk/eu-eea:

A custom duty or localized taxes may be applicable on the shipment and would be charged by the recipient country outside of the EU27 which should be paid by the customer and these duties are not included in the shipping charges been charged on the order.

How do I know my custom duty charges? Chevron down icon Chevron up icon

The amount of duty payable varies greatly depending on the imported goods, the country of origin and several other factors like the total invoice amount or dimensions like weight, and other such criteria applicable in your country.

For example:

  • If you live in Mexico, and the declared value of your ordered items is over $ 50, for you to receive a package, you will have to pay additional import tax of 19% which will be $ 9.50 to the courier service.
  • Whereas if you live in Turkey, and the declared value of your ordered items is over € 22, for you to receive a package, you will have to pay additional import tax of 18% which will be € 3.96 to the courier service.
How can I cancel my order? Chevron down icon Chevron up icon

Cancellation Policy for Published Printed Books:

You can cancel any order within 1 hour of placing the order. Simply contact [email protected] with your order details or payment transaction id. If your order has already started the shipment process, we will do our best to stop it. However, if it is already on the way to you then when you receive it, you can contact us at [email protected] using the returns and refund process.

Please understand that Packt Publishing cannot provide refunds or cancel any order except for the cases described in our Return Policy (i.e. Packt Publishing agrees to replace your printed book because it arrives damaged or material defect in book), Packt Publishing will not accept returns.

What is your returns and refunds policy? Chevron down icon Chevron up icon

Return Policy:

We want you to be happy with your purchase from Packtpub.com. We will not hassle you with returning print books to us. If the print book you receive from us is incorrect, damaged, doesn't work or is unacceptably late, please contact Customer Relations Team on [email protected] with the order number and issue details as explained below:

  1. If you ordered (eBook, Video or Print Book) incorrectly or accidentally, please contact Customer Relations Team on [email protected] within one hour of placing the order and we will replace/refund you the item cost.
  2. Sadly, if your eBook or Video file is faulty or a fault occurs during the eBook or Video being made available to you, i.e. during download then you should contact Customer Relations Team within 14 days of purchase on [email protected] who will be able to resolve this issue for you.
  3. You will have a choice of replacement or refund of the problem items.(damaged, defective or incorrect)
  4. Once Customer Care Team confirms that you will be refunded, you should receive the refund within 10 to 12 working days.
  5. If you are only requesting a refund of one book from a multiple order, then we will refund you the appropriate single item.
  6. Where the items were shipped under a free shipping offer, there will be no shipping costs to refund.

On the off chance your printed book arrives damaged, with book material defect, contact our Customer Relation Team on [email protected] within 14 days of receipt of the book with appropriate evidence of damage and we will work with you to secure a replacement copy, if necessary. Please note that each printed book you order from us is individually made by Packt's professional book-printing partner which is on a print-on-demand basis.

What tax is charged? Chevron down icon Chevron up icon

Currently, no tax is charged on the purchase of any print book (subject to change based on the laws and regulations). A localized VAT fee is charged only to our European and UK customers on eBooks, Video and subscriptions that they buy. GST is charged to Indian customers for eBooks and video purchases.

What payment methods can I use? Chevron down icon Chevron up icon

You can pay with the following card types:

  1. Visa Debit
  2. Visa Credit
  3. MasterCard
  4. PayPal
What is the delivery time and cost of print books? Chevron down icon Chevron up icon

Shipping Details

USA:

'

Economy: Delivery to most addresses in the US within 10-15 business days

Premium: Trackable Delivery to most addresses in the US within 3-8 business days

UK:

Economy: Delivery to most addresses in the U.K. within 7-9 business days.
Shipments are not trackable

Premium: Trackable delivery to most addresses in the U.K. within 3-4 business days!
Add one extra business day for deliveries to Northern Ireland and Scottish Highlands and islands

EU:

Premium: Trackable delivery to most EU destinations within 4-9 business days.

Australia:

Economy: Can deliver to P. O. Boxes and private residences.
Trackable service with delivery to addresses in Australia only.
Delivery time ranges from 7-9 business days for VIC and 8-10 business days for Interstate metro
Delivery time is up to 15 business days for remote areas of WA, NT & QLD.

Premium: Delivery to addresses in Australia only
Trackable delivery to most P. O. Boxes and private residences in Australia within 4-5 days based on the distance to a destination following dispatch.

India:

Premium: Delivery to most Indian addresses within 5-6 business days

Rest of the World:

Premium: Countries in the American continent: Trackable delivery to most countries within 4-7 business days

Asia:

Premium: Delivery to most Asian addresses within 5-9 business days

Disclaimer:
All orders received before 5 PM U.K time would start printing from the next business day. So the estimated delivery times start from the next day as well. Orders received after 5 PM U.K time (in our internal systems) on a business day or anytime on the weekend will begin printing the second to next business day. For example, an order placed at 11 AM today will begin printing tomorrow, whereas an order placed at 9 PM tonight will begin printing the day after tomorrow.


Unfortunately, due to several restrictions, we are unable to ship to the following countries:

  1. Afghanistan
  2. American Samoa
  3. Belarus
  4. Brunei Darussalam
  5. Central African Republic
  6. The Democratic Republic of Congo
  7. Eritrea
  8. Guinea-bissau
  9. Iran
  10. Lebanon
  11. Libiya Arab Jamahriya
  12. Somalia
  13. Sudan
  14. Russian Federation
  15. Syrian Arab Republic
  16. Ukraine
  17. Venezuela