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

Unreal Engine AI Framework

Despite other game engines, which just give you rendering capability, Unreal Engine comes with many things implemented (and extended through plugins). This doesn't mean that making a game is easier, but rather that we have more tools to develop one.

As a matter of fact, Unreal implements many tools for Artificial Intelligence as well. While we explore them, we can create a schema of these tools and how they correlate to each other. So, let's try to just understand at which level we are going to operate. This means scratching the surface of the Unreal Game Play Framework (you can find more information about this here: https://docs.unrealengine.com/en-us/Gameplay/Framework).

There is a Controller Class, which can be divided into two subclasses. The first one is a Player Controller; as the name suggests, it offers an interface between the game and the player (of course, it is not covered in this book, since we will focus on AI and not general Gameplay). The second class is the AIController, which, instead, offers an interface between our AI algorithms and the game itself.

The following diagram shows these and how they interact with one another:

Both kinds of controllers can possess a Pawn, which can be considered a virtual avatar. For the player, this may be the main character; for an AIController, a Pawn can be the enemy who wants to defeat the player.

In this book, we will focus only on the AIController, and all the tools around and beneath it to bring our AI to life (we will not cover the dotted sections in the preceding diagram). We will understand what I mean by this at a later stage, but the key concept is that we are going to operate at the level of an AIController.

If you are already a bit familiar with C++ and Unreal, you can have a look at its class, which is defined in the  AIController.h file, to learn a bit more about this controller.
主站蜘蛛池模板: 南川市| 即墨市| 增城市| 苍山县| 林口县| 平陆县| 汉源县| 扶沟县| 鹿邑县| 余江县| 安国市| 赫章县| 玛纳斯县| 乐都县| 大荔县| 沂南县| 西充县| 黄山市| 禄劝| 凭祥市| 内乡县| 昭通市| 陕西省| 阿拉尔市| 瑞安市| 苍溪县| 石景山区| 龙胜| 永吉县| 阳西县| 马龙县| 迁安市| 湟源县| 姚安县| 得荣县| 来宾市| 万源市| 凭祥市| 无为县| 榆树市| 曲阳县|