OpenGL GLfloat 无法识别 Java
OpenGL GLfloat not recognized Java
我试图用
创建一个 GLfloat 缓冲区数组
GLfloat mat_diffuse[] = { .2f, .2f, .6f, 1f };
但是 java 找不到 class GLfloat
并且当我尝试使用普通的浮点数组时我在这一行
中遇到错误
gl.glMaterialfv(gl.GL_FRONT, gl.GL_DIFFUSE, mat_diffuse);
错误读取 incompatible types: float[] cannot be converted to FloatBuffer
是否有创建 GLfloat
的特殊方法,或者我需要从 openGL 导入一些东西才能使它工作?
所以我找到的解决方案是使用浮点数组
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);
不确定它为什么起作用,但它起作用了。
我试图用
创建一个 GLfloat 缓冲区数组GLfloat mat_diffuse[] = { .2f, .2f, .6f, 1f };
但是 java 找不到 class GLfloat
并且当我尝试使用普通的浮点数组时我在这一行
gl.glMaterialfv(gl.GL_FRONT, gl.GL_DIFFUSE, mat_diffuse);
错误读取 incompatible types: float[] cannot be converted to FloatBuffer
是否有创建 GLfloat
的特殊方法,或者我需要从 openGL 导入一些东西才能使它工作?
所以我找到的解决方案是使用浮点数组
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);
不确定它为什么起作用,但它起作用了。