Games have consistently been the killer applications to move the hardcore audience from an older operating system to the newer variant. Inevitably, such moves are slow and painful no matter the transition: from DOS to Windows 3.x, from Windows 3.x to 98, from 98 to XP, and now from XP to Vista.Windows Vista presents perhaps the strongest reason for gamers to jump ship from XP since the DOS days—DirectX version 10 (DX10).
DX10 is a set of APIs (an API is a layer of software that tells other software and hardware how to interact with it) that enables nextgeneration gaming; by “next-generation,” we mean beyond what consoles would be capable of in the years to come. DirectX 10 will offer a variety of new features and new tricks to old tasks which will take the visual fidelity and the performance of games built using the API to a new level. With DX10 in particular and Vista in general, Microsoft has shifted the onus of graphics rendering from the processor to the graphics card. To achieve that end, DX10 has been built from the ground up to change the way 3D applications think about material management and load balance between the CPU and GPU. Direct3D 10, the component of DX10 that manages the 3D rendering tasks, takes advantage of the improved communication between the CPU and GPU and efficiently manages the data transfer between them. Through its advanced material management and load balancing tricks, DX10 games will bring in scenes with far greater complexity than currently possible, without ever increasing the CPU overhead. This

frees up the processor to do other tasks such as AI and physics calculations, which further increases the immersion factor of these games. As has been mentioned in Chapter 2, DX10 brings along a new driver model for the graphic cards. The new display driver model called WDDM is the main reason for DirectX10’s exclusivity to the operating system:Windows Vista will be the sole operating system (or at least the first) under which DirectX 10 and the games that support it will run. DirectX10 uses and leverages the virtualisation and architectural improvements of WDDM, in both the APIs as well as the underlying infrastructure.
In Greater DetailDX10 allows programmers to create scenes with greater

detail than before. For example, a technical demo of the Crysis game showed character faces with pockmarks, handlebar moustaches, detailed lips and eyes, and realistic facial expressions. DX10 also offers better shadows. For DX9 games, you might have noticed that turning on shadows for every character on screen can quickly bring the frame rate to its knees. This is because shadow calculations were done using the CPU. Now this code path can be moved to the GPU and the result will be more detailed shadows and shadows that do not make the system crawl.
Richer scenesDirectX10 allows for better volumetric effects. This feature was ably showcased by upcoming DX10 game AlanWake, where one can see clouds and weather effects never seen before—including an extremely realistic thunderstorm and a tornado. DX10’s volumetric effects allow for thicker clouds and scattering of light. DirectX10 also offers more accurate reflections allowing modelling of choppy seas and water bodies.
Procedural effectsOne of the features of upcoming game engines is that of procedural generation of content. Entire forests filled with trees can thus be generated using hardware, which minimises the art requirement for a game, and also reduces the amount of textures the game needs to ship with (thus a game can pack in other goodies in the same DVD space). DX10 facilitates dynamic changes to a game, enabling game levels to evolve with the passing of time.
Motion blurring In earlier versions of DirectX, game developers were required to smudge the final image to achieve motion blur. In DirectX10, however, motion blur can be performed in objectspace, simulating a camera exposure of an object across multiple sub-frames.