Qt 错误:C2065:';GL#U几何体#U着色器';:未声明的标识符
我在尝试使用Qt Creator和安装了Qt 5.11和MSVC 2017编译器的QtCreator构建应用程序时遇到此错误: C:\Users\IEUser\go\src\company\3dpe\3dpe materials.cpp:190:错误: C2065:“GL_几何体_着色器”:未声明的标识符 错误发生在下面代码的第二行,请注意第1行和第3行是正常的,只有第2行是坏的:Qt 错误:C2065:';GL#U几何体#U着色器';:未声明的标识符,qt,opengl-es,Qt,Opengl Es,我在尝试使用Qt Creator和安装了Qt 5.11和MSVC 2017编译器的QtCreator构建应用程序时遇到此错误: C:\Users\IEUser\go\src\company\3dpe\3dpe materials.cpp:190:错误: C2065:“GL_几何体_着色器”:未声明的标识符 错误发生在下面代码的第二行,请注意第1行和第3行是正常的,只有第2行是坏的: data[renderer]->vtxShd = addShaderToProgram(vertexShad
data[renderer]->vtxShd = addShaderToProgram(vertexShaderSource, GL_VERTEX_SHADER, data[renderer]->shdPrg, renderer);
data[renderer]->geoShd = addShaderToProgram(geometryShaderSource, GL_GEOMETRY_SHADER, data[renderer]->shdPrg, renderer);
data[renderer]->frgShd = addShaderToProgram(fragmentShaderSource, GL_FRAGMENT_SHADER, data[renderer]->shdPrg, renderer);
错误屏幕截图如下所示:
发生此错误的原因是未在以下头文件中定义
GL\u GEOMETRY\u着色器
:
gl3.h
头文件:
Directory: C:\Qt\Qt5.11.0\5.11.0\winrt_x64_msvc2017\include\QtANGLE\GLES3
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/14/2018 11:28 PM 83875 gl3.h
Directory: C:\Qt\Qt5.11.0\5.11.0\winrt_x64_msvc2017\include\QtANGLE\GLES2
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/14/2018 11:28 PM 44659 gl2.h
gl2.h
头文件:
Directory: C:\Qt\Qt5.11.0\5.11.0\winrt_x64_msvc2017\include\QtANGLE\GLES3
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/14/2018 11:28 PM 83875 gl3.h
Directory: C:\Qt\Qt5.11.0\5.11.0\winrt_x64_msvc2017\include\QtANGLE\GLES2
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/14/2018 11:28 PM 44659 gl2.h
使用MinGW编译器构建时,不会发生错误
到目前为止,我还没有找到解决方案,只是想有人会帮忙。几何体着色器在OpenGL ES 3.0中不受支持。看 但自从OpenGL ES 3.2以来,几何体着色器就得到了支持。看
请进一步参阅。@user3405291 3.2是最新的OpenGL ES版本。但这取决于您的硬件和驱动程序是否受支持。