B4Rg+t5El3svbUx4Dnp1Nw==summer 2025
Taken Fall 2025, not Summer 2025
Fun course with really enjoyable assignments! If you took VGD before, you will be familiar with Unity. This class is more scripting in C# compared to that class, and less about playing around with the game objects in the scene (that's already set up for you in the assignments).
Professor Wilson's lectures are really informative, but he speaks a bit slow and I had to watch the videos at 1.5x speed to get through all of them. There's a lot of videos (some 1-1.5 hours) and it would have been hard to get through otherwise. The textbooks are optional.
Regarding the assignments, I think I actually spent more time on the earlier ones compared to the ones later in the course. Note that you only get two valid submissions in Gradescope for each assignment. A submission is considered valid if you score at least a 70%. If you have a second valid submission for an assignment, you score is the average of your two attempts.
Filtering the nodes and edges properly in the grid lattice/graph network for assignments 1-2 took me a bit of time, although a number of helper functions are already provided for you which makes this a lot less hard than it could have been.
Assignment 3 is implementing A* search from the Millington book which isn't bad, but I recommend making sure your node lists and path recursion are all correct before submitting in Gradescope.
Assignment 4 walks you through step by step what you have to do, but there is a catch with the expanded geometry that isn't explained. You have to basically add a check to ensure the candidate polygons are not sharing multiple edges at once.
Assignments 5 and 6 are dodgeball themed. 5 walks you through the steps again, but it takes a fair amount of time to tune to ensure your throws are accurate, especially when going against the Minion. For 6 I wish we actually had to implement the finite state machines ourselves but the starter code is mostly functional. For the dodgeball competition (optional extra credit) you have to tweak it a bit more but for the assignment itself you just have to add a conditional/constructor to ensure the Minion doesn't cross the half court line before throwing in the arena which doesn't take much time at all to implement.
For assignment 7, you use fuzzy logic to guide a racecar along different racetracks with different properties (one is straight, another is really curvy, another has bends but not as extreme, etc.). This is a HW where you could spend a lot of time just fine tuning things which is a really fun experience. You are graded based on whether you can hit the target speed for the course while not falling off the track more than once and get to decide what enum types to implement (how far to turn the wheel based on the position of the car on the track, and speeding up/slowing down). I did run into a Gradescope issue on this assignment where the car was not falling off as much locally (specifically on the sweepers track) compared to Gradescope but Prof Wilson helped point me towards an implementation with more consistent behavior.
The final assignment is the only one without coding. You are asked to develop a PCG terrain with three different biomes/features. The main challenge is playing with the rectangle function to separate out the different biomes. As long as none of your features (like the mountains) clip, it's relatively straightforward.
The quizzes are sneaky difficult, and are a lot more involved compared to VGD. It's less so a regurgitation of the lectures but more practical in nature. They give you a gaming scenario and you have to answer using the concepts from the lecture. Sometimes it involves math, other times it's terminology related. You should do well enough on the assignments that the quiz grades don't matter as much, but it's worth noting that many questions are all-or-nothing. There will be a five point question where you either get full points or 0 based on a correct or incorrect response which can be unforgiving and add difficulty to the course. You can only take the quiz once, so take your time and don't rush.
Overall, I really recommend this class as an elective. The TAs are really nice and responsive on Ed Discussion if you have any questions. If you do the work, you should get an A.
Rating: 5 / 5Difficulty: 2 / 5Workload: 12 hours / week