Augmented reality is an up-and-coming technology for mobile apps, popularized by the hit game Pokémon GO. With the recent enhancements to Android and iOS, it is now easier than ever to begin developing AR applications.
In this course you will learn to code augmented reality apps for iOS using the ARKit framework. You'll learn how to detect flat surfaces in the real world, how to add geometric primitives and models to the AR scene, how to light your scene in a way that matches the ambient conditions, and even how to apply physics to your AR models. As if that's not enough, you'll also learn how to create an AR measurement app, to measure the distance between any two points in the real world!
We've built a complete guide to help you learn Swift, whether you're just getting started with the basics or you want to explore more advanced topics: Learn Swift.
1.Introduction2 lessons, 06:04
2.Get Started With ARKit5 lessons, 42:51
3.Example Project: Measurement App5 lessons, 20:40
4.Conclusion1 lesson, 01:14
People like to have immersive digital experiences. The recent surge in popularity of VR headsets and augmented reality apps shows that. With iOS 11 it is possible for you create this experience too using the new ARKit framework Apple has released with the latest version of its mobile operating system. Hello and welcome to Get Started With Augmented Reality for iOS. My name is Markus Mühlberger and in this course I will give you an introduction to this brand new framework. We will learn the basics about augmented reality, how to detect planes, load 3D models and how to use physics to interact with objects. We also going to simulate physics forces and experiment with lighting. In a second part of this course I will create a measurement app from start to finish. You can follow along, applying the techniques that you learned before. So, let's get started with augmented reality on iOS.
1.2 Augmented Reality Crash Course
Hi, and welcome back to Get Started With Augmented Reality for iOS. In this lesson, I will give you a crash course on augmented reality, explaining basic concepts and terminology. For non-English natives, augment come from the Latin augere, which means to increase. Nowadays, it is used as a synonym for enhance or supplement, both words that describe exactly what AR is. An enhanced reality, or one that is supplemented by computer-generated input. To do that, AR technology needs to use a variety of different sensors to determine its position in space. One of the early examples that I saw a few years back in 2008, was an augmented Wikipedia viewer called Wikitude. It took GPS coordinates and compass data to display if an article was available for a famous building or location nearby. It didn't use any video analysis, but that isn't always necessary with AR. Nowadays, however, it's expected that you use object and plane detection to display your objects more accurately. One of the most prominent examples in the last years is the Pokemon Go game. It uses location and augmented reality to project the digital creatures into the real world on your phone. Partly due to the success of this game, AR started to become more and more accepted by people. At WWDC 2017, Apple announced ARKit for iOS 11, the main technology we are using in this course. Enough history, let's get some common terms explained. First, there is composed scene. It is the combination of virtual and real objects combined to create the complete experience. Then we have digital object that refers to computer-generated content to enhance the user's experience. Accordingly, you also have real objects or markers that are features in the real world used to anchor the virtual world. Markers are used as references points, that are tracked to move digital objects in space when the camera moves. The term feature is used in computer vision to describe a recognizable pattern that algorithms can detect and classify, such as faces. Degrees of Freedom are a term to describe how something can move. There's a maximum of 6 degrees that describe the 3 movements up and down, left and right and forward and backward. As well as the 3 components of rotation, pitch, roll, and yaw. For example, a door only has one degree of freedom, because it can only rotate in one direction. While a cube on a table has three, two movement degrees and one rotation degree. Tracking is used in determining the position of objects in the real world to be able to calculate the position of the tracking device or camera. It's normally used by following markers around and it has to deal with all six degrees of freedom. Therefore, tracking is normally done with multiple markers. Finally, plane detection describes the process of detecting and tracking flat regions in a view that are used as reference office for digital objects. In its demo at WWDC, Apple used a table as a reference plane and projected virtual objects on it. Now that you have the summary of the most common terms in augmented reality, let me also explain two different types of AR content. If you are going to develop a game or interactive entertainment app, you most likely will use 3D models that are fixed in the virtual space. If you're doing any other app, like to make sure the example we are going to do in this course, you have to take care that the content is legible and oriented towards the users. Most times those two principles are mixed, and different content gets treated differently. That's it for a quick explanation of the history of augmented reality and important terms. In the next lesson, we are going to look at ARKit, and how to detect planes. See you there.