Unreal Engine 3

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Template:Short description Script error: No such module "Infobox".Template:Template otherScript error: No such module "Check for unknown parameters".Template:Main other

Unreal Engine 3 (UE3) is the third version of Unreal Engine developed by Epic Games. Unreal Engine 3 was one of the first game engines to support multithreading. It used DirectX 9 as its baseline graphics API, simplifying its rendering code. The first games using UE3 were released at the end of 2006. It was succeeded by Unreal Engine 4.

History

Screenshots of Unreal Engine 3 were presented by July 2004, at which point the engine had already been in development for over 18 months.[1] In July 2005, Sony Interactive obtained sublicensing rights of Unreal Engine 3 for the PS3's Software Development Kit.[2] The first games released using Unreal Engine 3 were Gears of War for Xbox 360, and RoboBlitz for Windows, which were both released on November 7, 2006.[3]

File:Unreal Engine 3 Samaritan Demo Screenshot.jpg
Screenshot of the Samaritan demo

Initially, Unreal Engine 3 only supported Windows, PlayStation 3, and Xbox 360 platforms, while iOS (first demonstrated with Epic Citadel) and Android were added later in 2010, with Infinity Blade being the first iOS title and Dungeon Defenders the first Android title.[4][5] In 2011, it was announced that the engine would support Adobe Flash Player 11 through the Stage 3D hardware-accelerated APIs and that it was being used in two Wii U games, Batman: Arkham City and Aliens: Colonial Marines.[6][7] In 2013, Epic teamed-up with Mozilla to bring Unreal Engine 3 to the web; using the asm.js sublanguage and Emscripten compiler, they were able to port the engine in four days.[8] The engine is no longer receiving updates.[9]

Features

The engine was based on the first-generation but contained new features. "The basic architectural decisions visible to programmers of an object-oriented design, a data-driven scripting approach, and a fairly modular approach to subsystems still remain [from Unreal Engine 1]. But the parts of the game that are really visible to gamers – the renderer, the physics system, the sound system, and the tools – are all visibly new and dramatically more powerful," said Tim Sweeney, founder of Epic Games.[10] Unlike Unreal Engine 2, which still supported a fixed-function pipeline, Unreal Engine 3 was designed to take advantage of fully programmable shader hardware.[10] All lighting and shadowing calculations were done per pixel, instead of per vertex. On the rendering side, Unreal Engine 3 provided support for a gamma-correct high-dynamic range renderer.[10]

Unreal Engine 3 was one of the first game engines to make use of multithreading.[11] According to Sweeney, several systems within the engine were rewritten to employ multithreading, such as the physics, animation updates and the renderer's scene traversal loop's systems, but multithreading was not used for "systems that are highly sequential and object-oriented, such as the gameplay".[11] In its early phases of development, UE3 optimized for minimizing memory usage in favor of taking advantage of greater CPU and GPU power, which Sweeney described at the time as having seen greater improvements than that of memory.[12]

Unreal Engine 3 adopted DirectX 9 as its baseline graphics API support, allowing the engine to incorporate more features which would be impossible to support if UE3 attempted to support older versions such as DirectX 7.[12] According to Sweeney, "a great deal of generalization, improvement, and even simplification has been made possible by eliminating legacy code paths and formulating all rendering around fully-general pixel shader programs".[13] Similarly, a major goal for UE3 was that "designers should never, ever have to think about 'fallback' shaders, as Unreal Engine 2 and past mixed-generation DirectX6/7/8/9 engines relied on".[13] In general, one of the major areas of focus for UE3 was "empowering artists to do things which previously required programmer intervention: creating complex shaders, scripting gameplay scenarios, and setting up complex cinematics".[13]

Throughout the lifetime of UE3, significant updates were incorporated,[14] including improved destructible environments, soft body dynamics, large crowd simulation, iOS functionality,[15] Steamworks integration,[16] a real-time global illumination solution,[17] and stereoscopic 3D on Xbox 360 via TriOviz for Games Technology.[18][19][20] DirectX 11 support was demonstrated with the Samaritan demo, which was unveiled at the 2011 Game Developers Conference and built by Epic Games in a close partnership with Nvidia, with engineers working around the country to push real-time graphics to a new high point.[21][22]

Unreal Development Kit

While Unreal Engine 3 was quite open for modders to work with, the ability to publish and sell games meant using UE3 was restricted to licenses of the engine. However, in November 2009, Epic released a free version of UE3's SDK, called the Unreal Development Kit (UDK), to the general public.[23]

In December 2010, the Unreal Development Kit was updated to include support for creating iOS games and apps,[24] followed by OS X compatibility in the September 2011 release.[25] By 2013, it reported more than 2 million unique installations.[26]

See also

Category:Unreal Engine 3 games

References

Template:Reflist

Template:Epic Template:Video game engines

  1. Cite error: Invalid <ref> tag; no text was provided for refs named eurogamer July 1, 2004
  2. Cite error: Invalid <ref> tag; no text was provided for refs named sony
  3. Cite error: Invalid <ref> tag; no text was provided for refs named arstechnica 2008 03
  4. Cite error: Invalid <ref> tag; no text was provided for refs named develop-online December 20, 2010
  5. Cite error: Invalid <ref> tag; no text was provided for refs named adweek 2012
  6. Cite error: Invalid <ref> tag; no text was provided for refs named theverge flash
  7. Cite error: Invalid <ref> tag; no text was provided for refs named develop-online wii-u
  8. Cite error: Invalid <ref> tag; no text was provided for refs named gamedeveloper mozilla
  9. Cite error: Invalid <ref> tag; no text was provided for refs named unrealengine no updates
  10. a b c Cite error: Invalid <ref> tag; no text was provided for refs named fall2004
  11. a b Cite error: Invalid <ref> tag; no text was provided for refs named anandtech 2005
  12. a b Cite error: Invalid <ref> tag; no text was provided for refs named eurogamer interview part two
  13. a b c Cite error: Invalid <ref> tag; no text was provided for refs named beyond3d
  14. Cite error: Invalid <ref> tag; no text was provided for refs named bigdownload 03 2009
  15. Cite error: Invalid <ref> tag; no text was provided for refs named anandtech 12 2009
  16. Cite error: Invalid <ref> tag; no text was provided for refs named epicgames 03 2010
  17. Cite error: Invalid <ref> tag; no text was provided for refs named unrealengine enlighten-integration
  18. Cite error: Invalid <ref> tag; no text was provided for refs named computerandvideogames e3 2010
  19. Cite error: Invalid <ref> tag; no text was provided for refs named epicgames darkworks-trioviz
  20. Cite error: Invalid <ref> tag; no text was provided for refs named joystiq 2010 10
  21. Cite error: Invalid <ref> tag; no text was provided for refs named kotaku 02 2013
  22. Cite error: Invalid <ref> tag; no text was provided for refs named forbes 2011 09
  23. Cite error: Invalid <ref> tag; no text was provided for refs named ign 2009 11
  24. Cite error: Invalid <ref> tag; no text was provided for refs named ign 2010 12
  25. Cite error: Invalid <ref> tag; no text was provided for refs named joystiq 2011 09
  26. Cite error: Invalid <ref> tag; no text was provided for refs named popularmechanics 2013 06