4 ms·
Interesting that Unity moved into the #1 spot. Does anybody have any hypotheses on the basis for that? Lower learning curve? Better developer support?
by ThrowawayR2 5y ago
Interesting that Unity moved into the #1 spot. Does anybody have any hypotheses on the basis for that? Lower learning curve? Better developer support?
- trevortheblack 5y agoYes to both. There was a time when Unity had momentum because it was free* and the documentation was (comparatively) better than Unreal for the average user. The learning curve for unity is arguably better for 3D and inarguably better for 2D than Unreal. *The seat cost for unity has been low (albeit changing over time), but you could release and ship a video game without paying for anything
- serverholic 5y agoOne potential reason is that the 2d support in Unreal is not very good.
- sen 5y agoI played with a dozen different game engines before settling on Unity, mainly because the quantity and quality of the tutorials/guides and community around it. I have to search less to find my answers compared to other engines.
- jay_kyburz 5y agoI've worked on both. I worked at Irrational with Unreal on about 3-4 games until we shipped Bioshock 2 and recently released Void Bastards on Unity. Unreal is heavily oriented towards 1st or 3rd person walking around a level. Unity begins with a blank slate for really any kind of game. The visual scripting in Unreal is a turn off, and nobody want to work in c++. Working in C# for Unity is a real pleasure.
- FpUser 5y ago>"and nobody want to work in c++ ..." I have no idea about game industry as I am not there but I use C++ for business backend servers and have no problems or desire to replace it for this particular task. Modern C++ is a pleasure to work with unless one's ego can not tolerate / accept the fact that you do not need to be Alexandrescu to be productive.
- pjmlp 5y agoThe problem with modern C++ is that everyone has to be into it. Plenty of shops are more than happy to keep coding like the world has frozen since C++98. Even if you look at Microsoft and Google sample code, or Android codebase, it is a bit debatable how much modern it actually is, and yet they are on ISO.
- FpUser 5y ago>"The problem with modern C++..." Every language has its own share of problems >"Plenty of shops are more than happy to keep coding like the world has frozen since C++98" And if they're comfy then good for them.
- pjmlp 5y agoAnd quite good for anyone doing security audits, due to the coding practices adopted by them. Plenty of stuff to report on.
- nineteen999 5y agoNot discounting your experience, but Bioshock 2 was based on UE2.5... from the early to mid 2000's ... and that was a long time ago, not sure how you can realistically expect that to compete with recent Unity. Unrealscript is gone and ... replaced with a new visual scripting engine (which I agree has some problems, being impossible to diff being one of them). UE4/5 also ship with a bunch of templates, including completely blank, flying, wheeled vehicled, advanced wheel vehicles etc.
- jay_kyburz 5y agoYeah sure, I've been trying to stay up to date by building small prototypes in new releases. It really is amazing how fast you can get a multiplayer shooter up and going! But come on, blueprints really do suck. Even with all the cool debugging and watching the flow and all that stuff. The tech is amazing, but I just don't want to code like that.
- redxdev 5y agoBecause they aren't meant for you (assuming you're an engineer). They're meant for level scripting, simple prototyping, stringing together systems written in lower level (C++) code, and beginners. They absolutely don't suck when used in the intended way. I'm not a fan of writing code in visual languages either (worse information density, slower to write the code, harder to debug) but if all you're doing is wiring up some triggers in a level? Hell yeah, it's great. Need to fire a bunch of events over time, maybe do some super simple code-drive animation? Timelines and latent actions are way easier than the textual equivalents. And extending it is dead simple which makes it easy to write something in C++ to be used from Blueprint. It's also worth noting that Unreal's C++ has many of the niceties of C#. I won't say it's as easy to use (it isn't) or that Unreal gets rid of some of the eccentricities of the language or build system (it doesn't, and Unreal's build system - while nice - is incredibly under documented), but Unreal does provide garbage collection (and even reflection) which takes a big part of the burden of C++ away.
- jay_kyburz 5y ago
- jayd16 5y agoUnity is cheaper if you plan to actually make money. Unity charges by seats, Unreal takes royalties.
- jaaron 5y agoUnity is a more generic game engine, Unreal is more specialized. C# is an easier language for most. C++ (particularly UE's flavor) is more difficult. Unity is much easier for a single person or small team. Unreal is designed in mind for teams with dedicated designers, artists, audio, engineering, animators, etc. For a long time, Unity fought to be anything more than just 3D Flash. It wasn't taken seriously. And for good reason. About a decade ago I worked on what was at the time considered to be one of the largest Unity codebases in existence. It was rough. Unity's come a long way since then.