Matching Bubble Game

Unity, C#, Maths, Solo Project, University of Portsmouth

Matching Bubble Game

Unity, C#, Maths, Solo Project, University of Portsmouth

A matching bubble game, inspired by games such as Bubble Witch Saga, created using a custom maths library and collision system.
The player moves the aiming line and fires the bubble to the grid, in an attempt to match 3 or more of the same colours together. Points are gained for each bubble popped, and the entire grid lowers after several unsuccessful matches.
Matching Bubbles
When three or more of the same colour bubble is next to each other in the grid, they all 'pop'.
Various checks are run from each of the matching bubbles which ensure all adjacent bubbles are popped.
Wall Bouncing & Collision Detection
The bubbles can be bounced off of the level walls for more complex shots.
All collisions on the bubbles and level walls use a custom system consisting of bounding circles and axis-aligned bounding boxes.
Intersection tests were used to trigger different functionalities, such as the bubbles bouncing off of the walls, or snapping to the grid.
Random Bubble Placement
The bubble grid and starting bubble colour are randomised each time that the game is commenced to give a bit of variety to the gameplay.
Vector Maths Code Library
An entire maths library was produced and utilised during the project.
The library included matrix and quaternion classes, alongside various vector maths functions that could be used in functionality throughout the project.
For example, when firing a bubble, the velocity was calculated using a 'MultiplyVector' function and used to change the position of the bubble.
Matrix Transformation
Although not fully implemented into the bubble shooter game, as part of the project, a custom matrix transformation system was developed.
Instead of using Unity's built-in system, objects could be translated, rotated and scaled using this system which was created using a custom matrix class.

Other Projects

Back to Top