15 Game Engines Made with CSharp

🎮 In addition to a comparison table, more bindings and engines that have CSharp as their scripting language.


15 Game Engines Made with CSharp


C# is a popular language in game development, widely used thanks to Unity, but it is not limited to it.

In this article, I present 15 game engines developed with C#, showing various alternatives for those who want to explore new options beyond the most well-known ones, as well as a comparison table, more bindings and engines that have C# as a scripting language.


01. MonoGame

MonoGame

C# framework based on XNA. Focus on multiplatform. Main games: Stardew Valley, Fez, Axiom Verge.


02. SharpGDX

SharpGDX

C# port of libGDX. Incomplete and outdated project. Main games: None known.


03. MoonWorks

MoonWorks

Modern game engine in C#, based on FNA, with functional design and focus on performance.


04. ShapeEngine

ShapeEngine

2D C# engine for simple games with basic physics and UI support. Main games: None known.


05. OSU Framework

OSU

C# framework used to create the game osu!lazer. Advanced UI and animation support. Main games: osu!lazer.


06. FlatRedBall

FlatRedBall

2D C# engine with educational focus and integration with MonoGame. Main games: The Incredible Baron, Tiled Map Editor integrations.


07. FNA

FNA

Reimplementation of XNA in C#. High compatibility and stability for game porting. Main games: Celeste, Axiom Verge, FEZ (ported).


08. Murder

Murder

2D ECS game engine in C# with built-in editor. Focus on productivity. Main games: Internal/experimental, no major releases yet.


09. Prowl

Prowl

Modern 3D engine in C#, still in development. Uses Vulkan via Veldrid. Main games: None published yet.


10. Stride

Stride

Full 3D engine in C#. Support for VR, PBR, C# scripting and robust editor. Main games: Children of the Galaxy, independent projects.


11. Duality

Duality

2D C# engine with modular editor and plugin system. Main games: No notable commercials.


12. RogueSharp

RogueSharp

C# library for creating roguelikes (maps, FOV, pathfinding). It is not a complete engine. Main games: Used in prototypes and personal projects.


13. SadConsole

SadConsole

C# library for console/roguelike games. Based on ASCII grids and tiles. Main games: None publicly known.


14. StereoKit (with C++)

StereoKit

AR/VR framework in C# and C++. Support for OpenXR, HoloLens, Quest. Main games: Used in XR experiences, not commercial games.


15. NeoAxis (with C++)

NeoAxis

3D C# + C++ engine with integrated editor, focused on visualizations and games. Main games: None of great importance.


Comparison Table

Name Language 2D 3D Editor Included Active? Known Games Link
MonoGame C# ✔️ ✖️ ✖️ ✔️ Stardew Valley, Fez, Axiom Verge GitHub
SharpGDX C# ✔️ ✔️ ✖️ ✖️ None GitHub
MoonWorks C# ✔️ ✖️ ✖️ ✔️ None GitHub
ShapeEngine C# ✔️ ✖️ Partial ✔️ None GitHub
osu!framework C# ✔️ ✖️ ✔️ ✔️ osu!lazer GitHub
FlatRedBall C# ✔️ ✖️ ✔️ ✔️ The Incredible Baron GitHub
FNA C# ✔️ ✖️ ✖️ ✔️ Celeste, Axiom Verge, FEZ GitHub
Murder C# ✔️ ✖️ ✔️ ✔️ None public GitHub
Prowl C# ✖️ ✔️ Partial ✔️ None GitHub
Stride C# ✔️ ✔️ ✔️ ✔️ Children of the Galaxy GitHub
Duality C# ✔️ ✖️ ✔️ Partial None GitHub
RogueSharp C# ✔️ ✖️ ✖️ ✔️ None GitHub
SadConsole C# ✔️ ✖️ Partial ✔️ None GitHub
StereoKit C#/C++ ✖️ ✔️ Partial ✔️ XR demos GitHub
NeoAxis C#/C++ ✔️ ✔️ ✔️ ✔️ None relevant GitHub
  • “Editor Included” refers to a visual or scene editor.
  • “Partial” means it includes some level of editor but not a full one.
  • “Active?” refers to recent activity on GitHub (last few months).

Libraries that have bindings for C#

Or that have CSharp as their scripting language.

01. SFML

SFML.NET is the official SFML binding for the .NET family of languages ​​(C#, VB.NET, C++/CLI, etc.).

It is built on top of the C, CSFML binding, to ensure maximum compatibility between platforms. The SFML.NET API is close to C++ One, but in the .NET style: Naming conventions are different, event handling uses native event support, etc.

Official address: https://www.sfml-dev.org/download/sfml.net/


02. Raylib

There are several CSharp bindings for Raylib, among them:


03. SDL

SDL also has bindings for CSharp, in two versions:


04. Allegro

AllegroDotNet is a library for .NET Standard 2.0 or .NET 6+ for Allegro 5. Compatible with native AOT (.NET 8).


05. Engines that have CSharp for scripting

These are engines made with C++, but have CSharp as a scripting language for game development:


See also

Top 100 Game Engines C++


csharp gamedev


Share


YouTube channel

Subscribe


Marcos Oliveira

Marcos Oliveira

Software developer
https://github.com/terroo

Related articles