GeForce 6800 Ultra Preview

Graphics cards 1048 Page 5 of 26 Published by

teaser

Page 5 - UltraShadow - Video and Shaders 3.0

UltraShadow IILast year we got acquainted with NVIDIA's UltraShadow technology. Shadows, nothing that new you might say. Yet precise and accurate shadows are so important to a 3D scene. They contribute to the 3D scene's environment, it's a step closer to the real thing, I guess...

...except for performance and that's where UltraShadow II comes in.

UltraShadow II allows the game programmer to define a bounded portion of the scene (often called depth bounds), which limits the calculation of lighting source effects to objects within that specified area. By limiting calculations to the area most affected by a light source, the overall shadow generation process is highly accelerated. Stenciled shadow volumes do not require texturing or color so UltraShadow II hardware can double the rendering horsepower to generate stenciled shadow volumes at up to twice the standard pixel-processing rate. Did you know that the upcoming and highly shadow intensive Doom III can run 3 to 4 times faster in regards to shadow processing. That's not made up stuff guys.

NV4x Video Architecture
Next to being a gaming card, starting with the GeForce Series 6 some high-quality video options become available also. First off, series 6 is a fully programmable video processor; you can aqctually use it in paint programs or software like Adobe After Effects. And hey, this is the first ever On-chip GPU video encoder.

Among them motion adaptive interlacing, integrated TV-Encoder, complete HDTV support (720p. 1080i, 480p, CGMS). We so need HDTV support here in Europe. Not only that but the NV40 now also can Decode and...Encode MPEG 1/2 and 4, and yes also real-time DiVX Decode / Encode!

Shaders Model 3.0
If you program or play computer games or even recently attempted to purchase a video card, then you will have no doubt heard the terms "Vertex Shader" and "Pixel Shader".

Funny story, I've been following some threads in our forums lately to see the ATI versus NVIDIA discussions regarding 3.0 Shader technology. It's now almost (and I say that with a bit of a safety margin in mind) that the upcoming Radeon (R420) will not support DirectX 9.0c Shader model 3.0. The discussion we see from ATI fans is are like this "Hey, who needs Pixel and Vertex Shader 3.0?; there is not one game that supports it and it that won't happen this year also.'' That's so wrong people. The step from 2.0 towards 3.0 is a small one and most Shader model 2.0 games can easily be upgraded towards model 3.0, which means more candy for the eyes. When DirectX 9 is updated we are going to see a lot of support for 3.0 Shaders. Is it a huge visual advantage over 2.0 ? Personally I question that a bit yet there will be a number of game programmers disagreeing with me. Any technological advantage is always welcome and preffered over a previous generation development. The general consensus for developers is to use as low a shader version as possible. Shaders 3.0 will be used only in several critical places where it gives a performance boost or significantly boosts image quality.

Since I've immediately started to ramble on about Shader technology I just realized that some of you do not even have a clue what I'm talking about. Sorry, that happens when you get a bit excited. Let's do a quick shader course.

What do we need to render a three dimensional object; 2D on your monitor? We start off by building some sort of structure that has a surface, that surface is being built from triangles and why triangles? They are quick to calculate. How's each triangle being processed? Each triangle has to be transformed according to its relative position and orientation to the viewer. Each of the three vertices the triangle is made up of is transformed to its proper view space position. The next step is to light the triangle by taking the transformed vertices and applying a lighting calculation for every light defined in the scene. At last the triangle needs to be projected to the screen in order to rasterize it. During rasterization the triangle will be shaded and textured.

And now we finally get to the stage where we can explain Shaders. Vertex and Pixel shaders allow developers to code customized transformation and lighting calculations as well as pixel coloring functionality. Each shader is basically nothing more than a relatively small program executed on the graphics processor to control either vertex or pixel processing.

Share this content
Twitter Facebook Reddit WhatsApp Email Print