Help Selecting Game Engine

Hi there,

I’m looking for assistance on choosing a game engine, and would like insight from this great community and its Teaching Assistants. I understand that Unreal Engine 5 is pretty standard for 3d games that utilize higher graphic fidelity, but comes at a cost with a steeper learning curve. I’ve always heard good things about Unity, especially for solo developers, or small teams, and now we have Godot. Sometime last year I believe there was some controversy surrounding Unity and how it would be licensed but I do not know enough about it and how it has affected the current state of using Unity.

That being said, I am looking for an engine that will allow me to mostly create 3d games with varied art direction. Multiplayer functionality is a requirement, even though it may be a feature that needs to be worked towards as I understand it is a complex subject. In terms of genre, my areas of interest revolve around arena shooters, survival, horror, narrative, action, i.e. Quake, The Long Dark, Left 4 Dead, Chivalry, Kingdom Come: Deliverance, etc.

In terms of art direction, I would like to be able to work somewhere between heavily stylized to light realism. Regarding development, I would like something that is accessible as a solo developer or working with a small team, as I am more concerned about the programming/developer side of things. I have extensive artistic skills covering a wide range of the game art pipeline. This area is not of any real concern at the moment.

If anyone could provide insight as to which engine I should choose or how I can determine which is most suitable for my needs, that would be greatly appreciated.

Thank you.

Hi jonnym,

Unfortunately, that’s the question basically everyone who wanted to make a game asked himself. There are hundreds if not thousands of discussions on the internet regarding this topic. Since there is no universal answer, using a dice is probably the best way.

Alternatively, you could do some research on similar games than what you want to make. If your favourite game was made with one of those available game engines, you could give that game engine a try.

Or you could use a dice and start with a little game project. with the game engine the dice told you to use There are lots of free tutorials on Youtube. If you realise that the game engine is no fun, you could test another game engine. Nobody says you’ll have to stick with the first game engine you tested.

In this thread on reddit, there are quite a few different opinions. Have you already seen that discussion?

Well, to put it this way for you. I spent $400 on an Unreal Engine Course, ended up liking just about everything Unreal had to offer, all the way up to the blueprint system. I couldn’t stand fiddling with wires and moving them and the nodes around to make it organized. Unreal also changes the names of functions that are universally used in coding to different ones that are specific to the engine. Making it sometimes confusing to find help across the internet.

Unreal Engine is in no way a bad engine by any means. But after messing around and trying Unreal as my very first engine to learn on, I gave up. Moving to Unity has been a way easier and more fun experience trying to learn the ropes of game design. Thats my two cents about that.

The good thing is that they are both free. Perhaps try them both out as I did and see what one sticks more.

It can also be personal preference. 2d either unity or godot, I’m indifferent there. Both are solid for 2d and given unity is more established I might be inclined to go that way. It has a good marketplace too.

For 3d, right now unity and Unreal would be the main players. Unreal looks better and the PBR materials out of the box works well and while you can achieve this in Unity the effort to make things look good is a lot more time consuming.

The other thing to consider is language C# is simpler, easier to learn but C++ will be more performant. Blueprint speeds up development and can be cumbersome when complex but is fast. Note compile times barely factor these days between the 2 engines but blueprint is instantaneous.

Also consider target audience. Unity can be lighter in terms of machine requirements and Unreal has the need for higher hardware requirements.

For 3d, godot I have no opinion but I am aware it is an up and coming player

It is such a hard job deciding this. My suggestion is take a beginner course in each, get a feel and play with each engine.

It’s how I ended up leaning to unreal engine but only after I had worked on a good few unity projects and honestly it didn’t happen overnight either. Unreal is a beast and has a lot to learn but it has so many features out of the box. Mainly it comes down to ease of aesthetic quality as I’m no artist. Also, I find unity a bit less intuitive due to inconsistency and appearance in the UI. I used to use pro when I was working with Unity and the way they made it look more professional was to have dark theme on as default.

OK so here’s my two cents on the matter. I chose Unity over Unreal Engine for 4 key reasons:

  1. Documentation. Unity, as far as I understood from the internet, has significantly more documentation and support. It’s kinda hard to dodge that, because I do rely on the generosity of people with my project at times
  2. Unity does better with lower end graphics, and demands less power (for the people who can’t afford something better, and that’s a lot of people by the way. If you’re marketing a game, accessibility is definitely something to consider for your potential customers)
  3. Unity does not need a lot of computational power to work with on big projects, unlike what I heard about Unreal. A good old GTX1650 + 32GB RAM laptop (with a broken side panel and spiky speakers (I can’t afford to fix that right now)) has been carrying me for a while now
  4. Recall what I said in point number 2, “Unity does better with lower end graphics”. If you’re considering an import to mobile, this will be a major factor for you that Unreal may not be your best friend for (and above all else, lower end consoles still owned by many people will also be a big selling point. Not everyone is Ultra-rich)

and Mobile is a big market, even bigger than consoles, so don’t sleep on that!

For you though, based on what I read, I’d say go Unreal (if you’re willing to deal with Pointers as well… I dodged Unreal for that one reason at first. If you know anything about Computer Science or Engineering, you’ll know how much of a headache pointers can be (hint: Unity and C# don’t have any, but that also comes at the cost of performance)). I personally haven’t played much with Unreal, and I have no intentions of doing so (all I need is in Unity, so why bother?)

I’m personally not a big fan of “oh we need the latest and greatest”. Instead, I like “find what sells well, and max out on just that”. In other words, if you’re implementing unique features, you best make sure they make quite an impact on your gameplay (otherwise the effort-to-reward ratio just isn’t worth it!)

1 Like

This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.

Privacy & Terms