Unreal Engine 4 AI Programming Essentials

Author: Peter L. Newton;Jie Feng  

Publisher: Packt Publishing‎

Publication year: 2016

E-ISBN: 9781784396558

P-ISBN(Paperback): 9781784393120

Subject: G237.6 电子出版物编辑出版;TP Automation Technology , Computer Technology;TP37 Multimedia Technology and Multimedia Computing

Keyword: 多媒体技术与多媒体计算机,电子出版物编辑出版,自动化技术、计算机技术,计算机软件,算法理论

Language: ENG

Access to resources Favorite

Disclaimer: Any content in publications that violate the sovereignty, the constitution or regulations of the PRC is not accepted or approved by CNPIEC.

Description

Create responsive and intelligent game AI using Blueprints in Unreal Engine 4 About This Book • Understand and apply your Game AI better through various projects such as adding randomness and probability, and introducing movement • Configure and debug Game AI logic using multiple methodologies • Bridge the gap between your knowledge and Game AI in Unreal Engine 4 Who This Book Is For This book is for programmers and artists who want to expand their knowledge of Game AI in relation to Unreal Engine 4. You are recommended to have some experience of exploring Unreal Engine 4 prior to this book because we jump straight into Game AI. What You Will Learn • Understand the fundamental components of Game AI within Unreal Engine 4 • Skillfully introduce Game AI within Unreal Engine 4 • Configure, customize, and assign Navigation and AI components to your pawn • Create, debug, and analyze Game AI behavior • Design responsive Game AI using the Behavior Tree methodology • Create smart objects designed to interact with AI • Utilize advanced AI features within your project to maximize the user experience In Detail Unreal Engine is a powerful game development engine that provides rich functionalities to create 2D and 3D games. It is one of the three big game engines used, alongside Unity and CryEngine. Developers have the opportunity to build cross-platform mobile and desktop games from scratch. With Blueprints in Unreal Engine 4, you’re able to fully leverage the visual aid that Behavior Trees are built on. Rarely has there been an opportunity to prototype powerful Game AI and have immediate control over constructing, scripting, and viewing the response in a live gaming environment. This book will show you how to apply artificial intelligence (AI) techniques to your Unreal Script using C++ as your scripting language through multiple projects. With the knowledge gained through this book, you’ll be able to leverage the benefits of Unreal Engine 4. We’ll start with an introduction to AI, and you’ll learn how it is applied to gaming. Then you’ll jump right in and create a simple AI bot and apply basic behaviors to allow it to move randomly. Furthermore, you will get to know the difference between an AI Controller and a Player Controller. As you progress, you’ll find out how to implement randomness and probability traits. Using Navmesh, we will impart navigation components such as Character Movement, MoveTo Nodes, Settings, and World Objects, and implement behavior trees. You will see different techniques to sense the environment and create your own sensory system, and will implement Steering Behaviors, Path Following, Avoidance, and Projectiles. At the end of the book, we will troubleshoot any issues that might crop up while building the entire game. Style and approach This easy-to-follow project-based guide throws you directly into the excitement of Game AI in an approachable and comprehensive manner.

Chapter

Chapter 1: Introduction to Game AI

Game Artificial Intelligence

How AI affects the gaming experience

Techniques and practices of game AI

Navigation

Achieving realistic movement with Steering

Creating a character with randomness and probability

Creating complex decision making with Behavior Tree

Root

Decorators

Composites

Services

Tasks

Blackboard

Sensory systems

Machine learning

Tracing

Influence Mapping

Unreal Engine 4 tools

Summary

Chapter 2: Creating Basic AI

Goal

Setting up the project

Environment

Prerequisites

Using our new AIController class

Assigning the AIController class

Placing the pawn

Sending the instructions

Small tips on MoveToLocation

Reviewing the current progress

Adding the challenge

Traces

Reviewing the current progress

The Enemy logic

Adding the Enemy AI

Summary

Chapter 3: Adding Randomness and Probability

Introducing probability

Probabilistic distribution

Non-uniform distribution

RandomStream in Unreal Engine 4

The plan

Adding Wander

Setting up the project

Creating probability

Non-uniform distribution with Random Stream

Creating transitions

Fleeing and attacking

Back to the action

The results!

Summary

Chapter 4: Introducing Movement

Overview

Path Finding

The A* algorithm

Navigation Mesh

RecastNavMesh

The movement component

The AIController

Let's start!

Waypoints

Navigation

Navigation Modifiers

Back in the editor

The NavArea class

The navigation cost

Summary

Chapter 5: Giving AI Choices

Behavior Tree in the AIController

Creating Behavior Tree

Blackboard

Designing Behavior Tree

The Behavior Tree service

State transitions

Blackboard Compare Decorator

Environment Query System

Summary

Chapter 6: How does Our AI Sense?

Overview

AI sensing

AI Perception components

State machines

Pawn detection

State transition

Resetting the state

Simulating and playing

Summary

Chapter 7: More Advanced Movement

Setting up the agents

Viewing the agent

Following the agent

Follow or lead

Steering behavior: Flocking

Flocking agents

Controlling behavior through UMG

A simple UI

Summary

Chapter 8: Creating Patrol, Chase, and Attack AI

Creating a Blackboard

Mid-range attack

Controllers

Waypoints

BT Composites, Task, Decorator, and Service

Creating the logic

Summary

Chapter 9: What Have We Learned?

Creating basic AI

The pros and cons of using controls

Adding randomness and probability

The pros and cons of using randomness

The pros and cons of using probability

Introducing movement

Giving our AI choice

The pros and cons of using EQS

The pros and cons of using Blueprint

How does our AI sense?

More advanced movement

Creating patrol, chase, and attack AI

The pros and cons of using Behavior Tree

The pros and cons of using blueprint for AI

Summary

Index

The users who browse this book also browse