143

Tool Creation |Human Agents

142

Tool Creation |Human Agents

Sensory System

The first and top level of these systems is the sensory system, which allows our agents to be able to see the environment. Within processing, we had to manually calculate this by utilizing the dot product and then limiting the angles with if/else statements, but within UE4, this becomes much easier and more intuitive to establish. The reason for this is largely due to the tools provided within UE4, such as AI perception and the Environment Query System (EQS).

AI perception is a component that can be added to the AI controller, which can then be used to define various senses that the agents can utilize. (Fig. 3.3.2) These senses can include traditional ones such as sight, hearing, and touch, to nontraditional game-related ones such as damage and team.[2] As established in Part 3, sight is by far our most dominant sense so at this stage we will only be implementing sight for the agents. The agents can then use this to determine the location and type of anything they see, as well as the time in which they last saw it.

Environment Query System (EQS) is a feature that allows the agents to collect data from the game environment. It does this by performing a series of tests to determine the best location option depending on the set parameters.[3] The agents can use this system to determine the best location around other entities based on a multitude of other factors such as distance and sight. (Fig. 3.3.3)

Both of these tools would then be able to return a variable within their respective systems, which can then be used within the next stages of these human systems.

Figure 3.3.2 - 3.3.3

AI perception and EQS offer different ways for the agents to acquire data from their surrounding environment.

AI perception

Simulated and screen-recorded by Author.

EQS trace test

From “Environment Query System Overview,” Unreal Engine Documentation, accessed December 28, 2019, https://docs.unrealengine.com/en-US/Engine/ArtificialIntelligence/EQS/EQSOverview/index.html.