Prong

Made for: ARU 1st Year – Semester 2

Duration: 3 Months

Engine: Unity 2017.3.1f1

Language: C#

Position: Solo

Brief (excerpts):

“Students are tasked with the completion of a small but scale-able video game that comprises much of the core technical and design skills that students have learned throughout their first year.”

“Your game must be developed in Unity 3D game engine.”

“Games must revolve around a singular gameplay mechanic.”


The brief was very open ended so I decided to implement an idea I had for a while and see how it went. My focus for this project was creating a grid based puzzle game with a stylistic and interesting UI. This would give me experience programming a system I had not touched on before and expand my knowledge of animation and UI in Unity.

Game Mechanic

The premise of prong is that you control a fork by moving it around a grid and stabbing it onto angled blocks. These blocks knock the position of the prong that hits it allowing the footprint of the fork to change.StabDemo.gif

To complete a level the fork must pick up all the peas on the goal grid at once. Therefore, each level consists of modifying the fork using the angled blocks in order to create a suitable footprint to pick up the peas.LevelDemo2.gif

UI

I put a lot of emphasis on the way the UI flowed from menu to menu, gameplay and back. I aslo used a restricted color palette with white and green being predominant. Since peas and forks were the only two distinguishable elements in the game I implemented their shapes into many of the menus too.MenuToLevelSelect.gif

PauseMenu.gif

Mesh Generation

To make the fork bend I defined a set of vertices for the lower section of the fork, moved  them when I needed to then updated the mesh. The UVs are predefined and do not need change. The top half of the fork is separate and was defined using bezier curves instead. Since none of the fork was an imported mesh, this system allowed me to experiment with forks that had any number of prongs and change the size of specific parts by scaling certain values.

ForkChanges---small


All the assets were either made with basic Unity sprite shapes or vector drawings made in Inkscape. The angled block model was made in 3ds Max. No external tools were imported for this project.