Tuesday, January 24, 2012

Unity3 vs UDK

http://download.unity3d.com/webplayer/images/unity-icon-big.jpg
VS
http://samueljustice.net/wp-content/uploads/2011/04/udk_logo.png


For my entire experience in game design I've always centered around game engines. Even when I was just a wee-ol'-'Tot I was developing games in the RPGM engines. That's actually what sling-shot me into the position I'm in today.

I've had a few years experience with UDK during my college experience, even back when UDK was UT3. On the other side of this, currently where I work, we use the Unity engine. Having a good amount of experience with both engines, frequently I'm asked "Which Engine do you prefer?"

This is where this blog post will be focused, and why I decided to do another versus post.

Lets put this out first though so everyone can understand this clearly. UDK obviously has a lot more research, development, and money dumped into the engine than Unity does, so naturally, UDK is a superior engine by default. Unreal engine has been on the market for a very long time, however, Unity is fairly new in comparison. Now that we have that out of the way, let's proceed with the topic.

UDK and Unity are both very different engines, they can both achieve the same goal but go about development in very different ways for very different development teams, structures and pipelines. I could go on forever about the advantages and disadvantages of both engines, but if I did, this post would be incredibly long. So instead, I will simply state that both engines have their ups and downs. Both engines are equally powerful, but for different things.



Personally, I've found Unity to be a cleaner engine. The interface is very customizable and user friendly. UDK however seems heavier, clunkier, and a series of windows and dropdowns every way you turn. This can sometimes be unnecessarily frustrating. In UDK's defense, UDK has a LOT more options.

When asking yourself "Which engine should my team use?" you need to first ask yourself what your team mainly consists of, UDK is an engine for artists and designers. This means you can get away with not having a team of coders and still make a pretty decent game. Unity on the other hand is very flexible with code, but the key word there is code. Unity is a very code driven engine, so without a solid balance of coders on your team, you won't go very far in Unity. If your team is code heavy, you will probably find Unity to be better for your workflow.

Your next question you should ask yourself is "what kind of game is my team making?"
Unity is built for ANY kind of game type from 2D side-scrolling platformer to 3D full scale MMORPG. UDK however can make all these game types work, but mostly focuses on FPS/TPS game types. With the newer version updates to UDK, I can see they are moving away from that limitation and adding more functionality to build other types of games, this is a big bonus to the engine, but it's just not quite there yet.

So if your focus is intensely powerful graphics, and you have talented artists, you're probably better off developing in UDK. If your team consists mostly of coders, Unity is your best bet.

Reason for Absence

Hey blog followers, I just wanted to give a heads up on why I haven't been posting much recently.

I'll make this pretty short and simple, right now I'm working in the game industry. The hours are like what everyone says it is, long. On top of that, I'm also still attending college, however, I'm graduating with my Bachelors in Game Art & Design in a few weeks, hurray! So that's where my time has been, I'll have more blog entries up real soon here. My free time is steadily coming back now.

Thank you for your patience. =)