Я пытался сделать некоторые 3D-вещи с помощью JOGL.
При рендеринге 2 2D-блоков в 3d-плоскости FPS может упасть до 15
, когда я подвожу камеру ближе. Я не знаю точно, что так сильно снижает производительность.
float camX = (float) Main.cameraX;
float camY = (float) Main.cameraY;
float camZ = (float) Main.cameraZ;
float camRotX = (float) Main.cameraRotX;
float camRotY = (float) Main.cameraRotY;
float camRotZ = (float) Main.cameraRotZ;
gl.glRotatef(camRotX, 1, 0, 0);
gl.glRotatef(camRotY, 0, 1, 0);
gl.glRotatef(camRotZ, 0, 0, 1);
gl.glTranslatef(x - camX, y - camY, z - camZ);
gl.glVertexPointer(3, GL2.GL_FLOAT, 0, verticesBuffer);
gl.glEnableClientState(GL2.GL_VERTEX_ARRAY);
gl.glDrawArrays(GL2.GL_TRIANGLES, 0, vertices.length / 3);
gl.glTranslatef(-x + camX, -y + camY, -z + camZ);
gl.glRotatef(-camRotZ, 0, 0, 1);
gl.glRotatef(-camRotY, 0, 1, 0);
gl.glRotatef(-camRotX, 1, 0, 0);