GLUUNPROJECT(3G) | GLUUNPROJECT(3G) |
gluUnProject - map window coordinates to object coordinates
GLint gluUnProject( GLdouble winX,
GLdouble winY, GLdouble winZ, const GLdouble *model, const GLdouble *proj, const GLint *view, GLdouble* objX, GLdouble* objY, GLdouble* objZ )
gluUnProject maps the specified window coordinates into object coordinates using model, proj, and view. The result is stored in objX, objY, and objZ. A return value of GL_TRUE indicates success; a return value of GL_FALSE indicates failure.
To compute the coordinates (objX, objY, and objZ), gluUnProject multiplies the normalized device coordinates by the inverse of model*proj as follows:
2(winX - view[0])
----------------- - 1
view[2]
objX 2(winY - view[1])
objY = INV(PM) ----------------- - 1
objZ view[3]
W
2(winZ) - 1
1
INV() denotes matrix inversion. W is an unused variable, included for consistent matrix notation.
glGet, gluProject