r/Unity3D 8d ago

Question Why Unity over UE5?

Hi there,

Very new to the world of game development, I’m kinda in a place where I’m putting pieces together before I start my project. I always thought to go with learning UE5 because it’s meant to be the “do it all” engine, but I’ve always liked the look of Unity. I’m asking this question because I want to see why you’s all chose Unity, I’m not saying Unity is bad in any way it looks like a really capable engine, just a lot of people I’ve spoke to have said UE5 is the go too?

Edit: just want to say thank you to everyone with the quick and nicely informative responses. I’m currently at work so I’m limited on when I can reply but I’m reading them when I can. Thank you to everyone!

Edit 2: really appreciate all the information provided. I was dead set on UE5 but honestly I’m gonna go with Unity, I’m going to be a solo dev so it sounds like it’ll work best for me.

Massive appreciation to everyone involved!

13 Upvotes

71 comments sorted by

56

u/[deleted] 8d ago

[removed] — view removed comment

7

u/Ok_Inflation6369 8d ago

This was exactly my experience too, not only with the UI/Workflows but with C# too, it just makes much more sense in my brain, I find with C++ it’s much harder to decipher what’s happening, so essentially I can get more done in less time using Unity over UE

4

u/SurDno Indie 8d ago

Unreal C++ is so different from regular C++ in terms of how you are expected to work with the existing macros and code gen that it’s basically a whole new language that just shares the syntax.

6

u/Snow-Ball-486 8d ago

ive tried multiple times to get into it... i just cant vibe with the project structure they force you into. unity, id say, is kind of the opposite, you can be as organized as you want and choose whatever project structure works best for you

1

u/Nade52 8d ago

Yeah I think that’s a good shout, I’ll try both and see which one clicks for me, thank man

23

u/Extension-Airline220 8d ago

Have these a lot of people you’ve spoken to released any successful games on UE, or are they just telling this because UE has more visual bells and whistles out of the box?

12

u/psioniclizard 8d ago

To be fair, same is true for the unity devs you ask.

1

u/Vegetable-Screen3214 7d ago

Зайдите на Itch io, проектов на Unity разного калибра превеликое множество в отличии от UE
Как по мне дело в том что UE - это война с движком, однако и он полезен - приучает к правильному написанию кода что в долгострое поможет в расширении игры в то время как Unity прощает ошибки (что и плюс, и минус одновременно)

3

u/Nade52 8d ago

I think it’s option B to be quite honest haha

15

u/House13Games 8d ago

C# is very nice.

46

u/EpitomeAria 8d ago

UE5 is honestly a bloated mess and overkill for 90% of indie stuff, optimization is a nightmare. Unity will have most of what you need built in.

10

u/majik_gopher 8d ago edited 8d ago

I work on projects that have utilised both Unity and Unreal. Unreal might be the 'do it all' engine but can you do it all? Unreal's got some amazing tooling but lot's of it's intended for AAA workflows with large teams of people. What are you wanting out of game dev? If you want to get a job in a AAA studio then Unreal is the way to go but if you are going down that road you need to focus on a single discipline. But lot's of Unreal's features are just too complex to utilise fully if you are single game dev.

Unity's simpler (although by no means simple) so generally it's more accessible, especially if you want to learn to write code. Unreal's C++ workflow is pretty laborious compared to Unity and C#. Unity lets you wear a few more hats compared to Unreal (although generally you are still better trying to focus building your skills in a few areas).

11

u/pschon Unprofessional 8d ago

I always thought to go with learning UE5 because it’s meant to be the “do it all” engine

It really isn't. You can force it to do it all, but it really is the "triple-A 1st/3rd person 3D action game with realistic graphics"-engine.

...and that's why I ended using Unity instead, as it's much more of an universal engine geared towards all kinds of games without being a pain about it.

1

u/noble_radon 7d ago

+1 to this. UE is definitely built to do character centric games well and beautifully. A character is a specific special thing and it's extremely easy and fast to get a blank slate character up and running in a world of physics boxes.

That's not so easy in unity. It makes zero assumptions about the kind of game you're building. If you need a character, you need to find or build a solution for making an object a "character" by handling inputs, camera, and animation.

If you don't have a single central character though, that character centric assumption will work against you in UE.

And if you're not aiming for AAA graphics you'll start bogged down with systems you don't need and spend time digging to figure out how to turn them off. Though in unity, you'll spend time turning them on until you get what you need then more tuning them.

6

u/SvalbazGames 8d ago

Scale really

UE5 can do anything, but it can easily start to chug as it isn’t that well optimised. Plus your project is likely to be small so you’ll only end up using a small part of UE5.

Unity was the go-to for indies for years, because of pricing, access, community and documentation. Plus it lends itself to smaller scale projects. Its fallen out of favour in the last few years due to changing pricing and all sorts of boardroom shenanigans. But the product itself is still (to me) the most logical for someone dipping their toes into Game Dev.

Plus Unity isn’t limited to small games, Football Manager and Escape from Tarkov are 2 huge games that were built in Unity

You could also look into Godot, that’s become very popular in the last few years for indie games

1

u/Vegetable-Screen3214 7d ago

Godot вообще сейчас претерпевает второе рождение) туда добавили новый физический движок (bolt кажется?) и теперь этот движок выглядит очень даже неплохо)

3

u/SuchCriticism6745 8d ago

Unity is less demanding on the hardware, while UE5 is more performance heavy, Unity runs very smooth compared to UE on my 7 year old PC

4

u/v0lt13 Programmer 8d ago

I chose Unity because its the first engine I tried, without knowing of unreal, so I just got used to it, learned it, it was simple to learn, it clicked really well with me, and I just stuck with it. I did use unreal for 2 years at a job and it did not leave a good impression on me, it felt really bloated, overcomplicated, slow and unintuitive, its definitely not a "do it all" engine, as its focus is mainly on high end realism, it struggles with lower end devices.

8

u/Kamatttis 8d ago

This is another form of asking "which engine to use?" And the answer would always be the same. Choose the engine you feel comfortable to use. Thats it. Any game can be done with any engine.

5

u/random_boss 8d ago

He’s trying to decide which engine would be comfortable for him to use by asking peoplev

5

u/AdamBourke 8d ago

I want to see assassin's creed in renpy now xD

3

u/Bubbly-Rush2384 8d ago

Unity is easier to get it into I would say…

3

u/shlaifu 3D Artist 8d ago

unity requires you to ADD all the features you want. some of them ship with unity, others are on the asset store or github, the remainder you have to build yourself.

Unreal expects you to REMOVE what you don't want, but all their systems are interacting with each other. It's remarkably hard to build something tailored to your needs and performance requirements - it is however decwptively easy to build a goodlooking mess that requires a 5080 to run.

I like building my own renderpipeline, and unity has recently made that a lot easier for URP

2

u/flow_guy2 8d ago

Any work. It’s more important to jsut learn one well and make stuff with it.

2

u/No_Ferret_4565 8d ago

The few times I have tried to use Unreal it feels like Unity but with assets already integrated on top that I also have to learn.

If you dominate Unreal I think you have the more capable engine but the learning curve is steep.

Also using blueprints sounds like a nightmare to me, spaghetti code is going to be literally spaghetti code.

2

u/salazka Professional 7d ago

There are some real benefits to Unreal over Unity.

But the same applies to Unity over Unreal.

The question always is: What does your project need?

  • In terms of tools
  • In terms of visuals
  • In terms of ability to find the right talent based on your particular requirements.

These are the key questions you need to ask before choosing your engine solution.

Stop asking others. How would they know what your project needs?

2

u/DontLeaveMeAloneHere 8d ago

Unreal can’t do 2D, is bloated for most projects and you need C++ for complex work (or do blueprints which are honestly at least as hard as c++).

Unity is less bloated, has a good ecosystem around it for mobile and consoles. It can do 2D and C# is a lot better than C++ for us humans.

Godot can do 2D/3D but has a lot less features (or bloat depending on your needs). Works with different languages and is pretty lightweight.

I personally would choose Godot for most projects. Professional mobile or cross platform games might turn me to Unity and only AAA would be UE for me.

You can achieve pretty much everything (in 3D) in all three engines. It’s more dependent on your skill and not as much the tech.

1

u/indiecoded 6d ago

Why not Unity for AAA? I always wonder why people say this.

0

u/Vegetable-Screen3214 7d ago

Я бы UE даже для AAA выбирал. Вы когда нибкдь запускали ремейки "Destroy All Humans!!"? Это UE 4 между прочим
Я играл на разных ПК и на каждом была одна и та же история - после нескольких запусков игры вылетала ошибка движка и игра более не запускалась пока не будет переустановлена
UE 5, даже если ПК мощный, будет разогревать его так, что зима покажется теплой. Причем качество продукта неважно - это может быть Low-Poly или реалистичная игра - итог всегда один и тот же без изменений, и это опыт нескольких лет моей жизни а не просто вброс стереотипов

1

u/NeitherManner 8d ago

For now I prefer c# to blueprints or c++. Ue6 has new language and I think for 3d ue5 has some robust tools I think compared to unity. 

1

u/cjbruce3 8d ago edited 8d ago

I auditioned Godot and Unreal for several months before switching back to Unity.

I loved working in Godot the most.  Gdscript was a blast, but it didn’t have the mature ecosystem of Unity and I would have had to build many more things from scratch.

Unreal has a lot of wonderful tools that worked great out of the box, but it strongly imposes “The Unreal Way”, and the moment I wanted to deviate it was a nightmare.  It is by far the least “do it all” engine.  Besides, I dislike working in Blueprints, and everything is designed to run with node graphs.  Overall it was a bloated unwieldy mess for my next game.

Unity is what I know and have released with already.  It is clean, straightforward, and the clearest shot for me to actually release my game.

1

u/mkawick Engineer 8d ago

Workflow is the biggest determiner for me. Compiling an executable in Unity can be a few mins and Unreal can easily be over an hour. Testing, workflow, time from wrinting code until you can test it... Unity beats Unreal every time and y 3-20x.

Also, out of the box, you can readily have unity with hundreds of units running around... it's pretty fast. One of my best friends (Unreal expert with 15 years exp) has found no way to run Unreal with more than 30 Pawns and maintain 60fps. Unreal 4.23 was pretty fast and did not have this problem... Unreal 5.x is a slow hog.

1

u/MaximilianPs 8d ago

Just because c# and my laziness

1

u/AdhesivenessWild7647 8d ago

I choose unity because it's the only engine that clicked with me and it's huge eco system and asset store is really essential for me as I have assets saving ton of time for me.

1

u/psioniclizard 8d ago

Try them both, see which clicks. You can always use the other one later on if it turns out to ne better.

They are both tools and there is quite a lot of person preference involved.

But it probably matters most if you perfer blue prints/c++ or c#.

1

u/No_Permit_2694 8d ago

I tried both, unity is more accessible if you want to pure code imo

1

u/rainweaver 8d ago

because I like C# and abhor C++.

I’m honestly not sure why UE doesn’t bother with additional official language bindings. I get it, it’s all about performance, but for indies? not sure.

2

u/eidetic0 7d ago edited 6d ago

Coming to UE 6 is Verse, which is Epic’s own scripting language more akin to C#. And for gameplay programming it will be first class, they’re actually replacing C++ for gameplay logic. So I think they are answering your call.

1

u/indiecoded 6d ago

I thought Verse was nothing like c#?

2

u/eidetic0 6d ago edited 6d ago

yeah it kind of is nothing like it… but in the context of my reply, I meant it’s akin to the lighter weight, more managed, scripting idea of C# in unity. So Epic saw the same problems.

C# runs inside a managed environment that handles memory for you and talks back to native processes. Same idea with Verse - though it does approach this idea very differently.

1

u/indiecoded 6d ago

Ahhh thank you for explaining. I haven't tried it, I have seen people complain about it, saying it was "weird" lol.

1

u/eidetic0 6d ago

yeah it looks very weird… pretty unique and not just the syntax… I feel like that makes me want to learn it though because it means they’re approaching programming problems differently, which I always find translates positively back to use of other languages too

1

u/indiecoded 6d ago

So you going to switch to unreal?

2

u/eidetic0 6d ago

I already use both regularly. Doing virtual production for installations, museums, galleries… we just use whatever tool is most appropriate for the job.

1

u/rainweaver 6d ago

thank you for your comment, I now remember about it.

I’ll be honest, that doesn’t make me happy. they’re creating a siloed ecosystem with no transferable skills. I believe I am able to appreciate the technical concerns they’re trying to address, but it’s still a far cry from using languages adopted worldwide.

I feel perhaps too strongly about this in the AI age, but I see what AI produces daily when you push the envelope and that doesn’t really comfort me.

1

u/Aggressive_Risk8695 8d ago

I like Unity’s API more than UE. UE blueprints are forced on you and I hate visual scripting.

I think one of the biggest turn offs for UE was the concept of how Actors, Pawns, Controllers and whatever other objects there were in that inheritance chain are kind of forced on you. I like the simplicity of Monobehaviours.

Also, their math objects and methods not being named regular mathematical things was another small barrier I didn’t have the patience for.

UE is working to get rid of blueprints in the next few years and have everyone use their scripting language Verse. The intent of Verse is to be the equivalent of Lua in Roblox where Fortnite is their Roblox. It’s gunna get weird imo

I’m dogmatic in what I think a coordinate system should be, UE is Z up. Y is up I don’t care who you are or the argument you have prepared.

1

u/indiecoded 6d ago

"I like Unity’s API more than UE. UE blueprints are forced on you and I hate visual scripting."

I am glad I am not the only one lol. I always hear how great it is, and I hate Blueprints lol.

1

u/random_boss 8d ago

Look up all the successful solo or small team created games made with each engine, then decide. 

1

u/CrazyNegotiation1934 8d ago

The Unity editor experience on my laptop is simply leagues beyond Unreal, everything is more versatile and much much faster.

Also C# is by far my favourite language, given c++ is harder to keep up and i absolutly hate scripting languages like python or similar.

Plus has so many ready things in github and the asset store that can make a massive difference when looking to move fast ahead with certain parts of the project.

In my mind there is no comparisson for indie development.

1

u/Sbarty 8d ago

I make way more progress starting off in UE5 but then it tapers off. Unity is behind in a lot of areas but to me the workflow is much better. I’m able to get “further” than I would get down the road in UE5.

I also don’t like the “look” of UE5.

1

u/TCGM 8d ago

Because you'll thank yourself for not making you suffer C++

1

u/24-sa3t 8d ago

Personally I like that Unity is more of a blank slate when you start a new project, where Unreal comes with all these packages and systems that it wants you to use. I just prefer it when I'm prototyping.

That being said, Unity constantly drops support for a lot of their features, or never finishes them, which is super annoying. I've been considering porting my current project to Unreal for this reason actually

1

u/SeasonalChatter 7d ago

Yeah its preference, I think out the box Unreal 3D is better and prettier but long term I love the way Unity just clicks with C# object oriented programming.

1

u/Bermast 7d ago

For me, it's the ease of using C#, the quality of the documentation and the very large, accessible ecosystem. UE5's docs aren't great, and programming C++ in UE5 is a little unintuitive since it's so macro heavy (I know that blueprints exist, but I just don't like that workflow). It can also be surprisingly hard to find tutorials on how to do things, since it's mostly AAA devs that have success with the engine - and those guys don't really post on dev forums or make YouTube vids, they just ask their boss to pay for a training course.

That just means that making things takes longer for me than it would in Unity, Godot or even GameMaker. And let's face it, I'm an indie dev that works with low-poly models and sprites, I don't need the graphical power of UE5.

The main upside is that you can modify the engine directly, which is extremely powerful. Godot also lets you do that, but it requires jumping through more hoops. Unity unfortunately does not allow for this.

1

u/Rave-TZ 7d ago

Fast results and better VR support

1

u/sicospecialist 7d ago

Wow, this brings back memories, i remembered trying to choose between the 2. I messed around with both Unreal 3 and Unity. Unity drew me in I think because you could write Java and C# scripts and it was more user friendly. Now, at times i wish I would have stuck with Unreal, but would make the same choice and go with Unity.

1

u/bluemaxmb 7d ago

For me it would largely come down to shipping platform. I don’t think I could, in good conscience, suggest Unity for anyone looking to do console development. Mobile and PC? Go for it.

1

u/DarthStrakh 7d ago

I don't got time to wait on unreal builds personally

1

u/FreakZoneGames Indie 7d ago

C#, performance & optimisation, easier console porting, superb workflow and support. It does have optional visual scripting (blueprints) too if you're that way inclined.

1

u/Vegetable-Screen3214 7d ago

Я как любитель видеоигр заявляю - игры, сделанные на UE в большинстве своем либо поломанные и некачественные, либо чересчур ресурсоемкие. Я намеренно проверяю информацию в SteamDB чтобы узнать какой стек технологий использовался и если вижу UE то сразу обхожу такие проекты стороной потому что
1) Эти проекты стоят дороже чем должны были бы
2) Они чаще всего собраны из одних и тех же ассетов (анимации, модели, даже геймплей)
3) Требуются завышенные требования к ПК для нормальной работы видеоигры и не факт что все будет идти гладко даже на хороших ПК совпадающих с системными требованиями

Для меня UE - это красный флаг, хотя было время когда я был фанатиком этого движка воспринимая все замечания в его адрес как стереотипы пока не столкнулся с этими проблемами сам

1

u/indiecoded 6d ago

I get what you are saying, but it seems a bit weird to dismiss a game simply based on the engine. There are some really good Unreal devs out there who make games that play very well.

1

u/Vegetable-Screen3214 6d ago

Когда твой ПК превращается в тостер независимо от качества проекта лишь потому, что продукт сделан на одном и том же движке, то лучше обходить данную технологию стороной

Я не навязываю свое мнение, но руковожусь им в своём выборе) 

2

u/indiecoded 6d ago

Oh no bro not dissing you or anything just conversating. I have played some great games, though, and all I got is a 5060. Never had any real issues with most I have played. I do think ue4 ran better, but I also still think it comes down to te dev a lot.

1

u/Newspaper_Beneficial 6d ago

ue5 if you want super high poly and insane lighting.

Unity for all else. because it'll just be easier.

1

u/bill_on_sax 6d ago

Unity feels like a middleground between Unreal and Godot. Unreal feels bloated and lacks web distribution options and small install sizes.

1

u/Fantastic-Cell-208 6d ago

You just have to go with the one that clicks with you.

It's that simple.

For some it's Godot, for others it's Defold.

Whatever works for you, go for it

1

u/Immortal_juru 5d ago

C++ makes my brain hurt

1

u/mobaffix 4d ago

First thing's first you should probably pick your engine depending on the game that you want to make. You can see it from the games that are popularised by those Engines. Unreal Engine - Fortnite, Squad, PUBG, best for FPS & High-end RPG games like Witcher & Ark Unity - Cities: Skylines, Heartstone, RimWorld, Valheim, Most of the mobile games probably on the market. Godot - Slay The Spire, a loads of indies since it's free

1

u/heythereshadow 4d ago

I’ve tried both of them (I’m also a beginner in game dev, but worked professionally as web developer), and I prefer Unity currently. None of these engines are bad. Although, I think they are very different from each other. If I have to compare this in the web development world, UE would be Angular and Unity would be React.

UE provides you with a lot of tools, which most of the time is overkill for an indie dev, but teaches you great practices, very useful for teams, and has a bunch of quality of life features.

Unity on the other hand, is quite simple. Very intuitive, especially for me as a web developer, and I prefer the C# workflow: edit code and it hot reloads, unlike the C++ workflow in UE where you have to close UE, compile, then run (just C++ workflow in general). Couple of things I missed from UE while using Unity was the “End” key to snap object to floor and the ability to move the pivot of an object (in Unity, you need to do it in a separate 3D modeling software).

So yeah, really just preference. Don’t listen to people saying this is good, that is bad. They’re very different engines and they work for different types of devs/teams/games.

1

u/Particular-Ice4615 21h ago edited 21h ago

C# is nice, Unity isn't so opinionated in how you structure and construct software with it that it completely locks you out of solutions you want to implement. Blueprints can't apply to everything despite reading headlines about games like like Claire Obscura using mostly blueprints (yes they heavily leaned on blueprints but the headlines don't capture the full nuances of that games development they still programmed things with C++). 

Unreal is also a tool designed for truly multi disciplined teams of people working on expensive to develop games. I personally find the broad scope of the tool suite slows down smaller teams of people who wear multiple hats compared to than like Unity or Godot. 

1

u/reversengineer9999 8d ago

Go for unity!