Introduction


Augmented reality has the potential to become massively adopted on the web, where users don’t have to download apps or make sure they have the latest hardware. WebXR is one of the newest, official web APIs that allows developers to create VR and AR experiences using Javascript.

Don’t miss out on being one of the first developers to be well-versed in a technology that will be all over the web soon. Within less than an hour you could be creating your own AR experiences on the web!

Content


By the end of this course you will know the basics of how to create simple augmented reality experiences on the web and a basic understanding of how to design and code 3D experiences. Each lecture includes sample code and external link examples to support your learning. 

Specifically you will learn how to:
  • Create basic AR apps on the web using WebXR
  • Use a powerful 3D library called Three.js used by millions of applications on the web
  • Load and display 3D objects and models in AR
  • Animate objects and models
  • Positioning and rotation in AR
  • Work with different types of 3D models
  • Use touch gestures to provide interactivity
  • Convert any Three.js application into an AR app
  • Test WebXR experiences on your desktop, iOS, or Android devices

Prerequisites


While you will find it useful to have some previous Javascript and web programming knowledge, the class can be followed by absolute beginners as the coding environment is simple and the code examples are set up with many comments and explanations. If you don’t know anything about 3D environments, augmented reality, Three.js or WebXR then this class is for you.

While you can prototype WebXR using any desktop computer, to simulate real mobile AR you want to have either an iOS device that supports ARKit (most phones or iPads after 2017) or an Android device that supports ARCore (most phones after 2016).

Subtitles


  • English closed captions have been manually transcribed and are high quality
  • Coming soon: subtitles in Spanish, French, Italian, Polish, Portuguese, German, Simplified Chinese, Traditional Chinese, Korean, Hindi, and Turkish.