Empyria was a project I worked on in the final year of the Game Development program at Algonquin College. We used agile methodology, including week-long sprints and scrum meetings, and created the entire game from the conceptual phase to the finished product. Empyria is a fast-action first-person spell-slinging shooter, set in an steampunk open-world flying city. We were a group of nine students, and we created the game over the course of about seven months. I was the lead programmer, doing over 95% of the code in the entire game, including gameplay programming, AI, UI, unity optimization, and shaders. I also contributed considerably to the design of the game (including the UI, crafting system, and movement mechanics), as well as a number of the final textures and normal maps, the skybox, day-night cycle, and all of the particle effects. Empyria was a huge undertaking, and I spent nearly 700 hours outside of classes over the seven months working on it, but we had a lot of fun and we’re quite happy with how the game turned out.
Things learned from Empyria:
Working with the agile methodology makes things really easy. People knew what they had to do, when they needed to do it by, and everybody was kept in the loop throughout the project.
I did a TON of optimization work in Unity to get the game running smoothly. We have nearly 10,000 assets loaded into the scene at any given time, and I had to come up with some interesting tricks to be able to show the entire city to the player at any given time.
I did lots of work with Unity shaders during the project, including one particular shader that makes tiling surfaces not look quite so tiling. It places both texture and colour variations through the textured surface, hiding the fact that it’s tiling.