Confusion abounds because Microsoft keep redefining their words. There was DirectDraw (hardware accelerated viewports) and DirectX (hardware accelerated 3D functionality).
Then came DirectSound to replace MMIO and ActiveX Sound. (ActiveX was the root and DirectX and ActiveX Sound extensions of it, but became COM, or the Component Object Model, and then forked into COM+ and DCOM)
DirectX then acquired 2D functionality in parallel with DirectDraw. So you could use DirectDraw or Direct2D from DirectX.
Then we got GDIPlus (GDI+) which performed hardware accelerated 2D functionality extensions to 2D without the need for a graphics viewport at all. Graphics cards where managing the entire display as essentially a "viewport" and performing native blitting faster than viewport rendering. So DirectX (which had strong brand loyalty) was broken down into Direct3D, Direct2D, DirectInput and DirectPlay. (since it now contained I/O control for analogue sticks and game pads and had networking to stop the whole IPX/SPX vs. TCP/IP vs. NetBUI thing)
DirectPlay never took off and has largely been dropped, and DirectInput never caught on as a marketable term, so it's not really used, but DirectX still has performance user input functionality, and DirectPlay is still supported as a DX function.
Now DirectX is just DirectX. And DWM wraps GDI, GDIPlus, WMV, Video For Windows and DirectDraw to WPF (the Windows Presentation Foundation / Framework) which is a DotNet representation of high-performance graphics routines, which is it's self backed by DirectX. :sigh:
So the high performance APIs which mimic other software implementations only using parameters which where more compatible with GPUs of the time than a generic CPU may well perform slower than the generic CPU implemented APIs which are no longer performed by the CPU because DWM and WPF will wrap those to DirectX anyway, and the GPUs of today don't speak in any way the kind of terminology that traditional GPUs did, so translating the API parameters may even be easier from the generic CPU APIs than the specific GPU accelerated ones. :(:
At least, that's what I can make of the info I've received from the MSDN weekly bollox updates I've had over the years. :ott1:
It's advancement. But it makes history very confusing.