(1)(2)一开始学,应该是OpenGL比较直观,DirectX语法比较复杂,不过跨过这道坎以后,区别不大。写到复杂效果的话,是要使用着色器语言的,这里的难度不在于是OpenGL还是DirectX,而在于你的数学、图形学、及算法功底。两个引擎都能实现很好的图形效果。区别在于,一个熟练的DirectX工程师,可以使用DirectX发挥最新的显卡的性能,效率高于OpenGL,注意前提是你要熟练。DirectX的缺点是不支持Linux,所以在强调跨平台的工业领域用的不多。(3)(4)windows系统都预装了OpenGL和DirectX的运行文件(DLL)。安装Visual C++时,会自动安装OpenGL开发用的文件(LIB),不过不提供DirectX开发用的文件(LIB)。至于OpenGL,很多人还会使用GLUT,这样可以少写一些Win32本地代码,GLUT需要单独下载。至于DirectX,微软官网上有下载,安装也很方便。显卡的硬件和驱动同时支持opengl和directx。 windows用户界面使用DirectX,游戏一般用DirectX,一些专业软件使用OpenGL。他们能实现的效果是相近的,没有哪个效果更好这种差别。