如何将GLES包含在旧GL中

时间:2013-05-27 14:26:59

标签: c++ opengl-es

嗯,我对图形编程很陌生,而且我不确定我对这个GLES的假设是否正确。但是,我如何正确地包含它...因为我在我的程序中需要glBlendFuncSeparator()作为glColorMask()的替代,我只能在GLES/gl2.h中找到它?

还有一个..我可以在PC上使用GLES功能吗?因为我遇到的很多东西都是手机编程等。

1 个答案:

答案 0 :(得分:3)

OpenGL ES代码在OpenGL上运行不需要太多工作,因为OpenGL ES基本上是OpenGL的一个子集。您想要的任何OpenGL ES功能也可以在OpenGL中使用。

但是,如果您正在编写Windows桌面应用程序,则必须警惕Microsoft提供的过时标头。 Microsoft的OpenGL标题适用于OpenGL 1.1,为了让您了解它是如何过时的,OpenGL 1.2于1998年发布。为了在Windows上编写现代OpenGL程序,您需要更新的标题或方式获取指向所需功能的指针。 GLEW(GLEW home page)是一个经常用于此目的的库。

您列出的功能应该适用于所有OpenGL实现(除了Windows上的软件OpenGL渲染器)。 glColorMask()man page)自版本1.0以来一直是OpenGL的一部分,glBlendFuncSeparate()man page)自版本1.4以来一直是OpenGL的一部分(你的意思是"分离& #34;,对吗?#34;分隔符"可能是一个错字。)

如果您愿意,还可以在桌面上创建OpenGL ES上下文。它有点棘手且特定于平台,但创建一个普通的OpenGL上下文也是如此。