Do you want to dive into VR, AR, and mixed reality app development?
Extended reality, commonly referred to as XR, is the umbrella term used to describe virtual reality, augmented reality, and mixed reality. While the technologies for these vary, there is no question that they’ve led a revolution in many different industries. From providing new forms of game experiences to improving job training, these vastly changing technologies are set to give us that science fiction future we’ve often seen in movies.
As such, now is an exciting time for developers of all walks of life to jump in and start learning how to make projects using VR, AR, and MR. In this article, we’ve gathered some of the best VR tutorials, best AR tutorials, and best mixed reality tutorials to help you get started.
Let’s not delay and jump right in.
Table of contents
What are VR, AR, and Mixed Reality?
Before we get to the tutorials, and just in case we have some super beginners present, we figured it’s imperative to pause and explain the difference between the parts that compose XR.
First, let’s understand the similarity of why they’re all grouped under XR. Extended reality is a concept where we use virtual objects of some kind to “extend” the reality we live in (eg. add more “features”). All VR, AR, and mixed reality apps do this to some degree, which is why XR is a helpful way to categorize this concept.
Where they differ, is how each technology does this.
Virtual Reality: With virtual reality, we completely replace the “real world” with a digital environment. While you certainly exist in reality, this experience allows you to use your real body and head movements to interact with this virtual world and immerse yourself as if you were actually there. This experience is where you most commonly see people wearing headsets.
Augmented Reality: Augmented reality is where we overlay digital objects to our real-world environment and can view them with any device with a camera. These digital objects can respond in real-time with changes in our actual environment. Most often, these experiences are achieved with modern smartphones, and you’ve probably seen this popularized with Pokémon GO.
Mixed Reality: Mixed reality can be considered the median between the two technologies above. Mixed reality generally uses headsets, but does not completely create a virtual environment. Instead, it takes the real environment around you and adds virtual objects like in AR. However, in mixed reality, you can interact with the digital objects and real-world objects in front of you at the same time, completely blending the idea of what’s virtual and what’s real.
Best VR Tutorials
Duration: 2 hours, 22 minutes
This free, complete course provided by Zenva covers everything a beginner needs to know to get started with VR development. While the tutorial assumes you’ve had some prior Unity experience, it doesn’t require any specific knowledge of virtual reality.
In this course, you’ll design a simple, stationary platform experience where the player can look around a low-poly world while riding along in their platform on a pre-defined path. While this might sound like a simple project, you’ll learn a lot of key concepts associated with virtual reality, including how objects are tracked, how head tracking and degrees of freedom work, how to deal with motion sickness, and similar. So, if you’re especially interested in getting a good technological base, this is a fantastic VR tutorial.
In addition, you’ll also learn how to tailor your project for different headsets, including Oculus, HTC Vive, Gear VR, and Google Cardboard. Thus, you can make this tutorial work for a good number of setups.
- Virtual reality technology
- Object tracking
- Head tracking
- VR vs. AR
- Motion sickness
- Creating predefined circuits of movement
- Project setup for headsets
- Optimizing performance
Duration: 50 minutes
Divided into a six-part series, this tutorial set by VR with Andrew covers Unity’s new XR Interaction Toolkit. The XR Interaction Toolkit is Unity’s pre-built system of XR components that makes setting up interactivity for VR (and AR for that matter) easy. Since its release, its come to be seen as the industry-standard way VR should be handled in Unity – with other previously established plugins falling a bit by the wayside.
With this series, which is perfect for beginners, you’ll learn the XR Interaction Toolkit from the ground up. You’ll get to learn how to set it up for your projects, how to use components to make interactive objects, how to implement teleportation movement, and other key features you may want to create for your VR experience.
- Setting up the XR Interaction Toolkit
- Interactive objects
- Teleportation style movement
- Pointer systems
- Snapping object rotation
- Creating a realistic button
Duration: 4 hours
Featuring a whopping 17 videos, this VR playlist is a fantastic resource for learning VR game development in the popular Unreal Engine. The series, which was created by Sir_Fansi Gamedev, has numerous explanations for various VR features – from setting up Unreal Engine with the best VR plugin to actually handling interaction. As such, as the title boasts, this is a fantastic series for beginners who also want to expand their skills from the basics.
Where this tutorial series stands out, however, is how the topic is approached. Each tutorial video focuses on a specific game feature one might find in a real game. This ranges from simple game functionality like pausing, to how to add things like shooting a shotgun into a game. As such, you learn with a very practical approach you can use in your own creations.
- VR Expansion Plugin setup
- Movement in VR (teleportation, climbing, etc.)
- Melee weapons
- Functional guns and bows
- NPC AI for VR
- Practical UIs (maps, quests, inventories)
- Pausing, saving, & loading
- Oculus Quest tweaks
Duration: 44 minutes
- Aframe WebVR project set up
- Native VR vs. WebVR
- Adding primitive objects
- Manipulating object appearance
- How to use ECS architecture
Duration: 57 hours
While not free, we did want to include this one in our best VR tutorials section for the sheer fact it’s a comprehensive resource.
Created by Zenva, the Virtual Reality Mini-Degree is not one tutorial or course, but instead several courses collected together. These courses cover a complete curriculum set you’ll need to go from zero-experience in Unity or VR, to an industry-ready developer.
In this curriculum, you’ll learn VR development while building several different kinds of projects, including: rhythm games, virtual environment experiences, FPS games, RPGs, puzzle games, and more. Thus, not only will you learn the ins and outs of VR development from scratch, but get some nifty game projects at the end you can expand, create a portfolio out of, or simply share with friends.
If you have some money to spend, time to use, and really want to get an in-depth learning experience with virtual reality that prepares you to build numerous kinds of projects, this is the place to go!
- Unity and C# development
- VR movement (teleportation and smooth)
- UI implementation for VR
- Hand-tracked controllers
- Motion sickness best practices
- Interaction systems (grabbing, reticles, etc.)
- 360° media
- Game genre mechanics
- Particle systems
- State machines
Best AR Tutorials
Duration: 52 minutes
Created by Zenva, this complete and free course covers the fundamentals of AR Foundation in Unity.
For AR, there are many different SDKs, with the primary ones being ARKit for iOS and ARCore for Android. AR Foundation, however, combines the two technologies into a single, easy-to-use API – meaning no pesky multiple project. Instead, you can use the same Unity project to cover both platforms.
This particular course is fantastic for beginners, as it covers basic setup, deployment, and object spawning, the basis from which all AR projects need to function. It also covers some basic C# scripting as it pertains to AR development, giving you the tools you need to expand into bigger projects.
- Setting up AR Foundation
- Detecting planes
- Understanding position with placement indicators
- Spawning in objects
- Exporting to Android and iOS
Duration: 1 hour
If you’re particularly interested in AR for Android, learning ARCore is a good bet. In this eight-part series by Dinesh Punni, you’ll learn just that, while still taking advantage of the Unity platform’s features.
The videos cover a good set of fundamentals that are part of ARCore development, from detecting environments in various ways to detecting objects in those environments (virtual or otherwise). While you won’t learn how to develop any projects in particular, you will discover everything ARCore has to offer. Thus, wherever you go, you’ll have a fantastic understanding of what features are available and how to use them.
- ARCore setup for Unity
- Android deployment
- Understanding environments
- Image tracking
- Light estimation
- Motion tracking
Duration: 22 minutes
For iOS developers, this video by Reality School will teach you the basics of Swift, RealityKit, and ARKit for generalized AR development.
RealityKit is Apple’s developed framework aimed at making AR application development easy. It utilizes ARKit in the background, but provides convenient tools and API elements that make accessing ARKit information a more intuitive, smoother process.
Through the video, you’ll learn how to use this framework through coding with Swift to deal with features such as touch gestures, object spawning, and more. Though some Swift experience will be required here, the tutorial is a great entrance into augmented reality itself.
- Setting up a project with RealityKit
- Detecting taps
- Adding other AR gestures
- Understanding AR views
- Setting up 3D models
- Manipulating models in AR
Duration: 80 minutes
Focused on the EasyAR SDK, this ten-part tutorial series by Render Island will showcase how to develop AR apps in Unity using the EasyAR plugin.
The highlight of this series – and the EasyAR plugin in general – is you can make many powerful AR applications without needing to write a single line of code. Instead, you can use various components and other tools to run the different aspects of your project. This series demonstrates the various techniques to achieve this, making it the most non-programmer friendly option on this list.
In addition to learning standard object spawning, you’ll also get to explore location-based AR, which uses your own location to render AR elements.
- EasyAR installation
- Spawning objects to customize your room
- Automatic spawning
- Location-based AR
- Integrating Azure Cloud Recognition
Duration: 14 hours
Similar to our VR section, we did want to include one paid item for augmented reality.
The Augmented Reality Mini-Degree by Zenva is a curriculum consisting of AR focused courses for Unity. You’ll cover the major SDKs – AR Foundation, ARCore, ARKit, and EasyAR – while building several real world projects. These projects include a space shooter game, a painting app, a furniture placement app, and more.
The curriculum is also designed with complete beginners in mind, so you don’t even need to have Unity experience to get started. All the courses are also developed by industry professionals, meaning you’ll get top quality advice on AR development.
So if you’re looking for a comprehensive package, and can afford it of course, this curriculum is an excellent choice for getting a well-rounded education in augmented reality.
- Unity fundamentals
- AR Foundation, EasyAR, ARCore, & ARKit setup in Unity
- Android and iOS deployment
- Plane detection
- Object spawning & manipulation
- Object tracking
- Image targets
- Light estimation
- AR compatible UIs
- Game and application mechanics
Best Mixed Reality Tutorials
Duration: 1 hour, 48 minutes
This six-part playlist series by Dilmer Valecillos covers the foundations of creating mixed reality apps for the HoloLens2 device created by Microsoft.
Using Unity and the MRTK package, which was made specifically for developing for the HoloLens2, the tutorial covers everything needed even if you have no mixed reality experience. You’ll learn how to set up Unity, how object spawning actually works for mixed reality, and even how to use UIs in mixed reality. Though some Unity experience is recommended here, this tutorial is a good first step into mixed reality in general – even if you want to move to other devices.
- Unity project setup
- Spawning and manipulating objects
- Dealing with spatial awareness
- Track object transformations
- Dealing with UX elements
Duration: 49 minutes
For VR headset enthusiasts, this five-part tutorial series will cover mixed reality when it comes to the Oculus Quest (as the title suggests).
Created once again by Dilmer Valecillos, this tutorial series is a bit more advanced, as you won’t strictly be learning the basics for mixed reality development. However, you will learn some of the newer features available for Oculus, in particular how to generate an in-game mesh on top of a real-world object.
So, if you feel a bit more confident in your skills, this series is great for experimenting with the next level of integrating virtuality and reality.
- Understanding the Passthrough API
- Implementing Passthrough components in Unity
- Working with Passthrough Layers
- Dealing with surface projection
- Tracking keyboards
Duration: 25 minutes
A bit different from all the tutorials on this list, there is another aspect of mixed reality we feel it’s important to address: filming. Rather than experiencing an app that blends real environments immersively with virtual aspects, many people are interested in making videos that combine their real-world selves with the virtual game environment. This is particularly popular with the game Beat Saber.
So, with this video created created by TougeVR, you can learn that aspect specifically. The video covers everything from studio setup to the actual technical aspects of the filming process. While definitely a departure from development, it is still a part of mixed reality that can be interesting to dive into – if not just for its sheer popularity online.
- Green screen setup
- Required equipment & setup
- LIV and OBS setup
- Keying, calibrating, and so forth
- Filming process
XR is an exciting field. There are a slew of untrodden paths when it comes to VR, AR, and mixed reality. Each industry is finding its own way to use these technologies to their advantage. In turn, their choices are changing how we develop these technologies. All in all, this makes the future of this technology hard to predict.
However, what we are sure of is that XR is fun to develop for. You have much more freedom to experiment, and there are always new features just around the corner that you can try out. So, whatever your personal goals, we hope these tutorials help you find a new niche for creating exciting software.
FINAL DAYS: Unlock coding courses in Unity, Unreal, Python, Godot and more.