



Module Brief: Design a 3D computer game application for the PS Vita
Due to lack of access to PS Vita labs, brought about by Covid -19, the game was originally developed for PSP but was adapted and delivered on PC.
I designed and produced a fighting game that uses 3D models and environment while the gameplay is restricted to a 2D plane. This is because one of the course work requirements was to use the Box2D physics library.
Collision detection is of key importance in any fighting game. I learned how to use the Box2D physics library to affect objects in a scene in a realistic manner using frictional forces and gravity. The library also allowed me to create 2D bodies, which were able to be used as hitboxes for use in collision detection that was accurate to the visuals.
I took pre-existing models, edited their meshes and skeletons to allow them to function in this game and made the animations from scratch.
As the game was designed for a single Vita there was no multiplayer functionality, so it required an AI to control the opponent. This was the first time that I had programmed an AI. The AI uses a basic decision tree to decide between a variety of different actions. Due to time constraints the AI remained fairly basic but was good enough to entertain the player and I was pleased with the end result.
Without Covid-related constraints, I would have added audio and visual feedback with successful attacks.
I know that the knowledge and experience gained is something that I can take forwards and use in future projects.
Assessment from Abertay University;
“Excellent use of 3D models for both characters and background. 3D animation into game. Menu system is good and works well. Physics in the game used well for character movement and gravity effects. Collisions in the game work well, though it would be good to see a visual or have audio feedback with attacks.
Controls are good and work nicely. Good use of a large number of controls. Music in game works well. Code is good and commented. Excellent extension of work done in class and introduction of additional classes to manage different aspects of the game. AI is coded well. “