Working together to get the job done

Hmm, the title of this post sounds like I’m quoting the ‘Bob the Builder’ theme song…

Two weeks ago tomorrow, my programming classmates and I had our 2nd AIE assignment due. As I mentioned in my previous post, ‘The Stage is Set’, it was on Artificial Intelligence.

The demo ‘game of tag’ simulation the screenshot in that post was from, was completed a day or two after the post. There were still two demo programs to complete by the end of that week. We knew that it was completely inhuman to have both a new ‘game of tag’ simulation (running a behaviour tree as the agent’s brain, instead of the simple state machine) AND a 3D level with navigation mesh generation and A-Star path-finding working and ready to submit by that Friday.

Out of 13 programmers in the course, 9 banded together in a two-team effort to complete the assignment. It was remarkable, something I don’t think our teacher, or the AIE itself for that matter, had ever seen before. 9 students admitting they’d be screwed with getting the assignment in on time individually, but as a team, there was the hive mind. Everyone had the same goal, get the demos finished and don’t fail.

I was in the team working on the navigation mesh level / A-Star path-finding. My job was to rewrite the FBX model system to create the numerous meshes making up the level and to modify the rendering engine accordingly. I decided to write a custom system from scratch, rather than change the old system.

It was 5 days of madness, crunch programming and little sleep, in the end we put our heads together to get the A-Star functioning properly….on the morning it was due in. In the end, we all passed the assignment.

This screenshot is of the final release build of the navigation mesh / A-Star path-finding demo. The red plane is the actual ‘NavMesh’, all the little spheres represent nodes (on the centre of each triangle) and the big sphere represents the agent. A series of lines are rendered to indicate the current path.

Navigation Mesh / A-Star

Navigation Mesh / A-Star