Since Unity2D was released a little time ago, some people have been asking what makes Duality better for 2D games than Unity. While it is obvious that, in this comparison, Duality gets to be the little guy next to a giant, this may still be a question worth exploring. So, why does Duality exist? Here are some of my own thoughts on this matter.

First of all: I wouldn’t put Duality and Unity on the same page. While it is true that they share some common concepts, in the end Duality is quite different in a lot of ways. I won’t go into details and compare both frameworks bit by bit – I guess you can do the math yourself – but let’s take a look at them from a broader point of view. Leaving out all of the apparent differences in workflow, coding style and featuresets, what remains are some core ideas that unfold when examining said libraries:

Unity

  • Unity is a product from the shop. It’s polished to the max, looks neat and can do exactly what the package says.
  • If you want to replace an element of this product, you’ll probably have a hard time, because messing with its internals isn’t intended.
  • It’s a tool for developers. A player doesn’t care whether his game is made using Unity or not.
  • Besides that, there are a lot of cool features, probably everything one might need.

Duality

  • Duality is a construction kit. Maybe a little edgy here and there, but it works exactly like you’ve set it up.
  • The blueprints are all there, everyone can improve them. It isn’t Open Source for nothing – extending, replacing and modifying stuff is intended. That’s why there are a lot of interfaces to support you on that.
  • It’s a tool for developers and players – because every game comes with the level and content editors the developer used as well. Just don’t remove them from your project folder before publishing it.
  • Duality doesn’t try to be the swiss army knife of game engines, but it attempts to be a solid base that doesn’t exclude any direction.

In the end, everyone needs to make the decision that works best for them and Duality is more of a insider tip for a specific target audience at this point, while Unity is widely known even to non-developers. BatCat Games have decided to use Duality anyway, being one of the first professionals to do so – and they’re talking a little about the why’s and how’s of that decision in this recent “.NET Rocks!” podcast (8:20).

What do you think about the Unity-Duality relationship?