Wednesday, January 26, 2011

Features

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[9] 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.[10]

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 using the use of Intel's Streaming SIMD Extensions to gain the best possible performance
MegaTexture rendering technology
Main article: MegaTexture

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. 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.[12] 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

    * Unified lighting and shadowing
    * Shadow volume
    * MegaTexture

 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++.[13]

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.[14] These in-game GUIs are sufficiently powerful that you can, for example, run another game such as Doom 1 within the game-world.

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

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.

Networking

Initially, the id Tech 4 engine was planned to have a peer-to-peer networking model, however this was changed to a more traditional client–server model.[18] 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.

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.

No comments:

Post a Comment