Я пытался использовать glu.gluUnproject, но я не уверен, каким должно быть значение z.
public void calObjectCoor(GL gl, float mousex, float mousey, float z) {
float x = mousex, y = mousey;
gl.glGetIntegerv(GL.GL_VIEWPORT, viewport, 0);
gl.glGetDoublev(GL.GL_MODELVIEW_MATRIX, mvmatrix, 0);
gl.glGetDoublev(GL.GL_PROJECTION_MATRIX, projmatrix, 0);
/* note viewport[3] is height of window in pixels */
realy = viewport[3] - (int) y ;
glu.gluUnProject((double) x, (double) realy, z, //
mvmatrix, 0,
projmatrix, 0,
viewport, 0,
wcoord, 0);
}