我正在尝试使用osmesa(离屏幕esa)创建一个OpenGL上下文。我希望使用Mesa的软件实现,而不需要窗口,并将渲染输出保存为PNG文件。
http://www.mesa3d.org/osmesa.html
我使用以下代码创建GL上下文:
OSMesaContext context = OSMesaCreateContext(GL_RGBA, NULL);
OSMesaMakeCurrent(context, buffer, GL_UNSIGNED_BYTE, width, height);
然而,当我调用glGetString(GL_VERSION)
时,版本是2.1 Mesa 10.1.1
。如预期,我的GLSL ES着色器都无法编译。在使用SDL时,我可以提供版本提示并创建GLES 2.0上下文。
我该如何指定osmesa创建的GL上下文的版本?
MESA_GL_VERSION_OVERRIDE=999.999
运行,但我怀疑我的OpenGL版本是999.999
。 - Szabolcs Dombi