我最近使用LWJGL 3制作了一个项目但是遇到了障碍。我已经看了一遍,但似乎无法弄清楚为什么调用GL20.glShaderSource(shaderId, shaderCode)
然后替换GL20.glCompileShader(shaderId)
会返回错误。我收到的错误使得它看起来好像lwjgl无法识别着色器文件的路径:
LWJGL Version 3.1.2 build 13
java.lang.Exception: ERROR COMPILING SHADER CODE: VERTEX SHADER FAILED TO
COMPILE WITH THE FOLLOWING ERRORS:
ERROR: 0:1: ERROR(#132) SYNTAX ERROR: "/" PARSE ERROR
ERROR: ERROR(#273) 1 COMPILATION ERRORS. NO CODE GENERATED
at com.wilby.model.ShaderProgram.createShader(ShaderProgram.java:47)
at com.wilby.model.ShaderProgram.createVertexShader(ShaderProgram.java:24)
at com.wilby.Renderer.initialise(Renderer.java:62)
at com.wilby.Game.initialise(Game.java:46)
at com.wilby.Game.loop(Game.java:23)
at com.wilby.Main.run(Main.java:27)
at com.wilby.Main.main(Main.java:16)
然而,即使文件不需要任何前缀来达到它,它仍然会出现此错误。就像我说的那样,我完全被难倒了。
我项目的链接是here。
答案 0 :(得分:0)
我找到了解决方案。您必须读取该文件并将其用作着色器源方法中的字符串。捂脸。