Re: Splinter Cell - Fairness of using Projector mode for ben
First of all, thanks for the posts. Very informative.
Dany Lepage said:
I notice that some people were arguing about DirectX standards and such. Here is my take on this: With DX8 hardware, NVidia was the standard, they got the xbox contract and had their first DX8 part ready a long time before ATI did. NV20 was the standard for DX8, whatever was in it. Whatever features ATI was coming up with (like PS 1.4) didn't matter much from my perspective. With DX9, this is the exact opposite, R300 is the standard. My hope is that Microsoft will stop supporting "vendor extensions" like PS 1.4 and 2.0+ and just make the PC a console that gets a new API every 2 years (evolve much faster than a console anyway). As for the D3DFMT_D24S8, well, yes, it's a vendor extension but like I said, NV20 is standard for DX8.
I think that's an attitude that can be quite common. nVidia to some extent were the standard for DX8, and as a result many things in it were tailored closely to their specifications. Surely that should not, however, give them the right to then alter that specification as they choose at a later time? That makes the job of anyone else trying to create hardware and compete in the market very difficult.
Shadow buffers didn't make it into DX8 for whatever reason, and now you see the result - when they are later implemented through some special extension people get the idea that in some way other vendors failed to implement all of the spec, rather than the true situation. It can make life more difficult for us in the market.
In DX9, as you say, R300 was the first, and therefore the standard. There are, perhaps, things on R300 that are not fully exposed in DX9, but that being said, to the best of my knowledge, we have no plans to go around adding non-standard texture formats or circumventing the defined standard in any way. It would cease to be a standard then - Microsoft define the platform for ISVs and IHVs to aim at, not us.
I understand that the shadow buffer scheme was available on XBox, and like I said I think that it's fine that when you were presented with the opportunity to use that code on the PC you took it. Makes perfect sense, and makes your job in porting simpler.
However, on the subject of an IHV redefining the standard I think we'll just have to disagree. I believe that simply being the first (as with NV20 or R300) should surely be advantage enough.
Cheers
- Andy.