Re-fense
High Concept: 3D real time strategy and survival game in which the player is going to defend the townhall by making use of the different squads they have. There are two different game modes, the one in which you have to survive a set of different waves, and when the timer is up and the townhall is still up you win. And the endless mode, in which you have to survive as many waves as you can.
Engine & Language: Made in 3D Custom Engine. C++
Team: 7 programmers
Engine & Tools Programmer
My Role: For this game we had to build a custom engine from scratch using C++, a 3D custom engine. I took the task in developing the Compositon of the Game Elements, the implementation of a Serialization System and the level editor to build the level for the game.
Developed Composition of Game Elements:
Tools/Technologies Used: C++
Key Achievements: Implemented the composition system for the game, including Components, GameObjects, Spaces, and Scenes, enabling a structured and modular approach to game development.
Implemented Serialization System:
Tools/Technologies Used: JSON
Key Achievements: Developed a robust serialization system used for both the level editor and game engine, enabling efficient saving and loading of game states and prefabs.
Designed and Programmed Level Editor:
Tools/Technologies Used: ImGui
Key Achievements: Created a level editor that allowed for building, adding, removing, and editing GameObjects and their components in a user-friendly, hierarchical interface similar to Unity.
Developed Component Edit Functions:
Tools/Technologies Used: C++, ImGui
Key Achievements: Designed an editing system where each component had an Edit function, facilitating easy addition of new component edits by teammates.
Created Prefab Loader and Level Save/Load System:
Tools/Technologies Used: JSON
Key Achievements: Implemented a prefab loader and level save/load system, allowing for the reuse of GameObjects and efficient level design through serialization.
Implemented Advanced Editor Features:
Tools/Technologies Used: ImGui, Guizmo
Key Achievements: Added advanced features like multi-selection and 3D object manipulation using Guizmo, enhancing the functionality and usability of the editor.
Notable Challenges Overcome:
Tackled complex technical challenges, such as implementing multi-selection and 3D object manipulation, ensuring the editor was powerful and user-friendly despite its technical complexity.
Key Contributions:
Played a crucial role in developing a comprehensive level editor and serialization system, significantly enhancing the game's development process and usability for team members.