1

我试图创建一个 GLfloat 缓冲区数组

GLfloat mat_diffuse[] = { .2f, .2f, .6f, 1f };

但是java找不到类GLfloat,当我尝试使用普通的浮点数组时,这一行出现错误

gl.glMaterialfv(gl.GL_FRONT, gl.GL_DIFFUSE, mat_diffuse);

错误读取incompatible types: float[] cannot be converted to FloatBuffer

有没有一种特殊的方法来创建一个GLfloat或者我需要从 openGL 导入一些东西来完成这项工作?

4

1 回答 1

1

所以我为此找到的解决方案是使用浮点数组

float mat_diffuse[] = { .2f, .2f, .6f, 1f };

然后改变了

gl.glMaterialfv(gl.GL_FRONT, gl.GL_DIFFUSE, mat_diffuse);

gl.glMaterialfv(gl.GL_FRONT, gl.GL_DIFFUSE, mat_diffuse, 0);

不知道为什么它有效,但它确实有效。

于 2018-03-01T01:33:51.967 回答