所以我一直收到错误“从 char** 到 const GLchar** 的无效转换”。我在这里阅读过关于此错误的类似帖子,但我似乎仍然无法修复它,因此非常感谢您的帮助。下面是我的 opengl c++ 程序的片段。 我有一个声明如下的 char 函数:
char *loadShaderFile(char *fileName)
在不同的函数中,我执行以下操作:
char *vertexShaderSource = loadShaderFile((char *)"vshader.glsl");
glShaderSource(vertexShader, 1, &vertexShaderSource, NULL);
free(vertexShaderSource);
最佳答案
尝试在 char *
指针声明之前添加 const
限定符,如下所示:
const char *vertexShaderSource = loadShaderFile((char *)"vshader.glsl");
glShaderSource(vertexShader, 1, &vertexShaderSource, NULL);
free(vertexShaderSource);
关于C++ 将一个字符传递给 glShaderSource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50035865/