Rage: The Tech Behind Id Tech 5


id Tech 5

id Tech 5: MegaTexturing and Other Key Techniques -

When id first announced Rage back in 2007, much of the discussion focused on Carmack's then-new MegaTexture technology, which first debuted in Splash Damage's Enemy Territory: Quake Wars. id Tech 5 has evolved considerably since the company started talking about it four years ago, however. While it contains a number of additional features, MegaTexturing remains one of the game's most visible advances and remains a good jumping-off point for any discussion.

The vast majority of games use a technique known as texture tiling when rendering a game environment. Texture tiling uses a  small number of texture tiles to create a large environment. The advantage to creating an environment this way is that it dramatically reduces RAM storage requirements and memory bandwidth overhead. The downside is that it creates extremely repetitive patterns, as shown in the left-hand image below.

   
Screenshots from WoW's DX11 mode. The only difference is the amount of ground clutter--"Low" on the left, "Ultra" on the right.
 

The traditional solution to this problem is to introduce additional environmental objects, shadows, and what WoW helpfully calls 'ground clutter.'  Turning that option all the way to 'Ultra' produces the upper right-hand image. Adding ground clutter makes the texture repetition less obvious, but doesn't resolve the underlying issue--which is that we've simply added a second, repetitive pattern on top of the first. There are a number of ways an artist can make an area seem unique, but they all rely on disguising an underlying pattern.

MegaTexturing approaches the need to conserve memory bandwidth and GPU storage from the opposite direction. MT uses a single large texture to map the terrain of an entire area. Data from that texture is streamed in depending on where the player is standing and what's visible, but the jarring texture-load issue that plagues console ports isn't necessary. Effects that would normally be blended in traditional tiled texturing can be baked into the megatexture and streamed off disc when needed.

   
The upper-right image shows the same bits of grass duplicated. MT doesn't preclude the use of more standard texturing methods.
 
The advantage of megatexturing is that it allows artists to create unique environments rather than resorting to a variety of tricks to hide repetitive ones. The approach isn't a good fit for everything--id has flatly stated that the Rage engine would be a very poor fit for a truly open-world game like Elder Scrolls: Skyrim, and can't handle a normal day/night cycle. id Tech 5 also doesn't support global dynamic lighting but will (reportedly) add support for soft-edged shadows via shadow maps, crepuscular rays (evident on the flying car image at the bottom of the previous page), alpha to coverage, depth of field, and motion blur. Anisotropic filtering support, however, may be limited--several of id's presentations imply that 4x AF may be the engine's limit, although this is unconfirmed.

id hasn't publicly released a laundry list of the engine's full capabilities, but one feature we know Rage doesn't support is tessellation. While Carmack acknowledged that tessellation is one way to create more detailed terrain, he noted that supporting tessellation in id Tech 5 would've required bolting it on rather than incorporating it from the beginning.

Under The Hood -

Some of the most important features of id Tech 5 operate behind the scenes. One of the major features of the engine is its ability to run on a wide variety of architectures. In contrast to the Doom 3 engine, which didn't scale particularly well, id Tech 5 is built to run on a huge range of products and in very different environments.


From a 2009 SIGGRAPH
presentation, given when Larabee was still on the table


Carmack's latest keynote makes it clear that while he prefers the PC for development purposes, the id team didn't shirk when it came to optimizing Rage for the XBox 360 or PS3. The engine exploits CPU parallelism by categorizing the engine's tasks by job, then assigning those jobs to various SPE's. The technique may be a response to the challenges of programming for the PS3, but it shows how much work has gone into insuring that Rage's engine can scale across devices.



We suspect id Tech 5's multiprocessor, multiplatform support may be one of its most attractive features. Carmack demonstrated part of the engine running on the iPhone 4 back in 2010, and while the company isn't planning to aggressively license id Tech 5, its multi-platform awareness could make it uniquely suited to cross-platform development.

Ultimately, id Tech 5 will rise to prominence (or not) based on the success of its shipping titles. For now, that means Rage. Doom 4 is still scheduled for a 2012 launch, but Carmack isn't sharing details or screenshots on the new title yet.  Either way, it's obvious id has further developed their proprietary technologies such that Rage is shaping up to offer yet another environmentally immersive experience for gamers; that and potentially a whole bunch of fun.
 

Related content