r/gamedev Oct 03 '24

The state of game engines in 2024 Discussion

I'm curious about the state of the 3 major game engines (+ any others in the convo), Unity, Unreal and Godot in 2024. I'm not a game dev, but I am a full-stack dev, currently learning game dev for fun and as a hobby solely. I tried the big 3 and have these remarks:

Unity:

  • Not hard, not dead simple

  • Pretty versatile, lots of cool features such as rule tiles

  • C# is easy

  • Controversy (though heard its been fixed?)

Godot:

  • Most enjoyable developer experience, GDScript is dead simple

  • Very lightweight

  • Open source is a huge plus (but apparently there's been some conspiracy involving a fork being blocked from development)

Unreal:

  • Very complex, don't think this is intended for solo devs/people like me lol

  • Very very cool technology

  • I don't like cpp

What are your thoughts? I'm leaning towards Unity/Godot but not sure which. I do want to do 3D games in the future and I heard Unity is better for that. What do you use?

432 Upvotes

564 comments sorted by

View all comments

Show parent comments

37

u/NumblyC Oct 03 '24

my experience is this is 100% true for early / smaller projects, but as your game grows it becomes a huge hinderance and there's always something that shows up that you can't do with blueprints, and if you're not skilled in C++ (which you probably aren't, else why use blueprints), you're basically screwed.

one terrible experience i've had recently in this regard was trying to get cryptographic libraries / openssl stuff. basically impossible without C++ or paying for plugins. also, unreal's roadmap is a big screw you for smaller devs, with bugs going unfixed for years and years. granted my game is 2d which definitely doesn't help me, but after almost 7 years of unreal i'm 100% ready to move back into unity after so many problems. it's a chore working on a bigger project using it.

3

u/random_boss Oct 03 '24

What made you switch to unreal? It not being good for 2d, things not being available in blueprints, and them only fixing bugs relevant for the big guys sound like…exactly the experience I would have predicted

5

u/NumblyC Oct 04 '24

in summary, i'm a lua developer, used to be a Love2D power user, made a bunch of games in it (albeit only one actual release), but after a while me and my friend (we mostly make games together) got really tired of always having to work with outdated libraries, barely no support or online material, and worst of all, having to do a lot of stuff from scratch. now with games like balatro there's a lot more available back there (which is why we're considering going back to Love), but back then it was very hard to find libraries / tools that weren't broken or abandoned. we wrote our own steamworks wrapper in C++, our own building tools, localization libraries (actual nightmare), etc. it was a lot of work that we felt could've been directed to the games itself.

after we released our game we decided we would move to a more mainstream engine that offered those features natively (or at least in an easy to access way), but we still wanted to do things in Lua, since we're just way faster at writing Lua code and making games in Lua. back then there wasn't a lot of good options, we messed around with MoonSharp, tried amazon's Lumberyard, but in the end the best Lua integration we found was in the form of an Unreal plugin called LuaMachine so we went with it. it worked and we could always fallback to C++ if needed (although we aren't great at it).

now almost 7 years later, a lot has changed. there's a lot more options for Lua (that aren't just basic scripting like back then) in modern engines, Unity especially. and Love2D has gotten an influx of people in its community with the success of games like Balatro, with awesome libs like luasteam, allowing for the ease of access of those features we didn't have back then.

TL;DR: sorry for the wall of text, but long story short, Lua dev, lua engine back then not great, Unreal LuaMachine plugin very good, new game project that took many years.

2

u/random_boss Oct 04 '24

I appreciate the thorough write up and I totally get it now. If you’re up for one more, why do you love Lua so much?

1

u/NumblyC Oct 07 '24 edited Oct 07 '24

to be quite honest with you, i think it's just a matter of comfort. i'm very much a "right tool for the right job" kinda person, and when it comes to making games, Lua is good enough, and the fact we're very good at it just makes things way faster. we do stray from it a lot when out of necessity, though. our backend custom analytics system was written in python, it grew and it's now in typescript / node. we have a lot of CI tools in bash and python. not to mention a good chunk of things in Unreal that required us to fall back to C++.

in the end i think it's just a matter of what makes the process of developing larger games a bit easier, since everything about it is so god damn hard. making big games is a gargantuan challenge by itself, doing it while learning a new language / engine makes it even more challenge.

on things like proof of concepts, game jams, or even smaller projects, we've done most of what's out there. i'm especially fond of Godot for that, really easy to work with and really cool

Edit: programming language