官术网_书友最值得收藏!

Behavior Trees and Blackboards

A tree to decide how we should behave, a blackboard to remember it!

Welcome to Chapter 2, Behavior Trees and Blackboards. This is where things start to get a bit more interesting because we will learn how to use the two main Unreal AI Framework structures. First, we will look at Behavior Trees and learn all about their principal components, such as tasks, decorators, and services. Next, we will learn about Blackboards and how to integrate them with Behavior Trees. After we have covered this, will be able to set up AI controllers that use Behavior Trees, which is key in implementing the rest of the techniques in this book.

As you may notice, there is a pattern in which we first learn a little bit about the theory, and then we jump straight into practice to understand how it all works. This is a pattern that we will follow in each chapter. So, let's get going.

In the field of Decision-Making, there are many mathematical structures that can be used. Finite State Machines (FSMs) are an easy, yet powerful example of systems that are able to make complex decisions. However, in the world of Artificial Intelligence for games, there is another structure that can also be used by non-AI experts: Behavior Trees.

As a result, one of the design choices of Unreal Engine is that it has built-in support for Behavior Trees, and is actually part of the main core of the AI Framework. This does not imply that you cannot implement other decision-making processes or structures, but using the built-in support for Behavior Trees will greatly benefit your team's budget (in terms of time). So, before you implement a different Decision-Making structure in Unreal, think twice about whether that is a good decision (of course, a Behavior Tree might not be optimal for your game, but keep in mind that they have built-in support and might be a great time-saver). Nonetheless, you can still implement sub-structures within the Behavior Tree to extend its functionality, but do not rush too much; first, let's learn about the basics of Behavior Trees.

In particular, in this chapter, we will learn about the following topics:

  • What a Behavior Tree is, both in broader terms and within the Unreal Context.
  • How a Behavior Tree works within Unreal, including its different components and how they interact with the tree
  • What a Blackboard is and how it can be used to store data for the Behavior Tree
  • How to start running a Behavior Tree by using the AI Controller, both in Blueprint and C++

So, let's dive in!

主站蜘蛛池模板: 达尔| 潮安县| 平远县| 大庆市| 阿坝县| 时尚| 玉龙| 灌云县| 武城县| 平潭县| 漳州市| 桐庐县| 金秀| 吉隆县| 晋宁县| 峨眉山市| 郯城县| 东阳市| 油尖旺区| 贞丰县| 江门市| 招远市| 博兴县| 乾安县| 岗巴县| 阳曲县| 南岸区| 河西区| 新宁县| 滦南县| 大石桥市| 金塔县| 榆树市| 二连浩特市| 会同县| 寻甸| 阜康市| 和平区| 景泰县| 四子王旗| 临夏县|