Game Engines With C# and Rider
Alex Drum
Understanding game engines is one of the core competencies of video game development, and what better way to understand how a game engine works than creating one yourself? C# is an incredibly versatile language with an expansive network of libraries allowing you to develop each piece of your engine, backed by professionally developed and commonly used tools from around the world. Rider provides hundreds of debugging tools that allow you to quickly visualize memory usage, code execution patterns, and hot spots in your code, allowing quick optimization of code that is critical to game engines as a whole.
The speaker developed a Pokemon-like game engine from scratch using SDL2 and C# with Rider as the primary game development engine. This engine is highly optimized in its current state and has two completely custom programming languages in it, which have language servers written for Rider so that I can quickly and easily edit my entire project with completion and syntax highlighting in Rider.
This session will cover the importance of optimization in game engines, the concepts behind size compression and custom compilation tools, measuring memory usage, step-by-step code execution, and the value of Rider in the development of my game engine. Whether you’re building a custom engine or working on existing platforms, the aim of this session is to demonstrate how you can quickly and easily leverage these tools in your own development of video games.