Tag: glu

Java OpenGL绑定中的GLU.gluLook似乎什么都不做

我已经检查了关于这个主题的其他问题,他们的解决方案对我没用。 我有点失落。 我的GLEventListener实现中有以下函数。 public void init(GLAutoDrawable gl) { GL2 gl2 = gl.getGL().getGL2(); gl2.glMatrixMode(GL2.GL_PROJECTION); gl2.glLoadIdentity(); GLU glu = GLU.createGLU(gl2); glu.gluPerspective(45.0f, 1, 0.1f,100.0f); gl2.glMatrixMode(GL2.GL_MODELVIEW); gl2.glLoadIdentity(); gl2.glViewport(0, 0, width, height); gl2.glEnable(GL.GL_DEPTH_TEST); } private void render(GLAutoDrawable drawable) { GL2 gl = drawable.getGL().getGL2(); GLU glu = GLU.createGLU(gl); gl.glClear(GL.GL_COLOR_BUFFER_BIT); gl.glMatrixMode(GL2.GL_MODELVIEW); gl.glLoadIdentity(); glu.gluLookAt(5, 0, 20, 0, 30, 0, 0, 1, 0); gl2.glPushMatrix(); […]

gluProject将3D坐标转换为2D坐标不能正确转换2D Y坐标

经过两个小时的谷歌搜索( 这里 , 这里 , 这里 , 这里 , 这里 ,以及其他一些我不想找到的东西),我以为我终于学会了将3D坐标转换为2D坐标的理论。 但它没有用。 我们的想法是将船舶的3D坐标转换为屏幕上的2D坐标,以呈现控制该船舶的玩家的用户名。 但是,文本呈现在错误的位置: 文本是“Test || 2DXCoordinate || 2DZCoordinate”。 这是我的getScreenCoords() – getScreenCoords() 3D坐标转换为2D。 public static int[] getScreenCoords(double x, double y, double z) { FloatBuffer screenCoords = BufferUtils.createFloatBuffer(4); IntBuffer viewport = BufferUtils.createIntBuffer(16); FloatBuffer modelView = BufferUtils.createFloatBuffer(16); FloatBuffer projection = BufferUtils.createFloatBuffer(16); GL11.glGetFloat(GL11.GL_MODELVIEW_MATRIX, modelView); GL11.glGetFloat(GL11.GL_PROJECTION_MATRIX, projection); GL11.glGetInteger(GL11.GL_VIEWPORT, viewport); […]