我试图运行一个GLSL example,但我不能。编译和运行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和过剩和他们的LIB-文件。我有glewInit
'编辑我的程序。
程序能够找到.glsl文件。
奇怪的是我能运行一个precompiled GLSL-demo,并且在我的电脑上编译并运行the project。非工作计划中的“初始化”与此相同。
我试图将有缺陷的源复制到成功的项目中,以查看项目设置中是否存在导致错误的内容,但不幸的是,情况并非如此。 所以这个错误似乎是在C++代码中,而不是项目。
进展情况:
在我的Windows 7机器通过Visual Studio运行时,我得到了 “访问冲突”。如果我“独自”运行该程序,该程序停止工作。在Windows XP计算机上,我得到了未捕获的异常。
当我编译程序时,我没有收到任何错误或警告(除了警告fopen
是不安全的)。
Visual Studio突出显示行vShader = glCreateShader(GL_VERTEX_SHADER);
作为错误的来源。
添加glewInit();
修复了上述错误。
你给的链接是坏的? – ufukgun 2009-12-17 15:53:57
有关更多信息,在该点程序停止工作(我假设通过视觉工作室运行它也会告诉你异常的起源)也将有所帮助(当然链接是固定的...) – Grizzly 2009-12-17 16:09:39
Link isn破坏了。 :)我已经提供了有关错误发生位置的更多信息。 – jumoel 2009-12-17 16:27:25