Skip to main content

On Sale: GamesAssetsToolsTabletopComics
Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Ah, the engine question. First off, I think different engines are better suited for different needs and you should work with whatever you feel works best for you, your team, and your project. I'll go over my personal opinions of my top 4.

GODOT:
Godot is actually my personal favorite engine and the one I generally prefer to work in. I like that I am not beholden to corporate restrictions; it has a wide range of platform portability; and because it is 100% open source, I can easily modify it to suit the needs of whatever project I'm working on. I also think Godot is the best engine for professional 2D game dev. I think all of these advantages (plus it being 100% free) will help it take off in the 2D indie community.

UNREAL:
If you want to make a AAA (or AA) 3D game, it will probably be done in Unreal. (In fact, demand for Unreal skills are projected to go up by around 140% in the next year or so.) Recently, Unreal appears to be putting a LOT of effort into attracting indies and mid-sized studios (probably in a move to push the Epic store). In addition to increasingly great free asset giveaways, they have increased the amount you can earn before having to pay ANY engine royalties to $1million!

GDEVELOP:
For someone doesn’t know how to code and wants to learn game dev, this is a GREAT option! In fact, I’ve used this engine to teach game development to kids. It’s also great for throwing together quick prototypes and game jams. It’s similar to Construct (or to a lesser extent, GameMaker) but 100% free and open source.

UNITY:
I’ll talk about Unity’s pros in a moment, but you should know that while I think Unity’s ubiquity makes it necessary to know if you are a pro, I strongly dislike it.

I think (for now) Unity is a bit better for 3D game dev than Godot, and (for now) a bit easier to use than Unreal. BUT…I think Unreal is coming for them in the 3D space and Godot is coming for them in the 2D space. That combined with some infuriating recent decisions they’ve made solely to drive increased revenue for their IPO move…and, well…

For right now, Unity is solidly embedded in our industry due to years of great PR/marketing (and some hefty government grants). Many colleges teach Unity and many studios use it because it is what the incoming talent knows…which leads to college teaching it because it is an “in demand” skill.

BUT - I think that could change quickly as more studio heads become aware of Godot as a viable “free” alternative for smaller indie projects (studio heads and publishers are notoriously cheap). The AAA world already pushes Unreal, so medium-sized studios that want to appear AAA will likely jump on that train.
 

***************TL;DR: I won’t be buying any Unity stocks.

Deleted post
(+1)

Yeah I’m also a little concerned about GDScript not being useful outside of Godot. 
But for me as a relatively new programmer (1 year experience) it’s helping me learn the problem solving skills needed for programming. Not only that, it’s fun to use Godot to make games which is better for me than Unity, which I find frustrating. More games I make, the better I get at problem solving (hopefully!). 

The C# support is getting better so I’m hoping to use that in future too. 

Apparently, Unreal is planning to release a GDScript-like scripting language. (I'm really looking forward to that because recompiling the entire engine just to avoid Blueprints is an absolute pain and I REEEEEEALLY don't care for visual scripting. Personal Preference.)

C++ is a bit of a pain (I hate writing memory managers), I like C# much better! And using it is definitely one of the reasons Unity took off in the early days. (And GDScript is really just a stripped down version of Python, so I've taught it to people as a gentle step into scripting languages.)

That said, I would encourage anyone who wants to go into AAA development to learn C++ simply because there are a lot of jobs out there looking for that skillset - and it is getting harder to find, which makes it more valuable. It is the backbone of both Unreal and many major titles (World of Warcraft, for example). I tell my students that I recommend any game programmer (again, who wants to work for a major studio) should learn at least 1 scripting language, C#, and C++. Knowing all of those means you can pretty much learn any coding language thrown at you.

But in the end, I feel like picking a language (or even an engine) is a lot like picking a fashion style. There may be some job requirements you have to deal with, but on your own time you should go with what feels comfortable for YOU.

(2 edits)

Wow that’s such a great and in-depth reply, thank you Game Professor! I have recently switched to Godot from Unity and I must say it’s much easier to make a 2D game in Godot so far, so I’m in total agreement. 
I’m not surprised by unreal’s push and use in AAA development so I see that as probably the main player in future as well as proprietary engines.

For me, Godot is exciting to use as I can get things up and running much quicker in it for 2D than Unity. It keeps me coming back. With Godot having less tutorials this also keeps me from staying in tutorial hell so I think my programming skills are improving more quickly  

I was interested in using Gamemaker but I also want to become a better programmer and saw that as possibly teaching me bad habits. As well as it’s future looks shaky. 

Thank you again!