You're right. I can confirm this quote. I didn't recall that the Creature demo used the per-pixel lighting feature. It's great at we do have at least one demo.
Here is a link to the article I was thinking of previously. Does anyone know if the example image is from a demo or a game?
https://web.archive.org/web/20011022022924/ht … ?IO=feature_nsr
The attachment image.gif is no longer available
The technology is specifically called the "NVIDIA Shading Rasterizer (NSR)", and was introduced with the GeForce 2 GTS, and I assume is present in all of the GeForce 2 silicon. It seems to have been available as an API feature as of DirectX 6, and an OpenGL extension:
The NSR provides hardware support through its register combiner functionality for the texture blending
operation called a dot p […]
Show full quote
The NSR provides hardware support through its register combiner functionality for the texture blending
operation called a dot product that makes per-pixel calculations possible. Available to developers in
the Microsoft®
DirectX®
6 API and above (D3DTOP_DOTPRODUCT3) as well as OpenGL®
(via the
NV_register_combiners extension), dot-product texture-blending operations allow diffuse, specular,
spot, and point light effects to be calculated dynamically on a per-pixel basis.
The "Lightning" demo also showcases the per-pixel lighting feature as well. I guess it was used more often than I thought.
NVIDIA originally created this technical demo to show off the benefits of per-pixel lighting.
This also finally explains for me why the little water demo with the lamp post doesn't render properly on TNT cards. It's definitely the per-pixel lighting feature.
There is definitely lots of mention of per-pixel lighting, but nothing about programmable shaders.
TheAbandonwareGuy wrote on 2023-03-15, 15:01:
So fun fact GeForce2MX (Along with all other GF2s) and ATI Radeon both support pixel shaders 1.0a, but neither fully supports Vertex shaders (Radeon has some quasi Vertex capabilities via ATI specific OGL extensions that almost nothing supports, GeForce has zero Vertex support). Thus both are somewhere in the middle between being DirectX 7 and DirectX8 class video cards.
I believe that this premise is false. Per-pixel lighting and other effects were available as established API extensions as early as DirectX 6, but (programmable) shaders were not available until DirectX 8. Even though the DirectX 6 API supported it, NVIDIA did not provide hardware support until their DirectX 7 product, the GeForce 2 GTS; although I wonder if the feature also exists in the earlier "GeForce" cards as well, but was not advertised. I can only confirm that it's not there on the TNT2.
I also wonder if we can find any DirectX 6 cards from other manufacturers with per-pixel lighting support.