Having both options also gives a wider range of compatibility with some computers/cards, like even if a card is supposed to work with OpenGL, there's always some people having weird problems that could be fixed by switching to DX. By the way doc, I've just had a course on Computer !@#$%^&*isted Drawing, in which we did some array operations to rotate, scale, translate, etc. So if you need help on something specific, I might be able to help you out