Gain an in-depth knowledge in immersive web development to create augmented reality (AR) and virtual reality (VR) applications inside web browsers using WebXR API, WebGL, Three.js, and A-Frame. This project-based book will provide the practice and portfolio content to make the most of what the futures of spatial computing and immersive technology have to offer.

Beginning with technical analysis of how web browsers function, the book covers programming languages such as WebGL, JavaScript, and HTML, with an eye on a complete understanding of the WebXR lifecycle. You'll then explore how contemporary web browsers work at the code level and see how to set up a local development server and use it with the Visual Studio Code IDE to create 3D animation in the WebGL programming language.  

With a familiarity of the web-rendering pipeline in place, you’ll venture on to WebGL abstractions such as the Three.js JavaScript library and Mozilla’s A-Frame XR Framework, which use WebXR to create high-end visual effects.  In the final projects of the book, you’ll create an augmented reality web session for an Android phone device, and create a VR scene in A-Frame (built on Three.js) to demo essential components of the WebXR API pertaining to user positioning and interaction.

Game engines have become common-place for the creation of mixed reality content.  However, developers not interested in learning entirely new workflows may be better suited to work within a medium almost universally open to all—the web; AR and VR Using the WebXR API will show you the way.

What You'll Learn
  • Master the creation of virtual reality and augmented reality features for web page
  • Prepare to work as an immersive web developer with a portfolio of projects in sought-after technologies
  • Review the fundamentals of writing shaders in WebGL
  • Experience the unity between client, server, and cloud architecture as it applies to location-based AR
Who This Book Is For

Aspiring immersive web developers and developers already familiar with the fundamentals of web development who want to further explore topics such as spatial computing, computer vision, spatial anchors, and cloud-computing for multi-user social experiences.

Table of Contents

  1. Cover
  2. Front Matter
  3. 1. Getting Started
  4. 2. Up and Running with WebGL
  5. 3. Toward the Third Dimension in WebGL
  6. 4. Matrices, Transformations, and Perspective in WebGL
  7. 5. Diving into Three.js
  8. 6. Entering VR Through WebXR
  9. 7. Creating an Augmented Reality Website with Three.js and the WebXR API
  10. 8. Building VR for the Web with A-Frame
  11. 9. Physics and User Interaction in A-Frame
  12. 10. Deploying 3D Animated Models in AR with A-Frame and GitHub Pages
  13. Back Matter