Learn Unity's Entity Component System with DOTS
Unity’s Entity-Component-System is mighty powerful allowing you to dramatically increase the number of game objects in a scene without sacrificing on performance. How it all works though to the everyday Unity developer can tend to look like magic. The entire paradigm is completely different to the usual procedural or object orientated approach.
In this course ECS and DOTS will be demystified and you will learn how to optimise your games and game objects to use this new programming technique with many hands-on and step-by-step tutorials.
Advanced AI for Game Characters with Goal-Oriented Action Planning
Goal-Oriented Action Planning or GOAP is a powerful architecture used for controlling the behaviour of non-player characters. This AI technique was first developed for use in F.E.A.R. Its strength lies in the decoupling of character actions from one another such that plans can be created on the fly based on the characters set goals.
In this course you will be taken step by step through the development of a simple hospital simulation with patients, nurses and doctors represented by NavMesh agents. Together we will build-on, video by video, a GOAP library in C# that you can use to enhance the artificial intelligent behaviour of your own NPCs.
Design Patterns for Game Programmers
Want to create code that is robust, optimized and reusable? Then you need to learn about programming design patterns. Game Programming Design Patterns are templates for building modularised code that are generally a repeatable solution to a commonly occurring mechanic applied in computer games.
Learn how to program and work with patterns such as: commands, flyweight, observer, prototype, singleton, states, object pools, game loops, updates, components and more…
Build a Multiplayer Kart Racing Game From Scratch in Unity
Create a 3D Endless Runner from Scratch with Unity
Who doesn’t love a good endless runner? Did you know it’s the genre that reigns from the early platform games of Donkey Kong and Mario Brothers? But did you know there’s quite a bit of work that goes into such a game?
Learn how to program and work with: Character and World Models, Character Animations, Procedural Infinite World Generation, Graphical User Interfaces, Pickups, Particle Systems, Background Music, Sound Effects and more….
The Beginners Guide to Augmented Reality
The Beginner's Guide to Mathematics for Game Developers
A fundamental understanding of mathematics is critical in every occupation and nowhere is it more important than in games development. In this course you will build your own C# classes to work with the geometrical constructs of 2D and 3D space that will develop your understanding of positioning and moving game objects. In short you will be build your own maths library to replicate Unity’s Vector2, Vector3 and Matrix4x4 and some Mathf methods.
Shader Development with Cg in Unity
This course presents a comprehensive guide to programming with Cg and High Level Shader Language in Unity’s Shaderlab to create your own visual surface effects for colouring and lighting game objects. It covers the mathematics of light and surfaces and steps you through the recreation of some of the most popular shaders.
Learn how to program and work with: variables and packed arrays, meshes, vertices and UVs, the mathematics for working with objects in 3D and 2D spaces, lighting models, highly reflective shiny surfaces, bump maps, special effects such as holographic, scrolling textures and surface deformations, graphics buffers, forward and deferred lighting, and surface, vertex and fragment shaders.
The Beginner's Guide to Artificial Intelligence
Do your non-player characters lack drive and ambition? Are they slow, stupid and constantly banging their heads against the wall? Then this course is for you. Join Penny as she explains, demonstrates and assists you to create your very own NPCs in Unity with C#. All you need is a sound knowledge of Unity, C# and the ability to add two numbers together.
Learn how to program and work with: vectors; waypoints; navmeshes; the A* algorithm; crowds; flocks; animated characters, and vehicles.
Procedural Terrain Generation with Unity
The creation of beautiful virtual terrains isn’t just the domain of the artist but also of the programmer. What if you could use your programming skills in C# to manipulate a mesh to create realistic landscapes using algorithms developed by researchers studying landscape formation and erosion?
How to Program Voxel Worlds Like Minecraft With Unity
Did you know there is not one single cube used in Minecraft? Have you ever looked at Minecraft and wondered, “how did they build it?”. And a great thing to ponder it is. If you haven’t and think that programming a whole bunch of cubes is child’s play, then think again.
Learn how to program and work with:voxels; custom built polygons and meshes; vertices and normals; UV mapping; texture atlases; Perlin noise; infinite terrain generation; and, loading and saving data.
A Beginner's Guide to Machine Learning
The course starts with a thorough examination of genetic algorithms that will ease you into one of the simplest machine learning techniques that is capable of extraordinary learning. You’ll develop an agent that learns to camouflage, a Flappy Bird inspired application in which the birds learn to make it through a maze and environment-sensing bots that learn to stay on a platform.
Following this, you’ll dive right into creating your very own neural network in C# from scratch. With this basic neural network, you will find out how to train behaviour, capture and use human player data to train an agent and teach a bot to drive. In the same section you’ll have the Q-learning algorithm explained, before integrating it into your own applications.
By the end of the course, you’ll have a well-equipped toolset of basic and solid machine learning algorithms and applications, that will see you able to decipher the latest research publications and integrate the latest developments into your work, while keeping abreast of Unity’s ML-Agents as they evolve from experimental to production release.
The Beginner's Guide to Animation in Unity
You don’t need to be able to model or animate in external packages to take this course. All aspects of animation in Unity are covered from physics, key framing, curves, forward and inverse kinematics, animation state machines and working with third party assets.
Learn how to animate and work with: the mecanim timeline, curve and keyframe editors, animation events that trigger code, root motion, imported animations created in third party packages, and animation state machines.
Unity Networking from Scratch
In this course, Penny will take you from the very basics of creating a simple client/server game environment using Unity’s UNET system right through to creating and managing a lobby system. The topics covered are the ones that most frequently appear on the forums and that many people struggle in understanding.
Topics covered include: network configurations, IP addresses, hosting, remote procedure calls, syncing rigidbody movement, syncing animation states, playing with different player-characters, changing player-characters while connected, setting up the Unity Lobby asset, syncing variable values across scenes and setting up Unity Match Making services.
Naked C#: A Beginner's Guide to Coding
This course will not teach you to become a programmer. Programming is like martial arts, it takes years and years of practice. No course can make you a grand master no matter what it promises. What this course WILL do is give you a solid foundation in programming as a skill for life using C# as the vehicle.
Topics covered include: Bits, Bytes and Binary; Management and Manipulating Memory; Performing Mathematical Operations; Designing Dynamic Program Execution with Logic; Developing Repetition for Fast Data Processing; Handling User Input; and, Reading and Writing to Files.
Ask Me Anything
What do YOU want to know about Unity but have been afraid to ask? Do you think your questions 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.
Topics covered so far include: The Unity Entity Component and Job System, Targeting Missiles, In-game Quest Systems, Reading and Writing to a Database and Animating Facial Expressions.