我尝试用
创建一个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导入才能使其工作?
答案 0 :(得分: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);
不确定为什么会有效,但确实如此。