Originally posted by Nutty
It seems to me, you dont know much of what you're talking about.
The NV30 does not do raytracing. You can force it to do it, by encoding polygon ray intersection tests into the vertex/fragment programs, but it's still basically a scanline rasterizer.
Utter rubbish. The Nv30 supports pixel shader 2.0. The current batch of gf3/gf4's have very limited dependant texture read operations. Whereas with pixel shader 2.0, they are completely general and very flexable.
Again this is wrong. Bump-mapping, and advanced lighting effects all are done on the fragment level. This isn't gonna change simply because we have more polygons in models.
Some other stuff you say seems right tho.
NV30 Raytracing: I think you're right on that, nVidia is being very vague. Probably only an "advanced" instruction allowing for it to be less of a performance penalty ( 85% instead of 99% maybe, hehe? ) . I guess i should look at the NV30 PS raytracing example in nV SDK one of those days.
Pixel Shader stuff: Really, really sorry - my mistake. I shouldn't have compared it to PS 1.4 but to VS 1.1 . It's basically VS 1.1 for Pixels i think + a very little specific stuff.
Advanced Lighting/Bump-mapping: As i said, i'm a 2D in 3D programmer, so i really didn't think about the bump-mapping part.
But i fail to understand your point with "advanced lighting".
AFAIK, that's only per-pixel lighting. And my very point is that PS will become less usefull ( but still usefull in specific cases such as your excellent bump-mapping example ) - not useless.
Per-Pixel lighting, IMO, has a huge performance cost for a small gain in very high polygon count model compared to vertex lighting. So it should become an option to enable it or not i think.
So, yes, you do have a very interesting points and i'm sorry i did several mistakes.
Now, time for another quote:
Originally posted by Nutty
The CineFX papers had a mistake claiming a maximum of 1024 static instructions for the NV3x vertex shaders. This has been corrected, and is now claimed to be 256 instructions for the NV3x VS.
Each loop having 65536 instructions? LOL, someone has been hitting the crack pipe pretty hard.
In case you were confused about the pixel shaders as well...
R300 = 255 loops * 255 instructions per loop + 1 last instruction = 65026 instructions total.
NV3x = 256 loops * 256 instructions per loop = 65536 instructions total.
The CineFX claims about the R300's swizzling, registers, flow control, and constants were innaccurate as well.
Methinks this thread title is quite humorous.
One word: AUGH. Typo.
Here's what i said:
"nVidia way is better: maximum 256 loops and each having a maximum of 65536 instructions."
Here's what it should have been:
"nVidia way is better: maximum 256 loops and each having a maximum of 256 instructions."
So yes, i did a HUGE mistake here. Have you never had a typo?
So, you're saying the R300 has 255 maximum loops? That really surprises me. Can you show me a document which proofs what you advance?
EDIT: You're saying the NV30 is nothing but vague paper specs.
Well, err, i may sound lame to link this but...
There, you can see a NV30 running on a IKOS box at a few Khz. So it's AWFULLY slow, but it works!
Now, let's just hope the real version is faster