In the Forums...
Posted: June 13, 2000
Written by: Tuan "Solace" Nguyen
NSR: NVIDIA Shading Rasterizer
Likely one of the most significant feature for the GeForce 2 GTS is the inclusion of what NVIDIA calls the NVIDIA Shading Rasterizer or the NSR. What is the NSR? We can't tell you what it is, you just have to s-- okay, enough Matrix stuff. But as a matter of fact, it is a matrix. It is a one by seven matrix. The NSR is a radically new rendering engine. It can juggle 7 pixels in a single pass applying advanced per-pixel shading effects.
What is per-pixel shading? It's a method of applying special rendering effects... per pixel. It allows material and real world effects to be applied individually to a pixel for more accuracy and intensity. Per-pixel shading will redefine the visual look and feel of imagery for PC graphics. Per-pixel shading has long been used in film production to create a more realistic and lifelike appearance for computer generated imagery. If you've seen Toy Story, you'll definitely remember Buzz Light-year. Remember the translucent reflection on Buzz's helmet? How the environment and light streaks reflected off the glass but also let the image underneath show through? That was done with per-pixel shading. Until now, it wasn't practical to use per-pixel shading on a PC because of the intense power and processing requirements needed. Sure, you could have done that in 3D Studio but could you have done it in real-time? Could the effect be applied to an entire frame at high resolution in 1/60th of a second? Not until now.
Per-pixel shading is useful for simulating natural phenomena and accurate surface attributes such as fur, cloth, metals, glass, rock, and other highly detailed surfaces.
Traditionally, effects were done on an entire triangle and sometimes an entire texture using a technique called interpolation. Special effects were done using calculations based on the vertices of the triangle and interpolating the entire area from the vertices. The end result is a generalized visual appearance… like an estimate or approximation of the final image. The benefit of using interpolation is it is fast to apply. But, the downside to it is that with large triangles, the resulting image contains artifacts, which degrades overall image accuracy and quality.
Using per-pixel shading, effects and calculations are applied to individual pixels. Since the triangle will be composed of many pixels, the resulting image is highly accurate in representing what the image was intended to be. Let's assume that a generic triangle is drawn together (including its area) using 100 pixels. Now, we also have a effect pallet of 10 effects. Each pixel then, can accept any one of the ten that are available. That's an outcome of 10,000 different possible effects just for that one triangle. If interpolation was used, than the effect is fixed using that one out of ten effects and generalized across the entire triangle.
Below is a visual comparison between interpolation and per-pixel shading.
The action doesn't stop there. This entire section was assuming that one pixel was being manipulated in one pass. The GeForce 2 contains 4 pixel pipelines... enabling seven effects per pixel, per pipeline, per pass!
These are the major features that NVIDIA has put into the GeForce 2 GTS chip. Want to know more in-depth information about it? Head over to our guide about the GeForce 2 GTS.
Now, let's move on to drivers.
Drivers are one of the most important things of a card's performance. They can hamper or push a card to its limits. Let's take a look at what Leadtek had to offer.
Above we see that Leadtek has implemented its tabs into the main level of the Display Properties panel. This method has its advantages and disadvantages.
The advantages are that users can change settings without having to go to sub-levels (e.g. Advanced). Users will have the convenience of instant access to driver settings right when they enter Display Properties. This is all nice and everything until you enter multiple display usage.
On Windows 98 and 2000, the OSes allow you to use multiple display adapters and multiple monitors. Now, when you're using multiple display adapters, you will need to install each card's independent display drivers. Let's say you have 2 GeForce 2 GTS cards, both from different manufacturers, or even the same one; you have to install drivers for each card. Why is this? Why can't you use the same driver if the two cards are identical? This is because the display DLL files cannot tell which adapter to control. You must select which card you want to activate and control. The upper level of the display control panel won't recognize which card you want to set unless you tell it to. Another thing to note is that tabs on the upper level cannot be changed dynamically when you switch adapters.
If the controls are in sub panels, than the display control can load the appropriate control applets for that specific card. This is one major drawback in having the setting tabs on the parent level. This is the reason why NVIDIA's Detonators have its settings in sub levels.
Let's go on with the drivers.