“Double kill! Multi kill! Mega Kill! ULTRA KILL!!! M-M-M-MONSTER KILL! With LUDACRIS KILL! And H O L Y S H I T! Coming after Monster Kill (or Killing Spree)” – These phrases from Unreal Tournament, from the “UT announcer-The god of the Arena!”, which was used as awards for getting 6 or more kills in a short amount of time without dying/spawning. Unreal Tournament (UT) was one of the most advanced multi-shooter FPS game released after the Quake, which was essentially designed for death-matches. UT is extremely known for its bot AI. In the year 1996, Quake was the first game to announce the online death-match game mode but then UT took the whole gaming experience to the next level with its AI and graphics. Powered by the world’s best game engine, Unreal tournament emerged as a successful arena game that scored an average review of 94%. Tim Sweeny, the architect of the Unreal Engine, started developing games in his parent’s basement with ZZT which drove the early growth of the company known as the EPIC Games. UDK is the most successful game engine that has survived this massively emerging 3D technology. Today Unreal Engine is a tough competitor to the top industry game engines. It features an unmatched flexible and modular architecture that most of the Game Engines lack as a whole. The game engine not only provides fantastic real life and a natural scenic effect, Unreal Engine also extends its support to the select SoC’s (System-on-Chip) such as the iPhone, iPad and iPod.
Unreal Development Kit 3-Beginner’s Guide
|Author||Richard J. Moore|
|Publisher||Packt Publishing Ltd.|
|About the Book||“A fun, quick, step-by-step guide to level design and creating your own game world”|
“Unreal Development Kit 3 Beginners Guide” is the first edition that primarily focuses on the UDK 3.0. The book was published by Packt Publishers on August 2011. The guide introduces to the UDK 3.0 environment with topics chosen with a great taste. The topics include Level Design, UDK environment navigation and menu system, Lighting effects, UDK basic game elements, animating the game elements, Terrain, Game play elements, Events and flow graphs and Materials.
The book’s web-page is maintained by the Packt Publishers. The page contains sample chapters, table of contents, and errata info. The book can be purchased in PDF and hard-back forms. For more information on the purchase, please visit the Packt Publishers Page.
Author Richard J. Moore, graduated from the Hull school of art and design, as a video game designer. He has worked on projects extending his creativity by designing web templates, logos, brochures, business cards, web banners, animated graphics, and e-mail marketing campaigns. In 3D art, his passion includes creating and designing environments, texturing and high resolution rendering, and conceptual drawings. The Author showcased his work and secured a position in top three during the Platform Expo’s 2011 – Hulls video game expo. At leisure, he reviews games for an online magazine. Author has a strong belief that 2011 is the start of the new era for game designers. Lastly, he possess extensive experience in designing 3D environments with UDK.
The Book and the UDK
The book starts with a clear UDK introduction and the installation. Book’s preface is adequate for setting up the PC/system with good detailed system requirements to run UDK as expected. The preface also mentions the conventions that are used in the book chapters. Author has not mentioned any specific version of the UDK being used. For UDK beginners, please remember that 3.0 in UDK is the major iteration of the Unreal Engine and the UDK. UDK thereafter has been entered into the Beta release channel. Each specific beta version is stamped with the month name. Mostly, the releases will have same basic functionality. For this book review, August’s release was used, which incorporates few significant changes. If you are a core designer or you are planning to develop commercial games, then you must use the 64-bit version of the editor as 64-bit will enable developing of game levels with huge number of textures. This is possible as 64-bit is capable of addressing memory more than 4 GB. UDK also supports in-editor DirectX 11 for newer GPUs.
Unreal Engine has powered more than 50 games, until now and more releases are planned for future. This is the same Toolset that has powered some of the all-time-hit games Gears of War, Infinity Blade, Medal Of Honor, Batman : Arkham City, Bioshock and Mass Effect. Even the upcoming Frostbite Engine is based on the Unreal Engine 3 which has powered the Medal Of Honor 2010 and Battlefield 3 (Released this month).
Before you start…
Author expects no previous experience on level designing. The book is purely designed for aspiring game developers so that they could create their own game levels, maps, worlds, and environments. Furthermore, if you are completely new to the 3D technology author welcomes you to learn this awesome tool.
The book starts with introducing the UDK 3.0 and helps in setting up the development environment as expected. As mentioned in the previous section, there is no specific beta version specified. It’s definitely a good idea to download the latest beta version so that you are in sync with the UDK technology and stable updates. The first chapter is a must-read chapter for novice readers as it contains vital information to use UDK appropriately. Author follows a very tender approach in explaining the UDK folder structure and then by switching to the UDK UI environment. This chapter introduces to the Content Browser or the asset browser which is the heart of the UDK. There is a small but enough info on BSP brushes, which are largely used in the games for performance and other in-built geometry/brush builder. It also introduces to the UDK viewports that are used for visualizing the scene from four common angles. If you are familiar with 3DS Max/Maya/XSI environment, then UDK environment is nothing new except UDK specific window options.
The second chapter takes the reader to the UDK viewports for action. A very good explanation for creating CSG (Constructive Solid Geometry) which allows you to create complex geometry often can be seen in CAD applications. Author has given exact steps with screenshots to assist the reader for performing drawing operations. This chapter is little interesting as author lets you use the builder brush to create rooms, placing lights, player spawn point, a hallway to connect second room and finally applying textures and materials, adding bots to the level using the in-game command line. This requires some manual work, which may be time – consuming and the brush tool may not be handy for the first time. While following the chapters, novice readers may find certain screen shots misleading as there are changes in the newer versions. If the reader encounters any kind of uncertainty in following the tutorials, it is recommended to refer an online resource or a video tutorial or use Unreal forum to answer your queries. Rest of the chapter will be a fun that is definitely assured.
UDK uses different lighting mechanisms to render as light maps for CSG surfaces and static meshes to reflect light of objects. This chapter is quite interesting as the reader will learn UDK light component properties that are tactically used in commercial games to produce realistic effects. UDK allows you to create and add as many lights you want to. Note that, too many lights may hamper the overall level performance. Since dynamically lighting the environment causes a performance drop as the engine constantly calculates the lighting functions. To overcome this issue UDK features something known as the Unreal Lightmass (Swarm Agent), which is the high-quality static global illumination solver in Unreal Engine 3 and is one of the utilities in UDK with extreme computational needs. Even on an 8-core system, rebuilding lighting for a large or complex level can take enough time that iteration performance can suffer. Keeping user aware of this tool is necessary because this application will keep on popping up when a build action happens. Unfortunately, Author has failed to provide this information. In layman’s term, the swarm agent simply bakes the lighting effects into the map as material rather than calculating it dynamically. These materials are then stored in the level map package.
Chapter 4 shows the reader to how to use the inbuilt particle editor and other effects such as Fog, water, height, etc. The chapter begins with an in-depth and clear introduction of the particle tool. In this chapter, the first particle effect presents the smoke effect tutorial. New users may find it difficult to follow the flow graph which is used to create the initial material for the particle. For instance, a node labeled as ‘2’ is a constant node and a value of 2 is assigned to it. Importing and assigning textures is another confusing operation. It is recommended to use the content browser for importing textures and then by selecting the texture which was just imported, & then add a texture node by right clicking in the flow-graph area. As there is no resource files available for smoke in new UDK 3.0 updates, reader may have to download textures from the internet or download it from the GPUToaster Resource area. Later in this chapter, there is a brief info to add fogs and creating surfaces. One more interesting part of this chapter is to add a water volume and then make it swimmable.
Chapter 5 provides guidance in adding animation to the objects which are imported into the map. The tutorials include basic and UT style elevator/door animation, continuous looping and rotating animation and attaching an object to other objects. The whole animation is governed by the flow-graphs. These flow-graphs can be created and accessed by opening the Unreal Kismet. Kismet is a gameplay scripting tool for the Unreal Engine 3. It enables level designers to create scripts in Unreal Script for gameplay events using a visual interface. This chapter is a satisfying chapter as it introduces how the flow graphs work with the map elements. The explanation is gradual, clear and author has not jumped between the topics.
The next chapter takes the reader out to the open world – Terrain. The chapter will show how to create a terrain and add material and lighting to it. It also gives a very brief intro to the terrain brush tool. The chapter topics are well defined but unfortunately, the information presented here is not adequate enough.
The following chapters bring in the most enthralling stuff. This chapter will let you add Unreal Tournament game elements that are already present in the UDK package, to the level so far you have designed. These include map naming convention (UDK recognizes these conventions and sets prerequisites for the map), Player and bot spawn point, pickups such as health vial, weapons and weapon factory, jump pads, teleporters, adding flag base, vehicle factory, assigning paths to bot for AI and bot discovery. At the end, the level will be completely playable in UT style. Cut scenes (using movable cameras and define paths) and text notifications are also vital part of the game level designing. With UT event designer – Kismet, the job becomes easy. It uses the flow graphs to extend the node functionality. The chapter gives a good outline over the flow graph controls for basic construction of the scenes. UDK Kismet supports thousands of visual scripting nodes, which have not been covered such as adding Physics, Custom Shaders, etc. This is understandable as UT kismet alone requires a complete cookbook.
The final chapter deals with the Materials for the game environment. This chapter covers all the aspects of creating a material from a texture, adding metal effect, normal maps, specular highlights to the material. This is done using the UDK material editor. Once the material is created, the effects can be attached using flow graphs. Do not get confused between material flow graphs and Kismet, as UDK scripting is a very powerful tool that enables a developer to customize every element in the environment.
The Appendix of the book contains the quiz answers.
- The topics covered in this book are well chosen for a complete in-depth focus on the Unreal Engine and the development environment.
- The book contains adequate screenshots for explaining the topics.
- The most statements in the book follow point approach rather than a theory/paragraph approach. This allows a smooth transition of tutorial steps without mixing one another.
- Flow of the book is designed keeping the beginners approach in mind.
- Explanation of every example is given in a different section which is docked at the end of each topic. This helps explain the whole process that the reader has just performed in the UDK.
- Chapter 4, 5, and 6 are poorly designed and encompasses inadequate information that was least expected. It is recommended to follow UDK training sites such as 3dmotive.com, which will help assist learning and development.
- At the end of each topic there is a “Quiz”. I found the quiz questions very predictive, easy and short. Some chapters contain only a single question. Expecting an exclusive content in future edition.
- In the “Applying lighting Effect” chapter, there are certain parameters that are not explained properly. Novice readers may find this difficult to figure out. For example, light functions(Explanation: Which are mathematical representations of how lights illuminate the scene). To find more about component parameters, there is a very extensive description on the UDK tutorial site.
- While explaining flow graphs, every single important node should have been explained with a real-life example. Reader may get confused while adding a ‘Lerp’ to the flow graph, which actually means Linear Interpolation.
- The topic “Foliage layers” is confusing and placement of this topic seems to be context-less.
- Terrain chapter should have been in more details. This chapter lacks important contents such as adding vegetation and mountain, Rain effect, ambient lighting, night effect or time of the day.
- Chapter 8 explains deprecated feature - UIScenes (The old UI) that has been removed long back and has been replaced by Scaleform advanced UI system.
- The second most essential chapter “Material” is the last chapter. In my opinion, this chapter should have been placed before digging into the flow-graphs.
Tone of the Book
The tone of the book is quite open and communicates you in a class-room style manner. The explanation of the book energizes the reader to explore the UDK more and more.
The Final Verdict
Unreal Engine and UDK have come a long way and has emerged as a very successful game engine technology. UDK is one the most flexible engine where the developers can integrate lots of third party API’s to make their game better in every sense. This guide will introduce and glue your hands on UDK environment since the Author, Richard J. Moore has chosen great topics for this edition, and the chapter flow is completely designed in a “Beginner’s guide” way. With little R&D and patience, I could create a level just like Unreal Tournament Deathmatch level, reminded me of my early days. Watch this video:
Unfortunately, author has failed to provide certain necessary information vital to the feature discussion. Because of some unexplained content, the book may create additional confusion.
The book requires a total revamp as there are certain things presumed to be done by the reader. Besides author explains few topics that do not fully comply with the UDK’s actual working.
To learn UDK, I would suggest you to read blogs, watch online tutorials and UDK site itself for improved understanding. I have compiled a final rating based on the following table:
|TOPIC EXPLANATION – BASIC*||7/10|
|TOPIC EXPLANATION – IN-DEPTH*||6/10|
|TONE OF THE BOOK*||9/10|
|RELEVANCE TO THE UDK*||7/10|
|MISC FEATURE – QUIZ*||2/10|
|GENERAL AUDIENCE LET DOWN**||6/10|
OVERALL RATING FOR THIS BOOK
* higher is Better. ** Lower is better.