error: C2065: 'GL_GEOMETRY_SHADER': undeclared identifier
error: C2065: 'GL_GEOMETRY_SHADER': undeclared identifier
我在尝试使用带有 Qt 5.11 的 QtCreator 和 Microsoft Visual Studio Community 2017 安装的 MSVC 2017 编译器构建应用程序时遇到此错误:
C:\Users\IEUser\go\src\companydpedpe-materials.cpp:190: error:
C2065: 'GL_GEOMETRY_SHADER': undeclared identifier
错误发生在下面代码的第二行,注意第一行和第三行都可以,只有第二行是错误的:
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_GEOMETRY_SHADER
未在以下头文件中定义:
gl3.h
头文件:
Directory: C:\Qt\Qt5.11.0.11.0\winrt_x64_msvc2017\include\QtANGLE\GLES3
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/14/2018 11:28 PM 83875 gl3.h
gl2.h
头文件:
Directory: C:\Qt\Qt5.11.0.11.0\winrt_x64_msvc2017\include\QtANGLE\GLES2
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/14/2018 11:28 PM 44659 gl2.h
使用 MinGW 编译器构建时 NOT 不会发生错误。
到目前为止我还想不出解决办法,只是想有人会帮忙。
OpenGL ES 3.0 不 支持几何着色器。参见 OpenGL ES Shading Language 3.00 Specification
但是从 OpenGL ES 3.2 开始支持几何着色器。看。 OpenGL ES Shading Language 3.20 Specification
进一步查看 Khronos OpenGL ES Registry。
我在尝试使用带有 Qt 5.11 的 QtCreator 和 Microsoft Visual Studio Community 2017 安装的 MSVC 2017 编译器构建应用程序时遇到此错误:
C:\Users\IEUser\go\src\companydpedpe-materials.cpp:190: error: C2065: 'GL_GEOMETRY_SHADER': undeclared identifier
错误发生在下面代码的第二行,注意第一行和第三行都可以,只有第二行是错误的:
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_GEOMETRY_SHADER
未在以下头文件中定义:
gl3.h
头文件:
Directory: C:\Qt\Qt5.11.0.11.0\winrt_x64_msvc2017\include\QtANGLE\GLES3
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/14/2018 11:28 PM 83875 gl3.h
gl2.h
头文件:
Directory: C:\Qt\Qt5.11.0.11.0\winrt_x64_msvc2017\include\QtANGLE\GLES2
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 5/14/2018 11:28 PM 44659 gl2.h
使用 MinGW 编译器构建时 NOT 不会发生错误。
到目前为止我还想不出解决办法,只是想有人会帮忙。
OpenGL ES 3.0 不 支持几何着色器。参见 OpenGL ES Shading Language 3.00 Specification
但是从 OpenGL ES 3.2 开始支持几何着色器。看。 OpenGL ES Shading Language 3.20 Specification
进一步查看 Khronos OpenGL ES Registry。