Unity 2D vs Godot 2D

I’ve been reading a bit about Godot lately and all I see are posts about why Godot is better or why devs moved from Unity to Godot or Godot this and Godot that and not many articles/videos defending the other way. I can’t help but feel some form of bias here but should I be worried? I’m currently working on a 2D Top Down (with vertical height so the z axis was helpful) project in Unity for the past 10 months - and this Godot talk has been surging this year. Maybe because of the quarantine.

But is the future of Unity in some kind of danger?

I really have high hopes for Unity - especially its intuitive 3D/2D system mechanics. It’s been very easy to use the z-sorting in my top down 2D game - especially writing in C# as is. I don’t know if the time for learning Godot is in the cards for me as I need to be focused on my current unity project. Balancing work and life makes it already challenging.

Unity Tech has been doing extremely well based on the stock price. I’d think that’s a reason Unity doesn’t have to prove its point. But I wanted to see who in the forum can have this discussion with me.

Why should you be worried? Because it seems like everyone is jumping ship, you don’t know why, and you want to follow them?

How about you try it out for yourself and see if the workflow is a lot better for your style of game development?

I don’t think Unity is in some immediate, imminent danger.

What’s the deal with all the fortune telling and tarot reading lately? Just make games.

1 Like

Worried as in is Unity Technologies doomed to fail at some point in the future that I’m probably not aware of.

I agree with this completely. I really enjoy Unity’s workflow but I don’t know anything about Godot - I thought maybe I could ask here to see if someone else can shed light as I don’t have the time to allocate studying Godot, at least not yet.

And about the fortune telling and tarot reading - I don’t know. Maybe this year’s got a lot of us all spiritual and religious lol - but you’re right.

Yes, there is a bias. If my memory serves me right, followers of Godot used to visit this forum from time to time, to spread the word of Godot to the unity users. So great was their passion, that I decided to never touch that engine.

Basically, Godot engine is without a doubt less popular, less frequently used, but it appears to have people that feel STRONGLY about it in its community, which, in my opinion, is a problem.

At some point in time there will be no Unity Technologies, but as far as I can tell, this point is very far away from current moment, and the engine is not under immediate threat. At least not under immediate threat from Godot existing.

6 Likes

Interesting. Exactly. I remember watching this dev make a game on Unity - poorly engineered code, convoluted workflow and he spent 6 months worth of videos on that, and to my great disappointment made a secret video stating (Switching from my 6 month project to Godot in 1 week) or something. Right there I knew something’s not right.
That’s when I stopped watching tutorial videos and learn on my own. So I wasn’t imagining the bias. Makes me wonder why the users feel the need to talk about it to Unity users.

So, a lot of users are concerned that the direction Unity is taking development with DOTS is maybe fragmenting development, along with other factors, like paying for VR support packages, and what-not. Add on the fact that the company now has investors, who knows what the direction is going. I doubt very much they’re going anywhere in the next year. In five years, harder to say, but I’ll wager they’ll be sticking around, maybe with different pricing model.

But honestly, anyone making software should always worry that the software they’re using is going to be yanked from underneath them at any moment in time, which makes FOSS so enticing. But for those not using FOSS, they’ll weigh out the pros and cons for their own development, just like you should do. What project am I making? How long will it take me to complete? What sort of tools does the software provide to help me accomplish my goals? What sorts of technologies am I looking to feature in my project? And again, how long will this take to complete?

It’s an evaluation process, and at the end of the day, there is no right or wrong; it’s only what you feel comfortable with. If you chose Unity, and they go belly up in a year or two, well, it may be early enough for you to just scrap the project and go to the next best thing. If you value the work you’ve done in a year or two, you can spend time porting that code to another engine. I doubt very much Unity would leave all of their customers hanging without far advance notice and peace out. But if so, you can hate them forever. And there is the chance that if Unity discontinued, got bankrupt, etc. they’ll find investors to help right the ship. And failing that, there may be a ragtag group that develops a similar engine that interfaces near seamlessly with your existing Unity project, similar to how MonoGame took over XNA.

But, spending time worrying about this shit is taking away from you learning and making games. Try both pieces of software out, and use the one that you think will help you deliver your vision most accurately, efficiently, and most fun.

Trust me, I’ve been keeping an eye on Godot for a while too, but there are reasons why I haven’t gone. Well, I’m making a 3D game right now, but if I were to make a 2D game, I would understand a little bit more. A lot of the belief of using FOSS is that with no strings attached, I can freely produce content. But on the flip side, something like Unity, you have years of development put into it, to make your life easier. Ultimately, what keeps me on Unity is the Asset Store. Most people just compare just the engines, but if you compare engines AND ecosystem, there is no comparison. Unity’s assets have saved me days if not months of development time. The most important commodity in the whole process.

That’s just one aspect. The other is the language. Sure, it supports C# and C++ too I think, but not as the primary development language. So, if you ever decide that Godot is not right for you, I don’t know, maybe development is too slow, and you’d rather jump ship because their scripting language has run into some limitations or something, you can’t port your code to another language that does support the standard languages. Oh, and if you ever decide to show off some of your code in an interview, good luck teaching them GDScript first, or if they ask you to do a couple of exercises/challenges, ask them if you can use GDScript to implement your solution.

That all said, I WANT Godot to succeed. I would definitely go if the ecosystem was as rich, and they supported something like C#, Python, C++ as the main dev language. Almost my entire dev environment tools are free and/or open source (Visual Studio, git, Blender, Krita, ASEprite, Audacity, OpenToonz, Davinci Resolve) and the game authoring tool (VS aside) is the only tool that isn’t free with no strings attached. So far, Unity has been great for me. If their terms ever change that make me think about it, then, well, it hasn’t been the first time that sort of thing has happened to me. You just move on to the next best thing, porting your code in tow, or starting over and trying again.

Well, it could just be me too. I don’t know. But seriously, Google is your best friend. There’s just a ton of material out there to educate yourself as to what’s best for you, and only you would know. Or maybe, just maybe, you read this far, and actually found value in all that I typed. Perhaps I made a difference.

5 Likes

I tried Godot. The node based way of doing things is not as accessible, without flaw, remarkable, as Godot users’ would say and have you think.

Godot will likely get bigger in the near future, but I wonder if it might face the same problems Unity had by supporting multiple programming languages.
I.E: Official tutorials only being created in their primary language (GDScript?), community members looking for scripting assistance and being unable to find answers in the language they want to use, etc.

For me personally, my mind is all over the place when I think about it:

  • Godot supports C#.

  • Great, that’s my favorite language.

  • C# is not Godot’s primary language.

  • It would probably be better to learn & use GDScript then for the most support & compatibility.

  • GDScript is loosely-typed, and strings are often used to get object/asset references.

  • Bleh, personally, but I can deal with it if need-be.

  • GDScript is interpreted, C# is compiled. Understandably, some community members report worse performance in their apps when writing them in GDScript.

  • What does this mean for the future of the engine then? Are they eventually going to deprecate GDScript in favor of C# like Unity did with UnityScript? Should I even bother with GDScript then?

3 Likes

If you’re that worried, just try making a small project in Godot and watch your fears drift away. Godot is really limited if you’re targeting multiple platforms still, but worse than that, it’s a UX disaster that makes Unity’s 10+ years of cruft look positively elegant by comparison.

7 Likes

I would consider following.
Today you want to make 2D game. But in near future 3D games.
Is other engine support that? Or you will need spend time learning again from basics, using different engine?

Part of the bias is discussing another engine here usually gets closed down, so discuss possible alternatives we have to talk about it on the forums of the other engine, which naturally means people undecided ending up hearing the bias in the other direction. They of course are more likely to end up with the other option because of that.

As far as I’m aware there were multiple engine discussion threads that went for quite a long while. Unreal, Lumberyard, Crysis engine, Xenko and whatever else. However, over time people start talking in circles or get angry. But that does not mean discussion of another engine is impossible here.

3 Likes

You choose to not give software a chance becasue of its user base? Interesting

Yes. I want a tool, and not a cult.

5 Likes

I take it you don’t own a Apple product :slight_smile:

1 Like

That is correct. I don’t own any apple products.

5 Likes

I appreciate were you come from though in the case with Apple the company itself is toxic not only its customers.

3 Likes

I’ve used Unity quite a bit(not too extensively though), and Gamemaker lots, and some of a few more things(like Irrlicht). I’ve looked at, but never actually used Godot, though I’ve looked at a few tutorials, reviews, and similar.

The way I’m seeing Godot compared to Unity is basically in three sections.

2d - Godot has a few things that Unity doesn’t in this department. For example, the unit of measurement can be the “pixel” while in Unity that is not the case. Working in 2d, this can be important, and getting the same results with Unity can be done, but with a little more work.

3d - Godot is simply nowhere near Unity. Unity is much closer to UE4 than Godot is to Unity, at least in my opinion. I recently saw a thing where they are bragging about getting LODs in there finally, something which Unity has had for quite some time. Many of these same things should be considered for the 2d side as well where applicable.

Code - Godot seems to be in a similar situation as Unity was several years ago before they got rid of Boo, and then Unityscript. The languages don’t look very complete in any form, and indeed it gives off a feeling like you don’t really know what the best option to invest time in is. Even Gamemaker doesn’t have this problem, as they have stuck with the GML language and expanded on it since the start, so you know it is worth investing time in. For someone who is doing it as a hobby it isn’t a big deal, but for someone who is doing this for a living(not that I am), I can see how it can be frustrating.

So in a general sense, I think Godot can be OK for someone just starting, who is a fan of the whole Open Source thing, and who won’t touch features that are missing. Unity also has what some people consider issues recently as far as DOTS and stuff, though that won’t affect someone just starting out either in a general sense.

2 Likes

Lods are stoneage unreal 5 will have full engine support for virtualized assets through their nanite tech

Indeed, I’ve seen the tech video. It does serve to prove that Unity is falling behind, but Godot is even further behind.

1 Like