0
代码:FloatBuffer抛出异常?我怎样才能解决这个问题?
FloatBuffer buf = BufferTools.reserveData(4);
float[] fl = new float[]{0.1f, 0.1f, 0.1f, 1.0f};
buf.put(fl);
其中buf.put(fl)
是线2039的错误都在谈论:
Exception in thread "main" java.lang.IllegalArgumentException: Number of remaining buffer elements is 0, must be at least 4. Because at most 4 elements can be returned, a buffer with at least 4 elements is required, regardless of actual returned element count
at org.lwjgl.BufferChecks.throwBufferSizeException(BufferChecks.java:162)
at org.lwjgl.BufferChecks.checkBufferSize(BufferChecks.java:189)
at org.lwjgl.BufferChecks.checkBuffer(BufferChecks.java:258)
at org.lwjgl.opengl.GL11.glLight(GL11.java:2039)
at Joehot200.TerrainDemo.setUpLighting(TerrainDemo.java:1543)
at Joehot200.TerrainDemo.enterGameLoop(TerrainDemo.java:1984)
at Joehot200.TerrainDemo.startGame(TerrainDemo.java:2109)
at Joehot200.Main.main(Main.java:56)
我在做什么错?我只想拥有一个带有4个元素的FloatBuffer,这样我就可以设置OpenGL环境照明。
什么是TerrainDemo:2109年,1984年和1543年? – Brian
因此,您向我们展示的代码来自'org.lwjgl.opengl.GL11',而不是您自己的代码? –
BufferTools不是'org.lwggl' API。它从何而来? –