A downloadable game

This is just the classic Breakout game made in the Duality Game Engine. Source project included.


  • [Arrows] to move the paddle
  • [Enter] do spawn the blocks and reset
  • [Space] to start the game

Programming was made by me. Art by Pablo Victor

Game Engine Post-mortem

Hello. My name is Vinícius Pimentel and I'm a Game Design student at a Brazilian university. As part of one of the courses, we were tasked with making a Breakout game in different engines and write short post-mortems on them, so this is the first of a series covering and comparing different game engines. Each post-mortem will be accompanied by an itch.io entry with a playable game and source code, much like this one.

As a lot of indie devs nowadays, my main development engine is Unity, so I'll inevitably be looking at all the engines from an Unity developer point of view. This will prove important on the first engine I'll write about.

The first engine I'll talk about it the Duality game engine. From their website:

"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."

The Good

The first thing that came to my mind when I opened up the Duality editor was "Wow, this is gonna be easy. It's just like Unity". I'm not kidding. You have all your modular Scene, Project, Game and Inspector views. Your game objects have Transforms, SpriteRenderers, Rigidbodies and whatnot.
You'll feel quite at home if you're also coming into Duality from Unity, but even if you're new to game engines, this logic is really easy and useful to understand. Basically, each game object is pretty much empty and "useless" and you simply attach different functionalities to it by adding new components.

The idea that the whole engine is packed with each project is really interesting. It makes sharing the project really easy and also helps if you need to work on different machines. I didn't have the time to make full use of this feature, but it looks promising.

The Bad

At the same time, looking too much like Unity was a shortcoming when things were different. Setting the size of objects and their colliders seemed really unintuitive, with the easiest way being setting each vertex coordinates by hand (I usually dragged and dropped them to a position and then adjusted the values to be precisely what I wanted).

Having to use Visual Studio was a pain and it doesn't seem to be optional. You don't have direct access to your scripts, only to a Visual Studio solution which sits somewhere I couldn't find inside the project folder. This was really annoying until I gave up searching and just downloaded VS Community.

Final thoughts

I didn't have a lot of time to use and mess around with the engine and didn't take advantage of its Open-Sourceness. With that being said, I'm currently not a big fan of the Engine. It's looks too much like Unity, but with inferior usability and platform support, which makes it hard to recommend Duality over Unity.

More information

Published 105 days ago

Install instructions

Unzip the downloaded file and open the Breakout_Duality.bat file.


Breakout Duality.zip (11 MB)