Current technology – Unreal Engine 3
Unreal Engine 3 is a complete development framework for DirectX 10-equipped PCs, Xbox 360® and PLAYSTATION®3, providing the vast array of core technologies, content creation tools, and support infrastructure required by top game studios, advanced visualization and simulation developers and creators of 3D animated content for linear productions.
Every aspect of the Unreal Engine has been designed with ease of content creation and programming in mind, with the goal of putting as much power as possible in the hands of artists and designers to develop assets in a visual environment with minimal programmer assistance, as well as giving programmers a highly modular, scalable and extensible framework for building, testing, and shipping games in a wide range of genres.
Unreal Engine 3 is integrated with numerous leading middleware technologies through Epic Games’ Integrated Partners Program. Continual optimizations are made to the Unreal Engine’s highly mature tool pipeline, massive world support and multi-processor performance. Unreal Engine 3's advanced toolset is designed specifically to accelerate developers' productivity for ultra-complex, next-generation content.
Key Features
Multi-threaded rendering system – Gemini.
64-bit color High Dynamic Range rendering pipeline.
Animation.
Putting art assets into motion.
Audio.
Cross-platform support for sounds and music.
Physics.
Rigid bodies, ragdolls, vehicles, and physics-based animation.
Gameplay scripting – Kismet.
Designer-driven system for creating complex sequences of events and actions.
Cinematics – Matinee.
Track-based keyframing system for controlling movement and modifying properties.
Particle effects – Cascade.
Artist-driven system for creating particles and emitters.
Editing tools – UnrealEd.
Suite of tools for working with various aspects of the content creation pipeline.
Online – Networking and Multiplayer.
A fully object-oriented Java-like language with special game-specific features.
Integrated programming language – UnrealScript.
A fully object-oriented Java-like language with special game-specific features.
Additional Features
Localization
- Unreal Engine 3 content and code are localization-aware, with a simple framework for externalizing all game text, audio, images, and videos. Localized assets can be cooked for seek-free loading.
- Unreal Engine 3 is based on the Unicode character set, and has full support for 16-bit Unicode fonts and text input, including importing TrueType fonts into renderable bitmap fonts.
- Our games have shipped in 9 languages including Japanese, Chinese, and Korean.
Programming
- Unreal Engine 3 includes example content and 100% of the source code for the engine, editor, XSI/Max/Maya exporters, and the game-specific code for our internally-developed games.
- Extensible, object-oriented C++ engine with software framework for persistence, dynamic loading of code and content, portability, debugging.
- UnrealScript gameplay scripting language provides automatic support for metadata; persistence with very flexible file format backwards-compatibility; support for exposing script properties to level designers in UnrealEd; a GUI-based script debugger; and native language support for many concepts important in gameplay programming, such as dynamically scoped state machines and time-based (latent) execution of code.
- Modular material component interface for extending visual tool and adding new shader components usable by artists in the visual shader GUI.
- Source control friendly software architecture, scalable to large teams and multi-platform projects.
- Unreal Engine 3 is provided as one unified codebase that compiles on PC and all supported next-generation console platforms. All game content and data files are compatible across all supported platforms, for fast turnaround time between code and content development on PC, and playtesting on console or PC.
- Seek-free DVD loading optimization pass for consoles, able to load levels at >80% of DVD's physical transfer rate. Extensible content-streaming framework suitable for multithreaded background DVD streaming of resources and predefined groups of resources based on LOD or programmatic control.
Debugging and Performance Monitoring Tools
- Memory tracking tools (including GPU memory).
- Remote Control utility – extensible tool that runs alongside the game to allow for setting flags and running helper commands.
Awards
- TeamXbox: Best Graphics (2006)
- Spike TV Video Game Awards: Best Graphics (2006)
- IGN: Best Graphics Technology (XBox 360), Technological Excellence (2005)
- Gamespot: Best Graphics (Technical) (2006)
- Gamespot Reader's Choice: Best Graphics (Technical) (2006)
- AIAS Interactive Achievement Awards: Outsanding Achievement in Visual Engineering (10th Annual)
- Game Developer Choice Awards: Best Technology (2007)
- Game Developer Magazine Front Line Awards: Best Engine (2006, 2005)
Unreal Engine Integrated Partners
Epic Games' Integrated Partners Program establishes a formal business relationship between the game and middleware developer and select companies developing cross-platform technologies which integrate with, and are complementary to, Unreal Engine 3. As part of the program, Epic provides continuous Unreal Engine 3 source code access and full technical support to program members.
In addition, those companies that join Epic's partnership program agree to provide a high level of technical support for Unreal Engine 3 licensees through Epic’s established support channels, as well as keep implementations up-to-date with the latest software versions, and work with Epic on potential promotional and co-marketing efforts.
Such companies include FaceFX by OC3 Entertainment, SpeedTree by IDV, Inc., and Bink Video by RAD Game Tools – integrated and used by Epic in their games. Other products include AI middleware and cross-platform UI solutions, to name a few.
Proven Technology
Multiple UE3-powered games are currently in development at Epic and by our licensees, targeting a diverse set of genres from fighting games to MMPOGs to shooters. The technology was used to power games such as Epic’s recently-released Gears of War and the upcoming Unreal Tournament 3, as well as many games by licensees that represent some of the best studios in the industry.
For more Unreal Engine 3 licensing news, including announcements of support for Sony’s Playstation 3 and Microsoft’s Xbox 360, visit www.epicgames.com.
Typical Content Specifications
Here are the guidelines we're using in building content for our next Unreal Engine 3 based game. Different genres of games will have widely varying expectations of player counts, scene size, and performance, so these specifications should be regarded as one data point for one project rather than hard requirements for all.
Characters
For every major character and static mesh asset, we build two versions of the geometry: a renderable mesh with unique UV coordinates, and a detail mesh containing only geometry. We run the two meshes through the Unreal Engine 3 preprocessing tool and generate a high-res normal map for the renderable mesh, based on analyzing all of the geometry in the detail mesh.
- Renderable Mesh: We build renderable meshes with 3,000-12,000 triangles, based on the expectation of 5-20 visible characters in a game scene.
- Detail Mesh: We build 1-8 million triangle detail meshes for typical characters. This is quite sufficient for generating 1-2 normal maps of resolution 2048x2048 per character.
- Bones: The highest LOD version of our characters typically have 100-200 bones, and include articulated faces, hands, and fingers.
Normal Maps & Texture maps
We are authoring most character and world normal maps and texture maps at 2048x2048 resolution. We feel this is a good target for games running on mid-range PC's in the 2006 timeframe. Next-generation consoles may require reducing texture resolution by 2X, and low-end PC's up to 4X, depending on texture count and scene complexity.
Environments
Typical environments contain 1000-5000 total renderable objects, including static meshes and skeletal meshes. For reasonable performance on current 3D cards, we aim to keep the number of visible objects in any given scene to 300-1000 visible objects. Our larger scenes typically peak at 500,000 to 1,500,000 rendered triangles.
Lights
There are no hardcoded limits on light counts, but for performance we try to limit the number of large-radius lights affecting large scenes to 2-5, as each light/object interaction pair is costly due to the engine's high-precision per-pixel lighting and shadowing pipeline. Low-radius lights used for highlights and detail lighting on specific objects are significantly less costly than lights affecting the full scene.
Past versions – Unreal Engine 2
Unreal Engine 2 is a family of different engines designed to meet several unique development needs: Unreal Engine 2.5, Unreal Engine 2.X, and Unreal Engine 2 Runtime.
Unreal Engine 2 family - past versions.
Unreal Engine 2 supports DirectX8 and OpenGL on PC, Mac, Linux, Xbox, and PS2; and was proven in UT2003. Unreal Engine 2.5 was enhanced for UT2004. Unreal Engine 2.X is highly optimized to support the Xbox.

