前言
学习3d游戏开发,避免不了和图形学打交道,在电脑上安装一些大型游戏时,也经常会报缺少一些东西,而导致游戏无法运行,其中出现的单词就有DirectX,但他是什么呢?OpenGL又是什么呢?unity3d游戏开发中逼真的游戏场景和特效又是和谁打交道呢?让我们开始了解OpenGL和DirectX吧!
OpenGL是什么
OpenGL(全写Open Graphics Library)是个定义了一个跨编程语言、跨平台的编程接口规格的专业的图形程序接口。它用于三维图象(二维的亦可),是一个功能强大,调用方便的底层图形库。OpenGL是个与硬件无关的软件接口,可以在不同的平台如Windows 95、Windows NT、Unix、Linux、MacOS、OS/2之间进行移植。因此,支持OpenGL的软件具有很好的移植性,可以获得非常广泛的应用。由于OpenGL是图形的底层图形库,没有提供几何实体图元,不能直接用以描述场景。但是,通过一些转换程序,可以很方便地将AutoCAD[2] 、3DS/3DSMAX[3] 等3D图形设计软件制作的DXF和3DS模型文件转换成OpenGL的顶点数组。
市场调研机构Jon Peddie Research预测,OpenGL 3.1规范图形硬件的安装规模将超过1亿。AMD、NVIDIA、S3 Graphics的显卡驱动目前都已经支持OpenGL 3.0。