Duality - a 2D Game Development Framework
Duality is a modular 2D game engine that provides its own visual editor. It's highly extensible, written entirely in C# and backed by OpenGL.
Getting Started
Engine Features
Plugin Architecture
Easily introduce game logic via plugin
Component Based Design
Allows your own code to blend in seamlessly
Base Infrastructure
Rendering, Audio, Physics, User Input, ...
Content Management
Takes care of all your game resources
Editor Features
Live Editing
Preview and Test directly in the editor
Hot-Reload Resources
Modified Assets are automatically reloaded
Hot-Reload Plugins
Write code and test it directly without restart
Modular Design
Tailor the editor exactly to fit your game
Typical Workflow
For a lot of game libraries, your code has the active role of setting everything up and managing it. These roles are reversed here: Your primary job is to define objects and specify their behaviours - Duality can handle all the rest.
Import Assets
Drag files into the editor and drag assets into the game.
Write Code
Type C# code for game logic and engine extensions.
Attach Logic
Add bits of your code to objects in the game.
Screenshots
Duality is being constantly developed since 2011 - let's build some great games with it.
User Reviews
This is the best open source engine I've ever worked with. Clean and understandable code, all pure .Net, an incredibly fully featured editor, and an awesome component-oriented approach to building games.
Andrew O'Connor, BatCat Games
Easy to learn while still in-depth enough to develop everything you want.
SirePi, forum user
Duality has just the right balance of code / design, and I think it's one of the engines standout features.
hsnabn, forum user