UE4 - An amateur's initial impression vs Unity

First of all, let me start by saying I’m a complete amateur when it comes to game development. I’ve been in IT my whole life as an application/BI developer for 20 odd years, so I no longer have any real delusions of grandeur about churning out my own AAA game. But still… I would like to prototype my ‘grand idea’ enough to get momentum with other amateurs to build something cool. And I know there are many others out there that want to do the same thing - just because now it’s possible.

Basically I want to fly fleets of Star Destroyers, Venators etc and pewpew the ■■■■ out of other fleets (as in actually fly the capital ships) in what equates to a large 4x sandbox Star Wars universe. The closest I’ve come to this is ultra crappy X-Rebirth or semi-crappy EVE which got really boring after 5 years. For some reason, in 2018, I still can’t build and fly capital ships in real fleet engagements in my one-and-only-ultra-favorite-best-all-time-genre STAR WARS!!!

So I’ve played around with Unity and have been able to prototype all the functionality I need. Granted it currently looks like complete ■■■■ but I’m no artist. There are also a huge number of things I’m either waiting for jobs system drool or will have to pay for - which I’m ok with. I’d prefer it all be integrated but at least it doesn’t keep me from making progress.

And obviously Unreal Engine 4 has been used to produce stuff that’s truly awesome. I came here because it has a lot of positives in its favor. But after the following experience it won’t be by me.

1.) I’m initially impressed by the overall professional appearance of the launcher and editor. Unity seems old and clunky like Blender or Informatica. So pluses. ++

2.) So as I’m trying to resolve issues, it initially takes me FOREVER to bring up the documentation. But the forums come up instantly. But the actual question/answer section didn’t come at all with a ‘cannot connect to service’. So one minus. -

3.) What really gets me is the folder structure and ability to reorganize as you get deeper into the project. Unity can do this with absolutely no problem. Unreal has a LOT of forum posts on how incredibly painful this is and resolving the missing folder references meh… What this means to me is that all the real underlying work being done under this great facade is very fragile and prone to breaking. As a developer this scares the bejezus out of me. Being able to refactor large projects is absolutely crucial for anything beyond hello world. So pretty daunting minuses. —

4.) I know everyone will disagree with this, but the asset store/marketplace for Unreal compared to Unity is a negative. Unity’s lack of integration for key components has caused the user base to come up with some incredibly helpful and performant tools. And I can see a path to completion with Unity because all the extras I need are on the store. And for the most part, I only have to pay about $2-300 to really get what I need - although I want more. I spend more than that on lunches in a month and maybe sometimes in a week. I can’t find equivalents in UE4 which scares me. So minuses. —

5.) C++ vs C#. I will call this one a draw because ultimately C++ should perform better in the hands of a proficient developer. But many developers are not proficient which is what led to Java/C# in the first place. Either way, my main game structures are all in C# and that’s a lot to convert to C++. Unreal gets marks for using the right language for performance. Unity gets marks for using the easy one I can actually get stuff done with. If all other things were equal I would convert everything to C++.

Note: Ironically, Unity’s jobs system is reverting C# back to C++ concepts in a number of ways. They use struct based custom-built collections with no garbage collection to get threads to perform infinitely better essentially undoing several of the key things that made C# what it is. LOL What a topsy-turvy world we live in.

6.) Blueprints. Again - probably should be a draw, but for me, a negative. I just have an easier time getting basic things to work with relatively small snippets of C# code in Unity. I love the blueprint concept but you have to know what all the underlying things are to start connecting things and make them really work. And there are A LOT of underlying mysterious not-easily-understood things. The problem with putting a methodology on a code base is you still have to understand the underlying code base to effectively use the methodology.

If I could take the best parts of both, I’d be a happy boy. I’m glad they’re competing though. They keep each other honest.

The reason you can’t see so many extra tools on Unreal’s store is because almost everything is already included in Unreal by default.
In Unity you either buy the tools you need or make them yourself.

Try to build the same scene (with the same assets / gameplay / postprocessing / VFX) in both engines, even a simple scene…
For me, no matter the time i spend in Unity (and i had spent a lot), i really can´t achieve the same quality compared to Unreal. And for me quality is the most important factor, is what my customer will see.

Lol, this is the silliest thing I’ve ever heard/read. I jumped into Blueprints without even reading docs and managed to get working solution pretty quickly. I still have no clue about underlying C++ code or engine’s inner working and yet have no problem working with UE4 and Blueprints.

2 Likes

By now I’m sure you learned a little bit more about Unreal Engine, so is it possible that you make another comparison? :slight_smile:
Because I’ve been using Unreal engine for 2 - 3 years and learning Blueprints was pretty easy thanks to the forums but mostly the pre-made scenes by Epic where soo useful.
I started using Unity at school and I can see that the scenes and tools are almost the same.

Where I’m a little bit struggling with Unity it’s when importing something. In Unreal it’s really straightforward, there’s the import tool which is just wonderful. In Unity, I have to do some extra work after importing. Maybe it’s just a button I need to click but for now, it’s one of the main issues. And also I think that UE4’s marketplace is more “professional” because there’s less “cheap” stuff. By cheap I mean stuff that some people made just to make some money. A little bit like in Turbosquid.

But I believe that Unity has a bigger marketplace, where you can type something and have 80% of chance to find it compared to Unreal.


What if he could break the black box… and read/write the matrix code itself right there on the graph of black boxes :cool:

The thing people who comes from IT does not realize at starting learning UE4 is that it is really easy to use for artists! Seriuosly, it is like a playground for them.
Unity has fast coding iterations, but scares the hell out of artists, from the interface to the reality to have to code something at the very beginning.

I know experience varies from person to person and I know that once you get used to one tool, it is hard to get used to another one (example: 3DS Max to Blender, or Maya to Blender), but all I can tell from my experience (which also came from IT 28+ years) is that either tool will deliver the same, but for results, which we depend on the artists, we need to give them the best tool where they can express their talent, and definitely Unreal is the answer they will want. We focused on coding will have to deal to interface that talent into realizing that art to the world.

I’d add on top of this:

  • In some cities, its impossible to find an Unreal Developer(/programmer). Even looking on sites like Upwork, I have seen a 20 to 1 ratio of Unity:Unreal developers. If you are a small team, using Unity can mean finding a developer or not. Typically Unreal developers are ‘batteries included’ though.

  • Huge community. 104k reddit subscribers to Unity, 43k for Unreal.

  • Linked to the above, Unity benefits from the economy of scale associated with Mobile games development.

Unity is working on HD Render Pipeline, Node-based shaders and particles, and node-based visual programming.

The problem with Unity is that you need to balance multiple plugins, and manage the compatibility of so many different assets, which can become a nightmare or even impossible when updating the Engine version. Also, vegetation and terrain rendering is definitely superior in quality right now on Unreal.

I would say Unreal is the way to go if you are making an FPS, or if you are a very well-resourced team with a lot of solid and reliable Unreal Developers to fall back on. If you are a team of 3 making non-FPS games, I would go with Unity since you have so much more redundancy in case your developer ups and quits or you need something particular from the asset store.

Multiplayer in Unity is just… I wouldn’t do it; have to pay for photon “or else…!”.

Small games tho, C# compiler is unbeatable for that, you change sht and almost instantly see the changes in-game, Unity is better than Unreal for projects like this (however if your project grows you will start to see C# compiler big slowdowns too!)

Also in Unity, if you want, there’s tools for you to change/edit/create some code in-editor instead of launching Visual Studio… I particularly miss that, like, I miss that by a * LOT *

They’ve been working on it for ages. It’s like on the bottom of their “least important things for Unity” list. I don’t hold my breath for this feature to be implemented in my lifetime :stuck_out_tongue: (and when they do, it won’t be as flexible and intuitive as Blueprints)

Nonsense. While it’s always good to have a skilled (programmer) developer on your team, UE4 allows you to make entire game alone, using only Blueprints. And it doesn’t have to be FPS. It can be pretty much any genre within the scope of engine’s capability (I doubt anyone can make StarCraft-like RTS using stock UE4 or stock Unity).

This is probably true and it comes down to demographics more than anything else; Unity has a much larger userbase, but it is also generally a lot less experienced and orientated towards the low-end indie and mobile game sphere - the Unreal user base is smaller and tends to be concentrated more into the high-end indie and AAA spectrum, which means that there are far fewer people, and many of them are full-time employed rather than freelance (they also tend to be concentrated geographically in the West where employers are).

Size isn’t everything! I’ll take the smaller, more active and more experienced community personally. Try the Unreal Slackers Discord group if you’re looking for community; it’s very active.

To be fair, community is only active in some chats. Some chats covering important topics are nearly dead.

I wish these forums were more active.

Forums used to be active, until Fortnite happened. UE4 devs used to be active here a lot.

I would have zero confidence in developing a commercial Unreal product without a programmer with C++ knowledge. Its just asking for disaster. Even if the majority of systems were designed with Blueprints, you need to delve into the code for debugging, adding new nodes etc.

I’ll just put it bluntly that outside of the USA, and major cities of Europe, you simply cannot find an Unreal developer. In Bulgaria for example I don’t know of a single studio using Unreal, everyone is using Unity or a custom engine as part of a large international studio (eg. Ubisoft). If you are hiring talent you cannot get around this. The one possible argument is that the inhouse engines of large studios are usually based on C++ so you could hire a programmer from there and hope that they can learn Unreal.

Except that you don’t have to have C++ programmer and you can build FPS game using only Blueprints.

Discord and Slack communities are a lot more active than forums.

I’d argue that this is an exclusively Eastern European problem, and it’s not down to a lack of Unreal Engine experience, it’s down to a lack of experience full stop. A competent gameplay programmer can usually get to grips with Unreal or any other engine fairly quickly. A large number of studios use completely in-house tools, so don’t have the luxury of looking for experience with said tools.

How do I find the Discord community?