Made with our own made engine using DirectX 11 for rendering.
C++
My Contributions
Rendering – This was a group effort with many contributions from all of the programmers. The more the project progressed, the more responsibility I had over the rendering. The more specific parts I made was:
Clustered Shading – A technique to have more lights on the screen at the same time. From to be able to have 10-20 lights we could have over a hundred at the same time with high performance. Another programmer helped me merge it into the engine from my personal project.
Instanced Rendering – Every model that could be instanced was instanced for rendering. Even with different data on each model, it was instanced. E.g a blue-tinted mesh and a red-tinted mesh is instanced. This allowed the game to have thousands of models on the screen at the same time.
Threaded Model Loading – Models were loaded in as they were needed for a more seamless experience.
Level Of Detail System – Models farther away from the camera is switched out to a less detailed version for rendering.
SSAO – Simple ambient occlusion effect. Implemented in cooperation with a teammate.
Bloom and HDR – Implemented in cooperation with a teammate.
Particle System – Simple particle system for effects. Particles updated on the CPU and then sent to the GPU for rendering. Implemented in cooperation with a teammate.
Entity Component System – Designed and implemented the engine components system with another programmer