
This article provides and overview of the course
H3D has a bustling online student community. Here's how to get involved.
How to contact us
Be sure to read through this before starting the course content.
This quick article explains the changes made to this section since the original setup.
This lecture takes you through a demonstration of creating a cube based landscape the old fashioned way to give you more of an appreciation of how ECS improves performance.
A small tweak to make this code work with Entities Package 0.1.1
In this lecture we will begin putting together the game objects and components that will become entities in an ECS.
This lectures completes our brief look at how ECS conforms to the Flyweight design pattern and compares performance between using GameObjects versus Entities.
In this lecture we will optimise the performance of the ECS with a little rendering trick and then take a drive around the scene with the camera.
Setting up to use the Job System has changed slightly since the videos were created. Follow these steps to get setup.
This lecture introduces the Unity Job and ECS Systems and examines some of the theory behind parallel processing.
In this lecture we will create a simple orbital system and generated multiple planetoid objects in preparation to convert the system to use jobs.
This lecture will take you through the process of converting the orbital system previously created and modifying it to use multithreaded code.
In this video we'll take our first look at the ECS by taking an overview of the system and then starting on the code for an orbiting simulation.
In this video we will continue building the ECS planet orbiting system by starting work on the simulation code.
We continue our work on the ECS driven orbital simulation be completing the job structure and getting the environment to run.
In this lecture we will examine a different way of pulling game objects from the hierarchy into the ECS.
This challenge is designed to test your knowledge of the ECS and Job System. In it you will develop a simulation of 10K sheep that follow a moving truck.
In this lecture we will set up a simple tank shooting bullets scene in which we will later program the bullets to seek a goal location.
In this lecture we will begin writing script to move the missiles towards their target and discuss different movement strategies.
In this lecture we will modify the bullet's trajectory to base it on its starting orientation and curving it towards its goal.
In this lecture we will make the trajectory curve more interesting by adding waypoints.
In this video I will explain one way in which to add multiple waypoints to your bullet trajectories.
In this lecture we will discuss the nature of quest systems and begin setting up our out data structure to house and process them.
In this lecture we will add a pathfinding algorithm to the quest system to calculate the various paths through the graph.
In this lecture we will build a simple yet effective Skyrim-like compass pointer that will come in handy for locating quest event positions in the game environment.
In this lecture we will create a quick button prefab and scrollable display box for presenting quest information in a graphical format.
In this lecture we will complete the building of the UI system for displaying a quest as a list of tasks in an scrollview.
In this lecture we will finish the simple quest system by linking the compass need to the current event and adding a popup message when the quest is completed.
In this lecture you will be challenged to extend the quest system to add a different kind of event involving zombie killings.
In this video we take a look at the structure of a Unity App connecting to an online database and begin by setting up and external server for use in this section.
In this lecture we will discuss database structures and setup a simple relational database on the server.
In this lecture we will take a closer look at integrating PhP with mySQL and HTML.
In this lecture we will create a UI form in Unity that we will need for data input and retrieval to send and receive data from the database.
In this lecture we will write the code to take values from the Unity UI form, post them to a PHP script and insert them into the database.
In this lecture we will use the Unity form to request information back from the database that will populate the UI.
This lecture begins with a challenge to write your own code for the update button. Afterwards the solution will be given.
In this lecture we will add a password field to the database and discuss setting and retrieving it using encryption and a secret key.
In this lecture we will add email and password checking functionality to the application before allowing data to be retrieved from the database.
In this article extra-curricula resources are provided to help get you started on your PHP and mySQL learning journeys beyond this section.
In this lecture we will analyse the different expressions used to portray emotion.
In this lecture we will animate a character's face to display happy and sad emotions by adjusting blend shape weights.
In this lecture we will complete implementing all of the universally recognised emotions and add blinking to the character.
In this lecture we will examine the dynamics of eye gaze and how to add this to our character.
By the end of this lecture you will have created your very own AR experience with Wikitude and Unity.
In this challenge you are required to repeat the previous exercise by yourself with a new marker and model.
This article explains Bundle IDs and why you need one.
This article will explain how to sign up to Wikitude and get a free educational license key.
This article will take you step by step through the process for building an iOS app with Unity and porting it to a mobile device.
This article will take you step by step through the process for building an Android app with Unity and porting it to a mobile device.
In this lecture you can follow along as the AR App built in the challenge is pushed out to an iOS device.
In this lecture we will go step by step through the process of building the Dancing Granny AR app out to an Android device.
This article outlines the necessary steps to successfully build to your device.
In this lecture we will take an overview of how AR works.
In this lecture we will step through the process for creating a marker from an image file.
In this lecture we will take a look at a solution for adding an air guitar player with music to a beer mat used as an AR marker.
In this lecture we will create an AR application that has a ghost walking through a wall complete with shadow and occlusion shaders.
In this lecture we will setup the basis of a simple space invaders type scenario.
In this lecture we will add the object pool to the project and discuss retrieving and returning game objects.
In this video we will add code to extend the object pool to make the list expandable.
In this final video for the section we will complete the code for controlling the healthbar and add an explosion when the ship is destroyed.
In this lecture we will make an editor script that will find objects in your project marked as bundle assets and create an external asset bundle.
In this video we will use the asset bundles created in the previous lecture to load resources into a game environment as well as demonstrate building a game object from a separate model and texture.
In this video we will examine how to load a prefab from an asset bundle that is stored online.
In this video we will learn how to load and unload player characters from asset bundles.
In the second half of setting up switching player functionality we will hook up the dropbox to the code and test things out.
What do YOU want to know about Unity but have been afraid to ask? Do you think your questions are too trivial to become an entire course? Every day Dr Penny de Byl receives messages from her students asking for assistance on a wide variety of topics that would benefit from a short tutorial. In this course, Penny puts her 25 years of game development, research and teaching into practice to answer your questions in a variety of popular short workshop based tutorials.
Topics covered include:
The Unity Entity Component and Job System
Targeting Missiles
In-game Quest Systems
Reading and Writing to a Database
Animating Facial Expressions
Introduction to Augmented Reality for Android and iOS
Object Pooling
Working with Asset Bundles
Contents and Overview
Section 1:
The course begins with a section examining the new Unity Entity Component and Job System where you will build a planet simulation with 50,000 planets that orbit and are under the gravitational influence of four suns.
Section 2:
Following this, a section examining the creation of target-seeking missiles will cover basic line of sight missiles that remain locked onto a target, after being fired, as well as the addition of a waypoint system that gives missiles interesting curved and funky trajectories.
Section 3:
The next section steps through the ground-up creation of an in-game quest system. Starting with a simple third person game environment, you will build a quest system which monitors player progress, as well as cover the Unity fundamentals of the UI system to support its presentation.
Section 4:
In this section you will learn how to access an online database from inside Unity to store game data. Through the use of a free online database service, you will follow along as we create a database and write simple PHP, mySQL and C# to link a Unity application with player details stored on an external server.
Section 5:
If you've ever wanted to add real-time facial animations to your own characters to bring them alive, this section is for you. In it you will add emotional expressions to a character and learn how to blend between them with code. We will also add extra believability to the character by adding blinking and eye gaze dynamics.
Section 6:
Want to learn how to make augmented reality on your mobile phone? This section will step you through developing several augmented experiences that you can try on your Android or Apple devices. Using the Wikitude SDK with a special student license just for being enrolled, you'll have your first AR app up and running in 5 minutes.
Section 7:
Object Pooling is a very popular game design pattern that will help you save on memory usage. It's great if you need to create a lot of resources, such as bullets or obstacles. This section will show you how to build such a system that can be applied anywhere in your own games, through the development of an asteroid shooting game.
Section 8:
In this section you will learn how to work with Unity's Asset Bundles. These are external resources that you can call into your game at any time. You'll learn how to create an Asset Bundle from scratch and then how to load them into your project at runtime, from both a local drive as well as an online URL. I'll also show you how to load and swap player characters at runtime and how to expand the bundle after a games release to continue to bring in new content.
What students are saying about Penny's courses:
Penny is an excellent instructor and she does a great job of breaking down complex concepts into smaller, easy-to-understand topics.
Penny's teaching style is exceptionally well-motivated and illustrated.
This course is awesome. The lecturer explains everything you need to know and encourages you to experiment and challenge yourself.