How to Learn UDK (the Unreal Development Kit)

UDK is a free version of the commercially available Unreal Engine which allows professional and indie developers alike to work with industry tools to create stunning 3D games. In this article, we'll show you what UDK is capable of and share books, tutorials, and suggestions for getting started making levels and games with it.

What is UDK?

UDK (the Unreal Development Kit) is a free version of the Unreal engine that can be used by developers, educators, and students to create a wide variety of games and interactive software. UDK was originally released in November of 2009 and has had new releases every few months since.

The Unreal engine is a 3D game engine designed primarily for use with first person shooters but with the flexibility and complexity to be modified into almost any genre of game you could want. While the vast majority of the products you will see published or released with UDK are first- and third-person shooters, there are a number of other games which use the engine in more unique ways, such as Whizzle:

UDK can also be used to practice other disciplines besides game development. UDK actually originated as the mod tool which is released with every game that Epic Games ships and was designed to work as a level editor for those games. If want to dive head first into the code and start adding new content or game mechanics you can, but UDK is also a great playground to try your hand at level design as well.

Plus, UDK has a number of other tools integrated into it. If you want to become a 3D artist for games or movies, and you want to work in a real-time environment, UDK is a great choice because it has an entire art pipeline and allows you to easily import models, textures, and animations to see how your assets work together. UDK also includes the Cascade editor, an easy to use Particle effects tool, and integration for a Scaleform UI, a vector-based UI system that is used in many game engines but is not easily accessible to non-professionals in many other tools.

Finally, let's look at licensing with UDK. UDK is free to use for development and as long as the product you make is not making you a profit you don't have to pay anything. Once you start making a profit you can make up to $50,000 across every product you publish with UDK before you owe Epic any royalties. (After that you have to start giving Epic a 25% cut of your profits.) There are other details to consider, so if you want more info on licensing, head to this page.

No Pros Without Some Cons...

While UDK is an incredibly powerful tool there are a few weak points you should consider before deciding to use it.

First, while it is possible to make almost any 3D game you can imagine in UDK, making things that are not first person shooters can be quite challenging. There are a lot of ways you can modify the system, but without extensive knowledge and understanding of programming concepts you won't get as far, so if that's what you want to do you must be prepared to look into programming tutorials as well.

On top of that, UDK is still technically in beta despite the various releases it has had since 2009. This means that many of the tools are imperfect and there are a number of known issues. Also, Epic does not patch UDK directly; instead they just release an install with the added or modified features. This means that if you start developing a project and Epic releases a new build with a feature that would greatly help your development, you may not easily be able to move your project between the two versions and will have to either continue with the outdated version of UDK or restart your development with the new version.

With all of this in mind, though, UDK is still an incredible tool and the capabilities it gives you are beyond many of its competitors.

Getting Started With UDK

Since UDK has been around for a while there are many great resources you can use to learn it, but as I said above it is still in beta and they are releasing new and modified versions regularly. This means that it is easy for a tutorial to become at least a little outdated since they have a tendency to add and remove features regularly between releases. This means that most of the books you find will be at least a bit outdated within a year of purchase. This doesn't mean there are no good guides or books to be found, but you do have to do some searching.

To help you get started here are a few great websites and books that I like to use:

There are really not many better places to start than with the tutorials Epic offers on their own website. While not all of these articles are perfect, and some of them could definitely be a bit deeper, the selection of topics covered here is very good, and since all the articles are written by professionals who work for Epic they are often up-to-date. While you're here you should make sure to check out UDK Gems which offers good downloads to use with UDK such as tools for integrating Steam or Apple's Game Center, and even an example character rig in case you want to try making a custom character.

This website is essentially a repository for level design related tutorials and has a section specific to UDK instruction. This is a great resource if you want to use UDK to learn level editing and design fundamentals. The website also has sections for many other popular level design tools and has tutorials that teach level design as a discipline and don't force you to look at it in the context of any specific tool. This site is an excellent choice for UDK tutorials and instruction on level design in general.

This is a great book for getting into the code aspect of UDK as it deals specifically with UnrealScript, the proprietary scripting language used by UDK. If you are looking to make a full game or dive right into making entirely new weapons and game modes, this is a good place to start as it spends all of its time on these types of topics. The book is from late 2011 so it is almost a year old at the time of this writing, but despite that it is still a great resource since while the features of UDK may change, the scripting behind making those features work will always stay relatively the same.

This is another great book for UDK which covers some slightly more advanced topics such as working with Particle FX, working with the Scaleform UI tools, lighting, scripting, and Kismet, a secondary scripting system within UDK itself. While this book is not one you would necessarily want to pick up if you have never used UDK before, it is a good place to start once you understand the basics and want to start going into more detail on its different tools and capabilities.

Hourences is a professional designer who has been working in the industry for a number of years and has been working with the various incarnations of Unreal and UDK for a decade or more. He has a vast array of experience and his site has a number of great tutorials and tools available on it for you to look over. He has also written two books and done a number of tutorials for Eat3D, a company which creates tutorial dvds for 3D Modeling and game-art related topics.

UDK Communities

There are a number of great online communities out there for expanding your knowledge on UDK and getting in touch with people who have more experience than you do. Two of the most active ones are the Official UDK forums on Epic's website and Polycount's UDK sub-forum. Both of these sites are great resources and are often visited and posted in by professionals from Epic and many other game studios so you can be sure you are getting great advice.

Get to It!

These tutorials and resources should act as a great way to get started with UDK. There are a lot of different things you can do or learn from UDK, ranging from level design, to programming, to art asset creation.

In the end, you get out of UDK whatever you are willing to put in so don't get scared off because of a few small mistakes at the beginning - keep with it and keep working and by the time you finish you'll have something truly incredible.

I hope that you found what you were looking for here but if not, or if you think you have another good resource for the other readers to use, let us know in the comments.