Final Demo
Final Demo
Artificial Intelligence
3D Game based on FPS using Artificial Intelligence
KARNATAKA
Jayanth C
4VM15IS009 Mrs. Vinayashree
Introduction
Literature Survey
Project Design
Algorithm used
Implementation Details
References
Overview
First Person Shooter [FPS] - FPS games typically map the gamer's
movements and provide a view of what an actual person would see and do
in the game. Eg : Counter-Strike
● This project falls into the category of First Person Shooter (FPS)
● We are building a robust and extensible Artificial Intelligence
system that syncs with characters' animations
● Designing smart NPCs (non-player characters) that interact with
their environment in realistic ways
● Using Unity's Mecanim system with root motion animation AI
and navigation based pathfinding AI, state machine behaviors,
animation state machines, humanoid avatars etc
Literature
Survey
Existing
System
● Most of the games are 2-Dimensional and hence the overall environment
seems to be unrealistic.
Disadvantage
s
● Requirement of large number of assets which makes the product more
bulgy
● Unity's Mecanim system with the root motion animation and navigation
mesh based
path-finding systems.
Eg : A* algorithm
● It is also used for animating UI Elements, opening doors, changing lights etc
Skinning
● This is the process of attaching the Mesh to
the skeleton.
● Skinning involves binding vertices in your
Mesh to bones
Terrain Engine
● Terrain refers to the horizontal and vertical dimensions of the surface of
land.
● The terrain of the land uses factors such as the slope, elevation, and
orientation of the land
Layers
Tags
● Tags are similar to layers, in that you can use them to mark/group
GameObjects.
● Tags are Intended to identify GameObjects for scripting purposes, while
layers are used to define how Unity should render GameObjects in the
Colliders
Capsule Collider
Rendering
● Finite state machines are one of the most effective and most frequently
used methods of programming artificial intelligence
● Each state possesses code responsible for the initialisation and de-
initialisation of the object
Animator
Controller
● Animator Controllers are state machines that determine which animations are
currently being played and blends between animations seamlessly
● For example, we could switch from a walk Animation Clip to a jump Animation
Clip whenever the spacebar is pressed
Blend Trees
● Blend Trees allow you to mix a combination of multiple animations
together to get custom results.
● A common task in game animation is to blend between two or more
similar motions
● A blend tree doesn’t have state. It simply blends between the different
clips based on the parameters
Project Demo
References
[1] Ismail, Serdar , Gurcana, Alias Abdul (2017) - 3D modelling and
visualization based on the unity game engine - Advantages and
challenges. Karabuk, Turkey
[2] Zhang He, Minyong Shi (2016) - Research and Application of Path-
finding Algorithm Based on Unity 3D, Okayama, Japan, ISBN 978-1-
5090-0806-3