Wow, Ben, you're a slippery one. That's a compliment.
Originally posted by: BenSkywalker
I'm sure Freelancer "requires" DX9 mainly to force people to update, and not for D3D9 specifically. Heck, the game has been in development since probably before DX9 was even conceived!
How many games do you think are going to utilize heavy pixel shaders? That is the issue on the performance front. What games are pushing shader tech? The most dramatic useage of pixel shaders we have seen in any upcoming title is Doom3, without the shaders the game would look like sh!t. We heard about the shader revolution with PS1.4, I'm still waiting to see huge edge be close to wide spread. You can point to certain cases, as you could at launch, but where is this huge influx of PS1.4 games we started hearing about close to two years ago? nVidia had the same thing with Dot3. Close to launch they could point to Evolva, Giants and through a patch Sacrifice(two of which were excellent games). By the time games started using it regularly, we were talking about the DX9 class parts. Somehow, despite the by comparison miniscule installed base of the R3x0 core boards, this time will be different.
I think *a lot* of games are going to push heavy pixelshader usage in the short-term future. Doom3 is certainly *not* the most dramatic, as it doesn't rely on many shaders to improve the visuals. I've read that the Doom3 shaders mainly reduce the number of passes needed for the lighting. It won't use anywhere near the amount of advanced shaders (PS1.4+ level) as Half-Life 2, which is the true showcase of pixelshading.
This time, there *is* a shader revolution, because of HLSL. Shaders were extremely difficult to program for in DX8. With DX9, the technology is being quickly brought to market. Who would've guessed (among gamers) that 9 months after DX9 became publicly available, DX9 games would start appearing?
Halo PC just went gold and will be using DX9 shaders that take advantage of the latest hardware.
Carmack has said the quality is slightly lower with the NV3x path. Obviously some tradeoffs must have been made for performance, however small.
Carmack stated there was no discernable quality difference. If you want to talk about the theoretical sense, then Carmack said the R3x0 line is incapable of running the game at the highest quality settings(it can't run FP32).
For Doom3, the quality difference may not be noticeable, but that doesn't change the fact that FX12 must be used as much as possible to get acceptable performance. Artists will make the appropriate compromises to ensure FX12 doesn't look bad. Imagine if the NV3x had fullspeed FP32. The game would probably look noticeably better because the artists would have less restrictions and would take advantage of what FP32 can do.
As for the R3x0, that's true! It's incapable of running at highest quality. But it can run at slightly less quality (a much less discernable difference than with FP24 vs FP16/FX12) at double the speed of the NV3x's FP32, with no need for architecture-specific optimizations. What's the point of having theoretical capabilities that can't be used practically by gamers?
In Half-Life 2, there's reportedly a very noticeable difference between FP24 and FP16/FX12.
ATI made the best compromise between quality and performance. Always full precision ("enough"). Always full speed. No fuss.
The NV3x lineup *needs* FX12 to run optimally, so developers like Valve have had to make concessions in their standard DX9 path for integer precision.
Not true for the NV35, and reportedly won't be true for the NV36 or NV38 either.
I don't know whether the NV35+ can run FP16 as well as FX12, but it doesn't matter anyway, because all NV3x's will be using the same path that includes FX12. Or do you expect developers to make TWO custom DX9 paths for NV3x?
So you're disagreeing with my statement that the NV3x *needs* special considerations outside of the standard APIs? I'm not just talking about Doom3. My assertion is that the NV3x can't handle standard code acceptably. Forget about taking advantage of additional features not exposed in the APIs - the NV3x suffers *too much* without architecture-specific optimizations.
It depends greatly on what you are talking about. There is one area of serious weakness looking at performance for the NV3X, PS2.0 shader performance. Reread my comments, I haven't been debating if that is true or not. What besides PS 2.0 does the FX need "special consideration" for?
PS2.0 is the killer feature of DX9.
Okay, so let's distinguish the PS2.0-heavy games from the rest. The NV3x needs special consideration for games using advanced DX9-level shaders. Most if not all of the upcoming AAA DX9 titles will use PS2.0.
Why? Was the Doom3 engine a standard that ATI had input on?
In a manner, yes it was. The Doom3 engine is going to be the standard for OGL gaming for years to come.
A standard that ATI
had input on? Doom3 was built around Nvidia hardware.
Don't even bring up the Doom3 benchmark, which was just a one-time PR stunt put on by Nvidia, that ATI didn't even know about or optimize for. And ATI still won the high quality tests.
The first time ATi got their hands on Doom3 it ended up on Kazaa. As far as a one time PR stunt, why didn't Valve wait until nV had
their optimized drivers done? For the benchmark numbers, look at what the then latest Cat drivers had for performance. Having to resort to older drivers to run better then the 5200 IIRC(may have been quite a bit slower then that actually).
Valve waited until the final month that their game is expected to be released! Why should Valve wait for Nvidia when they already spent so much time optimizing for their hardware? Nvidia was expecting to have their beta drivers used, but Valve determined them to be unacceptable. No more waiting.
Contrast that with the Doom3 benchmark preview. ATI has to wait for an indefinite period of time for a chance to set the record straight.
What DX9-exclusive features does Freelancer use? Would you say it's a worthy demonstration of DX9 on the basis of DX9 content, or does it just have token DX9 effects?
It doesn't use PS 2.0, which seems be your sole focus.
Oh right, advanced shaders are not the main focus of DX9.