代码之家  ›  专栏  ›  技术社区  ›  Megidd

错误:不支持GLSL 3.30。支持的版本有:1.10、1.20、1.30、1.00 es、3.00 es、3.10 es和3.20 es[关闭]

  •  1
  • Megidd  · 技术社区  · 6 年前

    我有一个用opengl开发的3d应用程序的qt代码。我正试图用qtcreator构建/运行qt应用程序,但出现以下错误:

    Error in compiling shader.
    
    0:1(10): error: GLSL 3.30 is not supported. Supported versions are: 1.10, 1.20, 1.30, 1.00 ES, 3.00 ES, 3.10 ES, and 3.20 ES
    

    我尝试按照 this answer :

    QSurfaceFormat glFormat;
    glFormat.setVersion(3, 3);
    glFormat.setProfile(QSurfaceFormat::CoreProfile);
    QSurfaceFormat::setDefaultFormat(glFormat);
    

    实际上,上面的代码起作用了,我是说错误得到了解决。但是,当应用程序运行时, 不显示/渲染任何三维内容 . 例如,当将STL文件导入QT应用程序时,未显示STL内容。有人遇到过类似的问题吗?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Megidd    6 年前

    只是为了帮助下一个可能遇到这种问题的人:


    我在一台朋友的电脑上建立/运行了这个应用程序,这台电脑有两张图形卡:一张 英特尔 一个 恩维迪亚

    在这种情况下 英特尔 图形卡与以前的opengl版本相同。

    在这种情况下 恩维迪亚 图形卡,未发生OpenGL错误。该应用程序无需运行任何问题,可以导入/查看导入的STL文件。因此,我的OpenGL错误是 硬件相关


    我想知道的是,修改代码使3D应用程序能够运行,需要付出多大的努力 英特尔 显卡也是。谁知道呢?