What DirectX 11 is, and What It Means to You
The new graphics API comes with new buzzwords. We'll tell you what they mean and how they matter to your gaming experience
Just when you think you’ve grasped all the jargon surrounding 3D graphics, new terms and technologies flood onto the market.
AMD has been aggressively shipping DirectX 11 GPUs in almost every price category, while cards based on Nvidia’s new GTX 470 and GTX 480 DX11 parts are finally becoming available. Meanwhile, Windows 7’s sales ramp has been extraordinary—the fastest-selling Microsoft OS in history. Given that Windows 7 is what Vista should have been, it’s also arguable that DirectX 11 is what DX10 should have been.

When DirectX 10 games hit the streets, the new API gave users marginal improvements in image quality alongside huge performance decreases. The tiny gain in visual fidelity didn’t really make up for the performance hit. On the other hand, DirectX 11 brings users some very cool potential eye-candy improvements, but also promises better performance—even if you don’t have a DirectX 11 GPU.
Along with new graphics, APIs come with new buzzwords: tessellation, SSAO, HDAO, and postprocessing. That last buzzword being a catchphrase for many small but cool effects made possible with today’s programmable graphics chips.
We’ll take a closer look at these buzzwords to dissect what they actually deliver, plus discuss the performance impact of using high-end AMD and Nvidia GPUs.
Tessellation
Tessellation essentially creates something from nothing—or more properly, more from less. Hardware tessellation, which is required by DirectX 11, means that the GPU can generate more triangles from existing geometry using the hardware tessellation engine that’s part of the graphics chip. Now, generating more triangles for a flat surface is pointless—after all, a flat square looks like a flat square, whether it’s two triangles or 2,000. What’s more interesting is generating more triangles for an actual 3D model. Let’s look at a simple example, the cobblestone surface from Microsoft’s DirectX developer’s kit.
Bump Mapping
Displacement Mapping
The tessellation engine in DX11 hardware is capable of generating many more triangles from existing geometry, as seen in teh screen on the lower left, to provide objects that are actually 3D.
In the top-right screen, we have a flat surface that looks somewhat more realistic by the application of a bump map. Bump maps fake you into thinking a flat polygon has depth by modeling the way light falls on a bumpy object (such as cobblestones.) However, if you were to bring the camera level with the pavement surface, you’d realize it was actually a flat surface. If geometry is tessellated, the cobblestones are actually 3D, as seen in the lower-right screen.
The tessellation in the cobblestone image is handled by a technique known as displacement mapping. A displacement map is just a special grayscale texture map in which different shades of gray define how much the geometry is displaced.
Cobblestones are nice, but will we ever see differences in real games? Let’s look at the recently released Metro 2033 (below). The left image is the game with tessellation disabled; tessellation is enabled in the right image. Note how the object is more rounded in the second shot. The effect is somewhat subtle here, but the point stands: This is the beginning of the end of polygonal heads. Tessellation means that character heads will someday all be rounder.
Without Tessellation
With Tessellation
In this sceen from Metro 2033, you can see how tessellation makes it possible to create curved edges.
Yet another example of tessellation, from the DirectX SDK, shows a technique known as subdivision surfaces (below). The key idea in this technique is to start with a basic set of polygons, then divide them in ways that make sense for the object at hand. In this character model, we overlay the textures on top of the visible wireframe. You can see the additional geometry added in the right-side screen, as well as the more naturalistic, rounded features.

In a tessellation technique known as subdivision surfaces, a basic set of polygons is divided to add geometry and hence realism.
Other Uses for Tessellation
Tessellation is great for creating rounder heads and more realistic cobblestones. But it has other uses, too. Take water, for example. Instead of using pixel shaders to build better-looking water, just add more triangles… a lot more triangles, as in the case of the Nvidia Island demo.
Without Tessellation
With Tessellation
Tessellation makes water appear more real in Nvidia's Island demo.
In the new racing game Dirt 2, cars driving through water will throw up waves in the DirectX 11 version of the game, using hardware tessellation to generate hundreds of triangles to form the effect. In DX9 mode, you see some spray, but no waves, and the water puddle itself can be as few as two triangles.
Without Tessellation
With Tessellation
Tessellation adds waves and ripples to a scene in Dirt 2.
Tessellation Going Forward
Tessellation offers the promise of better, more realistic-looking 3D objects, but it’s no panacea. As with any new technique, developers will have to be smart about its implementing. It’s easy to use tessellation to create objects that look wrong. On top of that, there’s the performance issue. While modern DirectX 11 GPUs have hardware tessellation engines, resources aren’t infinite. Turn up tessellation too much, and you’ll see a severe performance hit. Game developers will likely use the technology as part of sophisticated LoD (level of detail) schemes where close-up, important objects (characters) are tessellated, while distant or unimportant objects are tessellated less—or not at all.
Transparency Antialiasing Not So Special Anymore
Better-quality antialiasing with transparent textures was heavily touted by both Nvidia and AMD just a couple of years ago. Nvidia called this transparency antialiasing while AMD’s term was adaptive antialiasing. This is a classic case of a feature that improves image quality at the time, but isn’t really considered bleeding-edge these days.
The problem lies with the way transparency is handled in many games. Transparent objects are polygons with texture maps applied where some of the texture is transparent. Examples of this are chain-link fences, bare tree limbs, and overhead wires.
Adaptive antialiasing essentially smooths out the edges bordering on the transparent areas within those textures. Think of it as AA inside the polygon.
Without Transparency Antialiasing
With Transparency Antialiasing
Transparency, or adaptive, antialiasing works well when a game supports it (as seen in the screen above), but tessellation could provide a universal substitute.
For transparent AA to work, the game must test for alpha (the transparent part), but also disable alpha blend (where the transparent texture is combined with a background color to create a new color. This is sometimes used to create translucent (partially transparent) objects.
Valve’s Source game engine does this, so if you enable adaptive antialiasing (AMD) or transparent antialiasing (Nvidia) in the graphics control panel, you’ll see the effect, as in the Left 4 Dead screenshot here.
However, alpha blending and other techniques are used that prevent these techniques from working. For example, enabling the feature has no effect at all in most games that use the Unreal game engine. Also, technologies like tessellation may eventually make transparency AA obsolete. If those bare tree limbs can be built with polygons representing the limbs themselves, those polygons can be antialiased with standard multisampling AA, and you don’t need to mess around with adaptive AA.
Next page: Ambient Occlusion >>