opengl版本問題


 

在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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM