Reading Reference
Artificial Intelligence (AI) for Games 3rd EditionArtificial Intelligence A Modern Approach (4th Edition)
Recommended Prerequisites
This class works with Unity Engine and it is highly recommended to get a head start on the same. While the class covers some basics, it will be very rushed without prior knowledge of C# or Unity. The Unity engine editor has too many bells and whistles and can easily intimidate the weak of heart! But there are tons of great beginners tutorial at Unity Learn platform. I found the Unity Essentials Pathway to ve very effective introduction. From there, the sky (and time) is the limit.
If you have never worked with a Object oriented language before, be sure to take a crash course on C# as well. If you have worked on Java before, you should be good.
Development Environment
- Unity Editor
- Be sure to use the same version mentioned in class forum for better support
- Visual Studio
- While VS code also works, but I found the support for the full blown Visual Studio was much better.
All relevant resources and game setup will be provided. You will only need to write core functionalities for this class.
Projects
The projects have all relevant assets and contain for basic tests. You are advised to add more thorough tests to validate your solution. Since the test harness is already there, I found adding tests much easier than some other classes that do not provide out-of-the-box tests. The projects contribute 70% of the grade.
Robot Navigation
The first set of projects involve space discretization and path planning. You will have to work your way though generating grid lattice and path networks and nav meshes, followed by path planning using A* search. There are a lot of geometry tricks and gotchas. Please read documentations and keep an eye open at class discussions.
Prison Dodgeball
The fun part of the class begins! You are in charge of adding intelligence to a bunch of rowdy minions battling in prison dodgeball (the rules of the game are involved, so read them thoroughly). This covers planning projectiles to moving targets and state machines. You can start with just the projection part and get really good at it before moving on to game planning. There is a tournament across students, so if you have time, try to go beyond defeating the AI minions. The winner of the tournament apart from the championship title, gets extra credit.
AI Racetrack
4 wheel drive is fun on a procedurally generated track in the middle of open space! Your task is to drive a race car truck through the track without going over the edge, or toppling (just 4WD thing!). While the goal is to get an average of over 45km/h over 5 minutes, I achieved around 60 km/hr. Some people have gone as high as 65. So once you have figured out a way to stay on track, fiddle with the safety margin and steering lines to try to go faster. There is some extra credit for being fast and dangerous! Here is a clip of my run midway between optimizations.
PCG Terrain
This is one of the easiest assignment ever. You have to generate a terrain with some distinct features, like mountains, rivers, craters and so on. It is open ended and very easy to score. Be sure to look at the terrains generated by your classmates. If you have the time, explore options to paint it or pour water in the rivers.
Exams
There are 2 exams - midterm and final which contribute 15% each to final grade. These exams are open book, open notes, but closed internet. But be familiar with the topics as you will not have enough time to read through it and answer.
Learning outcome and application
TBD