GLfloat
中有lwjgl
的替代方案吗? OpenGL有许多使用GLfloat
的来源。 GLfloat
中甚至需要lwjgl
吗?我不能用普通的float
替换它吗?
答案 0 :(得分:2)
在Java中,它只是一个普通的旧Java float
,您根本不需要GLfloat
。 lwjgl中的所有API都是根据Java基元类型float
定义的。
(在我所知道的所有C实现中,GLfloat
也只是普通的float
。)
答案 1 :(得分:0)
必须使用lwjgl实用程序来代替glfloat数组创建一个浮动缓冲区。 位于此导入。 import org.lwjgl.BufferUtils;
例如:
lightPos = BufferUtils.createFloatBuffer(4);
lightPos.put(1).put(1).put(3).put(0).flip();
difuseLight = BufferUtils.createFloatBuffer(4);
difuseLight.put(10.0f).put(10.0f).put(10.0f).put(1.0f).flip();
ambientLight = BufferUtils.createFloatBuffer(4);
ambientLight.put(.75f).put(.75f).put(.75f).put(1).flip();
glEnable(GL_DEPTH_TEST);
glEnable(GL_LIGHTING);
glEnable(GL_LIGHT0);
glLight(GL_LIGHT0, GL_LIGHT_MODEL_AMBIENT, ambientLight);
glLight(GL_LIGHT0, GL_SPECULAR, difuseLight);