我有一个用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);
实际上上面的代码工作,我的意思是错误得到了解决。但是,当应用程序运行时,不会显示/呈现任何3D内容。例如,将STL文件导入Qt应用程序时,不会显示STL内容。有没有人遇到类似的问题?
答案 0 :(得分:0)
只是为了帮助下一个可能遇到这样问题的人:
我在属于朋友的计算机上构建/运行了应用程序,该计算机有两张图形卡:一个 Intel 一个 Nvidia 。
对于 Intel 显卡,出现了与OpenGL版本相同的上一个问题。
对于 Nvidia 显卡,没有发生OpenGL错误。应用程序运行没有任何问题,可以呈现/查看导入的STL文件。因此,我的OpenGL错误是硬件相关。
我很想知道修改代码需要多少努力才能使3D应用程序也能在 Intel 显卡上运行。谁知道?