1
我无法理解的“指数”参数调用glDrawElementsInstanced()在JOGL时使用什么glDrawElementsInstanced(的指标参数善有善报)。使用JOGL
从找过一些C++教程,似乎你可以通过在0指数只要你想开始从索引缓冲区的开始渲染你的顶点。 JOGL要求indices参数是一个Buffer对象。我试图用一个元素,0创建IntBuffer,里面却没有奏效。
当我使用它来画我的顶点,我看到屏幕上绘制的东西:
gl.glDrawElements(GL.GL_TRIANGLES, 10, GL.GL_UNSIGNED_BYTE, 0)
但是,当我用这个来代替,屏幕是黑的:
gl.glDrawElementsInstanced(
GL.GL_TRIANGLES, 10, GL.GL_UNSIGNED_BYTE, IntBuffer.wrap(Array(0)), 1
)
当我使用这,我得到一个类型不匹配的错误:
gl.glDrawElementsInstanced(
GL.GL_TRIANGLES, 10, GL.GL_UNSIGNED_BYTE, 0, 1
)
我使用OpenGL 4和斯卡拉。我也设置我的程序使用DebugGL4,并没有收到任何错误消息。
谢谢!它的工作原理是在没有投射的情况下传入null。 – bwroga