Bubble Heights is a 3D Puzzle Platformer game that I created with my classmates for my final 3rd-year project at university. It is about Coral, a brave young girl exploring the ruins of an ancient civilisation. She is looking for a magical artefact that has the power to save her village.
While looking for the magical artefact, she will solve puzzles and face enemies. To overcome all these obstacles, she has to use her magic gauntlet that shoots giant water bubbles. Coral can create new paths and defeat enemies with the help of these bubbles.
In this project, I assumed two roles: Gameplay Programmer and Technical Artist.
I developed the full gameplay foundation of Bubble Heights, including character movement, mechanics, animation systems, camera behavior, and custom visual effects.
Built the entire character controller from scratch, including locomotion, jumping, and real-time interaction logic.
Developed a custom mechanic, where the player shoots water bubbles and uses them to progress through the game.
Programmed the movement and interaction systems using physics to achieve the most realism possible.
Created and integrated animation states for smooth transitions between idle, movement, jumps, swimming, and shooting.
Designed and implemented the dynamic camera system, balancing player control and cinematic framing to support exploration and platforming.
I also created custom shaders to elevate visual storytelling:
Water – interactive ripples and subtle wave motion
Bubbles – depth-based transparency with soft internal lighting
Lava – animated emissive flow with heat distortion
Toon – stylized shading and outlines with ramp lighting control
This project highlights my ability to handle full gameplay systems, from mechanics to visual feedback, while ensuring all components work together in a cohesive, responsive player experience.