Я пытаюсь запустить пример GLSL , но не могу.
Ошибка в строке glGetShaderiv(vShader, GL_COMPILE_STATUS, &status);
, где выходит программа. vShader
это файл vPhong.glsl
.
Возвращенная ошибка:
0(18) : error C0000: syntax error, unexpected $undefined at token "<undefined>"
0(18) : error C0501: type name expected at token "<undefined>"
Я «установил» и ссылался на GLEW и Glut и их lib-файлы. Я glewInit
редактировал мою программу.
Программа умеет находить .glsl-файлы.
Странно то, что я могу запустить предварительно скомпилированную GLSL-демонстрацию , а также скомпилировать и запустить проект на моем компьютере. «Инициализации» в нерабочей программе и это то же самое.
Я попытался скопировать дефектный источник в успешный проект, чтобы проверить, не было ли что-то в настройках проекта, вызвавшее ошибку, но, к сожалению, это не так. Так что, похоже, ошибка в коде C ++, а не в проекте.
ПРОГРЕСС:
На моей Windows 7-машине я получил «Нарушение прав доступа» при работе через Visual Studio. Программа просто перестала работать, если я запустил ее «один». На Windows XP-машине я получил необдуманное исключение.
Я не получил ошибок или предупреждений (кроме предупреждения о том, что fopen
небезопасен), когда я компилировал программу.
Visual Studio выделил строку vShader = glCreateShader(GL_VERTEX_SHADER);
в качестве источника ошибки.
Добавление glewInit();
исправило вышеуказанные ошибки.