Core profile vs version string? Only getting GLSL 1.3/OGL 3.0 in mesa 10.0.1

℡╲_俬逩灬. 提交于 2019-12-18 04:49:08

问题


In theory, mesa 10.0.1 should support OpenGL 3.3 but currently I'm only getting 3.0 support.

glxinfo gives some confusing results...

[pdel@architect build]$ glxinfo | grep -i opengl
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Mobile 
OpenGL core profile version string: 3.3 (Core Profile) Mesa 10.0.1
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 10.0.1
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:

(currently running Intel HD Graphics 4000)

Can anyone explain the difference between the "core profile version string" and the "version string" and why they're different?


回答1:


It's right there in the release notes:

OpenGL 3.3 is only available if requested at context creation because compatibility contexts not supported.

It looks like glxinfo first tries to grab the highest supported core profile information and then drops back to non-core.

So you get two sets of versions, one for a core profile and another for a non-core profile.

If you want OpenGL 3.3 under Mesa you must create a core profile.



来源:https://stackoverflow.com/questions/20779242/core-profile-vs-version-string-only-getting-glsl-1-3-ogl-3-0-in-mesa-10-0-1

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!