I previously decided to dive into 3D game design, mostly just for fun but also to see what tech is available nowadays. I decided to go with Godot because it covered the requirements I had back then:

  • Is open-source.
  • Has a very nice built-in IDE.
  • Can compile to multiple platforms.
  • Can compile to something that can run in a browser.

The last point was actually the most important factor for my initial concept. I wanted to create a very basic open world without asking clients to download large executables. For this reason I also considered things like ThreeJS and I also looked at BabylonJS. All three options would allow me to build something that can run in the browser. I mean, look at what can be accomplished with them:

However, despite all three of these engines being great options to build a game with, especially if you want to do something directly in the browser, they lack a variety of features that Unreal Engine has. I also think that some of these features are so advanced, that it will take a long time to catch up with Unreal Engine and by the time they do, Unreal Engine would have developed even newer features. 

So without further ado, here are the main reasons why I switched to Unreal Engine.

1. Unreal Marketplace

The Unreal Marketplace is one of the main reasons I decided to switch. The sheer magnitude of FREE assets available is mind-blowing. The paid assets are generally even better and well worth the money.

I've spent quite a few bucks on several assets but the one I that was truly worth every penny, was the Third Person Shooter Kit v2.1. I looked at a variety of Third Person Shooter kits and assets but this is the one I decided to spend money on. I was not disappointed!

(I'll make a new post on this blog soon where I will include a copy of what I was able to build with this kit.)

2. Nanite

After trying to have hundreds of objects in a ThreeJS scene and seeing everything slow down to a halt, it was a serious breath of fresh air when I discovered Nanite

Nanite is a new virtualized geometry technology introduced in Unreal Engine 5. It is a groundbreaking technology that allows for the creation of massive, high-fidelity worlds with millions or billions of triangles, without the need for time-consuming manual optimization or level streaming. 

Essentially, Nanite allows game developers to import incredibly complex geometry into their scenes without worrying about performance. This is achieved by breaking down the geometry into small, virtualized "nanite" clusters, each with its own level of detail, which can be rendered on demand by the engine based on the player's position and view frustum.

Basically, this means you can create highly detailed and massive worlds, without having to worry constantly about using large models that might slow things down. At the time of writing, there are no other engines that offer Nanite tech. There is a discussion about adding Nanite Tech to Godot here but it seems unlikely anything other than Unreal Engine will offer this insanely cool feature for the foreseeable future. 

3. License

Although open source solutions will always win in this category, Unreal Engine's pricing model is more than generous. They ask 5% royalty on gross revenue after the first 1 Million USD (+- 18 Million ZAR) you make.

The chances of me ever making 1 Million USD in game development is extremely unlikely but even if I do, giving 50 000 USD to Epic Games and keeping the remaining 950 000 USD is not going to make me lose sleep at night. Especially if you consider that the 50 000 USD will likely go towards making Unreal Engine even better.

4. Language

Godot uses GDScript and Unreal Engine uses C#, C++ and also what most people end up using: Blueprints. With Blueprints, you don't need much programming experience. You simply use the visual editor and create reusable Blueprints by clicking and dragging. 

Unreal excels here because you get the best of both worlds. If you want to really get into things, you can switch to C++ or C#. For everyone else, Blueprints are extremely powerful and much easier to use than what Godot has to offer. 

5. Community Support

Both engines have active and helpful communities, but Unreal Engine's community is larger and more established. This means there are more tutorials, resources, and assets available for Unreal Engine compared to Godot.

For example, I learnt 75% of what I know, from this video

--

I can name a number of other points to back up my decision. I haven't even touched on MetahumansCross platform capabilities or Support for VR/AR/MR, just to mention a few. Unreal Engine can cover just about every single use case I have and it can do so significantly better than any of the other engines I have tried. (Full disclosure: I haven't given Unity a fair chance yet and might do a post on that at a later stage, just to make sure I've tried all the popular solutions available)

To be quite frank, there is literally just one single downside to Unreal Engine and the only reason, in my opinion, why there is even room for other 3D engines. That reason is the fact that Unreal Engine is still too big for an in-browser experience. Sure, Unreal has WebAssembly and it might be possible to create an open world in the browser using it, but you will still end up with a 2GB game file if you don't use something like Godot or one of the other smaller game engines. 2GB is too big if you want to, for example, let the user to play the game from their phone. If it's a one-time download, then perhaps, but it is unlikely you will be able to get the same sort of quick loading you get with in-browser games like Shell Shockers.

So for the time being, my dream of having a large open-world game directly in the browser is on hold but perhaps as I learn more about Unreal Engine, there might come a time where I can viably use it to build an in-browser open-world. Until then, I'll keep having my fun with Unreal Engine. 

Coming up next: a new post with a downloadable version of the basic open world I built using Unreal Engine. Here's a preview:

Currently you can: explore the open world (which is seriously massive), equip guns, kill NPCs, be amazed by the fauna and flora etc.

Did you find this post useful? Or do you perhaps think there are better options? Drop a comment below!

Share this Post

Leave a comment