The goal for the Ubisoft NXT programming challenge was to recreate pac-man. The main focus was to get AI up and running in a small C++ framework. The challenge went on for 3 days.
The mistake i made during the competition was i implemented an A* path finding algorithm towards the end of the challenge, and as a result i couldn’t fix the bugs i was having with it. I’ve since then done more research into path finding algorithms and touched up on my C++. But on the bright side, here are some of my accomplishments.
My Accomplishments
Scene graph implementation
I decided for this challenge i’d create a scene graph. I set up world class that would contain scenes and get created at the start of the program. It would then update the scenes it contained.
Each scene contained a map of game object’s and would update and render them.
It was functional and it was able to handle various types of game objects.


Event system
With the implementation of my scene graph, i decided it would be a good idea to implement an event system.
The world processes the events before updating the scene and empties the event queue before calling update.
I used the event system to get input from the controller. The event gets created and decoupled in the player class. Once the event is processed by the player, its casted to its appropriate event type and the proper information is extracted. In this case its a direction.
Collisions
I implemented very bare bone collisions into the pac-man game. The bounding box around pac-man is his square collider. This collider simply checks if it intersects anything, and then prevents the player from going in the collided direction.

Here is the github link to the project:
https://github.com/DarienCaron/UbisoftNXT-2019