It all started with my wish to create an endless runner one day. Creating this system with all the obstacles and the controls always appealed to me. After brainstorming about this idea we got a pretty clear concept really quick, and because of the time pressure, we immediately started creating the first prototype. I started doing the code for the game. The first prototype was just a block sliding down a plane, but it already had the control switching based on the floor. We tried this with some static obstacles and at first, it was really hard to switch, but after a few tries we got used to it and really liked it.
After the controls, I started doing the object pooling to optimize the performance for mobile. This was really hard, but I got it to work. In the meanwhile, I also made 3d models of some of the obstacles that were added to the game. These were my first usable 3d models and they turned out really well, all in style with what we had in mind for the game.
In the next few weeks, I worked on adding more functionality to the game, like obstacle collision, high scores, collectables and sound. My team also delivered their assets like the animated player, 2d cutscenes, the foley sounds and the soundtrack, some UI elements, and their 3d models. When all of this was combined into the Unity project, it was time for the level design.
The level design is something that I really enjoyed. I could be really creative in the way I wanted the player to move through the level and besides that, the game also finally got to look like a real game. Adding a custom vertex shader really made the game feel more like a downhill runner because this shader bent the world on the horizontal al vertical axis.