Physics
For this game I learned a lot about how to correctly implement physics and create a modular system so the ship can react differently depending on the circumstances.
I eventually build a system using a state machine and layermasks. With this the ship can detect if there is a track and if so switch to a different state. This makes it more modular if in the future the game would support multiple types of tracks.
The Game
Our game is a spaceship time trial racing game designed for VR. The player must fly from start point to finish point in the shortest possible time, collecting all checkpoints. The spaceship has two flight modes, maglev and zero-G. In zero-G, the ship can move freely in 360 degrees. In Maglev mode, the ship flies around a track, has limited movement up and down, and the ship “rolls” along with the track. Flying over the Maglev track gives a lot faster acceleration and top speed, making it usually better to fly over Maglev. Figuring out when it’s faster to jump off the track and cut a piece is part of the game experience.
From making this game I learned a lot about programming physics and rotations and making them accessible for the designer. Although the team struggled a bit, it is interesting that we still made a big concept work in just little time.
Trackbuilder
For this project I experimented with creating a trackbuilder. It started of with a design where you can place your own uploaded prefabs onto a grid. But unfortunately the grid system wasn’t really working for the game because the colliders would not really fit together, so I started working on a second version using splines. This would work a lot better and I hope to implement this soon.
Hotseat
Currently I’m also working on supporting a multiplayer mode, where you can take turns with your friends and see who can get the quickest time!