OpenGL ES和OpenGL有什么区别?
发布于 2010-12-23 13:47:43
OpenGL ES和OpenGL的两个比较显著的区别是glBegin的去除。glEnd对原始呈现的调用语义(有利于顶点数组),以及引入定点数据类型,用于顶点坐标和属性,以更好地支持嵌入式处理器的计算能力,而嵌入式处理器通常缺乏FPU。
看看这里:ES
发布于 2011-08-24 18:58:09
OpenGL ES是用于嵌入式系统的opengl。就api函数的数量而言,它比普通的opengl更简单,但可能更难使用,因为您必须使用顶点缓冲区并编写更多的着色器。
当您使用普通opengl时,您可以使用glBegin和glEnd来封装您需要绘制的几何原语,但是在使用Opengl时,您必须使用顶点缓冲区。我想这是出于性能考虑。
目前有两种Opengl ES版本,1.1版只能支持固定渲染流水线,而2.0版则支持glsl着色器。然而,它没有固定的渲染管道。换句话说,你必须为每件事写你自己的着色器。
Opengl ES主要用于手机和网络(webgl)。根据规范,您的桌面opengl驱动程序可以支持所有opengl es apis。
发布于 2012-06-23 21:05:59
我想补充的是,通过使用OpenGL 3.3的一个子集,OpenGL 3.3和OpenGL es2.0基本上是可互操作的。我的自定义C++引擎对Android/IOS/Windows/OSX/Linux使用相同的API调用,并定义了几个API调用。
其中的主要区别是:
还有许多其他的差异,但这涵盖了几个重要的差异。
https://stackoverflow.com/questions/4519264
复制相似问题