Is Unity C# better than UE5 Blueprints?

Поделиться
HTML-код
  • Опубликовано: 20 июн 2024
  • In this video, we'll compare Unity C# and UE5 Blueprints to help you decide which is better for game development. This video breaks down the pros and cons of my journey, making the switch from Unity to Unreal Engine 5!
    🚀 Wishlist my game!
    store.steampowered.com/app/24...
    🔔 Subscribe for more GameDev!
    / @mr.overload
    👉 Discord: discord.com/invite/4pskJWxPe9
    //About me:
    My name is Jan, I have been doing game development and coding for over 11 years now. I am working hard to publish Videos, which can be anything from Tutorials, Devlogs and to Asset-/Game-Review
    #ue5 #devlog #racinggames #ue5devlog

Комментарии • 123

  • @Bankoru
    @Bankoru Месяц назад +27

    C# is also compiled tho
    And Unity converts it to C++ with IL2CPP on build anyway.

    • @CaptTerrific
      @CaptTerrific Месяц назад +4

      So if we're very clever (and masochistic), we could possibly generate CIL from Rust, compile that into .NET assembly, decompile into C#, and then pass the result through IL2CPP?
      ...I'm sure someone has already done it :D

    • @Stunex
      @Stunex Месяц назад +3

      @@CaptTerrific no need to get so complicated, Unity can use dlls as a native plugin, including libraries written in Rust. You just need to handle the interop but that's actually pretty trivial.

    • @LopinDev
      @LopinDev 6 дней назад

      Not unless you enable it else it’s just the standard c# route source -> il -> byte code

  • @cgaiser
    @cgaiser Месяц назад +21

    Just wanna point out that both C++ and C# in fact are compiler languages. Also, I think that when you say 'normally you would use Rider' you should also point out that while it is more convenient to use than Visual Studio for most ppl, it is paid Software.

    • @Mr.overload
      @Mr.overload  Месяц назад +2

      Oh thank you so much for the feedback! :)

    • @ParadoxISPower
      @ParadoxISPower Месяц назад

      Worth every penny too.

  • @tatoforever
    @tatoforever 10 дней назад +2

    The company im working on is dropping Unity and we are moving many of our new projects to Unreal. I've been working with the engine source for couple of months, since it was required to modify and implement custom shading models, mod the gbuffer render pass and implement other render graph features. The experience has been a breeze, despite having very little information on how to customize source parts of the engine. In regards to Unreal's Engine C++ implementation, it's both easy and confusing but not for the absolute beginner. If you are new to programming and game development, it's better to stick with blueprints. Don't worry about performance at this stage.

    • @edward3190
      @edward3190 9 дней назад

      Unreal coding is decades behinds Unity.
      Unity support hot reload (recompile script while the game is running). Its reload time is less than half a second.
      Unreal's recompile is painfully slow.

  • @hector3dev
    @hector3dev Месяц назад +8

    Unity is way more better than UE for mobile game dev and XR applications. UE is better than Unity for PC games and Films. That's it.

    • @MrSofazocker
      @MrSofazocker Месяц назад +2

      Soo... PUBG mobile, Vigor and all other mobile games made with Unreal don't exist in your world-view? Okay!

    • @weirddboyy
      @weirddboyy 19 дней назад +3

      @@MrSofazocker That's his opinion and I agree with it as I developed games on both the engines for mobile. And I am telling you developing games on UE for mobile is a lot more complex and time-consuming than Unity, you will face so many problems in building a simple game on UE.

    • @mauri00098
      @mauri00098 5 дней назад

      @@MrSofazocker Your argument can be used the same way but for games for PC and Console made with unity, still the gacha with most revenue on mobile is from unity, is just a engine and the sucess will come from the idea not the numbers in a screen.

  • @deluxe_1337
    @deluxe_1337 Месяц назад +6

    I wish UE had a programming language that meets it in the middle, kind of like their old UnrealScript

    • @Mr.overload
      @Mr.overload  Месяц назад

      That would be awsome, yea!

    • @jeanmakesgames
      @jeanmakesgames Месяц назад +2

      It' coming, it's called Verse, it'll probably be in unreal next year (it's already used to develop Fortnite) :)

    • @Mr.overload
      @Mr.overload  Месяц назад +1

      @@jeanmakesgames Oh sick, where did you get that info?

    • @jeanmakesgames
      @jeanmakesgames Месяц назад +1

      @@Mr.overload Tim Sweeney (the founder / CEO of epic) shared it himself answering on twitter some month ago, GameFromScratch talk about it in one of his video :)

    • @mando5279
      @mando5279 Месяц назад +2

      @@jeanmakesgames The syntax of Verse seems very functional/Haskell like so it will be a pain to work with.

  • @kukukudoes458
    @kukukudoes458 Месяц назад +11

    Both c# and c++ are compiled languages
    What makes unreals c++ pain in the ass is its monolithic foundation and its super heavy use of reflection system which makes it a pain in the ass to compile

    • @MrSofazocker
      @MrSofazocker Месяц назад +1

      Yes, but normally you don't do this very often. And also after first-compile, you'll almost never have to compile everything again.
      Just the thing you changed.
      You are intended to use C++ for programming, blueprints for implementation of that code... but i disgres.

    • @kukukudoes458
      @kukukudoes458 16 дней назад

      @@MrSofazocker Agreed
      But it sure is a chore

  • @tiaanbasson9092
    @tiaanbasson9092 Месяц назад +5

    One is slow and cause fps drop, the other is just spaghetti.

    • @MrSofazocker
      @MrSofazocker Месяц назад +1

      ònly spaghetti if yoiu put everything into the same graph and never used functions or coded the features and procedures to call in c++.
      Typically you have 3 nodes in a blueprint.
      If not the entire class is cpp.

  • @ulrich-tonmoy
    @ulrich-tonmoy Месяц назад +2

    The thing that Microsoft cant create/update their own editor to work with their own language but another corp just do it for every language

  • @BrianHallmond
    @BrianHallmond Месяц назад +2

    I want to make a 2D Bullet hell game and was thinking C#..

    • @Mr.overload
      @Mr.overload  Месяц назад

      For that I think c# is great!

    • @sneakysunset1765
      @sneakysunset1765 25 дней назад +1

      If you want to do 2d always go unity or godot. Unreal is not optimised for that

  • @noahbrewer2476
    @noahbrewer2476 23 дня назад +1

    I've been able to make any sort of code and functionality that I want with just blueprints. Stupidly complex functionality that is. It really depends on what kind of an experience you want to create ,though.

    • @Mr.overload
      @Mr.overload  23 дня назад +1

      Totally agree, blueprints are a great tool

  • @lvckyaim
    @lvckyaim Месяц назад +2

    great content

  • @econundrum1977
    @econundrum1977 13 дней назад

    It's absolutely true that setting up the tools properly to use C++ with unreal is complicated and difficult but once it's done it's not too hard to use. Do a Udemy course to get you started with c++ in unreal.

  • @swrcPATCH
    @swrcPATCH Месяц назад +1

    Python does not get compiled, there are no binary files or compiles, it gets interpreted at run time and then executed. No compilation.
    Besides that both C# and C++ do get compiled after being interpreted, the difference is that C# Code runs on the virtual runtime environment while C++ gets compiled to a specific hardware and/or operating system if I am not fully mistaken. So both langues do make compiles (.exe for example or .dll files) while python is left with its source code in a .py and not a binary file.
    Edit: I think the only reason why you would think C# does not get compiled is because you have never ever worked with C# in a none-unity application before. But that still leaves the question why the hell do you think python gets compiled. It is a script aka interpreter language.

    • @Mr.overload
      @Mr.overload  Месяц назад

      Thanks for the feedback. I noticed the mustake in post!

    • @MrSofazocker
      @MrSofazocker Месяц назад

      Python has an Interpreter yes, but before that runs, it generates bytecode... or what are the .pyc files then? Why do you think the extension literally says "compiled" at the end!?
      Yes it's bytecode not machine code, still a compilation step tho. But yes, it needs a running "vm" for it to get executed.
      And C# is the *scripting* language of the .NET platform... and has a JIT-Compiler. like Java, it doesn't run ON the VM, it uses one to compile IL to machine code.
      Both get compiled down to bytecode, an intermediate platform independent representation or IL, which will get compiled down by it's "vm" to native maschine code. Which can be executed natively.
      Also, Unity compiles C# to C++ with IL2CPP on build anyway. What's your point?

  • @sneakysunset1765
    @sneakysunset1765 25 дней назад +1

    I personnaly think unreal is harder to code more advanced features. When i code with it I feel stuck in the myriad of tools that try to tell me how I should code my game. In Unity at least I feel like I paint on an almost blank canvas with just some ink I can use instead of the already used canvas full of paint.

  • @econundrum1977
    @econundrum1977 13 дней назад

    Or use C++ it's actually not that hard to use C++ with unreal. But do learn blueprints too as you will still end up using both.

  • @MrSofazocker
    @MrSofazocker Месяц назад +1

    This such a TLDR video... RTFM on how blueprints and cpp interop... you'll be living your life much easier.

    • @Mr.overload
      @Mr.overload  Месяц назад +1

      I did, but only later. It was a video about how I switched from Unity to UE and my experience of C# and Cpp and Blueprints.
      If you don't like my aproach do it differently, thats the way I learned how to use cpp and blueprints combined, everybody does it differently.

  • @Spyboticer
    @Spyboticer 6 дней назад

    There are blueprints for unity as well and a suprisngly good one as well

  • @lsd310
    @lsd310 Месяц назад

    blueprints are great for basic functionality games like fp /fps games, but once you want to have some extra functionality you would need cpp and compare to c# its really hard+long compile time.

    • @MrSofazocker
      @MrSofazocker Месяц назад

      Never used cpp huh?
      You only have to compile it ONCE, then you can have incremental builds which are near instant in most cases same as c#
      And then again... you program you procedures ONCE in cpp.
      Then do the scripting and experiementation for the implementation in blueprints... RTMF

    • @sneakysunset1765
      @sneakysunset1765 25 дней назад

      @@MrSofazocker cpp has terrible doc, can crash easily, poor debugging tools in visual studio (a bit better in rider), takes a lot more space in disk, and imo is way more annoying to navigate with a lot of reflection even with the tools given by unreal.

  • @leshommesdupilly
    @leshommesdupilly 3 дня назад

    Yes, but why use Microsoft Java instead of c++ ?

  • @clivalycardoso8606
    @clivalycardoso8606 Месяц назад +1

    Lets compile Rust or Zig instead and test

  • @ajc200x
    @ajc200x Месяц назад +1

    I enjoyed the video regardless of how factual you where some of the people havnt sought the whole picture from your perspective of swtiching one to another, and your fundamental steps to learn how to adapt to the UE Engine "eco" system so to speak, my thoughts on unreal engine is its bloated, very bloated, lose the bloat , bam its amazing, also unreal drops a lot of unwanted preset upon you like the normal project scene, a new starter is lost like a pin in the ocean, when looking at it, a blank canvas and tutorial steps on adding the visual components up would be nice, unity straight out of the box is approachable, and for the most part understandable and logical, myself im still getting my head around DOTS/ECS.

    • @Mr.overload
      @Mr.overload  Месяц назад

      I appreciate you taking the time to watch and engage with the video.

  • @SnakeEngine
    @SnakeEngine Месяц назад

    Ever heard about shaders? That's how you can make it as pretty as you want in Unity.

    • @MrSofazocker
      @MrSofazocker Месяц назад

      I think he only knows the shader editor if at all...

  • @MrSofazocker
    @MrSofazocker Месяц назад

    1:55 ? Unity and Unreal literally support both.
    If you have an actor and attach components (how unity basically bullies you into)
    Or a class and add methods... is literally your choosing.

    • @Mr.overload
      @Mr.overload  Месяц назад

      The point is the freedom of choice.

  • @libberator5891
    @libberator5891 Месяц назад

    For someone saying they've worked in Unity for over 5 years, and also suggesting the C# isn't a compiled language (3:40) is WILD! Kinda lost most of your credibility with that one statement. When you save your script and tab back to Unity, what do you think the engine is doing with the loading bar - it's compiling

    • @Mr.overload
      @Mr.overload  Месяц назад

      Yea, made a mistake in the script, I realized it after uploading😅

  • @LinguisticMirage
    @LinguisticMirage 2 дня назад

    i have used unreal for more than 6 years now and blueprints is good to make a quick prototype with but the ship a actual game with it is just simply said hell.
    upgrading engine versions is also hell when blueprint is used.
    imo both engines have their own issues

    • @Mr.overload
      @Mr.overload  День назад

      Thats a perfect summary. Esprcially the last sentence

    • @LinguisticMirage
      @LinguisticMirage День назад +1

      @@Mr.overload thanks man! Just talking out of experience. Unreal engine is powerful but at the cost of devs sanity 😂

    • @Mr.overload
      @Mr.overload  День назад

      @@LinguisticMirage Yes, I agree ahahaha

  • @edward3190
    @edward3190 9 дней назад

    Unity coding is better. Unity supports hot reload, allowing you to change code while the game is running.(some store assets reduces reload time to less than 0.3seconds for a script)
    Unreal is practically impossible to do so. Coding become increasingly difficult for larger project. Each recompile takes minutes.

  • @leshommesdupilly
    @leshommesdupilly 3 дня назад

    The like/dislike ratio is hilarious lmao

  • @DorBitton
    @DorBitton 6 дней назад

    literally use c++ if you dont want to use blueprint

  • @AkaNull
    @AkaNull Месяц назад +2

    You're just expressing your opinions about the superiority of Visual Scripting over C# (which is not true at most cases), but you should know that this is just your opinion, and please don't milk the Unity incident like others!

    • @Mr.overload
      @Mr.overload  Месяц назад

      No, I like c# more. I am a programmer at heart, but its very versitale and my story on how I switched

    • @AkaNull
      @AkaNull Месяц назад +2

      @@Mr.overload Thats good man, Im just tired of seeing videos with cross on unity thumbnail

    • @Mr.overload
      @Mr.overload  Месяц назад

      @@AkaNull Yea I totally get that.

  • @rshad4ever
    @rshad4ever 22 дня назад

    Unreal have c++

  • @shariel9731
    @shariel9731 Месяц назад +4

    I hate visual scripting so c# is better.

    • @Mr.overload
      @Mr.overload  Месяц назад

      If that fits your style, then go for it!

    • @tlpue5
      @tlpue5 12 дней назад

      actually its not matter what you used for making your game.important thing is your game itself.

    • @shariel9731
      @shariel9731 11 дней назад +1

      @@tlpue5 To a certain degree yes, but I've found visual scripting is harder to keep track of which can make it harder to actually create said game.

  • @UnifiedCode
    @UnifiedCode Месяц назад +1

    c# just better

    • @Mr.overload
      @Mr.overload  Месяц назад

      Depends, I prefer c#, but unreal has some really great benefits I don't want to miss out on.

    • @UnifiedCode
      @UnifiedCode Месяц назад

      @@Mr.overload c# .net 8 is actually faster then c++. But in general programming is better then visual scripting

  • @DeadSkyOficial
    @DeadSkyOficial 12 дней назад

    Blue print = noobs.
    C# = profissionals.

    • @DeadSkyOficial
      @DeadSkyOficial 12 дней назад +1

      but i like you video +sub

    • @Mr.overload
      @Mr.overload  12 дней назад +1

      @@DeadSkyOficial Ty, I think its not really a thing of noob or pro. C++ is very useful with blueprints, but you gotta use both!

  • @dmrdev9934
    @dmrdev9934 9 дней назад

    you couldn't get better graphics with c# no wonder why lol ever heard about shaders?

    • @Mr.overload
      @Mr.overload  8 дней назад

      A shader won't have nanite

    • @dmrdev9934
      @dmrdev9934 8 дней назад

      @@Mr.overload yea you are propably not going to make hyperrealistic game by yourself anyways

    • @dmrdev9934
      @dmrdev9934 8 дней назад

      @@Mr.overload and also unreal doesn't have dots keep that in mind which is much more needed than nanite when you are solo developing a complex game

    • @dmrdev9934
      @dmrdev9934 8 дней назад

      even if you are going to make hyperralistic game by yourself which is impossible enough, just wait until you see it you cannot use billions of polygons just bcs of nanite allows you to do that

    • @Mr.overload
      @Mr.overload  8 дней назад

      @@dmrdev9934 What about the lighting and reflections then?

  • @Cooo_oooper
    @Cooo_oooper 23 дня назад +1

    Your opinion seems rather uninformed and from a perspective of a beginner, e.g. Dunning Kruger - Peak of Mount Stupid.
    For example Unity and UE can achieve very very similar visual fidelity, you just don't know how.
    Same with C# / BP / C++ which is just full of errors and seems very uninformed and not knowledgeable about any of the languages.

    • @Mr.overload
      @Mr.overload  23 дня назад +1

      Thank you for the feedback.
      It is more that achieving higher visual fidelity is easier and faster in UE than in Unity. Yes, I'm new to UE, having used Unity for years and then switching, but that doesn't justify calling me stupid.
      I'm sharing my perspective on switching, and I'm well-informed about the topics that regard Unity. If you believe it or not, mistakes can happen...even in RUclips Scripts.

  • @leshommesdupilly
    @leshommesdupilly 3 дня назад

    I like how the only valid reason not to use UE5 is **Fear of c++**

    • @Mr.overload
      @Mr.overload  3 дня назад

      If you watched the entire video, you may have noticed that I suggested trying the switch even if you just want to give it a try.

    • @leshommesdupilly
      @leshommesdupilly 3 дня назад

      @@Mr.overload No, I was talking in general, what people say/think

  • @X3D553
    @X3D553 Месяц назад +7

    Visual scripting? More like visual KID scripting. Real developers use REAL languages, not drag-and-drop baby games. C# is where it's at, it's industry standard, versatile, and you don't need to waste time connecting nodes like a toddler playing with blocks. Unreal is just a pretty face with no brains. And C++? Don't even get me started, that's just masochism. Stick with Unity, it's the superior engine for serious game development

    • @Mr.overload
      @Mr.overload  Месяц назад +4

      Please get a better view of code, it's not all just toddler things, because you don't like them. I've been using unity for over 5 years, C# is great but I am getting way to limited by Unity.

    • @BlackShadeOSS
      @BlackShadeOSS Месяц назад +5

      If you can't use C++ that 's a skill issue

    • @Mr.overload
      @Mr.overload  Месяц назад +1

      @@BlackShadeOSS If this is meant for me, then I can just say that I am used to other languages and wanted to try smth different :)

    • @BlackShadeOSS
      @BlackShadeOSS Месяц назад

      @@Mr.overload not for you but for @X3D553 if you want to make games for real you use UE with C++ or you write your own engine in C++. C++ is the most important language in game dev

    • @BlackShadeOSS
      @BlackShadeOSS Месяц назад

      @@Mr.overload it is not for you it was for @X3D553. If you want to make games for real you need to learn C++ as you have mostly 2 choices: using UE with C++ or making own game engine in C++