No, you are wrong, that's what APIs are made for, abstract the hardware so the same software can be run on different hardware design. That's why the same game can run on both NVIDIA and AMD, or the first Unreal run on today's hardware (which are completely different from what was available at the time).
No company do anything for charity (except real charity initiatives), do you think AMD work for charity?
You mean like how Gameworks is also compatible with AMD hardware but highly optimized for the Nvidia hardware? Or maybe how PhysX can also run on the CPU but produces slideshow when not run on Nvidia hardware? Maybe Hairworks is a better example?
AMD looks like charity these last years, not because it is charity, but because it lacks money and market share. Thanks to AMD you have Vulcan and DX12 and not an optimized DX11 that would kept favoring Intel(high IPC) and Nvidia(more optimized drivers for high IPC CPUs). Thanks to AMD you also have, finally, compatibility with Adaptive Sync and you don't have to pay a ridiculous amount of money for that GSync module. And let's not forget that AMD's TressFX was not killing performance when running on an Nvidia GPU.