From my research I have seen that GDI+ (if i am wrong correct me please) is used by Graphics to draw various object, but also to my knowledge I am unsure if it utilizes the systems graphics card? If it does not could someone please lead me to a way that I can tell it to utilize the graphics cards many features, like the shader etc, or at-least how to code my own DirectX, OpenGL engine?
Thanks in advance.
P.S. The main thing I wish to complete is to draw a pixel by pixel representation of various object.
GDI+ and DirectX are two alternative libraries used to render graphics on your display on top of the windows operating system. Since, they are just interfaces to the OS, none of them can directly “talk” to your graphics card at the hardware level. All GDI+ functionality used to draw graphics such as your WinForms graphics, either directly or indirectly is just a call to the API in gdi32.dll system library. Similarly, DirectX functions too have their own API libraries to call.
It is often suggested that DirectX has much better performance in rendering 3D graphics, though in no way does it mean that GDI+ is lacking in any functionality or it doesn’t make use your graphics card – they both do indirectly through windows. For comparison, all WinForms graphics in .NET are based on GDI+ library, whereas WPF ones are based on DirectX.