Compare this to D3D where you have to use a completely new API for each generation of hardware :POriginally Posted by HenriH
There are people out there who care about backwards compatibility, at least one generation back. With the D3D method, it's an all or nothing approach. If you want older hardware, you have to use the older API. If you want newer features, you have to use the newer API. If you want both, you have to write two renderers. If you want to use hardware that's between versions (not all features of DX10, but some of them), you're simply out of luck.
The extension mechanism is not about MS controlling the DLL on windows (Hint: there is an extension mechanism on Linux). It's about being able to code fallbacks without getting "entry point not found" errors on old systems.