4 ms·
Shader replacement was extremely popular for years - see AMD's infamous Doom3 shader replacement: https://www.anandtech.com/show/1488/6 https://www.anandtech.co
by bri3d 8y ago
Shader replacement was extremely popular for years - see AMD's infamous Doom3 shader replacement: https://www.anandtech.com/show/1488/6 https://www.anandtech.com/show/1488/6 . NVidia drivers did the same thing although they were (generally) a bit smarter about it, relying on shader fingerprinting rather than application fingerprinting to prevent embarrassing "rename the EXE" expose articles. They were notoriously caught using a benchmark's camera path as a fingerprint: https://www.extremetech.com/computing/54154-driver-irregularities-may-inflate-nvidia-benchmarks https://www.extremetech.com/computing/54154-driver-irregular... .
GPU drivers are still loaded with such replacements, either to work around bugs or to optimize games where a developer partnership was impossible or otherwise rejected. I think that with the shift to lower-level GPU APIs this practice is beginning to fade, but it's basically been par for the course since programmable shaders became a thing.
- hjfa0j 8y agoThere's absolutely nothing wrong with shader replacement. Quite the opposite, as it shows the OEM cares about performance. They have two options: convince the game developer to use a better optimised shader or just replace it themselves. The latter is obviously better.
- bri3d 8y agoThe latter is obviously better? Shader replacement is fairly fragile and circumvents whatever QA process the game developers had in place - if the shader could be incorporated into the actual product I would think it would be better than shipping thousands of patches. However, I agree that shader replacement is great for the consumer especially in situations where developers have agreed to vendor lock-in/specialization agreements. It's only questionable to me in the sense of benchmarking applications.
- lisk1 8y agoDoom 3 was selling title for Nvidia back in the days. Carmack and Co. didnt wanted to do any optimizations for ATI cards because it wont favor Nvidia cards and they had a contract with them back then.