Procedural Animation Library - Dissertation
/ 2 min read
Check out the Library’s
About
This procedural animation library was done for final year dissertation at Warwick University. The goal was to create a library which abstracted and refined the process of coding new procedural animations within Unity.
Procedural animations rely on programmed calculations each frame to create reactive and natural movements. This was combines with a basic behaviour trees and an A* pathfinding algorithm to display such animations.
Techniques
This was a great learning experience, which allowed me to develop my knowledge of game development and tool creation.
Here are some of the tools and techniques I used:
C#
-
A* Pathfinding Algorithm
-
Implemented a pathfinding algorithm alongside a grid manager using C#.
-
The grid manager is used to discern whether specific tiles were traversable or not.
-
-
Procedural Animation Library
-
Created a library to manage the creation and application of procedural animations of limbs.
-
Allows users to apply different target selection rules onto different limbs, all managed under a
MotionDirector
object.
-
-
C# Delegates
-
Used to decouple animation targets from the
MotionDirector
.
-
Artificial Intelligence
-
Behaviour Trees
-
I used PadaOne’s Behaviour Bricks in order to create the basic enemy behaviour tree in the sample.
-
The behaviour tree tasks were built using C#.
-
-
A* Pathfinding Algorithm
-
Used to find the shortest path to navigate 2D environments.
-
Combined with behaviour tree tasks/actions.
-
Version Control
- GitHub