No one is using PS 1.4! See inside for details.

Tonyo said:
Sure "PS 1.4 merely provides the capability to render the same effects in much less passes", but you don't need ps1.4 functionality to run Doom3 in one pass and as result I'm reticent to qualify Doom3 as a game requiring ps1.4 functionality at all.
An 8-texture-stage ps1.1 capable card can do the rendering exactly the same the 8500 does it. In fact, if Radeon 8500 supported less than 6 textures, it wouldn't be able to do the rendering in one pass even if it's ps1.4 capable. The important issue is not ps1.4 functionality, but the number of different textures and total texture samplers.
Are there any cards that support PS 1.1 with 8 texture stages, but do not support PS 1.4 or 2.0?

It would be foolish to deny that 8500 technology is superior to GF4, but that doesn't mean that Doom3 needs ps1.4 functionality, as I think I've proved.
True, as long as dependant texture reads are not necessary, all that is required to render the scene in a single pass is a card that can do longer PS 1.1 programs with more texture reads. Otherwise, PS 1.4 -at minimum- is needed.
 
Tonyo said:
Sure "PS 1.4 merely provides the capability to render the same effects in much less passes", but you don't need ps1.4 functionality to run Doom3 in one pass and as result I'm reticent to qualify Doom3 as a game requiring ps1.4 functionality at all.
An 8-texture-stage ps1.1 capable card can do the rendering exactly the same the 8500 does it. In fact, if Radeon 8500 supported less than 6 textures, it wouldn't be able to do the rendering in one pass even if it's ps1.4 capable. The important issue is not ps1.4 functionality, but the number of different textures and total texture samplers.
PS1.4 functionality includes the ability to take up to 12 samples from 6 different textures.
So it's correct to say that ps1.4 functionality improves the performance of the game. Imagine a card that supports everything in ps3.0 except for one single feature that was introduced with ps1.4. Now the card would be a ps1.3 card. But with every shader that could run on this card you could say: "Oh, that doesn't require 1.4 functionality, it runs on a ps1.3 card". Sounds a bit ridiculous, I think.
 
Ostsol said:
Tonyo's arguments are only with regard to Doom 3.
Of course, but I think if the game makes use of only one specific feature in the ps1.4 feature set that doesn't exist in the ps1.3 feature set, it is valid to say that the game takes profit from ps1.4 capability.
 
Ostsol said:
Are there any cards that support PS 1.1 with 8 texture stages, but do not support PS 1.4 or 2.0?

Wildcat VP supports ps1.2 (ps1.1 + blue/alpha swizzles + writeable texture registers, I think) and in OpenGL it supports 8 simultaneous textures with NV_register_combiner extension.

Ostsol said:
True, as long as dependant texture reads are not necessary, all that is required to render the scene in a single pass is a card that can do longer PS 1.1 programs with more texture reads. Otherwise, PS 1.4 -at minimum- is needed.

I completely agree with you, then :)
 
Tonyo said:
Or in JC's words (referring to GF4 vs. 8500): "The ATI hardware is a little bit more capable, but not in any way that I care about."

I don't believe that that quote is relevant to your argument at all.

As I recall when he made that statement he was only referring to the vertex shaders on the hardware, not the fragment shaders.

My recollection is that in the same .plan update he said that the R200 fragment shaders were significantly better than those in GF3/4

So they might be JC's words, but you're putting them in places where he didn't say them... ;)
 
Wildcat VP supports ps1.2 (ps1.1 + blue/alpha swizzles + writeable texture registers, I think) and in OpenGL it supports 8 simultaneous textures with NV_register_combiner extension.

Thats purely a driver limitation. It can support PS1.4, or prgrammatically it could support PS2.0, its just the precision that stops compliancy.
 
DaveBaumann said:
Wildcat VP supports ps1.2 (ps1.1 + blue/alpha swizzles + writeable texture registers, I think) and in OpenGL it supports 8 simultaneous textures with NV_register_combiner extension.

Thats purely a driver limitation. It can support PS1.4, or prgrammatically it could support PS2.0, its just the precision that stops compliancy.

Well, that's untrue, for starters, Wildcat VP hardware supports 16bit integer and fp32 buffers (the latter at 2 components per pixel, no blending), although they are not exported. For example, the Wildcat VP implementation of OpenGL 2.0 shaders operates all the time in fp32 but for the final framebuffer write.

The reason why Wildcat VP doesn't support PS 1.3+ is because you cannot implement those instruction sets performance or resource-wise as required by MS's spec. So the hard fact is that, as far as Direct3D is concerned, Wildcat VP is a ps1.2 class card.

Anyway, this thread is getting messier and messier because of using Direct3D terminology for an OpenGL app. Doom3 is not ps1.4 nor ps1.1 (as OpenGL guy aknowledges in his first post). Disregarding the new extensions (ARB_fragment_program & NV_fragment_program), Doom3 either uses NV_register_combiner or ATI_fragment_program, and the facts are:
- either codepath can do the rendering in one pass (or it could if JC implemented an NV_register_combiner path for 8 texture stages, as supported by Wildcat VP).
- "ps1.4 class" card uses ATI_fragment_program and "pre-ps1.4 class" cards use NV_register_combiner.

So point one, you don't need "ps1.4 class" hardware to run Doom3 rendering in one pass.

And second, contrary to what Xmas says ("So it's correct to say that ps1.4 functionality improves the performance of the game") the fact that the rendering is done in one pass is not indicative of the performance, because for example, as JC states, more texture accesses could cause texture cache thrashing.

My pick on all this is that until we have real figures of Doom3 benchmark running on "ps1.4" and non "ps1.4" hardware, we cannot tell whether ps1.4 improves the Doom3 performance wrt non ps1.4 with the same image quality.
 
Reverend said:
I agree that it is a bit too "loud" for my liking. I don't agree that this is because of NVIDIA though. We're all responsible for that!
True, we're all at fault. I made that particular comment thinking of the whole the whole 3DMark2k3 issue though. Without Nvidia making this fuzz about 3DMak's "fairness" I doubt we'd have this conversation right now...
 
Dave H said:
NV25 was a refresh part. Adding PS 1.4 support presumably would have meant more futzing with the pixel pipeline than they like to do for a refresh.

Then what was the geforce 3 ti ? The geforce 3 ti was the refresh , the geforce 4 included hardware for fsaa if i recall correctly .
 
Tonyo said:
So point one, you don't need "ps1.4 class" hardware to run Doom3 rendering in one pass.

True, but unless Carmack writes a "Wildcat" path it will use the default NV20 path, thus using multiple passes to render the scene. As such, in a practical sense one needs at least PS1.4 class hardware to render a Doom 3 scene in a single pass.

I do recall that Carmack did write a beta OpenGL 2.0 path for the Wildcat, but that is likely to use some other fragment shading extension.
 
Perhaps it's useful to think of PS1.4 as PS2.0 lite.

If you write to PS1.4 spec, you target all DX9 cards and some DX8 cards
 
Back
Top