How good is Defold for desktop?

in its current state?
I’ve read some people have issues with fullscreen. Are there other catches or news related to desktop? Would you suggest Defold for desktop development or would you suggest using another engine (and please try to be neutral on this)?

3 Likes

The DefOS module will solve 99% of the desktop problems and likely will be ready to ship games with before you finish your game.

The current real big problem is the vsync issue where sometimes old graphics drivers or bad setups can make games run too fast. This is a solvable issue by Defold team but not so easily by us.

I’ll be releasing a Defold game on Steam in the near future so I can see how widespread the vsync issue really is.

1 Like

Great work on DefOs but the pure fact that this has to exist makes me question Defold for a desktop project to be honest. Why isn’t this stuff build in :confused:

It’s based on the original development priorities. The team could only do so much and had to focus on what mattered most for their goals at the time. Defold was made for mobile first with priority in the same way it was made for 2D as first class even though it can make desktop builds and is still a 3D engine. If all of the features of DefOS can be included as built in functions some day that will be great but don’t discredit third party work either the real good thing in this situation is that it’s possible for 3rd party work to develop missing functionality that people need.

The main reason you should want to use Defold is if you are wanting to target all or most of the target platforms it supports including mobile in a productive way.

Another tool like Defold is Cerberus which is also free but has its own issues and a different set of features https://www.cerberus-x.com

There is also Godot https://godotengine.org/

Ultimately you have to test and decide for yourself which tools give you the features you crucially need. We will be testing a desktop release on Steam in the near future so can discover any other issues there are.

3 Likes

Hm I’ll think about it. I actually used Godot for the last two Ludum Dares and I really like it. I’m just trying out Defold and Cocos Creator. Cocos seems to have quite some issues with desktop and can’t export for Linux so it’s just Godot, Defold and maybe Unity. It’s really sad because I’d love to use SDKBOX :smile:

@britzl You brought yourself into this with adding the questionmark :stuck_out_tongue_winking_eye: Do you have anything to add? Anything that I should be aware off, any experiences or examples of desktop games made / in the making with Defold?

Smash Bash - Date with the Desert is being developed using Defold as a desktop and HTML5 game. I’m actually not sure of the current status of the project but judging from the looks of the HTML5 version I’d say that it’s totally feasible to use Defold for desktop games.

We’re also working on Facebook Gameroom support which will be a nice addition for those looking to create desktop games using Defold.

And I agree with @Pkeod that there’s nothing wrong with adding dependencies to third party projects to fill in the missing pieces. Ignoring good work by other developers doesn’t make any sense.

2 Likes

@Pkeod @britzl I hope you both didn’t get me wrong - the work on DefOs is great. And it’s awesome when people contribute - my point was just that I would expect such features from an engine. I don’t want to ignore the great work by others but in some cases - especially on such elemental stuff - official support would definitely be nice.

The thing about Defold is it’s quite small. It’s more of a base framework along the lines of Phaser or Love. Unity and to a lesser extent Godot have huge feature sets. You can expect to get almost everything you need for any normal type of game. You will probably be able to develop faster with them because you can just drop in premade stuff. Defold lays the groundwork for you, but doesn’t give you any of the specifics. You should expect to use a few external libraries and modules, or build lots of things yourself (not just for desktop). If that doesn’t sound like fun to you then Defold is probably not a good fit.

I used Godot for a while before switching to Defold. I enjoyed it for a while, but my biggest issue with it is how terribly slow GDScript is. It seems fine with small prototypes, but as my projects got closer to a finished level of complexity, the scripts started to bog it down. I can throw a thousand scripts at Defold and it doesn’t flinch.

It sounds like Godot could be a better fit for you, but if you decide to try Defold, you will get plenty of support! (and the docs are good and complete).

3 Likes

Coming from libGDX that’s exactly what I don’t want to do (building alot of stuff myself). And to be fair the description of Defold sounds like the complete opposite of what you’re saying. I think I’ll stay with Godot for a while (or maybe try out Unity) until I run into problems with GDScript :smile: But I’ll keep a close eye on Defold and Cocos Creator. I think both look quite promising.

I’m curious, what description are you talking about?

I used libGDX a couple of years ago and as I remember it it was more low-level than Defold. Defold requires you to build some things yourself, but it’s not just an engine with a bunch of frameworks thrown together. Defold has a fully featured editor and higher level things such as tilemap and animation support, a simple GUI system, particle system and many other things. You should post a list of the things you intend to do and the features that are important to you and I’d happily try to match those things to features in Defold or in 3rd party libraries that you can use. (remember that the use of libraries in Defold is a fairly streamlined process that requires little to no setup).

1 Like

Well basically any description from the website as well as the talks :smile:
For example:
“Wanna create great games faster? We’ve made Defold to let you focus on the important bits – to be creative when you create your next game. We’ll take care of the rest. In the end – it’s all about shipping games.”

2 Likes

That’s the impression I got as well but @ross.grams comment sounds a bit scary.
The only feature that’s missing and I’m aware of at the moment would be positional audio I think :thinking: Also a visual editor for property animation would be amazing. Like a key frame animation system. But that’s not something that would stop me from using Defold.

1 Like

You said you ran into performance problems with GDScript. Can you explain in a bit more detail in which situation? Also which target device and Godot version? Could C++ modules be used to fix the problem?

1 Like

I think you’re misinterpreting Ross. The analogy with Phaser and Love is pretty good. Defold has some features that are more mature than their counterparts in Phaser or Love and vice versa. The three products are still more bare bones than some of the massive engines such as Unity or Corona where anything and everything is included in the shipped product. If you expect Defold to provide you with many ready to use high level constructs such as those you can find in Unity or Corona then you’re out of luck. Defold will never provide those. Our philosophy is that if we were to provide for instance a high level GUI system with components such as buttons, checkboxes, lists, grids, screens, popups and transitions then it will work for many cases but it will never be perfect for everything. It’s much better to include the basic building blocks for creating a GUI system and then leave the rest to library/extension creators or the actual game developers so that they get the GUI system they want, not the GUI system we in the Defold team think you want.

When it comes to things such as hiding the mouse cursor or modifying the window properties on desktop then yes, ideally these features should be included in the engine itself since they are pretty basic, but as someone already pointed out, the focus for us has previously been mainly on mobile. Luckily the native extension system and LuaJIT’s FFI system has allowed the community to fill in the gaps with nice and easy to use projects such as DefOS.

5 Likes

I can definitely see why one would find this misleading. We’re doing some work on defold.com behind the scenes, and looking at our messaging is one of these. Thanks for the feedback!

Maybe @sergey.lerg’s great OpenAL extension could help with this?

4 Likes

There are quite a few third party libraries and extensions out there, but they are not very easy to find. That is a problem that is only going to get worse unless we fix discoverability. Fortunately that is happening. :slight_smile:

Good to hear that there’s an extension for that! And I agree with @sicher about the discoverability :smile:

What high level constructs are you talking about specifically? I didn’t use either Unity or Corona for a longer period of time - can you give me an example?
The stuff I’ve seen (also GUI) seems to be fairly high level to me - but that may be my libGDX background (or my inexperience with Defold)? :thinking:
One thing that isn’t there which I’m aware of is 2D light - are there plans on adding this?