- double modelview[16], projection[16];
- int viewport[4];
- glGetDoublev(GL_MODELVIEW_MATRIX, modelview );
- glGetDoublev(GL_PROJECTION_MATRIX, projection );
- glGetIntegerv(GL_VIEWPORT, viewport );
- int X, Y;
- float Z;
- double PosX, PosY, PosZ;
- X= mouse_x;
- Y= viewport[3]- mouse_y;
- glReadPixels(X, SimpleRoundTo(Y, 0), 1, 1, GL_DEPTH_COMPONENT, GL_FLOAT, &Z );
- gluUnProject(X, Y, Z, modelview, projection, viewport, &PosX, &PosY, &PosZ);