Unity Vs Unreal

Started by
23 comments, last by Gian-Reto 8 years, 4 months ago

I recommend spending a weekend with both. I went with Unity because I really liked the asset store integration and the professional tutorial videos. When you spend some time in Unity, be sure to check out the tutorials:

https://unity3d.com/learn/tutorials

And as for the physics and awesome graphical capabilities of Unity. Are you going to be stressing those as an indie developer? Some of the devs here sure can, but I'm not one of them. :)

As to the Unity crashes... When I first started messing with Unity (around version 4.6 I think?) it seemed to crash every once in a while. And my scenes were extremely simple. Since using 5.1+, it hasn't crashed much at all. But again, my scenes aren't crazy awesome scenes of 3d uberness.

I wrote an autosave asset that's available for free. Check my EckTech Games link in my signature if you're interested. Basically every time you do a test-run in the editor, it saves the scene first. This has saved me quite a bit of work and frustration, though it seems to happen less in the current version of Unity.

- Eck

EckTech Games - Games and Unity Assets I'm working on
Still Flying - My GameDev journal
The Shilwulf Dynasty - Campaign notes for my Rogue Trader RPG

Advertisement
You can very easily get the impression you've hit the limits of either engine if you just keep throwing assets together without thought to efficiency.

I am writing a reasonably large ue4 game, and although the engine can cope with it I found that it was struggling with some things because I hadn't yet optimised it.

It is important to understand the way your engine of choice works, no matter which you pick otherwise your game won't ever work right.

Good luck!

If you're thinking of going mobile at least before the UE4 created HUGE apk-packets for android. I think they have toned down the size of the packets in the past 8 months tho. I am not anymore sure if they are as bloated as before, but still from my understanding by default unity creates smaller packages.

UE4 has really good tools for analyzing performance, although from my understanding Unity as well has pretty good tools for that.

This is probably due to my lack of skills, but for me it feels, if I am trying to do some really simple things the UE4 somehow doesn't run as well as Unity. Then again UE4 has had quite few major patches since it went free, so there are probably lots of optimization done since then. Like I came to a conclusion that RTS-type of a game, where you have tons of animated low poly objects in a screen seemed to really take a toll on my cpu and on Unity this kind of stuff seemed to run a lot better. But then again this is probably more about lack of skills and understanding of what I am doing, rather than truly the engines fault. Also there have been updates since then, so this might have been something of an issue that could have been fixed since then.

Regardless, I suggest you try out and figure what you truly need for your game, and then try to build something to test out the features you need and then choose the engine you want to go with.

If you use Unreal, Epic Games takes 25% of your revenue, after Steam or Apple, so you end up getting around onlt 50% of the revenue from your game vs Unity which charges no licensing fee at all, or $1500 if you make $100,000 or more

Plus, Unity is more performant on mobile devices, has a larger community, better Asset Store, and uses a more modern language (C#) for coding, giving more power, speed and flexibility than Unreal. And, if it's a visual logic editor you want, Unity has PlayMaker, which is an add-on you can get for free from the developer's website.

There is a reason more people use Unity. Actually, there are several.


If you use Unreal, Epic Games takes 25% of your revenue, after Steam or Apple, so you end up getting around onlt 50% of the revenue from your game vs Unity which charges no licensing fee at all, or $1500 if you make $100,000 or more

While technically correct in some cases, there's a potential for a higher cost than you listed for Unity users, due to 2 reasons:

1. The licensing fee applies per person (or rather seat) in a team. If you have 4 members, this will quadruple the total licensing fee.

2. In the case where you exceed the $100,000 (which is not just for revenue, but for game budget), you need to buy a $1500 license, as you mentioned. However, if you are developing for iOS and/or Android, you also need to buy the relevant iOS and/or Android Pro license.

With a development team consisting of a few members, and developing for either mobile platform, using Unreal could in some scenarios be cheaper overall than using Unity.

EDIT: I didn't catch Dave Hunt's correction (see next post), which will also affect the break-even point.


Plus, Unity is more performant on mobile devices, has a larger community, better Asset Store, and uses a more modern language (C#) for coding, giving more power, speed and flexibility than Unreal.

(Emphasis added)

Citation needed.

In which ways does Unity's C# implementation lend itself to the bolded benefits?

Also, what does the term "power" means in this context?

Additionally, I'd like to see benchmarks for the performance gap, if you have some at hand.


And, if it's a visual logic editor you want, Unity has PlayMaker, which is an add-on you can get for free from the developer's website.

A visual scripting/logic editor is also available for both engines, and is not limited to Unity (which is how your post reads to me).

For Unity, you have the PlayMaker add-on, while Unreal has the Blueprint system natively.

Hello to all my stalkers.


If you use Unreal, Epic Games takes 25% of your revenue, after Steam or Apple,

That changed some time ago. It's now 5% of your gross revenue.


If you use Unreal, Epic Games takes 25% of your revenue, after Steam or Apple,

That changed some time ago. It's now 5% of your gross revenue.

Per product, But all that's in the EULA and T&C's

Never say Never, Because Never comes too soon. - ryan20fun

Disclaimer: Each post of mine is intended as an attempt of helping and/or bringing some meaningfull insight to the topic at hand. Due to my nature, my good intentions will not always be plainly visible. I apologise in advance and assure you I mean no harm and do not intend to insult anyone.


If you use Unreal, Epic Games takes 25% of your revenue, after Steam or Apple,

That changed some time ago. It's now 5% of your gross revenue.

I missed this. This obviously also shifts the financial break-even point when comparing Unity and Unreal when it comes to licensing.

Hello to all my stalkers.

Started using Unreal some months ago after being a Unity User for 3+ years. The broken PhysX Version currently used by Unity 5 (which broke many things like Mesh Colliders and the Wheel Colliders) without much hope for a real PhysX replacement was what made me move to Unreal Engine 4 for now.

As far as I can tell, Unreal Engine 4 has a less "easy to use" editor as many things that are simple in Unity, or can be done with in-editor tools, are more involved or have to be done in external tools in the Unreal editor (Cubemaps for example need to be combined into a DDS image in Photoshop or other external tools).

Then there is the Node based scripting. While it sound brilliant on paper, and at least in case of the shaders, actually makes it pretty easy to drag and drop a quite complex shader together in not that much time, for me it works less as a tool for game mechanics scripts or stuff like that. The nodes are sometimes confusing (like names of the nodes not corresponding to what is shown in the node selection list), complex scripts are really hard to arrange in a logical, easy to read way even though there are many options to help you with that.

For me as a programmer, while dragging and droping in Blueprint helps a lot with simple scripts, I wouldn't want to use it for more complex things (yet... maybe I just have to get used to it more).

A lot of things are quite "complex" in Unreal Engine 4 because the amount of options you have is staggering (fighting with translucent materials and particles now, I am still not 100% sure I understand all the different lighting options and why you can have translucent being rendered in its own or in the same pass with opaque materials, and why it makes such a difference to the way the material renders). The shadowing system seems to be just as complex to understand for someone coming from unity, with so many options and moving parts.

Documentation for Unreal Engine 4 is vast, but either I am really stupid, or the documentation is really hard to search and badly indexed. I always had trouble finding the right information for the problems I was facing at the time, and after prolonged google searches I found the information right there in the official documentation, just buried somewhere where I didn't looked at first.

Engine Editor for UE4 crashes regularly. At least in version 4.8 which I am still using. I can count the amount the Unity Editor crashed on me, in version 3.5 to 5, on one hand over these 3 years.

C# API for Unity is really nice and simple (its based on Mono, if you know that). Almost as good as having a drag and drop node based visual scripting tool.

Of course, on the other hand you HAVE the options in Unreal 4 whereas in Unity, you are often SoL if you are not satisfied with the standart way the engine is doing things. It will take some try-and-error, digging in the documentation and time, but most things can be done SOMEHOW. And if everything fails, you have access to the source and can change the engine, if you really want and need to.

Rendering.... it is hard to describe, but the renderer of Unreal Engine 4 just seems better. Especially it seems to be much more forgiving about the models you feed it, many models that where full of problematic baking errors when baked for Unity posed no problems when baked for Unreal... could be the tools I am using for baking (3D Coat), still seems that the way Unreal treats the model normals (which is different to Unity) makes the whole thing less problematic.

You get much more options out of the box for high-end rendering with Unreal Engine 4. Most can be had in Unity if you either write some shaders yourself or shell out some money in the Asset Store, but it is actualy nice to get this with the engine in UE4.

Then there is the Fact that UE4 comes with less old garbage in the Codebase... I would bet there is still a tremendous amount of code in the Unity engine from 2007... see the different renderer options... legacy deferred. Unreal seems to go in a different direction, at least this is what Epic claims. Engine is said to be rewritten from scratch with every major version... now, there are still plenty of bugs present in the Engine, but Epic seems to be pretty active at fixing them.

Personally, I'd say go with UE4 for developing high-end PC games if you are not afraid of the higher complexity, having to learn C++ or the Blueprint system (which, to be honest, is just another programming language to learn, just without the syntactic details of other languages), or some crashes and bugs still present in the editor. Make sure your google-fu is up to scratch though if you have to rely on Epics documentation though.

For beginners, Unity seems easier to learn for me. Also, if you are not doing high-end PC game development, but mobile or 2D dev, Unity might be completly sufficient. And you will have an easier time with their more stable, more powerful editor to boot.

I read this long time ago:

http://blog.digitaltutors.com/unreal-engine-4-vs-unity-game-engine-best/

"The only thing that interferes with my learning is my education"

Albert Einstein

"It is a miracle that curiosity survives formal education"

Albert Einstein

This topic is closed to new replies.

Advertisement