【发布时间】:2012-03-16 03:47:13
【问题描述】:
我想加一盏灯。但是当我尝试修改位置时,netbeans 会突出显示 gl.glLightfv 方法。它不仅仅是漫反射和环境的位置......我做错了什么......这是我的代码。
所有的热门歌曲都说:
没有找到适合 glLightfv(int,int,float[]) 的方法 方法 javax.media.opengl.GL.glLightfv(int,int,float[],int) 不适用 (实际参数列表和形式参数列表的长度不同) 方法 javax.media.opengl.GL.glLightfv(int,int,java.nio.FloatBuffer) 不适用 (实参float[]无法通过方法调用转换为java.nio.FloatBuffer)
float pos[] = {-2.0f, 2.0f, -3.0f, 1.0f };
gl.glLightfv(GL.GL_LIGHT0, GL.GL_POSITION, pos); //underlinded red:
float dif[] = {1.0f,1.0f,1.0f,1.0f};
gl.glLightfv(GL.GL_LIGHT0, GL.GL_DIFFUSE, dif); //underlinded red:
float amb[] = {0.2f,0.2f, 0.2f, 1.0f};
gl.glLightfv(GL.GL_LIGHT0, GL.GL_AMBIENT, amb); //underlinded red:
【问题讨论】:
-
看起来编译器不喜欢 float 数组,而是需要一个 FloatBuffer。
标签: java opengl jogl lighting ambient