Description

Amber is a 2D game project where we write a custom game engine primarily with c++, limited 3rd party libraries and rendering API. The project spans over 2 semester(6 months) and is completed in a group of 9.

Role / What I worked on

For this project, I was the Tools and Debugging Programme and I worked primarily on

Programming

  • Hierarchy relationship between entities
  • Improved performance for ECS
  • Added functionalities for particle system

Debugging

  • Helped debug any bugs faced by programmers and designers

Misc

  • Scripting and polishing for menus
  • scripted rain and lighting particles (not used)
  • Trailer

What I learnt

For this project, I joined the group halfway into development so I had to read up the codebase before I was comfortable writing features. I was tasked with developing features such as scene graph with hierarchy relationship and improving the particle system.

Even though they were successfully implemented, the designers later on changed their mind on using some of it as they felt it would be too drastic of a change in the game at such a late stage. With that, I decided to work on polishing the parts of the game instead of developing more features so that I can actually contribute to the team.

I felt that I did a decent job making myself useful and learnt that I should clarify more on what features they need so I do not end up implementing things that go unused.

Screenshots of gameplay

amber_png0

amber_png1

amber_png2

amber_png3

amber_png4

amber_png5

GIFs of gameplay

! Image quality and framerate severely deteriorated due to limitations of GIFs !

amber_gif0

amber_gif1

amber_gif2

Download