Learn Advanced AI for Games with Behaviour Trees
Create your own Behaviour Tree API in C# and apply it in the Unity Game Engine
What you’ll learn
Students will learn the theory of behaviour tree design.
Students will learn how to develop a behaviour tree API in C#
Students will learn how to use behaviour trees to define the actions of non-player characters.
Students should have a solid understanding of C#
Students should have a working knowledge of the Unity Game Engine.
Behaviour Trees (BTs) are an A.I. architecture that provide game characters with the ability to select behaviours and carry them out, through a tree-like architecture that defines simple but powerful logic operations. It can be used across a wide range of game genres from first-person shooters to real-time strategies and developing intelligent characters capable of making smart decisions. The codebase is deceptively simple and yet logical, reusable and extremely powerful. The library is written in C# and implemented in Unity 2020, however will easily port to other applications.
In this course, Penny demystifies the advanced A.I. technique of BTs used for creating believable and intelligent game characters in games, using her internationally acclaimed teaching style and knowledge from almost 30 years working with games, graphics, and having written two award-winning books on games AI. Throughout, you will follow along with hands-on workshops designed to take you through every step of putting together your own BT API. You will build the entire BT library from the ground up, while building an art gallery simulation scenario in parallel, to test the API as you go.
Learn how to program and work with:
- A Behaviour Tree Library and API that’s reusable across a wide range of game projects.
- Tree architectures, nodes, leaves, sequences, and selectors that define the behaviour of individual non-player characters (NPCs).
- Navigation Meshes and Agents that provide advanced path planning and navigation capabilities for characters.
- A Blackboard System that acts as a global inventory for world states and allows characters to communicate with each other.
Contents and Overview
Throughout the course, you will follow along while a BT library and API are constructed from the ground up, to allow you intimate knowledge of the codebase. Alongside this, a simple art gallery simulation will be constructed to test out the functionality of the library as it is put together. The simulation will also rely on Unity’s NavMesh System for navigation and path planning.
The course begins with an overview of Behaviour Trees and covers all the fundamental elements (including trees, nodes, leaves, sequences, selectors, and other logical constructs). Code will be developed to navigate the Behaviour Tree and used to drive non-player characters in the art gallery including a robber, cop, visitors and workers. Throughout this, students will gain a solid knowledge of how Behaviour Trees are constructed and can be traversed, to apply actions to game characters.
At the completion of this course, students will have a fully-fledged BT library and API that they can reuse in their own game projects, to provide game characters with complex intelligent behaviours.
What students are saying about Penny’s courses:
- Turns out, the hardest part of this course for me is finding the words to describe how glad I am to have enrolled in it.
- I honestly love Hollistic’s teaching approach and I’ve never learned so much within a few hours about coding effectively with such detailed explanations!
- Penny is an excellent instructor and she does a great job of breaking down complex concepts into smaller, easy-to-understand topics.
Who this course is for:
- Intermediate game development students wanting to extend their knowledge of artificial intelligence techniques used in games.
Created by Penny de Byl, Penny @Holistic3D.com
Last updated 8/2021
Size: 4.34 GB