在Linux下,可以通過sudo glxinfo | grep "OpenGL"查看當前的OpenGL版本,如圖所示:
前面的core profile指的是OpenGL的核心模式版本,后面的ES指的是OpenGL ES版本,這個一般在安卓,ios等設備上用的多。如果查看版本的命令行提示無效,輸入以下命令后即可:sudo apt-get install mesa-utils。
錯誤2:error: GLSL 3.30 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.00 ES, and 3.00 ES
這個問題是由於VMware只支持3.3版本的核心模式(core profile),並不支持其兼容模式(Compatibility Profile),設置只應用核心模式即可.
1.在QT中
在實現OpenGL功能的類(繼承了QOpenGLWidget的類)中的構造函數里添加:
QSurfaceFormat fmt;
fmt.setVersion( 3, 3 );
fmt.setProfile( QSurfaceFormat::CoreProfile );
setFormat( fmt );
QSurfaceFormat::setDefaultFormat( fmt );
2.在glfw中
在main.cpp中加入:
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
————————————————
版權聲明:本文為CSDN博主「風煙倦」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_37996632/java/article/details/100329045