Unreal Engine - Why so much hate?
Posted 11 February 2012 - 05:58 PM
This is my first post here on this site, and I created an account largely because I was curious about something I'm seeing a lot of lately, which is hatred for the Unreal Engine.
In about 99% of the posts I see where Unreal tech comes up, it basically boils down to "Unreal tech sucks" - but there's no elaborating on *why*. I was discussing game design with a guild-mate while playing an online game recently and the topic of engines came up. They stated, without hesitation, "Unreal tech sucks a--". When I asked them why, they came back with:
"It just does. Trust me. My friend is a professional game designer with years of experience, and he said it's a complete joke throughout the industry. People who use the Unreal engine in their portfolio when applying for a job are automatically disqualified, because their skills would be useless for a game using real 3D engine tech".
Again, he didn't elaborate on *why* it's bad. Just that it's bad, "and everyone knows it".
I asked him about how it could be as popular as it is if it's so bad. He replied, "because it's easier to use and most game developers don't know squat about real game development. They wouldn't know how to use a real 3D engine".
When I asked him what he would say is a "real 3D engine tech", he said - equally without hesitation - "Unity 3D. Best in the industry, hands down. If you are getting into game development and you don't know Unity3D, no one will take you seriously".
Now, I've given U3D a shot and, to be honest, it didn't really "click" with me. The craze around it sorta reminds me of that around the Torque engine when GG first hit the scene. I'm also not a fan of U3D's pricing/licensing setup. Anyway....
Due to how he went on to brag about how U3D is the best thing ever, it quickly became apparent to me that this guy was clearly a huge Unity3D fanboy and, so, his remarks about "his friend's" opinion about Unreal tech became rather clear. He wasn't speaking at all from an objective point-of-view.
The only thing that keeps me from dismissing those statements, though, is that it seems to be a common theme. Most any time I see Unreal tech brought up in a discussion about game design, there's several posts by people saying "Yeah, Unreal tech is horrible", without saying *why*.
Given that Unreal tech is licensed for a huge amount of games and is, it seems, the most licensed engine out there, it seems to me that people are bashing on it simply because it's the biggest elephant in the room. Much like how so many love to bash WoW as being a crappy game, only because it's the biggest target and, so, easiest to hit.
So... I figured I'd put a post up to see if I couldnt' get more specific explanations as to why people feel this way - if there even is a real reason. Are there issues that are consistently apparent with Unreal tech, or are people just taking uneducated cheap shots at it to sound like "they're in the know"...?
Posted 11 February 2012 - 07:13 PM
Posted 11 February 2012 - 07:35 PM
That's my first "gut instinct" response to it - it's the whole Mac vs. PC debate in a different skin.
Though, because gut instincts could be wrong, I thought I'd ask and see if anyone had any specific ideas as to why there are people who seem to hate the engine so much and dismiss it out-of-hand, or if it really is as petty as the Mac vs. PC debate is, etc.
Thanks for the feedback
Posted 11 February 2012 - 09:16 PM
"because their skills would be useless for a game using real 3D engine tech"
"If you are getting into game development and you don't know Unity3D, no one will take you seriously"
If you are any good at all at what you do, what engine you use is totally irrelevant. A graphics artist spends the time with 3D tools and Photoshop. A programmer write code. The concepts are the same in all engines.
There are some programmers hanging around here who have worked on some of the really big titles. They write their own engines. I have a hard time thinking they will not be taken seriously because they don't use Unity.
Posted 11 February 2012 - 09:54 PM
I don't blame people for choosing sides though. If someone hates U3 then that's their opinion. Some companies are only interested in Unity programmers, some only interested in U3 programmers. The world isn't so black and white. A good programmer will settle in with any technology.
Posted 12 February 2012 - 11:55 AM
I think the rendering engine in those days was about as good as finding out you have chlamydia on your wedding night.
In recent years that has changed, the engine now looks a lot better.
Haven't used it for a long time, so I don't know what it is like to use though.
Posted 14 February 2012 - 04:03 PM
It can also be used for fast prototyping. I also very like the concepts behind its "Kismet" and "Matinee". I havent played with its scripting language yet.
Of course i cann't say anything about its source code, but it is a proven AAA engine and many other "wanna-be" engines have yet to prove this.
Imho, people wanting to make games talk too much about engines and less about making game itself, which means creating concepts and lots of contents.
Just pick an engine and do it, even if you think that the engine wasn't the perfect choice, its the experiences you do while creating the game which counts and companies want to see your experience and not what specific engine you used.
Just a little bit comparable: usually if i interview people for jobs i always ask them about programming concepts like data structures , algorithms, etc. and not about a specific programming language.
Knowing a specific engine or programming language might be a plus for job but not the main factor.
Posted 15 February 2012 - 03:06 PM
Look at it this way: there are currently good games built on either platform. Actually, more on Unreal than on Unity, but that's splitting hairs.
UDK's disadvantages are that it is not designed for big, outdoor worlds. But, it has a huge community and lots of documentation.
BTW, there's also CryEngine.
Posted 18 March 2012 - 07:46 PM
I felt compelled to comment on this thread because I can honestly say there is a good dose of hatred towards Unreal to be found within professional game development and even communities of student developers. To some extent I understand why, but I also think it becomes overblown because of the kind of personalities that are commonly found in game development. I think in most respects developers (creative or technical) don't like being told they can't have something the way they want it. We want absolute control over our development environment. If you need proof of this, just take a look at the sheer number of Linux distributions that are available. I'm sure there's a purpose for each distribution, but for some reason I get a chuckle when I think about it because I imagine each of the branches represents a small disagreement one developer had with another.
Developing a video game is really a complex cobweb of multiple sub-sets of problems. Unreal, Unity and other engines are a constantly evolving single solution to this problem. It would be impossible to satisfy ever single developer and have them agree that Unity and Unreal have arrived at solutions to these problems that are "right".
Without getting too wishy-washy on this reply (this could turn into a flame-bait post), the reason for most of the hatred towards Unreal is that it takes a complex problem and highly abstracts it. As a programmer you can't get down to the metal most of the time. Not all programmers, but quite a few, love the metal. The further you move them away from it, or hinder their ability to compose their code on it, the more uncomfortable and frustrated they become. Unreal also puts a lot of control into the hands of content developers through the pipeline with little ability to modify it. Content developers usually don't know anything about the metal and don't care if they abuse it. This frustrates the hell out of most programmers because they usually don't have any recourse to constrain it.
There's kind of a catch-22 with this though. On one hand as developing games becomes more complex and systems become more powerful it makes sense to move to greater levels of abstraction. On the other hand, developers still really require a solid understanding of what things are doing under the hood. It's quite helpful in Unreal to have an understanding of how memory allocation and garbage collection works so you can avoid abusing it through the abstractions the engine provides. I think this is the focal point of contention for Unreal, it hasn't quite hit the sweet spot in terms of level of abstraction and ease of access to the metal. In that respect, Unity has done a better job. The engine has a much better base design for the architecture that allows for lower access to tune performance and customization of the pipeline to constrain content development. Having said that though, Unreal has a lot of years on it. It's been through the paces and Epic has had to address a lot more usage cases for it. It also beats Unity hands down in terms of tool set and features to which Unity is currently trying to play catch-up with.
I don't want to make a longer post about the pros and cons here of Unity vs. Unreal or whatever. Just stating Unreal is what it is. It's an engine for making video games, and it does it really well. If your willing to put in the time on it and look past some of the things that will probably rub you the wrong way, you can develop just about any kind of game with it. Like a large outdoor world for example.
1 user(s) are reading this topic
0 members, 1 guests, 0 anonymous users