University Projects

TIP: Click on the title of the project to see the repository and source code and on Windows/Colab icon to download the build

MSC Projects

Donut Rush(Unity)

  • Game development process module coursework involved 3 stages; Pitch, GDD, and Prototype.

  • Made an endless runner donut game.

  • The target platform is WebGL but the build is also made available as Windows .exe for testing. (There is no WebGL-specific code).

  • Implemented Gameplay scripting in the prototype as per the proposed GDD.

  • Made all the 2D animations from scratch in Unity.

  • Audio manager was created to handle SFX and background audio.

  • Implemented Code optimization using Profiler, reduced draw calls using frame debugger, and optimized game assets by using Sprite Atlas, audio compression, and more.

  • Problem statement, game concept, mechanics, controls, implementation, and gameplay elements are mentioned in the pitch and GDD (in the attached file).

  • The Pitch, GDD, and Prototype (Unity Project) are located in the main repository (click on the title of the project) and to check the build, click on the window icon.

  • Please check the README before reviewing the build or the source code.

The Last Ride(Native C++ and Open GL)

  • This project forms the Computer Graphics module Coursework.

  • Developed a roller coaster theme-based racing game where the entire roller coaster track was built using a Catmull-Rom spline algorithm.

  • Worked on basic Shader programming (Vertex, geometry, and fragment shader).

  • Build complex primitive objects from scratch including texture mapping.

  • Worked on other game elements like mesh and lighting, and also implemented advanced techniques like Vignette, camera shake, and more

  • Developed a physics system (Note: First physics system I ever built) along with a collision detection system.

  • Game concept, mechanics, controls, implementation, and gameplay elements are mentioned in the project report under the documentation (in the attached file)

Artist (MonoGame)

  • This project forms the Computer Game Architectures module Coursework.

  • This Narrative/Story based game is inspired by the Escape room problem.

  • This game supports keyboard and controller input.

  • This game is built on data-driven architecture i.e. the entire game data is stored outside the game (outside the build) and it can be modified to make a totally different story without the need of making a new build (can avoid the whole build pipeline and it is cost-effective). Since a totally new game can be designed just by changing the data, this game acts like a template and thus the game is named ARTIST.

  • This concept is cost-effective (as mentioned above) and has practical uses like in a scenario where there is a game design contest. To find the best game designers, this game can be used as a template where they have to change the game data to come up with the best design.

  • A Binary formatter is used to save player progress and XML serialization is used to store game data.

  • There are three game states: IntroGame, MainGame and EndGame each with dedicated managers, and all of these are handled by FSM Game Manager. The game starts using the INIT method of FSM Game Manager.

  • All managers are scripted using the Singleton design pattern and all the user inputs are handled using event handlers.

  • Implemented Independent classes like GameObject, Button, and more are implemented which have no external dependency (Low Coupling).

  • Developed a collision detection system and a mechanism to view all the colliders during the gameplay for texting.

  • Task Async (Asynchronous programming) is used to implement delayed execution (specifics are mentioned in the report).

Walk of Atonement (Native C++ and Open GL)

  • This project forms the Advanced games technology module coursework.

  • Made a simple RPG game using C++ and OpenGL.

  • Entire start menu (Intro screen) was created using two quads, one for the background and the second for the buttons which include the Normal state and the Highlighted state.

  • Build complex primitive objects from scratch including texture mapping.

  • FMOD was used for audio implementation.

  • Game concept, mechanics, controls, implementation, and gameplay elements are mentioned in the project report under the documentation (in the attached file).

Q-Learning (Machine Learning)

  • This project forms the Deep reinforcement learning (Machine Learning) module coursework.

  • This program was coded in Python in Google Collab.

  • States, Rewards, State-transition function, policy, and epsilon (Exploration and Exploitation) are defined and used to solve the problem statement.

  • The problem statement is based on the 'find the shortest path' and can be found in the README file of the attachment along with the above-mentioned parameter values, results, and their analysis.

Note: Since the portal for the final submissions of the coursework is still open, we are advised by our University not to make the source code public in order to avoid plagiarism or theft. Thus, I will be making the source code available only after the deadline. If you need to see the code for reviewing purposes, then I would request you to simply drop an email with your mail ID and I will grant you access to it. Meanwhile, the release build is available to play and review the game itself. The game overview and control can be found in the README file.

BE Projects

  • This is the first ever game that I developed. I built this game in the Unity game engine for my final year BE Project.

  • Developed a simulation (Maze game) in virtual reality (VR) for dyslexic patients to correct direction-related problems using an optimistic gaming approach, implementing all the use cases as advised by the experts.

  • The target platform was Android and the target device was Cardboard VR.