There is no chance of the same happening with AMD and TW3, since at least at the beginning of 2014:
According to Nvidia, developers can, under certain licensing circumstances,
gain access to (and optimize) the GameWorks code, but cannot share
that code with AMD for optimization purposes.
See [2] for the source of that statement.The situation is really that different.
[1] http://www.eurogamer.net/articles/2013-03-07-nvidia-apologis...
[2] http://www.extremetech.com/extreme/173511-nvidias-gameworks-...
If NVIDIA is actively restricting access to the code for HairWorks that is indeed very scummy, however, they would technically still be within their rights.
[1]: http://www.pcper.com/reviews/Editorial/NVIDIA-and-AMD-Fight-...
Intel was still within their right (technically) when it forced their own compiler to compile non-optimized code for AMD CPUs. That does not make it right for us, the customers, this is the point I wanted to make.
That's an discussion that's likely to never come to a sensible conclusion :). The AMD/NVIDIA situation is definitely one of the negative outcomes of an open/competitive marketplace.
What does that have to do with my core point of AMD sitting back and complaining?
> This cannot be said about whatever Nvidia does which cannot be disclosed to IHVs.
NVIDIA provides restricted source to everything but TXAA, PhysX and beta libraries.[1] I'll re-iterate my point: AMD would have access to the code if they walked in the door.
[1]: http://www.pcper.com/reviews/Editorial/NVIDIA-and-AMD-Fight-...
AMD: here is the code, optimize it.
NVidia: there is the binary blob (you can't look at the code), feel free to make your card exhibit the same performance characteristics as our geforce reference cards without infringing on our patents. No, you can't change the code. You could hot patch game executables though.
AMD is not allowed to look at the source.