Welcome Guest LOGIN | REGISTER
Monday 23rd July 2007

Dissecting DirectX 10

Posted at: Monday 23rd July 2007 by Stuart Andrews

Stuart Andrews takes a journey through a DirectX 10 3D graphics pipeline, and explains how GPU architecture has changed since the DirectX 9 days.

The arrival of DirectX 10 heralds a new era for PC graphics. Crysis is only the beginning; within the next few years, we'll see games on the PC that will put even the most dazzling PS3 and Xbox 360 blockbusters in the shade. However, this sort of power doesn't come without sweeping change, and the people at the sharp end aren't gamers or programmers, but the engineers at ATi and Nvidia. DirectX 10 requires a GPU with a radically different architecture.

These guys are already accustomed to change. The original Radeon R100 GPU had approximately 30 million transistors, while the R580 used in the X1900 series has 384 million. This rise was necessary to support growing numbers of pixel and vertex processors, and the complex scheduling hardware needed to manage their operations. However, the change from the R580 to the R600 GPU in ATi's new Radeon HD 2900XT goes beyond mere numbers. The rise to 700 million transistors isn't just a case of adding more brawn, but also about taking that brawn and using it in more efficient and flexible ways.

To understand this, you need to change the way that you think about the 3D graphics pipeline. Traditionally, GPUs worked like a sausage machine or a factory production line. At one end, you put in geometry, textures and shader code. The GPU then organises these raw materials into various streams and caches, and sends the geometry through the vertex shaders, which arrange the geometry into groups of triangles in 3D space, which may be rotated, scaled, moved, blended and lit as necessary.

The GPU then takes all this processed vertex data and reorganises it into a 2D view of the 3D scene, performing any required clipping or culling. This view is then transformed into pixel 'fragments', which are processed by the pixel shaders, which deal with the complex effects of surface texture, opacity, colour and lighting. The outputs from this processing are then combined, along with depth and stencil buffer information, before being sent to the frame buffer for final output. Easy.

However, DirectX 10 not only alters beyond recognition the journey from vertices to pixels, but also alters the facilities used in that process. This isn't a simple production line any more; it's a complex manufacturing facility. The workforce is different, and so is the management structure.

About DirectX 10

If you want more details about how the DirectX 10 API works, refer to our feature The DirectX Factor, but if you just need reminding, three new features have a direct bearing on what follows. Firstly, DirectX 10 adds a third type of shader - the geometry shader - that can process whole primitives or multiple vertices, as opposed to only single vertices like a vertex shader. The benefit is that you can construct new vertex data from existing vertex data by taking triangles, line lists, point lists or strips, and extrapolating them, according to instruction, into new triangle or line strips, or multiple points.

More images for this article:

Submit to:  
Hands On Guides for this article
Comments

Its Stupid to make every body in the world upgrade to vista eventually and even more anoying is for us gamers and PC modders i think its all just a waste of time

Comment by Maddwilz at 7:56pm 10th August 2007



WAGHHHHHH VISTA NO WORKEEEE

theres talk about microsoft doing a turn around and offerin dx10 as an update coz nae body wants 2 spend a fortune on upgrade just like me lol im going back 2 my amiga 1200 and wipeout 2097 yassssssssssss

Comment by GUMBANATOR at 7:23pm 5th August 2007



A Vista Work Around

If you want all the Dx10 benefits in Company of Heroes without getting a Vista machine here is what you do. Take out half your RAM, underclock your CPU to about 75% of the speed and then replace your graphics card with an X1300 or similar. That should nicely replicate the prolapsed frame rate and compromised graphics settings enjoyed by Dx10 Company of Heroes players (unless they have beta drivers).

Comment by Grotmonkey at 9:46pm 31st July 2007



Do I really need Vista for dx10?

I REALLY don't want to buy vista just to play a DX10 game. Anyone know anyway around it?

Comment by clipkilla at 6:04pm 30th July 2007



Make a Comment

Broadband Dongles

Compare prices

Fastest, cheapest 3G mobile broadband dongles from 3, Vodafone, T-Mobile and Orange
from just £10/month

Button link to Mobile Broadbandgenie.co.uk
Powered by
Broadband Genie