OpenGL 是跨平台的API,一种spec,没有具体的实现,要想在显卡中运行该API,需要编写对应的驱动程序,这部分一般由显卡产商编写。
Direct3D 是专门用于windows平台上的API,这种API一般会比跨平台的API性能要好。
Metal是苹果公司用于Mac和IOS上的API。
老OpenGL和现代OpenGL的区别在于有无shaders,现代OpenGL有shaders,有shaders可以更好的控制GPU。
C语言、c++、Java等语言是运行在CPU中的,shaders是运行在GPU中的,shaders是用openglsl语言写的。