ATI Radeon HD 2900 XT 512MB review

Graphics cards 1048 Page 8 of 26 Published by

teaser

Page 8 - A Unified State

The Unified state - DirectX 10

So the thing is, with DirectX 10 Microsoft has removed what we call the fixed function pipeline completely (what you guys know from previous generation products as the denominator 16 pixel pipelines, for example) and allowing it to make everything programmable. How does that relate to new architecture? Well, let me explain:

The new architecture is all about programmability and thus shaders as we on the previous pages explained. That fixed function pipeline where pixel shaders had to be submitted to a pixel shader processor and a vertex shader to a vertex unit, is gone. All shaders can now be send towards the same shader processors; the 320 shader processors we have now mentioned.

Each of these independent processors is capable of handling any type of shading operation, including pixel shading, vertex shading, geometry shading, and yes, physics shading. The result? A much higher efficiency in processing and thus overall performance.

Geometry Shaders - new in the step from DX9 towards DX10 are functions like stream out, instancing but more importantly a new shader was introduced. You might want to skip this part unless you are a true geek. Geometry Shaders do some quite specific things that make no common sense for a PS/VS program and that is why this new shader was introduced.

A geometry shader will be an innovative set of shaders present in next generation graphics hardware like GeForce 8 Series and Radeon HD 2000. Geometry shaders do per-primitive operations on vertices grouped into primitives like triangles, lines, strips and points outputted by vertex shaders. Geometry shaders can make copies of the inputted primitives; so unlike a vertex shader, they can actually create new vertices. Examples of use include shadow volumes on the GPU, render-to-cubemap and procedural generation. A geometry shader works at a larger level of granularity than vertices (which are at a larger granularity than pixels): triangles, objects, lines, strips, points. Primitives.

So, after the vertices are processed by the vertex shader, the geometry shader can be utilized to push further work on them. And that's exactly where the money shot is to be found, as a limitation of the traditional vertex shader is that it really cant create new vertices. This is where the geometry shader surfaces, as it can be used to work on the edges of a triangle to create a different figure.

So, DirectX 10 and its related new hardware products offer a good number of improvements in the form of instruction sizes and what not. So much actually, that it would require an article on its own. And since we are here to focus on a new product we'll take a shortcut at this stage in the article. Discussed in our Guru3D forums I often have seen the presumption that DX10 is only a small improvement over DX9 Shader Model 3.0. Honestly; the answer to this is yes and no. I say it's a huge step as a lot of constraints are removed for the software programmers. The new model is more simple, easy to adapt and allows heaps of programmability, which in the end means a stack of new features and eye candy in your games.

Whilst I will not go into detail about the big differences I simply would like to ask you to look at the chart below and draw your own conclusions. DX10 definitely is a large step forward, yet look at it as a good step up.

GeFore 8800 GTX & GTS review - Copyright 2006 Guru3D.comHere you can see how DirectX's Shader Models have evolved ever since DX8 Shader Model 1.

So, I think what you need to understand is that DirectX 10 doesn't commence a colossal fundamental change in new capabilities; yet it brings expanded and new features into DirectX that will enable game developers to optimize games more thoroughly and thus deliver incrementally better visuals and better frame rates, which obviously is great.

How fast will it be adopted? Well, Microsoft is highlighting the DX10 API as God's gift to the gaming universe, yet what they forget to mention is that all developers who support DX10 will have to continue supporting DirectX9 as well and thus maintain two versions of the rendering code in their engine as DXD10 is only available on Windows Vista and not XP, which is such a bitch as everybody refuses to buy Vista.

However, you can understand that from a game developer point of view it brings a considerable amount of additional workload to develop both standards.

Regardless of the immense marketing hype, DirectX 10 just is not extraordinarily different from DirectX 9, you'll mainly see good performance benefits due to more efficiency in the GPU rather than vastly prominent visual differences, with obviously a good number of exceptions here and there. But hey, DirectX is evolving into something better, more efficient and speedier. Which we need to create better visuals.

Share this content
Twitter Facebook Reddit WhatsApp Email Print