id Tech 4

id Tech 4
id Tech 4
The id Tech 4 engine debuted with Doom 3
id Tech 4 in Doom 3, the engine's parent game.
Developer(s) id Software
Written in C++
Platform Windows, Mac OS X, Linux, Xbox, Xbox 360, PlayStation 3[1]
Type Game engine
License GNU General Public License[2]

id Tech 4, popularly known as the Doom 3 engine, is a game engine developed by id Software and first used in the video game Doom 3. The engine was designed by John Carmack, who also created previous engines such as those for Doom and Quake, which are also widely recognized as marking significant advances in the field. This OpenGL rendered engine has also been used in Quake 4, Prey, Enemy Territory: Quake Wars, Wolfenstein and Brink.

Contents

History

id Tech 4 began as an enhancement to id Tech 3. During development, it was initially just a complete rewrite of the engine's renderer, while still retaining other subsystems, such as file access, and memory management. The decision to switch from C to the C++ programming language necessitated a restructuring and rewrite of the rest of the engine; today, while id Tech 4 contains code from id Tech 3, much of it has been rewritten.[3]

At the QuakeCon 2007, John Carmack, the lead graphics engine developer at id, said to LinuxGames: "I mean, I won't commit to a date, but the Doom 3 stuff will be open source". And like its predecessors, John Carmack has said that id Tech 4 will be released as open source.[4]

At the QuakeCon 2009, Carmack said that he planned to petition ZeniMax Media to release the id Tech 4 source upon the release of Rage.[5] As part of his keynote for QuakeCon 2011 he confirmed that the source code to Doom 3 will be out by the end of the year, after the release of Rage.[6]

In November 16, 2011, Carmack announced on Twitter that he's writing new code for Doom 3's open source release, because "lawyers are still skittish about the patent issue around 'Carmack's reverse'"[7].

On November 22, 2011, Carmack released the Doom 3 source code on Github.[8] The source does not include any of the 'Carmack Reverse' code. According to Carmack, minor tweaks were made to the code to avoid any infringement [9]

Hardware

The original requirement of id Tech 4 was that it needed a high-end graphics processing unit (GPU) with fully programmable vertex and pixel shaders, such as the Nvidia GeForce 3 or ATI Radeon 8500, with at least 64 MB of VRAM. By E3 2002, the recommended GPU was "100% DirectX 9.0b compatible", such as the Radeon 9700 with 128 MB of VRAM. While the Radeon 9700's DirectX 9.0 features are not necessary to render the game, its advanced architecture, 256-bit memory bus, and efficiency were needed to run Doom 3 at high detail and playable speed.[10] The "Ultra" graphics mode included in Doom 3 would not even run on the current popular graphics cards available in 2004, requiring at least 512 MB of video memory to display properly and at playable speeds, meaning that it was basically unusable at the time of release.[11]

id Tech 4 resulted in the obsolescence of DirectX 7 graphics chips such as the widespread GeForce 2 and Radeon 7200, as well as older chipsets such as RIVA TNT2 and Rage 128, and software rendering (with an integrated Intel GMA). Until the advent of id Tech 4, a powerful CPU was able to somewhat compensate for an older video card. While John Carmack initially warned gamers not to purchase the GeForce 4 MX[12] (which casual consumers often confused with the DirectX 8 capable GeForce 4 Ti, though it was at best an improved GeForce 2), its somewhat widespread adoption compelled id Software to add it to the list of supported cards. There have been cases of enthusiasts forcing Doom 3 to run on unsupported graphics chips, such as the long obsolete Voodoo 2, but these are unable to render the per-pixel lighting and bump mapping.[13]

Features

The shadowing effects of the Unified lighting and shadowing engine are shown on the face and body of the zombies in this screenshot of Doom 3

Graphics

Id Tech 4 added several new graphical features absent in its predecessor, id Tech 3. These included bump mapping, normal mapping, and specular highlighting. More features were added in the development of successive games, and in yet unreleased games using id Tech 4, new features have been added or are planned to be added soon.

The primary innovation of id Tech 4 was its use of entirely dynamic per-pixel lighting, whereas previously, 3D engines had relied primarily on pre-calculated per-vertex lighting or lightmaps and Gouraud shading. While dynamic effects had been available before (such as dynamic moving lights), this effect merely changed the brightness of the vertices of the polygon, with the pixel's colors simply being interpolated between the three vertex colors of its polygon.

This fully realtime approach used in Doom 3, combined with the use of shadow volumes permitted more realistic lighting and shadows[14] than in the previous generation of id's engines. The method used to create the shadow volumes is the subject of a patent by Creative, which Creative granted id permission to use in the Doom 3 engine, in exchange for supporting Creative's EAX advanced sound technologies.[15]

The models used in id Tech 4 engine games are animated using skeletal animation. The engine can blend multiple animations together, to produce a skin that moves correctly for those animations. Because this is CPU intensive, id did some work optimising this by using Intel's Streaming SIMD Extensions (SSE).[16]

MegaTexture rendering technology

The original version of the id Tech 4 engine was criticized for its perceived inability to handle large outdoor areas. The MegaTexture technology not only removed this issue by introducing a means to create expansive outdoor scenes but also made the new version as the best game engine to handle the outdoor areas, as well[citation needed]. By painting a single massive texture (32,768×32,768 pixels, though it has been extended to larger dimensions in recent versions of the MegaTexture technology) covering the entire polygon map and highly detailed terrain, the desired effects can be achieved. The MegaTexture can also store physical information about the terrain such as the amount of traction in certain areas or indicate what sound effect should be played when walking over specific parts of the map. i.e. walking on rock will sound different from walking on grass.[17] It is expected that this will result in a considerably more detailed scene than the majority of existing technologies, using tiled textures, allow. Currently, the only game that utilizes MegaTexture based on the Tech 4 engine is Enemy Territory: Quake Wars.

Rendering techniques used in id Tech 4

Scripting

id Tech 4 has a comprehensive scripting language which can be used when creating mods, and is used in Doom 3 to control monsters, weapons, and map events. This scripting language is similar to C++.[18]

In addition to the main scripting language, idTech 4 also has another scripting language that is used for GUIs - both the menus and HUD, and also for GUIs embedded into the game world.[19] These in-game GUIs are sufficiently powerful that you can, for example, run another game such as Doom 1 within the game-world.[20]

Despite this additional level of scripting, it is also possible to create mods using C++ to build native code.[21]

Sound

As a result of the agreement with Creative regarding the patent on shadow volumes, the id Tech 4 engine supports OpenAL, including the Creative Technology specific EAX extensions. The work to include OpenAL support was done by Creative Technology, not by id themselves.[22]

Networking

The engine uses a traditional client–server model. Initially it was planned to have a peer-to-peer networking model.[23] This part of the engine works in a fundamentally similar way to the id Tech 3 equivalent, however id Tech 4 exposes a lot more of the network protocol to mod developers.[24]

Although Doom 3 only supported 4 players, the id Tech 4 engine can be used with more players than this, with Quake 4 and Enemy Territory: Quake Wars both supporting significantly more players.

Games using id Tech 4

Prey utilized a modified version of id Tech 4 that allowed for effects such as portals, variable gravity, and wall walking

Unlike the preceding and widely used id Tech 3 (Quake III Arena engine) and id Tech 2 (Quake II engine), id Tech 4 has had less success in licensing to third parties. This is especially apparent in comparison to its closest competitor, Unreal Engine 2. The unexpected long development time going into id Tech 4 did not help, as between 2002–2004, id Software had no equivalent to Unreal Engine 2. Many who licensed Unreal Engine 2 were thus able to make the switch to Unreal Engine 3 more easily.

While id Tech 4 had taken a new direction with its dynamic per-pixel lighting, this unconventional feature had steeper hardware requirements and was initially only useful in "spooky games" (until the MegaTexture addition), whereas an increasing number of developers preferred conventional engines that could render large outdoor areas. Also notable was id Tech 4's relative lack of downward scalability compared to competing FPS engines; the Source engine could still run on the older widespread DirectX 7 GPUs, albeit without shaders being used.

List

See also

Portal icon Free software portal
Portal icon Video games portal

References

  1. ^ "3D Engine: id Tech 4". http://www.mobygames.com/game-group/3d-engine-id-tech-4. Retrieved 2008-09-24. 
  2. ^ http://www.gamasutra.com/view/news/38702/Doom_3_Source_Code_Released_To_Public.php
  3. ^ Q&A with John Carmack, E3 2002
  4. ^ Carmack, John (2007-08-07). "I mean I won't commit to a date, but theDoom 3 stuff will be open source". LinuxGames.com. http://www.linuxgames.com/archives/9374. 
  5. ^ http://kotaku.com/5336589/the-john-carmack-keynote-liveblogging-quakecon
  6. ^ "Id Software will release the Doom 3 source code". The Inquirer. 05-07-2011. http://www.theinquirer.net/inquirer/numb-thumbs-blog/2099819/id-software-release-doom-source-code. Retrieved 05-07-2011. 
  7. ^ "John Carmack's Twitter status update". 16-11-2011. https://twitter.com/#!/ID_AA_Carmack/statuses/136614459887202305. Retrieved 18-11-2011. 
  8. ^ "Doom 3 Source on Github". 22-11-2011. https://github.com/TTimo/doom3.gpl. Retrieved 22-11-2011. 
  9. ^ "John Carmack tweets about code infringement work around". 17-11-2011. http://twitter.com/#!/ID_AA_Carmack/status/137189212519792640. Retrieved 22-11-2011. 
  10. ^ [1]
  11. ^ Doom is a boon Game Industry News, article by by Todd Hargosh. Retrieved June 11, 2011
  12. ^ .plan File for John Carmack (February 11, 2002)
  13. ^ [2]
  14. ^ Doom 3
  15. ^ John Carmack: "This sucks."
  16. ^ Optimizing the Rendering Pipeline of Animated Models Using the Intel Streaming SIMD Extensions
  17. ^ GameSpy: Enemy Territory: Quake Wars Preview
  18. ^ Making DOOM 3 Mods : Scripts
  19. ^ Making DOOM 3 Mods : GUIs
  20. ^ Fully Interactive Surfaces
  21. ^ Making DOOM 3 Mods : The Code
  22. ^ [3]
  23. ^ Doom 3 multiplayer networking info
  24. ^ The Code - see Game Utility Files
  25. ^ "Prey 2 producer on taking new direction, with 'capable' id Tech 4". Joystiq. 18 April 2011. http://www.joystiq.com/2011/04/18/prey-2-producer-on-taking-new-direction-with-capable-id-tech. Retrieved 28 April 2011. 

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • Tech N9ne discography — Tech N9ne discography Tech N9ne at release signing for Everready (The Religion) on November 6, 2006 Releases ↙Studio albums …   Wikipedia

  • Tech N9ne — Surnom Tecca Nina, The Killa Clown, T 9, Kansas City King Nom Aaron Dontez Yates Naissance 8 novembre 1971 Kansas City (Missouri) Activité principale Rappeur, parolier, producteur exécutif …   Wikipédia en Français

  • Tech Squares — is a square and round dance club at the Massachusetts Institute of Technology. It was founded in 1967 and is still holding dances today. [ [http://www.mit.edu/ tech squares/ Official Tech Squares web site] ] Tech Squares dances high energy modern …   Wikipedia

  • Tech Mahindra — Limited Type Public (BSE: 532755) Industry IT ser …   Wikipedia

  • Tech Triumph — is the fight song of Virginia Tech. It was composed in 1919 by Wilfred Pete Maddux (class of 1920) and Mattie Eppes (Boggs).ComposersWilfred Preston ( Pete ) Maddux, a trombone and baritone player in the Virginia Tech Regimental Band (member of… …   Wikipedia

  • Tech trance — is a sub genre within Electronic Dance Music that draws upon the Techno and Trance genres as the name suggests. Tech Trance was pioneered by Oliver Lieb in the mid 90 s. Other early Tech Trance producers are Humate, Chris Cowie and Marmion. Tech… …   Wikipedia

  • Tech — may refer to:* an abbreviation for technology, and terms that are derived from it ** technical support ** techno music *a technical problem, in airline jargon e.g. the plane s gone tech *Tech 2 (or Tech II), an electronic On Board Diagnostics… …   Wikipedia

  • Tech house — Tech house, like progressive house, represents a fusion of house and techno. However, whereas progressive house tends to incorporate atmospheric, ethereal, almost ambient sounds and is often mixed to varying degrees with trance and progressive… …   Wikipedia

  • Tech Pacific — is an Asian Pacific IT wholesale distributor with offices throughout Australia, New Zealand, Singapore, Malaysia, Thailand, India and Hong Kong.Tech Pacific was founded by Jim Kennedy in Melbourne, Australia in 1985 as a boutique distributor of… …   Wikipedia

  • Tech-Com — is a fictional organization of human survivors of Judgement Day in the Terminator series, who are dedicated to defending other human survivors to fight and defeat Skynet. Tech Com may also be heard as The Human Resistance or The Resistance… …   Wikipedia

  • Tech Gate Vienna — Tech Gate Tower Der Tech Gate Tower des Tech Gate Vienna …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”