我最近在看一个关于使用 LWJGL 用 Java 编写 OpenGL 游戏的教程。在其中,叙述者/作者首先将浮点数组从转换float[]
为 a FloatBuffer
,然后再将其转换为GL15.glBufferData()
. 最初我并没有想太多,但我不小心GL15.glBufferData()
直接给出了 float 数组而不是将其转换为 a FloatBuffer
,并且代码最终还是可以工作。我查阅了文档,它只说“Array version of: BufferData”作为评论,这仍然让我不确定。
这让我想知道,假设在使用 Java 15 的 LWJGL 3.0 中调用时,是否需要努力转换float[]
为 a ,假设通过 using 赋予其值并因此包含相同的数据?FloatBuffer
GL15.glBufferData()
FloatBuffer
FloatBuffer::put()