Foundations of Augmented Reality online course

online course

Course Description

This course presents an introduction to Augmented Reality, with emphasis on designing and developing Augmented Reality applications. The course starts with a comprehensive introduction to the field, covering also its history with early precursors dating back to the 19th century and with more than half a century of serious technology R&D. The course then introduces to the state of the art of hardware and software. The course covers all you need to know about Spatial Computing, Human Computer Interaction, Perception, Design Thinking, and Application Development. A rich mix of theory and practice is complemented with methodology and hands-on development and evaluation.

Insights into specialist application areas and job perspectives will help sharpen your skill set.

As part of the course, students will be tasked with designing, developing, and evaluating their own Augmented Reality application. Assessment will be made and grades will be based on an interdisciplinary team project, ideally bringing together students of the Computer Sciences with students in Arts and Media.

The online course will be based on the Foundations of Augmented Reality pilot course pilot delivered by Code Reality in 2019.


  • 10-16 February 2020

    Introduction lecture

    This lecture will define the key concepts in Augmented Reality, introducing the augmentation pipeline (from asset to delivery system to user experience). You will learn how to distinguish AR from other related technologies (metaverse, ubiquitous computing, augmented virtuality, to name a few). You will be sensitized for the changed paradigms surrounding the idea of ‘Experience’. You will develop an understanding of how AR works, and what is state of the art.

    Unity Basics tutorial

    The tutorial aims to introduce the basic concepts of Unity 3D engine that are required to start developing Augmented Reality applications.

  • 17-23 February 2020

    HCI Methodologies lecture

    This lecture will familiarize you with foundations of research and design methodologies in Human Computer Interaction (HCI). You will learn how to choose the right research and evaluation methodology, and you will learn how to pick the right design methodology. You will find out what mixed method research designs are and how to use them.

    Markers tutorial

    This tutorial introduces a full life-cycle instruction to practically design Augmented Reality markers, including creation and packaging for Unity and deploying to devices. The tutorial covers the topics of AR marker design, marker calibration and optimisation, marker installation and activation in Unity 3D engine, packaging of AR Game Engine App, and device deployment. We will look at a comparison of different AR SDK’s and development considerations for IOS, Android and Windows.

  • 24 February - 1 March 2020

    Perception lecture

    You will look into psychology of perception, learning about the pathway from the primal sensory experience, to preattentive features and Gestalt principles, to characteristics of specific senses (like signal detection theory, proprioception, and the vergence accommodation conflict). You will learn how these perceptual properties and affordances map to features in the UI toolbox at hand for building AR.

    Modelling Augmented Reality UX tutorial

    The tutorial is a three-steps paper-based activity for brainstorming ideas of Augmented Reality applications. It includes modeling the audience, the message and the worlds to answer the questions of who are the users, what is the main concept or purpose, and what should happen in the application.

  • 2-8 March 2020

    Software Engineering lecture

    When you finished this unit, you will have heard about the Agile Manifesto and you know that Scrum follows agile principles. You are familiar with task boards, and know about code style guidelines. You already knew about source control systems and probably know now what continuous integration is good for.

    3D Modelling

    This tutorial combines presentation, demonstrations and assisted experimentation to teach the fundamentals of 3D modelling. The tutorial will cover modelling, rigging, texturing/materials/lighting, animating, and exporting to Unity 3D for real-time application.

  • 9-15 March 2020

    Technology Overview lecture

    You will learn in this unit to understand and evaluate technology alternatives from end-user development to high- and low-level software engineering. Furthermore, it will teach you to develop a deeper understanding of component-level technology and introduce you to available sensor hardware and delivery systems.

    3D Scanning and Animation tutorial

    This tutorial will familiarize the students with photogrammetry and teach how to use specific 3D scanning and animation methods. We will work on constructing a 3D character, including the steps of obtaining 3D scan models with textures, cleaning the data (both 3D models and textures), and animation.

  • 16-22 March 2020

    History of Augmented Reality lecture

    This unit will guide you through AR’s history, starting over 400 years ago with analogue AR, but quickly turning to electronic and digital AR, with the more intense research history spanning the decades from the 1990s, after the word ‘Augmented Reality’ was invented by Boeing researchers Caudell and Mizell (1992).

    Development for Hololens, Spatial Mapping, Gesture and Gaze tutorial

    In this tutorial, we will start by configuring Windows for development with Augmented Reality glasses Microsoft Hololens. We will then look into how to set up the basic functionalities of spatial mapping, gaze navigation, and interaction using air-tapping gestures. The tutorial closes with configuration information on how to set up Unity3D, Visual Studio, and all the needed packages, modules, and SDKs. This tutorial should enable you to get started from scratch and take you far enough to build your first ‘hello world’ app for Hololens.

  • 23-29 March 2020

    Careers in Augmented Reality lecture

    The unit provides insight into the job market, what employers want, and the CodeReality skills framework that helps you to keep track of developing the right, sought-after talents.

    Gaze Interaction tutorial

    This tutorial will provide a mode detailed presentation of the concept of Gaze interaction and demonstrate how gaze interaction is used to select objects. The tutorial will teach how to implement gaze interaction using prewritten scripts provided by the MixedRealityToolkit.

  • 30 March - 5 April 2020

    Research Directions lecture

    This unit provides an outlook on future developments, picking up on weak signals and emerging trends in the research community. This includes novel tools such as consumer-grade volumetric capture, hearables, voice-activated graphics, or brain computer interfaces and innovative application areas such as Digital Assistants, Diminished reality, Deep Fakes, Programmable Synthetic Hallucinations, Umwelt Hacking, Perceptual Adaption, Sensory Augmentation, Neuro Design, or Wearable Skin.


The course is open to undergraduate and graduate students, Ph.D. candidates, post-doctoral researchers, and academic as well as industrial researchers.

You benefit from the course if you already know:

  • some basic mathematical and programming skills (Python, Java, C or C++, Unity programming or equivalent)
  • fundamentals of algorithms and data structures
  • linear algebra, especially with respect to 3D transformations
  • some basic 3D computer graphics
  • fundamentals of media, communications or marketing

The skills and knowledge listed above are not obligatory to enroll to the course.

Cost of the course

The course is free of charge.

Practical Information

The course ia available on the Code Reality’s online platform Code Reality: Learn. A free account is required to access the activities and materials of the course. The course is open for anyone to join. The registration and enrollment are now open.