Defold was made with 2D being first class. It is still a 3D engine under the hood, you can still incorporate 3D assets into your project, but all of its features were made to make making 2D games first. Great font support (bitmap fonts, signed distance field fonts, streaming of font glyphs). Spine support for animations. It’s easy to compose scenes - artists will really like working with Defold. Very fast and efficient. Coding with Lua is really nice. Defold can process and bundle your files for you when you make builds, such as compressing images you specify at a high compression rate. The API is pretty good and has most of the tools you would want.
Defold is free. Unity isn’t really. Unity has more overhead which Defold doesn’t have. On the other hand, Unity has more users, more tutorials and assets ready to use with it, has a longer public history.
I recommend you try to make a prototype of your game idea with Defold first. Then if you’re not convinced try to make the same thing with Unity. And ask any questions you have here.
Hey, I’ve spent 6 years at Unity and am now at Defold team. So0o I might sound biased =]
I feel, today Unity covers OK maybe 95% of use cases for games, while Defold may cover like 5% of what you may want to do. But does it extremely well. Today Defold may feel like a homebrew solution that is heavily optimised for certain kind of games and skill sets.
If you have a small team of skilled people working on a 2D game with web and mobiles in mind, than you should definitely consider Defold. This is the case where the engine shines at its best today, outshining, probably, everything else on the market.
I am happy to follow up on this thread and discuss the game you have in mind from the tech and workflow perspectives. Defold may or may not be the best solution =]
I am not sure if we can call it hot reload at Unity. Unity has a play button within the editor, it is like the editor plays back the content using very special version of the Unity player. I don;t think you can hot reload on the mobiles or even on the desktop build.
@Oleg_The_Evangelist, Why is the current Defold version not as good for desktop games as it is for web or mobile? I want to create a simulation on desktop with 2D graphics. I am not interested in using visual effects like shading, lighting, 3D, etc…
Not that Unity exactly lacks it, I think the team behinds Unity’s Linux initiative is very good. Just that doing realtime 3D reliably is challenging on Linux overall, from what I know.
Happy to reply to your question, but help me understand it better. Do you experience worse performance comparing to web/mobiles or is it something else you’re missing?
I left out some info which has caused my question to be misinterpreted. Sorry about that.
When I asked you why desktop was inferior to web/mobile, I was referring to something you had said about Defold and web/mobile games:
If you have a small team of skilled people working on a 2D game with web and mobiles in mind, than you should definitely consider Defold. This is the case where the engine shines at its best today, outshining, probably, everything else on the market.
And then earlier today you made this remark:
…Defold is a very powerful tool in skilled hands. However the set of built-in tools delivers a polished developer experience if
you’re working on a 2D game (mobiles and web are fine)
These remarks seem to indicate the desktop game would not be as good as the web/mobile game. I wanted to know why.
Oh =] Desktop is just so easy to get right and so hard to get wrong, one just assumes it does work. Mobile are harder to make games for. And web is even more harder these days. I am emphasising on Defold being decent for cross-platform games since that’s where it is particularly ahead of other industry tools. I.e. not that Defold is worse for the desktop, it is just that good for mobiles and web (when compared to other industry tools).
Unity can do this. But this feature is very buggy. I have game hangs and long recompile process when modifying code.
After waiting for boring period of time until unity recompiles it I decided to stop and restart game instead hot reload.