2

有什么替代方法GLfloatlwjgl?OpenGL 有许多使用GLfloat. GLfloat甚至有必要吗lwjgl?我不能用普通的替换它float吗?

4

2 回答 2

2

在 Java 中,它只是一个普通的旧 Java float,你根本不需要GLfloat。lwjgl 中的所有 API 都是根据 Java 原始类型定义的float

(在我所知道的所有 C 实现中,GLfloat也只是陈旧float的。)

于 2012-11-13T21:38:18.673 回答
0

您必须使用 lwjgl 实用程序来创建一个浮点缓冲区来代替 glfloat 数组。位于此导入中。导入 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);
于 2012-11-14T02:10:09.817 回答